OberonCore https://forum.oberoncore.ru/ |
|
Плагин Oberon2Lexer для Notepad++ https://forum.oberoncore.ru/viewtopic.php?f=30&t=2205 |
Страница 1 из 1 |
Автор: | Александр Ильин [ Четверг, 17 Декабрь, 2009 08:48 ] |
Заголовок сообщения: | Плагин Oberon2Lexer для Notepad++ |
Доступен для скачивания плагин Oberon2Lexer v0.3. Работает как в Notepad++ ANSI, так и в Notepad++ Unicode. Что умеет:
Что НЕ умеет:
Прямая ссылка для скачивания: http://cdnetworks-kr-1.dl.sourceforge.n ... r.v0.3.zip Список альтернативных ссылок (зеркал) доступен здесь: http://sourceforge.net/projects/oberonr ... p/download Полные исходники плагина прилагаются (два проекта на XDS Oberon-2, тот, что с суффиксом "U" - для Unicode-версии Notepad++). Синтаксический разбор сделан максимально ниотчегонезависимо (см. структуру проекта на приложенных картинках). Отдельный модуль связывает плагин с Notepad++, отдельный модуль связывает его с Scintilla, а сканер работает вообще сам по себе и может быть портирован в любое приложение. На картинке красным отмечены модули, импортирующие SYSTEM, в прямоугольную рамку взяты модули, импортирующие "окна" (модуль Windows), овалом - все остальные. Вложение: Вложение:
|
Автор: | Sergo [ Четверг, 17 Декабрь, 2009 15:26 ] |
Заголовок сообщения: | Re: Плагин Oberon2Lexer для Notepad++ |
Спасибо, отличная вещь! Взял на вооружение:) |
Автор: | Александр Ильин [ Среда, 10 Ноябрь, 2010 22:40 ] |
Заголовок сообщения: | Re: Плагин Oberon2Lexer для Notepad++ |
Выпущен плагин Oberon2Lexer v0.3.1. Исправлена ошибка распознавания шестнадцатеричных констант (суффиксы "H" и "X") c использованием строчных букв 'a'..'f'. Прямая ссылка для скачивания: http://citylan.dl.sourceforge.net/proje ... v0.3.1.zip Список альтернативных ссылок (зеркал) доступен здесь: https://sourceforge.net/settings/mirror ... v0.3.1.zip |
Автор: | Александр Ильин [ Пятница, 12 Ноябрь, 2010 20:47 ] |
Заголовок сообщения: | Re: Плагин Oberon2Lexer для Notepad++ |
В связи с изменениями в Scintilla, касающимися интерфейса к внешним лексерам, существующие версии плагина не совместимы с Notepad++ v5.8 и старше. Поддержка нового интерфейса запланирована в версии 1.0 вместе с фолдингом. Обратная совместимость новой версии плагина со старыми версиями Notepad++/Scintilla будет сохранена. |
Автор: | Роман М. [ Понедельник, 15 Ноябрь, 2010 18:52 ] |
Заголовок сообщения: | Re: Плагин Oberon2Lexer для Notepad++ |
В Линуксе я использую простой текстовый редактор SciTE (Scintiila), но в нём нет подстветки синтаксиса для Оберона. Попробовал применить такую настройку раскраски, но почему-то ничего не подсвечивает, хотя цвет шрифта можно поменять без проблем. Код: filter.oberon2=Oberon-2 (ob2 mod txt cp)|*.ob2;*.Mod;*.mod;*.txt;*.cp| file.patterns.oberon2=*.ob2;*.mod;*.txt;*.cp file.patterns.oberon2.all=$(file.patterns.oberon2) lexer.$(file.patterns.oberon2.all)=oberon2 keywordclass.oberon2=ARRAY BEGIN BY CASE DIV DO ELSE ELSIF END EXIT FOR IF IMPORT IN IS LOOP MODULE NIL \ OF OR POINTER PROCEDURE RECORD REPEAT RETURN THEN TO TYPE VAR WHILE WITH #keywordclass.oberon2.smart=add default implements index name nodefault read readonly \ #remove stored write writeonly #~ keywordclass.oberon2.package=package contains requires #~ keywords.$(file.patterns.oberon2)=$(keywordclass.oberon2) $(keywordclass.oberon2.smart) #~ keywords.$(file.patterns.oberon2.package)=$(keywordclass.oberon2) $(keywordclass.oberon2.smart) $(keywordclass.oberon2.package) keywords.$(file.patterns.oberon2)=$(keywordclass.oberon2) # If enabled some keywords will only be highlightend in appropriate context. # As implemented those are keywords related to property and DLL exports declarations #lexer.oberon2.smart.highlighting=1 # oberon2 styles # Default style.oberon2.32=$(font.base) # White space #~ style.oberon2.0=fore:#808080 style.oberon2.0=fore:#000000 # Identifiers style.oberon2.1= # Comment: { ... } #~ style.oberon2.2=$(colour.code.comment.box),$(font.code.comment.box) # Comment: (* ... *) #~ style.oberon2.3=$(colour.code.comment.box),$(font.code.comment.box) # Line Comment: // ... #~ style.oberon2.4=$(colour.code.comment.line),$(font.code.comment.line) # Preprocessor: {$ ... } #~ style.oberon2.5=$(colour.preproc) # Preprocessor: (*$ ... *) #~ style.oberon2.6=$(colour.preproc) # Number style.oberon2.7=$(colour.number) # Hex Number style.oberon2.8=$(colour.number) # Keyword style.oberon2.9=$(colour.keyword),bold # String style.oberon2.10=$(colour.string) # End of line where string is not closed style.oberon2.11=fore:#000000,$(font.monospace),back:#E0C0E0,eolfilled # Character style.oberon2.12=$(colour.char) # Operators style.oberon2.13=$(colour.operator),bold # Inline Asm #~ style.oberon2.14=fore:#804080 # Braces are only matched in operator style braces.oberon2.style=13 #~ comment.block.oberon2=//~ #~ comment.stream.start.oberon2={ #~ comment.stream.end.oberon2=} comment.box.start.oberon2=(* comment.box.middle.oberon2= * comment.box.end.oberon2= *) statement.indent.$(file.patterns.oberon2)=9 DO ELSE FOR THEN REPEAT WHILE TYPE statement.end.$(file.patterns.oberon2)=13 ; statement.lookback.$(file.patterns.oberon2)=20 block.start.$(file.patterns.oberon2)=9 BEGIN block.end.$(file.patterns.oberon2)=9 END Где здесь ошибка? |
Автор: | Александр Ильин [ Понедельник, 15 Ноябрь, 2010 20:32 ] |
Заголовок сообщения: | Re: Плагин Oberon2Lexer для Notepad++ |
Роман М. писал(а): Где здесь ошибка? Понятия не имею. Отладку я бы начал с проверки того, активируется ли вообще данный язык на указанных расширениях файлов.Scintilla поддерживает внешние лексеры (подгружаемые из динамических библиотек) и SciTE, я уверен, тоже. Можно попробовать портировать плагин под Линукс. Это было бы интересно. |
Автор: | ilovb [ Понедельник, 05 Май, 2014 11:15 ] |
Заголовок сообщения: | Re: Плагин Oberon2Lexer для Notepad++ |
Роман М. писал(а): Где здесь ошибка? Как минимум нужна такая строчка: Код: lexerpath.$(file.patterns.oberon2.all)=Oberon2Lexer.dll ps viewtopic.php?f=28&t=4356&p=87245#p87245 |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |