Hotkey, HotkeyUp

Объявляют комбинацию клавиш, которая будет вызывать горячую клавишу.


Синтаксис

<Hotkey [модификаторы] список [; [модификаторы] список...]>

или

<HotkeyUp [модификаторы] список [; [модификаторы] список...]>


Параметры

Модификаторы - список дополнительно удерживаемых клавиш, разделённых пробелом. Каждый модификатор может являться:

  • Обычным: Shift, LShift, RShift, Ctrl, LCtrl, RCtrl, Alt, LAlt, RAlt.
  • Пользовательским: любая другая клавиша, объявленная ранее командой UseKeyAsModifier.
  • Переключаемым: CapsLockOn, CapsLockOff, ScrollLockOn, ScrollLockOff, NumLockOn, NumLockOff.

Вы можете применить в горячей клавише до одиннадцати модификаторов, но имейте в виду, что большинство клавиатур ограничивают одновременное нажатие больше пяти клавиш (шестая не будет отправлять сигнал).

Указывать модификаторы можно в любой последовательности.

Списком может являться отдельная клавиша без модификаторов либо список из таких клавиш. Список клавиш создаётся путём их перечисления через запятую или с помощью правил, применяемых в команде KeyList.


Примечания

Если вы указали больше одного триггера, HotkeyNet создаст для каждого из них отдельную горячую клавишу. Это удобно для отправки нажатий с помощью %Trigger%.

Чтобы узнать название клавиатурного сокращения, перейдите в главное окно HotkeyNet и нажмите на интересующую клавишу. Название вы увидите справа вверху в секции "Last key press".

Разница между Hotkey и HotkeyUp в том, произойдет ли действие, назначенное клавише, в момент нажатия или в момент её отпускания. Например, если вы напишите так:

<Hotkey Shift Alt F3>

действие произойдет, когда будет нажата клавиша F3. Но если вы напишите вместо этого HotkeyUp, как тут:

<HotkeyUp Shift Alt F3>

действие произойдёт, когда клавиша F3 будет отпущена.

В большинстве случаев используется обычная форма написания Hotkey. Но для движения персонажей в играх используйте Hotkey и HotkeyUp вместе. Более подробно это описывается на странице Основы написания скриптов HotkeyNet.


Распространённые заблуждения

Часто люди полагают, что триггер (комбинация кнопок, нажимаемая для вызова горячей клавиши) автоматически передается во все программы, которыми они пользуются. Это не так. HotkeyNet не делает это потому, что является программой для назначения горячих клавиш, а не для трансляции нажатий во все окна. Такие программы могут делать всё, что умеют трансляторы нажатий, и даже больше.

Если вы хотите, чтобы триггер передавался в активное окно, следует прямо сообщить об этом программе. HotkeyNet даёт возможность сделать это тремя способами: командой PassThrough, командой SendFocusWin или путём указания имени окна, так, как вы делаете это с любым другим окном.

Вот пример c командой PassThrough, в котором передаётся нажатие клавиши 3 на локальный и удалённый компьютеры:

<Hotkey 3>
<PassThrough>
<SendPC 192.168.1.103>
<SendWin MyGameWindow>
<Key 3>


Люди также часто полагают, что триггер, вызывающий горячую клавишу, должен совпадать с передаваемым в окна нажатием. Это не так. Чтобы убедиться в этом, взгляните на этот пример, в котором горячая клавиша вызывается нажатием клавиши 3, но передаёт нажатие клавиши 4:

<Hotkey 3>
<SendPC local>
<SendWin MyGameWindow>
<Key 4>


Примеры

Вот простой пример без модификаторов:

<Hotkey F1>
<Key %Trigger%>


Следующий пример содержит один обычный модификатор:

<Hotkey RCtrl F1>
<Key %Trigger%>


В следующей горячей клавише применён пользовательский модификатор:

<UseKeyAsModifier Esc>

<Hotkey Esc F1>
<Key %Trigger%>


С такой комбинацией переключаемых модификаторов триггер F1 сработает только когда NumLock включен, а ScrollLock выключен:

<Hotkey NumLockOn ScrollLockOff F1>
<Key %Trigger%>


Этот пример создаёт горячие клавиши для каждой буквы между A и Z, кроме буквы J:

<Hotkey A-Z except J>
<Key %Trigger%>


Далее пример создания горячих клавиш для всех букв между A и Z и для тех же самых букв, нажимаемых с модификатором Shift:

<Hotkey A-Z; Shift A-Z>
<Key %Trigger%>


А здесь вы видите, как назначается список горячих клавиш, дополненный тремя модификаторами:

<KeyList MyList A-Z, 0-9>

<Hotkey Shift MyList; Alt MyList; Ctrl MyList>
<Key %Trigger%>

 


Связанные элементы