Zulip 服务器和 Web 应用程序。开源团队聊天可帮助团队保持高效和专注。
Go to file
Sumanth V Rao 42d30bc14b markdown: Add copy-to-clipboard button in codeblocks.
Clicking on the copy-to-clipboard button triggers the clipboard.js
API to dynamically set the text to be copied. This text is the
actual code content from the sibling <code> element (extracted
though jQuery text() method).

The html structure would now look like:
<div class="codehilite">
    <pre>
        <button> The copy button </button>
        <span></span>
        <code>......</code>
    </pre>
</div>

Additionally, this preserves the original code formatting of
the codeblock during copy-paste.

Tests amended.

Fixes: #15208
2020-08-26 23:18:05 -07:00
.circleci ci: Remove confused references to test-event-log. 2020-07-24 12:42:08 -07:00
.github docs: Fix spelling errors caught by codespell. 2020-08-11 10:23:06 -07:00
.tx cleanup: Delete trailing newlines. 2019-08-06 23:29:11 -07:00
analytics python: Replace ujson with orjson. 2020-08-11 10:55:12 -07:00
confirmation python: Convert more percent formatting to Python 3.6 f-strings. 2020-06-14 23:27:22 -07:00
corporate billing: Show sponsorship message for organization on STANDARD_FREE. 2020-08-24 18:25:01 -07:00
docs docs: Mention data-setting-widget-type. 2020-08-25 17:12:38 -07:00
frontend_tests markdown: Add copy-to-clipboard button in codeblocks. 2020-08-26 23:18:05 -07:00
locale locale: Fix invalid JSON in locale/tr/translations.json. 2020-08-07 11:12:32 -07:00
pgroonga migrations: Escape more pedantically in pgroonga.0003_v2_api_upgrade. 2020-06-13 21:50:37 -07:00
puppet memcached: Switch from pylibmc to python-binary-memcached. 2020-08-06 12:51:14 -07:00
requirements requirements: Upgrade zulint. 2020-08-24 16:10:10 -07:00
scripts create-db.sql: Ensure using en_US.UTF-8 encoding. 2020-08-24 12:24:38 -07:00
static markdown: Add copy-to-clipboard button in codeblocks. 2020-08-26 23:18:05 -07:00
stubs python: Replace ujson with orjson. 2020-08-11 10:55:12 -07:00
templates api docs: Document POST /user_groups/{group_id}/members endpoint. 2020-08-26 15:40:19 -07:00
tools vagrant: Add parallels as a provider. 2020-08-14 16:03:51 -07:00
zerver test_openapi: Remove now-unnecessary regex hack. 2020-08-26 16:21:06 -07:00
zilencer python: Replace ujson with orjson. 2020-08-11 10:55:12 -07:00
zproject urls: Reorder more endpoints. 2020-08-26 15:55:55 -07:00
zthumbor zthumbor: Rename thumbor.conf to thumbor_settings.py. 2020-07-06 18:44:58 -07:00
.browserslistrc webpack: Transpile JS code with Babel. 2019-07-22 17:55:32 -07:00
.codecov.yml codecov: Change threshold to use percentage syntax. 2019-07-20 14:37:04 -07:00
.editorconfig lint: Use Prettier for JSON files. 2020-07-24 09:42:56 -07:00
.eslintignore blueslip: Apply ESLint. 2019-11-01 12:13:59 -07:00
.eslintrc.json dependencies: Upgrade babel-eslint to @babel/eslint-parser. 2020-08-12 18:37:25 -07:00
.gitattributes Revert "gitattributes: Mark yarn.lock as "binary", i.e. suppress diffs." 2019-05-20 19:31:14 -07:00
.gitignore tools: Move CI docker images files into tools/ci. 2020-06-29 16:31:43 -07:00
.gitlint lint: Allow revert commit messages in gitlint. 2018-02-13 09:21:01 -08:00
.isort.cfg requirements: Upgrade isort. 2020-06-26 22:50:01 -07:00
.mailmap mailmap: Give priority to Vishnu KS's zulip email. 2020-07-31 10:37:49 -07:00
.npmignore Add proxy notes to new README.dev.md troubleshooting section. 2016-03-29 21:54:05 -07:00
.prettierignore lint: Use Prettier for JSON files. 2020-07-24 09:42:56 -07:00
.pyre_configuration pysa: Add basic .pyre_configuration and taint.config for pysa. 2020-06-11 12:57:49 -07:00
.sonarcloud.properties tools: Configure Zulip to be scannable by SonarCloud. 2020-06-24 12:41:17 -07:00
.yarnrc .yarnrc: Set ignore-scripts true. 2019-08-28 16:15:54 -07:00
babel.config.js js: Add "use strict" directive to CommonJS files. 2020-07-31 22:09:46 -07:00
CODE_OF_CONDUCT.md docs: Fix various capitalization errors. 2020-08-11 10:25:52 -07:00
CONTRIBUTING.md docs: Fix various capitalization errors. 2020-08-11 10:25:52 -07:00
Dockerfile-postgresql base Zulip PostgreSQL Docker container on PGroonga official one 2019-12-30 10:20:25 -08:00
LICENSE docs: Bump copyright year. 2020-04-23 16:04:54 -07:00
manage.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
mypy.ini zthumbor: Fix strict_optional errors. 2020-07-06 11:25:48 -07:00
NOTICE license: Move license application notice from LICENSE to NOTICE. 2018-10-02 12:04:44 -07:00
package.json dependencies: Upgrade babel-eslint to @babel/eslint-parser. 2020-08-12 18:37:25 -07:00
postcss.config.js js: Add "use strict" directive to CommonJS files. 2020-07-31 22:09:46 -07:00
prettier.config.js js: Add "use strict" directive to CommonJS files. 2020-07-31 22:09:46 -07:00
README.md docs: Fix various capitalization errors. 2020-08-11 10:25:52 -07:00
SECURITY.md docs: Create GitHub SECURITY.md file. 2020-06-25 15:23:22 -07:00
setup.cfg lint: Use standard setup.cfg configuration for pycodestyle. 2020-07-14 00:41:20 -07:00
stylelint.config.js stylelint: Enable no-vendor-prefix rules. 2020-08-07 15:17:20 -07:00
tsconfig.json typescript: Enable strictNullChecks. 2020-07-28 11:01:35 -07:00
Vagrantfile vagrant: Add parallels as a provider. 2020-08-14 16:03:51 -07:00
version.py requirements: Upgrade zulint. 2020-08-24 16:10:10 -07:00
yarn.lock dependencies: Upgrade babel-eslint to @babel/eslint-parser. 2020-08-12 18:37:25 -07:00

Zulip overview

Zulip is a powerful, open source group chat application that combines the immediacy of real-time chat with the productivity benefits of threaded conversations. Zulip is used by open source projects, Fortune 500 companies, large standards bodies, and others who need a real-time chat system that allows users to easily process hundreds or thousands of messages a day. With over 500 contributors merging over 500 commits a month, Zulip is also the largest and fastest growing open source group chat project.

CircleCI branch Coverage Status Mypy coverage code style: prettier GitHub release docs Zulip chat Twitter

Getting started

Click on the appropriate link below. If nothing seems to apply, join us on the Zulip community server and tell us what's up!

You might be interested in:

You may also be interested in reading our blog or following us on Twitter. Zulip is distributed under the Apache 2.0 license.