SmartSel plugin

Discuss and announce AkelPad plugins
  • Author
  • Message
Offline
Posts: 267
Joined: Mon Mar 12, 2007 3:45 pm

Post by [Yustas.NeO] »

VladSh wrote:Спасибо, работает!
И всё-таки неплохо было бы добавить PgUp/Down, т.к. с помощью их тоже выделяем текст.
+1

DV
Offline
Posts: 1250
Joined: Thu Nov 16, 2006 11:53 am
Location: Kyiv, Ukraine

Post by DV »

И всё-таки неплохо было бы добавить PgUp/Down
SmartSel 2.2, ставим галочку на altSmartUpDown.

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

DV
Спасибо!
Оказывается "всё было украдено до нас"! :D

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

Опять всплыл старый баг - после ReplaceAll слетают закладки; сейчас после такой замены остаётся одна закладка на последней строке файла.

DV
Offline
Posts: 1250
Joined: Thu Nov 16, 2006 11:53 am
Location: Kyiv, Ukraine

Post by DV »

Точно без SmartSel не воспроизводится? Он, вроде, сейчас вообще глух ко всем внутренним операциям, реагируя только на явные нажатия клавиш (WM_(SYS)KEYDOWN, WM_(SYS)KEYUP, WM_LBUTTONDOWN и WM_LBUTTONUP). (Дополнительно отслеживается AEN_SELCHANGING - но, прежде чем вы закричите "ага!", я добавлю, что никаких действий при этом SmartSel не делает.)

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

DV
Верно, не воспроизводится! Прошу прошения что не в тему.
Возможно оно и раньше было не из-за этого, - симптомы те же.

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

Добавлено: SmartBackspace - при нажатии на клавишу Backspace, если слева от каретки находятся только пробельные символы, то происходит удаление пробельных символов слева до позиции ближайшего первого непробельного символа сверху.

Added: SmartBackspace - when Backspace key is pressed, if from left of the caret only whitespaces, then whitespaces are removed from left to the position of the nearest first non-space character atop.


SmartSel plugin v2.4

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

Instructor wrote:Добавлено: SmartBackspace - при нажатии на клавишу Backspace, если слева от каретки находятся только пробельные символы, то происходит удаление пробельных символов слева до позиции ближайшего первого непробельного символа сверху.
Почему-то начинает/заканчивает работать только после перезагрузки проги.

DV
Offline
Posts: 1250
Joined: Thu Nov 16, 2006 11:53 am
Location: Kyiv, Ukraine

Post by DV »

VladSh wrote:Почему-то начинает/заканчивает работать только после перезагрузки проги.
Не верю!
У меня не воспроизводится, да и по исходному коду там всё прозрачно.
Возможно, дело в какой-то комбинации настроек/плагинов/внешних условий?

Offline
Posts: 381
Joined: Wed Sep 28, 2011 3:05 pm

Post by Cuprum »

При включенном переносе по словам хочется чтоб Home и End перемещали курсор именно в пределах строки, а не линии (длинные строки могут состоять из нескольких линий). Может какой параметр добавить в Akelpad.ini ?

Offline
Posts: 582
Joined: Mon Apr 08, 2013 9:50 pm
Location: Win7SP1x64, APx64

Post by Drugmix »

Cuprum
проблема частично решается скриптами GoWrapLineEnd.js (и его копией для Home: 19 заменить на 18) и назначением их на Home и End, правда это не поможет при выделении по shift+home/end.

Offline
Posts: 874
Joined: Sat Jan 16, 2010 2:03 pm

Post by opk44 »

Cuprum
1.
Drugmix wrote:это не поможет при выделении по shift+home/end.
Кстати, да. Так что ежели рассматривать все в комплексе, то напрашивающиеся скриптовые решения не будут удовлетворять в полной мере. Разве что и на эти сочетания скрипты навесить.

2. От себя могу тоже предложить два скрипта назначить (от "GoWrapLineEnd.js" их отличает бОльшая "прозрачность".)
на [Home]:

Code: Select all

var WshShell=new ActiveXObject("WScript.shell");
WshShell.SendKeys("^{UP}");
на [End]

Code: Select all

var WshShell=new ActiveXObject("WScript.shell");
WshShell.SendKeys("^{DOWN}{LEFT}");
Т.е. вообще-то это были макросы, но их "текст" опубликовать проблематично.

Offline
Posts: 381
Joined: Wed Sep 28, 2011 3:05 pm

Post by Cuprum »

Drugmix
Да, понимаю что такое можно решить скриптом... Частично.
Есть еще один вариант, из моих фантазий :D - назначить дополнительные клавиши + параметр.
Например, пусть будет какой-то параметр, который равен 1. Это ничем не отличается от текущего поведения редактора.
При наличии переноса по словам home/end перемещают курсор по линиям, а допустим alt + home / alt + end - по строке. Так же и с выделениями.
Если параметр выставлен в 0, то наоборот, при наличии переноса home/end перемещают курсор по строке, alt + home / alt + end - по линиям. Меняются и клавиши для выделения: shift + (home/end) - строка, shift + alt + (home/end) - линия.

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

opk44 wrote:2. От себя могу тоже предложить два скрипта назначить (от "GoWrapLineEnd.js" их отличает бОльшая "прозрачность".)
Хорошо, но на корню рубит SmartSel::SmartHome/SmartEnd; скрипт, к сожалению, ведёт себя так же. Потому, наверное, лучше допилить скрипт (учитывать работу SmartSel::... и передавать параметром End (19) или Home(?)), и сажать на Alt+Home/End.

Добавлено: да, и от включения переноса по словам этот функционал никак не зависит, - бывает нужен и переход к концу "строки-линии", а бывает - к концу "строки-параграфа". Т.е. ещё один аргумент не смешивать , а разделить на разные комбинации клавиш.

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

Cuprum wrote:При включенном переносе по словам хочется чтоб Home и End перемещали курсор именно в пределах строки, а не линии (длинные строки могут состоять из нескольких линий).
Релизовано в SmartSel плагине. Будет доступно после релиза 4.9.1.
Post Reply