Я хочу добавить правило, чтобы апостроф внутри конструкции подпадающей под регулярное выражение
q'(\S).*\1' не считался закрывающим. Например,
q'#Oracle's quote#' это один строковый литерал.
Отрыл файл
~/.kde4/share/apps/katepart/syntax/sql.xml, в элемент
<context name="Normal" attribute="Normal Text" lineEndContext="#stay"><br>
перед нодой
<DetectChar attribute="String" context="String literal" char="'"/><br>
добавляю свою ноду
<RegExpr attribute="String" context="Oracle quote operator" String="q&(\S)" dinamic="true" lookAhead="true"/><br>
Далее добавил соответствующий контекст, но ничего не работает…
<context name="Oracle quote operator" attribute="String" lineEndContext="#stay" dinamic="true" lookAhead="true"><br>
<Detect2Chars attribute="String" context="#pop" char="%1" char1="&" dinamic="true"/><br>
<DetectChar attribute="String Char" context="#stay" char="&"/><br>
</context><br>
Пробовал без регулярок просто искать строку вида q'# #' через StringDetect, но это так же не привело к подсветке теста как строкового литерала. Никак не могу понять, что я делаю не так.