Coder plugin (2)
- Author
- Message
-
Offline
- Posts: 202
- Joined: Sat Mar 28, 2015 2:36 pm
- Location: Russia
-
Offline
- Posts: 202
- Joined: Sat Mar 28, 2015 2:36 pm
- Location: Russia
Instructor
Заранее прошу прощения. Не умею я, наверное, быть лаконичным.
Проверял на js.coder и AkelPad.ini. Список из корневых узлов отображается. Вот только проблема с последним узлом.
Свернутых узлов у меня три (AkelPad.ini):
[Options]
[Plugs]
[Themes]
Если щелкнуть под [Themes], в любом месте, то этот узел откроется с выделенным текстом от щелчка и до конца документа.
или
Нажать Ctrl+End узел [Themes] откроется, но для перехода в конец документа надо еще раз нажать Ctrl+End.
Если каретка на последней пустой строке, то последний узел не закроется. Если на самом узле или его параметрах - закрывается, но не для js.coder.
Там "Blocks:" закрывается только до первой пустой строки (хотя, пока щелкал туда сюда конец блока был за "while ($[]);" из "$~do" и перепрыгнул на последнюю "}" из "$~for").
Еще раз простите за весь этот бред
Заранее прошу прощения. Не умею я, наверное, быть лаконичным.
Проверял на js.coder и AkelPad.ini. Список из корневых узлов отображается. Вот только проблема с последним узлом.
Свернутых узлов у меня три (AkelPad.ini):
[Options]
[Plugs]
[Themes]
Если щелкнуть под [Themes], в любом месте, то этот узел откроется с выделенным текстом от щелчка и до конца документа.
или
Нажать Ctrl+End узел [Themes] откроется, но для перехода в конец документа надо еще раз нажать Ctrl+End.
Если каретка на последней пустой строке, то последний узел не закроется. Если на самом узле или его параметрах - закрывается, но не для js.coder.
Там "Blocks:" закрывается только до первой пустой строки (хотя, пока щелкал туда сюда конец блока был за "while ($[]);" из "$~do" и перепрыгнул на последнюю "}" из "$~for").
Еще раз простите за весь этот бред
-
Offline
- Site Admin
- Posts: 6411
- Joined: Thu Jul 06, 2006 7:20 am
Верно. Выделение произойдёт только, если не сразу отжать левую кнопку, т.к. при клике ниже последнего свернутого блока произойдет перевод каретки в конец документа и, если левая кнопка продолжает удерживаться, то происходит выделение.Kley wrote:Если щелкнуть под [Themes], в любом месте, то этот узел откроется с выделенным текстом от щелчка и до конца документа.
Поправлено. Можно обновить плагин.Там "Blocks:" закрывается только до первой пустой строки...
По-моему всё весьма конструктивно.Еще раз простите за весь этот бред
Добавлено:
См. Coder v16.8.Нажать Ctrl+End узел [Themes] откроется, но для перехода в конец документа надо еще раз нажать Ctrl+End.
ТестоваяЕсли каретка на последней пустой строке, то последний узел не закроется.
-
Offline
- Site Admin
- Posts: 6411
- Joined: Thu Jul 06, 2006 7:20 am
Изменено: прокрутка к каретке, когда она находится внутри разворачиваемого блока.
Changed: scroll to caret when caret is inside expanding fold.
Coder plugin v16.8
Changed: scroll to caret when caret is inside expanding fold.
Coder plugin v16.8
-
Offline
- Posts: 582
- Joined: Mon Apr 08, 2013 9:50 pm
- Location: Win7SP1x64, APx64
У меня аналогичная проблема, но эта назойливая прокрутка происходит при любом клике ниже последнего свёрнутого блока: как при минимально коротком клике, так и при долгом.Instructor wrote:Верно. Выделение произойдёт только, если не сразу отжать левую кнопку, т.к. при клике ниже последнего свернутого блока произойдет перевод каретки в конец документа и, если левая кнопка продолжает удерживаться, то происходит выделение.Kley wrote:Если щелкнуть под [Themes], в любом месте, то этот узел откроется с выделенным текстом от щелчка и до конца документа.
Раньше такого поведения не было, а нынешнее поведение лично меня раздражает
-
Offline
- Site Admin
- Posts: 6411
- Joined: Thu Jul 06, 2006 7:20 am
Drugmix
О какой прокрутке речь? То что вы процитировали относится к выделению.
Добавлено:
О какой прокрутке речь? То что вы процитировали относится к выделению.
Добавлено:
См. Coder v16.9Kley wrote:Такая вот ситуация: где-то в тексте есть Function(); (курсор на Function). Далее в тексте:
function MainFunction() {...
и
function Function() {...
При вызове Call("Coder::CodeFold::FindRootLevel") переход происходит на MainFunction с выделением Function.
В этом примере вообще перейдет на function. Мне кажется, было бы неплохо переходить на "слово целиком" и "c учетом регистра".
-
Offline
- Site Admin
- Posts: 6411
- Joined: Thu Jul 06, 2006 7:20 am
Добавлено: возможность искать корень с опциями "Учитывать регистр" и "Слово целиком".
Added: possibility to search root with options "Match case" and "Whole word".
Coder plugin v16.9
Added: possibility to search root with options "Match case" and "Whole word".
Coder plugin v16.9
-
Offline
- Posts: 582
- Joined: Mon Apr 08, 2013 9:50 pm
- Location: Win7SP1x64, APx64
Да, я прежде всего имел в виду выделение, но в определённых случаях происходит и прокрутка: если последний блок достаточно длинный, то он раскрывается весь, а выделение в нём выставляется так, что оно начинается с позиции курсора и заканчивается в конце документа.Instructor wrote:Drugmix
О какой прокрутке речь? То что вы процитировали относится к выделению.
Чтобы вернуть окно к предыдущему состоянию (свернуть обратно этот блок) - приходится крутить окно вверх (иногда даже на несколько экранов, если последний свёрнутый блок достаточно длинный).
Можно это поведение как-то убрать? Такое выделение считаю очень неочевидным и неудобным.
Более того, вы в предыдущем сообщении говорили, что выделение должно происходить только при длинном клике, а у меня оно и при коротком происходит.
-
Offline
- Posts: 582
- Joined: Mon Apr 08, 2013 9:50 pm
- Location: Win7SP1x64, APx64
у меня новый кодер-плагин ругается на старые кодер-файлы:
В правилах
Что в них не так? Что изменилось в regex parsing'е?
Code: Select all
"ahk.coder" contain non valid regular expression "^\s*+(:)((?:\*|?|B0|C|C1|K\d++|O|P\d++|R|S(?:I|P|E)|Z)*)(:)(.*?)(::)\s*+(.*)\s*+((?<=\s);.*)?+$"
"ahk.coder" contain non valid regular expression "(>|>=|<|<=|==|<>|!=|AND|&&|OR|\|\||NOT|~=|?|:(?!=))?+"Code: Select all
0 `^\s*+(:)((?:\*|?|B0|C|C1|K\d++|O|P\d++|R|S(?:I|P|E)|Z)*)(:)(.*?)(::)\s*+(.*)\s*+((?<=\s);.*)?+$` `\1=(0,${OP},0) \2=(0,${TYPE},0) \3=(0,${OP},0) \4=(0,${STR},0) \5=(0,${OP},0) \6=(0,${STR},0) \7=(3,${COMM},0)` 0 0
0 `(>|>=|<|<=|==|<>|!=|AND|&&|OR|\|\||NOT|~=|?|:(?!=))?+` `\1=(0,${IF},0)` 0 0-
Offline
- Posts: 202
- Joined: Sat Mar 28, 2015 2:36 pm
- Location: Russia
Instructor
AkelPad 4.9.7 (x86) dev, Coder v16.9 (Win7)
Пожалуй мало что изменилось со времени моего последнего сообщения (Sun Sep 20, 2015 1:16 pm).
Давайте понемногу. Самое неудобное поведение программы (для меня):
открыт cpp.coder, все блоки свернуты (кстати последний ("Blocks:") свернут опять же до первой пустой строки);
19 строка с "Files:" - первая видимая строка; каретка где-нибудь, скажем на слове "CompleteList:";
выполняем команду Call("Coder::CodeFold::AllCollapse") для разворота всех блоков.
19 строка с "Files:" - опять же первая видимая строка. Каретка улетела куда-то вниз.
Обязательно должна быть прокрутка скрола до позиции каретки.
AkelPad 4.9.7 (x86) dev, Coder v16.9 (Win7)
Пожалуй мало что изменилось со времени моего последнего сообщения (Sun Sep 20, 2015 1:16 pm).
Давайте понемногу. Самое неудобное поведение программы (для меня):
открыт cpp.coder, все блоки свернуты (кстати последний ("Blocks:") свернут опять же до первой пустой строки);
19 строка с "Files:" - первая видимая строка; каретка где-нибудь, скажем на слове "CompleteList:";
выполняем команду Call("Coder::CodeFold::AllCollapse") для разворота всех блоков.
19 строка с "Files:" - опять же первая видимая строка. Каретка улетела куда-то вниз.
Обязательно должна быть прокрутка скрола до позиции каретки.
-
Offline
- Site Admin
- Posts: 6411
- Joined: Thu Jul 06, 2006 7:20 am
Видимо драйвер так отрабатывает. В любом случае в версии 17.0 убрана прокрутка для мыши (выделяться скорее всего у вас будет продолжать).Drugmix wrote:...а у меня оно и при коротком происходит.
Копируете выражение в диалог поиска - диалог показывает место ошибки.у меня новый кодер-плагин ругается на старые кодер-файлы
Skif_off
См. Coder 17.0.
Что не изменилось из того, что мной было заявлено?Kley wrote:Пожалуй мало что изменилось со времени моего последнего сообщения (Sun Sep 20, 2015 1:16 pm).
Убедитесь, что у вас обновляются .coder файлы. coder.coder должен содержать следующую строку:(кстати последний ("Blocks:") свернут опять же до первой пустой строки)
Code: Select all
424 0 0 0 "Blocks:" "EOF:" " " 0 0См. Coder 17.0.Обязательно должна быть прокрутка скрола до позиции каретки.
-
Offline
- Site Admin
- Posts: 6411
- Joined: Thu Jul 06, 2006 7:20 am
Изменено: прокрутка к каретке, когда она находится внутри разворачиваемого блока, только если выделение производилось с клавиатуры.
Изменено: прокрутка к каретке при разворачивании всех блоков.
Changed: scroll to caret when caret is inside expanding fold, only when selection done with keyboard
Changed: scroll to caret after expand all folds.
Coder plugin v17.0
Изменено: прокрутка к каретке при разворачивании всех блоков.
Changed: scroll to caret when caret is inside expanding fold, only when selection done with keyboard
Changed: scroll to caret after expand all folds.
Coder plugin v17.0