Page 2 of 40
Posted: Fri Dec 04, 2015 4:42 am
by Lenchik
А может быть нужен скрипт, который загружается при старте и проверяет всё время создаваемые вкладки на имя файла и если имя соответствует критериям, то запускает команду, а уже команда запускает нужный кодер?
Posted: Fri Dec 04, 2015 6:42 am
by Infocatcher
Skif_off
Так ведь первый вызов только для расширения работает:
(из Coder-Rus.txt)
Code: Select all
Call("Coder::Settings", 1, "EXTENSION")
Параметры:
1
Установить синтаксическую тему вручную, используя расширение.
Call("Coder::Settings", 6, "ALIAS")
Параметры:
6
Установить синтаксическую тему вручную, используя псевдоним.
Posted: Fri Dec 04, 2015 7:11 am
by Skif_off
Infocatcher
Прогнал, потому что в ini.coder временно закомментировал *.cfg и *.conf - сначала "работали" оба варианта

)
Lenchik
CmdLineBegin - это круто, но не хочу использовать, т.к. это замедлит начало работы с файлом: AkelPad всё равно включит подходящую тему, а потом при необходимости ещё раз переключит уже скриптом, но предварительно придётся ещё проверять, запущен ли плагин... Не хочу задержки, сам буду использовать только в крайнем случае. Да и объяснять, как использовать CmdLineBegin, не придётся

В таком виде тут работает волне корректно, главное, чтобы coder-файл шёл первым, а он будет первым наверняка, т.к. только
Infocatcher использует нижнее подчёркивание перед именем.
Posted: Mon Dec 07, 2015 5:03 pm
by Instructor
kuchkan wrote:С последними css.coder перестала нормально работать автоматическая подсветка выделенного, если в выделенном есть пробел или двоеточие (возможно, другие символы). В версии от 18.09.2014 всё нормально.
Не воспроизводится. Оповестите, если это будет продолжаться после релиза 4.9.7.
Posted: Mon Dec 07, 2015 9:43 pm
by kuchkan
Instructor
Заметно, что цвет текста меняется, а фон исчезает:
с запятыми тоже проблема:
На Win8 всё тоже самое.
Чистый AkelPad 4.9.6 32-bit, не на системном разделе, настройки в ini.
В json.coder тупо удалил 114 строку:
и пока всё нормально... С css такое не прокатило))
Posted: Tue Dec 08, 2015 8:10 am
by clever_man
Добрый день!
Хочу сделать чтобы подсвечивалось таким образом:
(Just a comments)
SETMS(1,2,3,4)
Пробовал так:
Code: Select all
Quotes
5 0 ${COMM} 0 `(` `)` "" "" "" -1 0
5 0 #3333CC 0 `(` `)` "" "" "" 100 0
QuotesRE
0 `(SETMS.*$)` `\1=(0,#800000,0)` 0 100
Получается вот так:
(Just a comments)
SETMS(1,2,3,4)
Вполне возможно неправильно понимаю возможности ParentID
Posted: Tue Dec 08, 2015 8:55 am
by DV
clever_man wrote:
Code: Select all
0 `(SETMS.*$)` `\1=(0,#800000,0) \2=(0,#3333CC,0)` 0 100
Чисто по регулярке: что такое \2, если группа (в скобках) всего одна?
Возможно, вы имели в виду `(SETMS)(.*)$`?
Posted: Tue Dec 08, 2015 9:29 am
by clever_man
DV, туплю, этого нет, да и группы там второй нет. Бесполезная часть)
Posted: Tue Dec 08, 2015 5:32 pm
by Instructor
clever_man
В AkelPad 4.9.7 указанные правила будут подсвечивать, так как вы и желаете.
Posted: Tue Dec 08, 2015 7:32 pm
by yozhic
Instructor
В продолжение
этого случая. Как Вы и сказали, указал стиль (оформил) для первого правила и связка заработала:
16389 1 0 0 "[ex]" "[ex]" "\" "" "" 0 0
16389 3 #777777 #DDFFFF "[ex]" "[/ex]" "\" "" "" 0 0
Но затем я назначил Rule ID второму правилу,
16389 1 0 0 "[ex]" "[ex]" "\" "" "" 0 0
16389 3 #777777 #DDFFFF "[ex]" "[/ex]" "\" "" "" 0 33
и связка перестала работать, т.е. стала отображать подсветку как на картинке по ссылке выше. В описании правил ничего не говорится о подобном влиянии Rule ID на обработку правил. Или я опять всё неправильно понял?
Posted: Wed Dec 09, 2015 7:28 am
by clever_man
Instructor wrote:clever_man
В AkelPad 4.9.7 указанные правила будут подсвечивать, так как вы и желаете.
Огромное спасибо, буду ждать.
Еще одна непонятка.
Создал правило:
Code: Select all
QuotesRE
0 `([A-CX-ZJ-K])(-?\d{0,4}\.?)` `\1=(0,#CC0000,0) \2=(0,#3333CC,0)` 0 0
При тесте все находит как надо, однако в редакторе все что со знаком "-" игнорируется:

