SyntaxHighlight — форкнутая версия скрипта Syntax highlighter, созданного участником Remember the dot на MediaWiki.org.
Данный скрипт возвращает прежнюю подсветку синтаксиса, которая использовалась на старой платформе Фэндома, делая ее доступной в редакторе исходного кода UCP (также известен как редактор 2010).
Installation
Usage
Убедитесь, что вы используете редактор 2010. Для этого нужно сходить в настройки и поменять предпочитаемый редактор на "Редактор исходного кода".
Выберите "Source editor" как предпочитаемый редактор
Затем отключите стандартную подсветку, нажав на иконку маркера в панели инструментов редактора.
Иконка маркера должна быть не активна
Configuration
Скрипт позволяет настраивать как внешний вид подсветки, так и ее поведение.
Цвета
SyntaxHighlight настроен так, чтобы подходить википроектам с любой цветовой схемой, используя при этом оттенки образца старой платформы:
Светлые вики
- bold or italic
#e4e5f3for syntax$boldOrItalicColor - comments
#f8dbdafor syntax$commentColor - entities
#e8ebdafor syntax$entityColor - external links
#dbecebfor syntax$entityColor - headings
#e4e5f3for syntax$headingColor - hr syntax
#e4e5f3for syntax$hrColor - list and indents
#f8dbdafor syntax$listOrIndentColor - parameters
#f5e0d8for syntax$parameterColor - signatures
#f5e0d8for syntax$signatureColor - tags
#f6dde9for syntax$tagColor - tables
#f0ebdbfor syntax$tableColor - templates
#f0ebdbfor syntax$templateColor - internal links
#d9eaf6for syntax$wikilinkColor
Темные вики
- bold or italic
#44466dfor syntax$boldOrItalicColor - comments
#4d1a19for syntax$commentColor - entities
#474d23for syntax$entityColor - external links
#244d491for syntax$entityColor - headings
#44466dfor syntax$headingColor - hr syntax
#44466dfor syntax$hrColor - list and indents
#4d1a19for syntax$listOrIndentColor - parameters
#66331efor syntax$parameterColor - signatures
#66331efor syntax$signatureColor - tags
#662946for syntax$tagColor - tables
#5e5129for syntax$tableColor - templates
#5e5129for syntax$templateColor - internal links
#245477for syntax$wikilinkColor
Пользовательские цвета
Изменить цвета подсветки возможно путем редактирования настроек внутри объекта window.syntaxHighlighterConfig, который добавляется в MediaWiki:Common.js. Вот что можно поменять:
window.syntaxHighlighterConfig = {
boldOrItalicColor: '',
commentColor: '',
entityColor: '',
externalLinkColor: '',
headingColor: '',
hrColor: '',
listOrIndentColor: '',
parameterColor: '',
signatureColor: '',
tagColor: '',
tableColor: '',
templateColor: '',
wikilinkColor: ''
};
Например, можно настроить цвета так:
window.syntaxHighlighterConfig = {
externalLinkColor: '#FFCC66',
wikilinkColor: '#E6FFFF'
}
Другие параметры
У скрипта есть и другие настраиваемые параметры. Чтобы узнать о них, обратитесь к документации оригинального Syntax highlighter.
Оригинальный скрипт
Оригинальный код скрипта представлен на странице User:Remember the dot/Syntax highlighter.js на MediaWiki.org. Он был создан Remember the dot'ом и другими участниками и используется на MediaWiki.org и проектах Фона Викимедиа в качестве гаджета.
A version of the original upon which this script has been based can be found in the top comment on MediaWiki:SyntaxHighlight.js.
Если вам кажется, что вы нашли ошибку, не связанную с работой скрипта на Фэндоме, пожалуйста, напишите об этом Remember the dot'у на странице обсуждения Syntax highlighter.
Отличия от оригинала
Для корректной работы на Фэндоме в скрипт были внесены некоторые изменения:
- Added support for i18n-js library to assure easy and user-friendly translation updates.
- улучшена производительность;
- стандартные цвета настроены так, чтобы точно отражать дизайна подсветки синтаксиса старой платформы на вики как со светлой темой, так и с темной;
- добавлена поддержка тегов
<infobox>и<templatedata>; - эта версия скрипта написана специально для UCP, поэтому она не будет работать на проектах с версией MediaWiki 1.19.
Возможные проблемы
Хоть скрипт и работает на всех википроектах Фэндома, могут возникнуть следующие проблемы:
- Тема вики определяется неправильно, в результате чего подсветкой используются нечитаемые цвета.
- Это происходит в результате редкого сбоя отличной от старой платформы системы определения темы вики. Но если уж такое случилось, вы можете прибегнуть к настройкам цветов.
- Скрипт не загружается, сообщая об ошибке.
- В отличие от версии, использовавшейся на старой платформе, здесь определен меньший таймаут отрисовки подсветки. Если этого недостаточно, в настройках скрипта вместо 25 миллисекунд таймаута можно указать 150.