Реализация подсветки кода 1с в WordPress, да и вообще везде — больная тема. Решение «из коробки» я встретил только у Crayon Syntax Highlighter, однако при установки его на моей WordPress 5.3.2, сайт благополучно закрэшился и насладиться всеми благами этого популярного плагина я не смог.
Да и на самой странице плагина мне прямо сказали что он не тестировался с моей версией WordPress.
В просторах интернета встречаются варианты в которых мы, после установки плагина, в ручную кидаем особый .php
файл в директорию с набором файлов синтаксис-разметки?
Решив оставить это на запасной вариант, я отправился на поиски дальше. И вот среди многих вариантов я нашел SyntaxHighlighter Evolved который не особо пестрил поддерживаемыми языками, но меня в нем пленило другое. В просмотренных мною плагинах, мне нужно было указывать тип блока HTML и писать в лучшем случае BBCode или вообще тег <pre>
. Присутствующий в WordPress блок <>
Код тоже не блещет настройками, точнее их там просто нет. Тогда как SyntaxHighlighter Evolved подкупает простой визуально настройкой. После установки и активации данного плагина, при редактировании записей у вас появится новый тип блока:
Добавив новый блок в запись, вы выбираете указанный на картинке выше тип. После следует выбрать соответствующий язык программирования в панели настроек блока
И непосредственно писать код.
Вот и все! В панели слева есть еще несколько настроек, и да, для любителей BBCode можно очень тонко настраивать его руками… Описание самих кодов можно найти в настройках плагина, там же можно выбрать тему (цветовую гамму).
Поняв что это то что мне нужно, я решил добавить к нему синтаксис 1с самостоятельно. и естественно я взял на себя «великую ответственность» и добавил свой вариант цветовой гаммы CoolWind. Да цвета не такие как в «Конфигураторе», но собственно для чего тогда разные темы оформления. Фот вам пример подсветки.
Процедура КнопкаВыполнитьНажатие(Кнопка) ВремяНачала = ТекущаяУниверсальнаяДатаВМиллисекундах(); Для сч = 0 по 10000 цикл НоваяСтрока = ЭтотОбъект.ТабличнаяЧасть1.Добавить(); НоваяСтрока.Реквизит1 = "Я больше не буду говорить что 1с тормозит"; КонецЦикла; ЭтаФорма.ВремяВыполнения = ТекущаяУниверсальнаяДатаВМиллисекундах() - ВремяНачала; КонецПроцедуры
А вот по этой ссылке можно скачать плагин подсветки синтаксиса 1с, бесплатно, с официального сайта , без регистрации и смс.