В последнее время я занимаюсь разработкой в TWIG.Это HTML-шаблонизатор, который очень прост и надежен.
Я установил notepad ++ для автоматической обработки файлов .twig как html.Это нормально, но у меня нет подсветки синтаксиса в моих функциях ветки.
Синтаксис веточки невероятно прост (по замыслу) и его легко добавить в notepad ++.Проблема в том, что все, что я нахожу по этому вопросу, касается либо создания нового определения языка (и я не хочу заново изобретать определение html), либо изменения цвета для существующих синтаксических битов в языке.
IsЕсть ли способ скопировать определение языка, а затем изменить его в блокноте ++?Если нет, то есть ли в notepad ++ какой-либо способ добавить дополнительные синтаксические биты к существующему определению языка?
edit
TWIG - это язык / движок HTML-шаблонов.их синтаксис для него такой же, как и для html, с добавлением нескольких тегов открытия / закрытия (в частности, {%%}, {{}} и {# #}) для операторов управления.Вы можете прочитать больше об этом на сайте ветки
edit # 2
Основываясь на ответе Брайана Дерагона, я расследовал 3файлы.Вот что я выяснил / сделал до сих пор:
- \ plugins \ APIs \ html.xml - похоже, для определения ключевых слов, для автозаполнения.Я сделал копию файла с именем twig.xml
- langs.model.xml - опять же список ключевых слов со всеми языками в 1 XML-файле.Я скопировал объект HTML и заменил параметры name и ext на twig.
- stylers.model.xml - содержит список различных элементов и информацию о стилях (цвет, цвет bg, шрифт и т. Д.) Для каждого.Я скопировал раздел HTML и изменил параметры name и desc на twig.
После внесения этих изменений я открыл файл twig в notepad ++, надеясь увидеть его в списке параметров языка.К сожалению, оно не появилось, что наводит меня на мысль, что некоторые из них жестко запрограммированы (и, следовательно, то, что я хочу, может оказаться невозможным).
Однако stylers.model.xml интересен.Каждая запись имеет несколько элементов, определенных следующим образом:
<LexerType name="twig" desc="TWIG" ext="">
<WordsStyle name="DEFAULT" styleID="0" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="1" fontSize="" />
<WordsStyle name="COMMENT" styleID="9" fgColor="008000" bgColor="FFFFFF" fontName="" fontStyle="0" fontSize="" />
<WordsStyle name="TAG" styleID="1" fgColor="0000FF" bgColor="FFFFFF" fontName="" fontStyle="0" fontSize="" />
<WordsStyle name="TAGEND" styleID="11" fgColor="0000FF" bgColor="FFFFFF" fontName="" fontStyle="0" fontSize="" />
...
</LexerType>
Похоже, что именно там стили определены для различных элементов.Я не могу найти где-нибудь, где эти элементы определены, хотя.В langs.model.xml есть определение начала / конца комментария, но не для каких-либо других разделителей.что мне действительно нужно, так это место, где Notepad ++ должен трактоваться {} как разделитель, так же, как и сейчас <>.
edit # 3
Ятакже просматривая этот список пользовательских языков для notepad ++ http://sourceforge.net/apps/mediawiki/notepad-plus/index.php?title=User_Defined_Language_Files Пользовательские языки используют другой движок, но я мог бы найти там такой, который достаточно похож на html, чтобы я мог его адаптировать.