ScrollByKeyboard plugin

Discuss and announce AkelPad plugins
Post Reply
  • Author
  • Message
Offline
Posts: 46
Joined: Sun Aug 23, 2009 3:31 am
Location: Днепропетровск, Украина

ScrollByKeyboard plugin

Post by psa1974 »

The plugin carries out text scrolling by pressing of keys UP or DOWN with clamped key-modifier CTRL. /PROMT :)/

Плагин выполняет прокрутку текста при нажатии клавиш UP или DOWN с зажатой клавишей-модификатором CTRL. При прокрутке текста каретка остается на своей строке до тех пор пока не упрется в нижний/верхний край окна реадктирования. При наличии выделения, оно сохраняется. При достижении кареткой нижнего или верхнего края текст продолжает прокручиваться, однако каретка за пределы окна редактирования не выходит и остается на первой или последней видимой строке текста (если было выделение, очевидно, что при этом оно снимается). (Такое поведение присуще многим редакторам.)
Комбинация клавиш CTRL+DOWN/UP определена не жестко и ее можно менять через настройки.

Написан на Delphi.

http://akelpad.sourceforge.net/files/pl ... yboard.zip

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

Post by VladSh »

1. Прокрутка текста такая же, как и в голом AkelPad'е. Отличается только то, что курсор не прыгает в начало строки, когда символов мало или совсем нету.
2. Выделение сбрасывается сразу же (настроил на ALT), т.е. если при нажатой ALT нажать DOWN, то выделение сбрасывается, а не "едет" вверх.
Кроме п.1 смысла плагина не понял.

Offline
Posts: 46
Joined: Sun Aug 23, 2009 3:31 am
Location: Днепропетровск, Украина

Post by psa1974 »

VladSh

По поводу пункта 2:
ScrollByKeyboard-Rus.txt:
...и позволяет через диалог настроек определить любую другую комбинацию клавиш-модификаторов (не имеют эффекта только комбинации SHIFT+ALT+DOWN/UP и ALT+DOWN/UP)
По пункту 1: см. замечание по пункту 2 (с альтом в отдельности также как и с альт+шифт, плагин не работает). Я полагаю из-за того что альт используется для доступа к меню. Все отстальные комбинации работают.
Будет работать также, даже если выключить все три клавиши Ctrl, Shift, Alt - просто нажимая UP или DOWN текст будет прокручивается (применимость такого варианта сомнительна, однако он тоже работает).

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

Post by DV »

Для обработки сочетаний с клавишей Alt следует использовать WM_SYSKEYDOWN (наряду с WM_KEYDOWN для обычных сочетаний клавиш).

Offline
Posts: 46
Joined: Sun Aug 23, 2009 3:31 am
Location: Днепропетровск, Украина

Post by psa1974 »

DV

Не вопрос, поковыряем WM_SYSKEYDOWN :)

Offline
Posts: 46
Joined: Sun Aug 23, 2009 3:31 am
Location: Днепропетровск, Украина

Post by psa1974 »

ScrollByKeyboard v1.1
* Добавлена поддержка клавиши ALT
* Исправлена работа с AkelPad 3.7.3
* для AkelPad 3.7.3/4.3.1
http://akelpad.sourceforge.net/files/pl ... yboard.zip

Но, поскольку в плагине AutiScroll v2.8 добавлена поддержка функционала моего плагина :), поддержка ScrollByKeyboard прекращена.
Для реализации такого поведения с помощью AutoScroll плагина нужно в Hotkeys плагине добавить:

Code: Select all

"Вверх" Call("AutoScroll::Main", 4, -1, 2) Ctrl+Up 
"Вниз" Call("AutoScroll::Main", 4, 1, 2) Ctrl+Down
Post Reply