В SciTe (Scintilla), как я могу создать Подсветку синтаксиса для своего собственного языка?

alias grep='grep -inE --color=auto'

Это окрасит соответствие также для легкого чтения.

4
19.10.2010, 20:38
3 ответа

Я посмотрел на него однажды, это довольно болезненно, потому что все определяется статически в исходном коде C++.

Уже необходимо определить определенное число правил среди один существующий в искре, для вещей как... хорошо она вполне искажается. Можно быстро искать "лексический анализатор искры" на Google, но Вы, чтобы понять, что маркеры синтаксиса очень сложны, чтобы кодировать, просто посмотреть на блокнот ++ и все его функции: это - почти синтаксический анализатор кода, который найден в компиляторах.

Вдобавок ко всему, лексический анализатор искры может быть сделан для любого типа языка.

Другая проблема состоит в том, что окраска текста должна быть агностиком платформы, и снова, я предполагаю, что это способствует окнам (понятное дело), и не забывайте рендерер шрифта, который может также быть другой вещью.

Я не уверен, что искра была портирована гному или kde, не так ли?

2
27.01.2020, 21:00
  • 1
    Спасибо gokoon... Нет ничего вполне как речь опыта (Ваш опыт ;) Я дам Scite (Scintilla) мисс (Scite доступен в репозитории Ubuntu)... Я использовал бы блокнот ++ в вине, но даже при том, что много отчетов, говорят, что это работает безупречно, который не является моим опытом (возможно, они не попробовали <Ctrl> <NumPad +> / <Ctrl> <NumPad->.. это оставляет след +/-символы для каждого нажатия клавиши..., и я заметил несколько там вещи... О, хорошо я выживаю без него, но aybe Emacs сделает то, что я хочу (как упомянуто sepp2k).. У меня есть то, чтобы начинать посмотреть на Emacs только совсем недавно.... –  Peter.O 05.02.2011, 01:28
  • 2
    более общая информация... Поскольку Scite/Scintilla не соответствует моему requreiemnts, я теперь specifially посмотрел на Emacs.. и это может сделать задание.. (таким образом, я нахожусь теперь на кривой обучения Emacs..., но у меня будет кофе, прежде чем я запущу :).... Я отправил другой связанный вопрос... так для любого, кто интересуется этой проблемой, вот ссылка: unix.stackexchange.com/questions/6922 / … –  Peter.O 06.02.2011, 05:16

Это, вероятно, не удовлетворит Вашему запросу, но jEdit имеет обширную конфигурацию для выделения языка, если Вы хотите редактора, который выделит Ваш новый язык.

0
27.01.2020, 21:00
  • 1
    я взглянул на jEdit несколько лет назад. Как я вспоминаю, это было немного медленно и не имело того конкретной вещью, которую я, прежде всего, хочу: т.е. разного размера шрифт на экране в одном экземпляре единственного текстового файла, одновременно..., но я брошу другой взгляд на него.. Это - только загрузка далеко :)... спасибо. –  Peter.O 20.10.2010, 04:02
  • 2
    , я просто попробовал jEdit.. У меня, должно быть, был более медленный компьютер 2 года назад; это кажется достаточно быстрым (для меня).. Однако (Глобальная) Подсветка синтаксиса не угождает Размеру шрифта, и единственный набор цветов относится ко всем языкам. Размер шрифта является отдельной единственной опцией Global...., но jEdit это - конечно, симпатичный редактор :) –  Peter.O 20.10.2010, 04:48
[1187269]AFAIK, Блокнот++ основан на лексерах Scintilla.

Я думал, что "новый язык" означает только "существующий лексер, но новый набор ключевых слов"; но это кажется более мощным.

То, что я нашел : ([1187661]http://docs.activestate.com/komodo/4.4/udl.html[1187662])

Система Комодо для определения многоязычной синтаксической лексики и подсветка синтаксиса, определяемая пользователем, называется UDL (User Defined). Языки). [1187907] Файлы UDL пишутся на языке, называемом луддитом, затем скомпилированный в Scintilla lexers[1187908] и упакованный для использования в Komodo.

Итак, после определения вашего языка в Notepad++ вы сможете получить скомпилированный лексер и добавить его в scite.[1187278].

0
27.01.2020, 21:00

Теги

Похожие вопросы