Не знаю, как там работает, но, думается, с чем-нибудь вроде «(.{0,16}::)?» должно быть быстрее. И, наверное, можно и набор символов ограничить («\w» вместо «.», например).Drugmix wrote:Правда, перед :: могут быть только хоткеи, а не всё что угодно, но если я добавлю ещё и проверки "является ли набранное хоткеем?", то правила распухнут в сотни раз.
Coder plugin (2)
- Author
- Message
-
Offline
- Posts: 1862
- Joined: Mon Aug 06, 2007 1:07 pm
- Contact:
-
Offline
- Posts: 582
- Joined: Mon Apr 08, 2013 9:50 pm
- Location: Win7SP1x64, APx64
Я не в курсе как устроена обработка RegExp'ов в AkelPad, если Instructor подтвердит, что .{0, n} работает быстрее, чем .* - то я попробую вычислить максимально возможный n (по моей предварительной примерной оценке n может достигать 36).Infocatcher wrote:Не знаю, как там работает, но, думается, с чем-нибудь вроде «(.{0,16}::)?» должно быть быстрее.
помимо \w там ещё возможны: #!^+&<>*~$ и пробельные символы (пробел и таб).Infocatcher wrote:И, наверное, можно и набор символов ограничить («\w» вместо «.», например).
-
Offline
- Posts: 1161
- Joined: Sun Oct 20, 2013 11:44 am
Coder-файлы для KiXtart, LaTeX и BibTeX, спасибо, Lenchik, что приютил :)
-
Offline
- Posts: 1161
- Joined: Sun Oct 20, 2013 11:44 am
Instructor
Пробовал, такое
работает, если убрать \ и { из секции Delimiters.
А это
не работает независимо от наличия/отсутствия \ и { в Delimiters.
Пробовал, такое
Code: Select all
$~\begin{center}
\begin{center}$[]
А это
Code: Select all
$=\begin{center}
\begin{center}$[]
-
Offline
- Site Admin
- Posts: 6311
- Joined: Thu Jul 06, 2006 7:20 am
Skif_off
viewtopic.php?p=22308#p22308
viewtopic.php?p=22308#p22308
-
Offline
- Posts: 582
- Joined: Mon Apr 08, 2013 9:50 pm
- Location: Win7SP1x64, APx64
Instructor
а возможно ли как-то добавить поддержку Delimiters и для $~?
Наглядный пример, когда бы это пригодилось:
очень не хватает поддержки в Blocks фраз, содержащих пробелы: сейчас приходится выкручиваться используя спец.символ " " вместо пробела.
Соответственно, аббревиатура срабатывает только пока пользователь вписывает первое слово из конструкции, а как только он допишет первое слово до конца и напечатает пробел - подсказки скрываются.
Уж если не добавлять поддержку всех разделителей для $~, так может можно хотя бы приравнять спец.символ " " (если он из секции Blocks в coder файле) к пробелу при печати в документе?
а возможно ли как-то добавить поддержку Delimiters и для $~?
Наглядный пример, когда бы это пригодилось:
очень не хватает поддержки в Blocks фраз, содержащих пробелы: сейчас приходится выкручиваться используя спец.символ " " вместо пробела.
Соответственно, аббревиатура срабатывает только пока пользователь вписывает первое слово из конструкции, а как только он допишет первое слово до конца и напечатает пробел - подсказки скрываются.
Уж если не добавлять поддержку всех разделителей для $~, так может можно хотя бы приравнять спец.символ " " (если он из секции Blocks в coder файле) к пробелу при печати в документе?
-
Offline
- Posts: 874
- Joined: Sat Jan 16, 2010 2:03 pm
Это да, но есть интересная особенность exact abbreviation - само автодополнение работает (по хоткею Ctrl+Space), но вот "окошко выбора варианта" не появляется, что и дает основания заявлять, что "что-то не так". Ну и отсутствие "окошка выбора варианта" под курсором заставляет помнить все такие abbr, а это практически не реально.Instructor wrote:Skif_off
viewtopic.php?p=22308#p22308
-
Offline
- Site Admin
- Posts: 6311
- Joined: Thu Jul 06, 2006 7:20 am
Drugmix, opk44
AutoComplete работает так: при вызове "окошка выбора варианта", плагин ищет начало слова от каретки влево до первого встретившегося разделителя (из секции "Delimiters:" или из настроек программы, если снята галочка "Использовать разделители из синтаксической темы"). Далее данная часть слова используется для создания окошка со списком слов/аббревиатур.
Из вышеизложенного следует, что аббревиатуры, содержащие разделители, не могут быть выведены в "окошко выбора варианта" .
AutoComplete работает так: при вызове "окошка выбора варианта", плагин ищет начало слова от каретки влево до первого встретившегося разделителя (из секции "Delimiters:" или из настроек программы, если снята галочка "Использовать разделители из синтаксической темы"). Далее данная часть слова используется для создания окошка со списком слов/аббревиатур.
Из вышеизложенного следует, что аббревиатуры, содержащие разделители, не могут быть выведены в "окошко выбора варианта" .
-
Offline
- Posts: 582
- Joined: Mon Apr 08, 2013 9:50 pm
- Location: Win7SP1x64, APx64
Instructor
а разве нельзя сделать так, чтобы плагин после того, как дошёл до первого разделителя и не нашёл совпадений (чтобы вывести варианты автозавершения) не переставал искать, а продолжал бы сдвигаться влево выполняя поиск снова и снова после каждого встреченного разделителя, пока не упрётся в символ начала строки (или в символ начала документа, если каретка на первой строке)?
Мне кажется, это не должно сильно замедлить работу (зависит от того, как реализовано сравнение строки слева от каретки с фразами из списка).
а разве нельзя сделать так, чтобы плагин после того, как дошёл до первого разделителя и не нашёл совпадений (чтобы вывести варианты автозавершения) не переставал искать, а продолжал бы сдвигаться влево выполняя поиск снова и снова после каждого встреченного разделителя, пока не упрётся в символ начала строки (или в символ начала документа, если каретка на первой строке)?
Мне кажется, это не должно сильно замедлить работу (зависит от того, как реализовано сравнение строки слева от каретки с фразами из списка).
-
Offline
- Posts: 582
- Joined: Mon Apr 08, 2013 9:50 pm
- Location: Win7SP1x64, APx64
Skif_off
только не "или", а "и". Если их просто игнорировать, то плагин будет копировать текст для сравнения аж до самого начала файла, о чём и рассказал Instructor.
А если сделать как я описал и + добавить возможность выбирать то, что считать разделителем (конкретно для секции Blocks:), а что нет - вот это будет супер.
только не "или", а "и". Если их просто игнорировать, то плагин будет копировать текст для сравнения аж до самого начала файла, о чём и рассказал Instructor.
А если сделать как я описал и + добавить возможность выбирать то, что считать разделителем (конкретно для секции Blocks:), а что нет - вот это будет супер.
-
Offline
- Posts: 3217
- Joined: Wed Nov 29, 2006 1:19 pm
- Location: Киев, Русь
- Contact:
Подскажите пожалуйста, чем "быстрый" от "умного" кэша отличается? И можно ли добавить это в доку?
Похоже баг: при закрытии программы выбранная подсветка (как я понимаю, галка "псевдоним coder-файла") для открытого файла сохраняется, а при закрытии файла с помощью Esc или дабл-кликом по вкладке - нет.
Похоже баг: при закрытии программы выбранная подсветка (как я понимаю, галка "псевдоним coder-файла") для открытого файла сохраняется, а при закрытии файла с помощью Esc или дабл-кликом по вкладке - нет.