1,2 - спасибо!
Нашел для Camel Case (оказывается, это Pascal Case, но мне название Camel Case привычнее)
информацию в Google и с помощью
https://regex101.com/ отладил такое регулярное выражение
[А-ЯA-Z]([а-яa-z0-9]+[А-ЯA-Z]+[а-яa-z0-9]+)
Но в лайт лексере оно не работало.
Тогда решил убать латински символы:
"regex": "[А-Я]([а-я0-9]+[А-Я]+[а-z0-9]+)",
удивительно, что оно ловит и латинские символы.
Непонятно только, почему выделяет только первые две группы:
ГруПпа из ГруПпаПаПа, например.
В общем, с этим пока решено.
У меня в лайт лексере не работал двойной клик по CamelCase word,
хотя в ~/.config/cudatext/py/cuda_wikidpad_helper/install.inf
его указал:
lexers=WikidPad,WikidPad^
Думал, из-за того, что нет выделения.
Но в лексере WikidPad не описана эта реакция, она в функции
~/.config/cudatext/py/cuda_wikidpad_helper/__init__.py
Потом в с Statusbar обратил внимание на пробел перед ^:
lexers=WikidPad,WikidPad ^
ЗАРАБОТАЛО! Какое щастье!
В общем, пора переходить к обработке линков (переходу по ссылке).
Линки (ссылки) делаю пока с помщью макро.
Они имеют такой формат:
ИмяФайла.wiki ++ Заголовок ноды [timestamp]
[timestamp] - необязательны штамп времени
Ну какие еще функции, какие напридумываю.
Вопрос.
1. Helper лексера может создавать в Меню новый пункт с подпунктами?
2. Когда инициализируется лексер?
Например, я внес изменения в лайт лексер, как их применить без перезапуска CudaText?
3. Где найти значения для "style": лайт лексера?
4. Лайт лексер на Python'е. Не будет ли тормозов от многих стилей на больших файлах?