Lenchik / Akelpad-syntax-highlighting

Syntax themes for AkelPad text editor with Coder plugin (AutoHotkey, AviSynth, bash, BibTeX, Grub4Dos, KiXtart, LaTeX, Makefile, nnCron, R, Smarty, plain text and many more other syntax highlighting)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Неверная подсветка 4-ёх двойных кавычек идущих друг за другом """"

Drugoy opened this issue · comments

Некоторые параметры у команд ожидают текст, а некоторые - выражения.
И вот часто в тех, что ожидают выражения - используется dereferencing, чтобы передать какой-то текст дословно.
Дословный текст передаётся в кавычках. Но если нужно передать сам символ кавычек как текст, то т.к. это спецсимвол - его нужно "обезопасить" (escape): конкретно его - удваивают.
Получается, что если мы хотим в параметр, ожидающий выражение (а не простой текст) передать просто одинарный символ кавычек - у нас получится """".
Нынешний .coder распознаёт это как левую и правую группы из двух кавычек и подсвечивает их соответственно.
Но правильно было бы подсветить их как группу из двух кавычек внутри другой группы из двух кавычек.
Я не знаю как это сделать, Вы не поможете с этим?

Вернее, сейчас .coder подсвечивает только одну (всегда правую) группу кавычек. Даже в случае из 3-ёх кавычек идущих подряд.

Вот сложный случай, подходящий для проверки:

"""" A_AhkPath """  ""c:\path\"""

слева - первая группа dereference'овая, эти 4 кавычки на самом деле означают просто одну текстовую кавычку.
A_AhkPath - это переменная (она не окружена %-ами т.к. весь параметр в котором это всё находится - уже ожидает выражения).
справа закодировано следующее:

"  "c:\path\"

Решение с форума http://akelpad.sourceforge.net/forum/viewtopic.php?p=22378#22378 подходит?

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