Как-нибудь можно в синтакс-файле прописать, чтоб двойные кавычки внутри строки расценивались как простой символ? Если, например, хочется, чтоб в C# строки с префиксом @ подсвечивались иначе, чем без оного.
Если прописываю кавычки как эскейп-символ внутри строк, начинающихся и кончающихся ими же, то Акел как-то неадекватно сие воспринимает, а если оставляю пустым, то двойные кавычки интерпретируются как конец одной строки и начало другой, т.е. нужный цвет слетает.
PS: Какую функцию в секции Quotes несут include/exclude я вообще не понял.
Posted: Thu Aug 09, 2012 6:36 pm
by Instructor
F. Phoenix
Конкретный пример?
Posted: Thu Aug 09, 2012 7:13 pm
by F. Phoenix
В шарпе префикс @ перед строкой отключает обработку \ как эскейп-символа, но символ кавычек в строке можно использовать, набирая его дважды.
Например, команду запуска c:\my_folder\my_program.exe --open-file="d:\my_file.txt" \k можно прописать так:
var command = @"c:\my_folder\my_program.exe --open-file=""d:\my_file.txt"" \k";
ну и вот, а как в синтакс-файле такое поведение прописать, чтоб воспринимал сие как одну строку, а не 3?
Posted: Sat Aug 11, 2012 2:40 pm
by Instructor
F. Phoenix
Сейчас только тремя строками.
Posted: Thu Aug 16, 2012 9:56 am
by 230116885
Может ли плагин так:
Posted: Thu Aug 16, 2012 2:52 pm
by Instructor
230116885
Можно использовать вертикальную линию каретки:
Posted: Thu Aug 16, 2012 3:42 pm
by FeyFre
Ух ты! (с)
Раз уж Вы там код правите, то можно сразу же попросить: в AEN_PAINT добавить нотификацию после отрисовки линии? Я хочу в SpellCheck заиспользовать, но мне нужно именно после.
Posted: Thu Aug 16, 2012 4:05 pm
by Instructor
FeyFre
Не вижу практического смысла. Приходящее AEN_PAINT с AEPNT_DRAWLINE несет в AENPAINT все необходимые данные. Т.е., когда приходит AEN_PAINT с AEPNT_DRAWLINE, AENPAINT.hDC уже содержит строку, нарисованную редактором, и получатель может нарисовать в AENPAINT.hDC что-либо дополнительно.
Posted: Thu Aug 16, 2012 4:23 pm
by FeyFre
Instructor, пересмотрел - понял, это я стормозил. Переменная bUseBufferDC совсем мешает пониманию(если её FALSE то нотификация вообще не придет. Я так понимаю - буферизированное рисование. И только с ним нотификация придет - не порядок. С другой стороны буферизация в коде не отключается вообще - тогда зачем тот флаг. Потому я и спутал "копирование из буфера на окно" с действительным рисованием.)
Индекс первого символа линии которую перерисовывает тоже несет? А то я что-то в том коде теряюсь. А что на местах индексов в свёрнутой линии?
И да, очень бы не помешало что-бы регион был выставлен на границы линии. Или лучше самому ставить?
Posted: Thu Aug 16, 2012 8:04 pm
by se7h
Instructor wrote:230116885
Можно использовать вертикальную линию каретки:
и всё-таки упомянутая
удобней, ведь одновременно видны границы всех скобок кода
Posted: Fri Aug 17, 2012 9:25 am
by VladSh
230116885, se7h
Поддерживаю.
Может кто-то помнит, как быстро включить/выключить вертикальный маркер?
Posted: Fri Aug 17, 2012 10:17 am
by 230116885
Instructor
Это не совсем то. В Notepad++ реализовано. Ещё подкрашивание опциональное удобная штука очень.
Posted: Sun Aug 19, 2012 2:44 pm
by Lenchik
Coder 10.0 не "переваривает" новую группу параметров bkImage.
И хотелось бы примеров использования регулярных выражений в подсветке синтаксиса. Или может кто-то из сведущих переведет для начала, как это работает:
Потенциальные возможности заманчвы - перенос подсветок из систем подсветки на регулярных выражениях.
Posted: Sun Aug 19, 2012 3:42 pm
by Instructor
Lenchik wrote:Coder 10.0 не "переваривает" новую группу параметров bkImage.
Если указывается файл напрямую в .coder файле, то он должен заключатся в кавычки, т.к. это строка, а не число.
Posted: Sun Aug 19, 2012 4:01 pm
by Instructor
Изменено: игнорирование стиля шрифта теперь имеет три переключателя (Coder::Settings). Добавлено: секция "QuotesRE:" в .coder файлы - возможность использовать регулярные выражения для диапазонов (Coder::HighLight). Добавлено: секция "BkImage:" в .coder файлы и переменные "HighLight_BkImageFile", "HighLight_BkImageAlpha" для указания фоновой картинки, а также значения прозрачности выделения (Coder::HighLight). Добавлено: найти выделенное слово в заголовке корневого блока (F12). Может быть использовано для поиска определения функции (Coder::CodeFold).
Changed: font style ignoring setting now has three switches (Coder :: Settings). Added: section "QuotesRE:" in .coder files - ability to use regular expressions for quotes (Coder::HighLight). Added: section "BkImage:" in .coder files and variables "HighLight_BkImageFile", "HighLight_BkImageAlpha" to specify the background image, and also the selection transparency value (Coder::HighLight). Added: find selected word in the title of the root block (F12). It can be used to find the function definition (Coder::CodeFold).