Drugmix wrote:Всё то. Это уже срабатывают какие-то другие правила.
Как раз другие правила и создают иллюзию работы вашего. Закомментируйте все правила, кроме вашего, и тогда увидите, что оно спотыкается на указанных примерах. Попробуйте подставить моё регулярное выражение в ваше правило
Infocatcher wrote:
Можно ли как-то простым способом (одним регулярным выражением) подсветить JavaScript внутри <handler>…</handler>, но при этом не сломать ничего при наличии <handler foo="bar" />?
А "на пальцах", то бишь в картинках можно глянуть, что должно получиться и что именно не должно ломаться? А то есть вроде мысли, но не уверен в том, что же всё таки требуется...
Drugmix wrote:Всё то. Это уже срабатывают какие-то другие правила.
Как раз другие правила и создают иллюзию работы вашего. Закомментируйте все правила, кроме вашего, и тогда увидите, что оно спотыкается на указанных примерах.
Я так понял, что на этих 2 случаях правило как раз и не должно срабатывать и я именно этого и добивался.
Wio wrote:Попробуйте подставить моё регулярное выражение в ваше правило
А ваше на тех 2 случаях срабатывает, видимо вам это и требовалось.
Я не знаток синтаксисов, но вроде это не правильно.
YuS wrote:А "на пальцах", то бишь в картинках можно глянуть, что должно получиться и что именно не должно ломаться? А то есть вроде мысли, но не уверен в том, что же всё таки требуется...
Я уже показывал пример файла.
Например, вот такое надо игнорировать и не искать закрывающий тэг:
Плюс там допустимы всякие разные атрибуты, в которых может быть и «/», и «>». Хотя последнее все же редкость, это скорее код будет и окажется записан в action="...".
Infocatcher wrote:
Плюс там допустимы всякие разные атрибуты, в которых может быть и «/», и «>». Хотя последнее все же редкость, это скорее код будет и окажется записан в action="...".
Регэксп вроде работает, но с ">" могут быть пересечения c XBrackets
YuS wrote:На счет подсветки js не уверен (а оно так работает? из другого файла .coder)
В новых версиях – работает.
YuS wrote:А в чем тут отличие?
Если отлавливать сам тэг, то разницы никакой. Просто один из вариантов – отлавливать уже <![CDATA[ … ]]>, только это дело не обязательное и может отсутствовать.
Infocatcher wrote:Хм, а еще по умолчанию там JavaScript, так что надо еще и <script>…</script> добавить (и в HTML5 атрибут type не является обязательным).
Cuprum wrote:Хотелось бы, чтобы html.coder отлавливал и подсвечивал внутренности у элементов style и script без атрибута type. Этот атрибут может отсутствовать.
См. Coder 17.8
Infocatcher wrote:Кстати... было бы очень здорово, если бы не только подсветка выставлялась в таких областях, но и автодополнение бралось из соответствующего coder-файла.
...
Плюс там допустимы всякие разные атрибуты, в которых может быть и «/», и «>». Хотя последнее все же редкость, это скорее код будет и окажется записан в action="...".
В общем, показалось, что подсветка "<![CDATA[ ...]]>" внутри "<handler>...</handler>" из другого файла будет излишней...
Для наглядности сделал коротенький тестовый
Тут xml.coder
Только флаги надо перепроверить для конкретного применения, их вообще не трогал и не изменял, взял готовые из Вашего примера строки секции Fold:...
Добавлено: поддержка вложенных .coder'ов (Coder::AutoComplete). Добавлено: опция для наследования регистра введённых символов (Coder::AutoComplete). Требуется AkelPad 4.9.7 или выше.
Added: support for nested .coder's (Coder::AutoComplete). Added: option to inherit typed case (Coder::AutoComplete). Required Akelpad 4.9.7 or higher.
Instructor,
Можно ли использовать в .coder файлах несколько идентичных правил (отличие только в цветах подсветки), но с разными ParentID или это категорически противопоказано?
Вопрос возник из наблюдения, что при наличии таких правил, они перекрывают друг друга вплоть до неработоспособности.
Например:
Дают такой результат:
т.е. второе из двух правил ' "<![CDATA[" "]]>" ' уже не работает, фолдинг по этим строкам (кроме непосредственно вложенных в родителя с RuleID = 3) срабатывает по другим правилам...
Что-то тут меня "осенило" , наверное, нужна не просто подсветка, а подсветка синтаксиса? Тогда, можно добиться максимум
т.е., подсветка атрибутов слева от "=", всё же ломается, т.к. при использовании внешнего .coder, перестают работать RuleID-ParentID... ну и ">" тоже победить не удалось, увы. js.coder+xml.coder
Позвольте спросить, какой стиль был взят за основу для внутреннего движка? Во всех реализациях, которые я видел, "." обозначает любой символ за исключением \r\n.
Wio wrote:Во всех реализациях, которые я видел, "." обозначает любой символ за исключением \r\n.
AkelHelp-Rus.htm wrote:
(?s) точка '.' соответствует любому одиночному символу (по умолчанию).
(?-s) точка '.' соответствует любому одиночному символу, кроме символа новой строки.