Hotkeys plugin

Discuss and announce AkelPad plugins
  • Author
  • Message
Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

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

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

Post by Instructor »

Добавлено: сохранение ширины колонок.

Added: column width saving.


Hotkeys plugin v2.6

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

Post by Instructor »

Добавлено: в диалог "Все клавиши" - отображение всех IDM_ команд.
Добавлено: в диалог "Все клавиши" - при двойном клике по пункту, его информация копируется в поля ввода основного диалога.
Добавлено: методы OpenFile() и SaveFile().
Добавлено: возможность использования Esc-последовательностей в методе Insert().
Добавлено: иконка для плагина.

Added: in dialog "All Keys" - all IDM_ commands displaying.
Added: in dialog "All Keys" - double click on the item copies its information into the input fields the main dialog.
Added: methods OpenFile() and SaveFile().
Added: ability to use Esc-sequences in the Insert() method.
Added: icon for plugin.


Hotkeys plugin v2.7

Offline
Posts: 876
Joined: Tue Jul 24, 2007 8:54 am

Post by Fr0sT »

По поводу команды Insert: вещь отличная, но хотелось бы ещё вот таких фишек:
* Возможность указать символ | для отметки, куда будет помещён курсор после вставки
* Escape символ типа \i (input), который будет запрашивать текст путём InputDialog.

В этом случае будет шикарно вводить теги: повесить на хоткей замену
Insert("<\i>\s|</i>", 1)
а пользоваться так: выделил текст (опционально), нажал хоткей, ввёл тег - получил два тега с курсором между ними и ранее выделенным текстом (если был).

Offline
Posts: 1862
Joined: Mon Aug 06, 2007 1:07 pm
Contact:

Post by Infocatcher »

Для вдохновения на тему Insert: http://wincmd.ru/plugring/askparam.html
То есть что-то вроде
<флаг1>"Заголовок окна с запросом" <флаг2>"Текст вопроса" <флаг3>"Строка для вставки с заменой чего-нибудь вроде %1 на введенный текст"

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

Post by Instructor »

Fr0sT
Infocatcher
Все это и даже больше реализуется каким-нибудь маленьким скриптом, принимающим тег открытия и тег закрытия через параметры.

Code: Select all

-"Tag" Call("Scripts::Main", 1, "Tag.js", "<\i>", "</i>")
или сразу все

Code: Select all

-"Tag" Call("Scripts::Main", 1, "Tag.js", `"<\i>\s|</i>"`)
А делать из Insert второй Scripts не вижу необходимости.

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

Post by Instructor »

Исправлено: \s в методе Insert().

Fixed: \s in Insert() method.


Hotkeys plugin v2.9

Offline
Posts: 876
Joined: Tue Jul 24, 2007 8:54 am

Post by Fr0sT »

Instructor, Скрипты, конечно, хорошая штука, но встроенные решения как-то ближе и родней :). Ну хотя бы передвижение курсора можно сделать? :)

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

Post by VladSh »

Fr0sT
А зачем там установка курсора, если мы уже изначально выделяем текст, которой нужно заключить в тэги? Т.е. дописываться это вряд ли будет..

Это можно было бы элегантно реализовать, используя AutoComplete (там внутри есть установка курсора) + вот эту идею, т.е. из менюх или по комбинации клавиш (Hotkeys-плагин) вызывать для таких сложных случаев не Insert, а Coder::AutoComplete(...).

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

Post by VladSh »

VladSh wrote:Fr0sT
А зачем там установка курсора, если мы уже изначально выделяем текст, которой нужно заключить в тэги? Т.е. дописываться это вряд ли будет..
Немного погорячился.
Оказывается иногда вызываешь команду без выделенного текста (текст находится в буфере обмена), и вставить его потом быстро не получается, т.к. курсор стоит вот так:
<b></b>|
видимо надо ставить его сразу же перед закрывающим тэгом, например так (без выделенного текста):
<b>|</b>
а для выделенного текста:
<b>выделенный текст|</b>

Всё остальное, что я писал выше, в силе.

KDJ
Offline
Posts: 1949
Joined: Sat Mar 06, 2010 7:40 pm
Location: Poland

Post by KDJ »

Can I remove the keyboard shortcut "Alt+W" using Hotkeys plugin?
Now the shortcut is assigned to the command(4122).
I would like to use this shortcut to call the main menu option "&Window".
By simultaneously pressing "Alt+W".
Not by a separate pressing "Alt" and then "W".

Offline
Posts: 2247
Joined: Tue Aug 07, 2007 2:03 pm
Location: Vinnitsa, Ukraine

Post by FeyFre »

KDJ
Only way you can do it is to edit build-in Accelerator table of AkelPad.
1. Run Resource Hacker
2. Open AkelPad.exe file
3. In Tree find Accelerators category, and open subnodes 1302 -> 1033
4. On the right hand you will see text like

Code: Select all

1302 ACCELERATORS
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
{
	VK_0, 4179, NOINVERT, CONTROL, VIRTKEY
	VK_5, 4180, NOINVERT, CONTROL, VIRTKEY
5. Find there line

Code: Select all

	VK_W, 4122, NOINVERT, ALT, VIRTKEY
and completely remove it(or you can rebind 4122 command to other combination)
6. Click "Compile Script" button
7. Save file.

KDJ
Offline
Posts: 1949
Joined: Sat Mar 06, 2010 7:40 pm
Location: Poland

Post by KDJ »

Thanks FeyFre.
In this way, I transformed Polish.dll file.
But it would be good to let AkelPad program unlock these keyboard shortcuts (Alt+letter - B, D, K, L, U, W, P, R, V). They are used to trigger options from the main menu.
Often, mistakes occur.
For example, pressing Alt+W, instead of open the menu "Window", transforms the file to ANSI.

Offline
Posts: 2247
Joined: Tue Aug 07, 2007 2:03 pm
Location: Vinnitsa, Ukraine

Post by FeyFre »

For example, pressing Alt+W, instead of open the menu "Window", transforms the file to ANSI.
Accidentally pressed SHIFT? (Alt+Shift+W is "Save As ANSI" command and everybody sometimes have lame hands :wink:)

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

Post by Instructor »

KDJ
Press Alt release it and press W.
Post Reply