Кстати, а вот такой (более расширенный) нормально отрабатывается:
Code: Select all
([A-CX-ZJ-K])(-?\d{0,4}\.\d{0,4}|-?\.\d{0,4})
Еще пример, когда при тесте отрабатывает, а в редакторе нет:
Code: Select all
QuotesRE
0 `([A-CX-ZI-K]|CR=)(-?\d{1,4}\.?\d{0,4}|-?\.\d{1,4})` `\1=(0,#CC0000,0) \2=(0,#3333CC,0)` 0 0


PHP: подсветка многострочных строк
Posted: Wed Dec 09, 2015 9:25 pm
by beotiger
Как ни тупо выглядит тема, но проблема есть у меня:
в PHP возможно разбивать строку (всё, что включено в кавычки " или ') на сколько угодно строк.
В Coder'e такая вещь не подсвечивается, то есть подсвечивается только однострочные строки (в кавычках), а если строка разбита хотя бы на две строки, то подсветка исчезает.
Вопрос: как пофиксить? Часовой шерстинг по php.coder и html.coder не помог решить проблему.
Posted: Thu Dec 10, 2015 6:50 am
by Skif_off
Таки должен заметить, что просто в восторге от новых фич плагина (точнее, то, что понял), собирался переделывать scheme.coder (Scheme - это много-много скобочек) с нуля, не устраивает, начал и рад, что не щенок - сидел бы в луже...
beotiger
Есть вариант перенести правило с кавычками в Folds, отлично работает, но будут сюрпризы с вложенными кавычками, если попадуться (в Scheme такая же беда, пока отложил поиск решения).
Code: Select all
;262657=1+512+262144
262657 3 ${STR} 0 `"` `"` "" 0 0
(define print-style
"
<style type=\"text
/css
\" media=\"screen
, projection
\">
<!--
title {
text-align: center;
width: 50%;
color:red;
background-color: white;
border: thick double blue;
font: bold 36pt \"Helvetica
\", sans-serif;
}
green {
color: black;
background-color: lightgreen}
-->
</style>
")
Posted: Thu Dec 10, 2015 7:43 am
by beotiger
Есть вариант перенести правило с кавычками в Folds, отлично работает, но будут сюрпризы с вложенными кавычками, если попадуться (в Scheme такая же беда, пока отложил поиск решения).
Code: Select all
;262657=1+512+262144
262657 3 ${STR} 0 `"` `"` "" 0 0
Благодарю, да, изменения есть, почти как мне надо.
Я закомментил две строчки в
php.coder в секции Quotes:
Code: Select all
;5=1+4+1024
;5 3 ${STR} 0 '"' '"' "\" "" "" 0 0
;5=1+4
;5 3 ${STR} 0 "'" "'" "\" "" "" 0 0
;5=1+4
и добавил две волшебные строчки в секции Folds:
Code: Select all
262657 3 ${STR} 0 '"' '"' "" 0 0
262657 3 ${STR} 0 "'" "'" "" 0 0
Да, текст в экранированных кавычках выводится без подсветки, но это ладно, зато его можно визуально отслеживать.
А вот как ещё определение переменных в двойных кавычках добавить:
Тут $name - переменная PHP и по идее должна быть выделена цветом (NPP выделяет нормально, правда у него глюк с фигурными скобками, то есть переменная в
для него потеряна).
Есть ли какой способ также легко разрулить это при помощи php.coder,
и где найти нормальную справку по правилам
Coder?
В файле плагина
Coder-Rus.txt в папке
Docs я не нашёл достаточного объяснения принципа работы
Coder'а и парсинга
.coder файлов.
Posted: Thu Dec 10, 2015 10:18 am
by Skif_off
beotiger
Ход конём, спасибо, что навели на мысль:
Code: Select all
;3408385=1+512+262144+1048576+2097152
3408385 3 ${STR} 0 `(?<!\\)"` `(?<!\\)"` "" 0 0