Для DSL, который я разработал, я хотел, чтобы Geany поддерживал его так же, как встроенные языки, такие как java и C#. Я создал filetypes.myLang.conf и добавил поля конфигурации, как в руководстве. Для поля [настройки] я добавил: lexer_filetype=C Теперь все выглядит нормально. Мой язык входит в список в Geany, а синтаксис выделяется на основе ключевых слов, определенных в полях основной и дополнительный в файле конфигурации. Мой вопрос в том, должен ли я добавить файл lexer для моего языка или установить его, как я сделал, все в порядке. Если ответ да, может кто-нибудь объяснить мне, как это делается. Кроме того, что означает это поле?
Подсветка синтаксиса Geany для моего DSL
Ответы (1)
Настоящего ответа нет, так как это зависит от вас и вашего определения языка, подходит ли синтаксис C или нет;)
Параметр настраивает, какой уже существующий лексер используется для вашего типа файла. Итак, какая магия для выделения и распознавания, например. используются команды и опции.
Если вы действительно хотите создать лексер с нуля или, возможно, изменив уже существующий, вы можете начать читать взлом-документация. Также я бы порекомендовал проверить Scintilla, так как есть некоторые лексеры, которые Geany не отправляет, а новые лексеры принимаются только тогда, когда они также идут вверх по течению (в Scintilla).
person
frlan
schedule
08.03.2015