Prism
Prism - это легкая, надежная и элегантная библиотека подсветки синтаксиса. Это побочный проект от Dabblet.
Вы можете узнать больше на prismjs.com.
Внесите свой вклад в Prism!
Важное уведомление
В настоящее время мы работаем над Prism v2 и пока будем принимать только PR, связанные с безопасностью.
Как только работа над Prism v2 будет достаточно продвинута, мы снова будем принимать PR. Об этом будет объявлено на нашей странице Обсуждение и упомянуто в Обсуждение дорожной карты.
Примечания о внесении вклада в Prism v1
Prism зависит от вклада сообщества в расширение и охват более широкого спектра вариантов использования. Если вам это нравится, подумайте о том, чтобы внести свой вклад, отправив запрос на исправление. Вот несколько советов:
- Читайте документацию. Prism был разработан как расширяемый.
- Не редактируйте
prism.js
, это просто версия Prism, используемая на сайте Prism и собираемая автоматически. Ограничьте свои изменения неминифицированными файлами в папкеcomponents/
.prism.js
и все минимизированные файлы генерируются нашей системой сборки (см. ниже). - Используйте
npm ci
для установки зависимостей Prism. Не используйтеnpm install
, так как это приведет к недетерминированным сборкам. - Система сборки использует gulp для минификации файлов и сборки
prism.js
. Когда все зависимости Prism установлены, вам нужно просто выполнить командуnpm run build
. - Пожалуйста, следуйте кодовым соглашениям, которые уже использованы в файлах. Например, я использую tabs для отступов и пробелы для выравнивания. Открывающие скобки располагаются на одной строке, закрывающие скобки - на своей, независимо от конструкции. Перед открывающей скобкой ставится пробел. и т.д. и т.п.
- Пожалуйста, старайтесь делать больше небольших PR, а не несколько огромных PR. Если PR включает изменения, которые я хочу объединить, а также изменения, которые я не хочу объединять, то работа с ним становится сложной.
- Моё время сейчас очень ограничено, поэтому рассмотрение больших PR может занять много времени (маленькие обычно сливаются очень быстро), особенно тех, которые изменяют ядро Prism. Это не означает, что ваш PR будет отклонен.
- Если вы добавите новое определение языка, вы будете ответственны за обработку сообщений об ошибках, связанных с этим определением языка.
- Если вы добавляете новое определение языка или плагин, вам нужно добавить его также в
components.json
и пересобрать Prism, выполнивnpm run build
, чтобы он стал доступен на странице сборки для загрузки. Для новых языков также добавьте несколько tests и пример в папкуexamples/
. - Перейдите в prism-themes, если вы хотите добавить новую тему.
Большое спасибо за вклад!!!
Требования к программному обеспечению
Prism будет работать на практически любом браузере и версии Node.js, но для внесения вклада вам необходимо следующее программное обеспечение:
- Node.js >= 10.x
- npm >= 6.x