Skip to main content

Hotkeys

A hotkey is a trigger on an action: a key combination that runs the action. There is no separate hotkeys page. You add a hotkey to an action on the Actions page, next to its gestures and typed text. One action can have several triggers of any kind.

Add a hotkey to an action​

Input.ObserverSimpleAdvanced
AUTOMATION
Actions
Text expansion
Snippets
Recorder
Sandbox
App groups
Ignore groups
Gestures
ENGINE
Global events
Exclusion zones
Scripts
Plugins
SETUP
General
Appearance
Profiles
Console
Security
Help
About
Actions
Open notes
Close tab
Actions
Triggers
+ Gesture
+ Hotkey
+ Text expansion
HOTKEYCtrl+Shift+N
Key combination
Ctrl+Shift+N
Registered
Held modifier keys
Release, then restoreLeave held
  1. On the Actions page, choose the app group in App group, then select the action (or create one).
  2. In the Triggers card, click + Hotkey ①.
  3. Click the Key combination field ②. It shows Press a key combo… while it waits.
  4. Press the combination, for example Ctrl+Shift+N. The field shows it.
  5. In Advanced mode, choose Registered ③ and Held modifier keys ④ (below).
  6. Save. The hotkey works once the engine has the saved configuration.

The trigger card's second line reads Reserved with Windows or Passive watch, the two kinds of hotkey (Reserved or passive).

note

Advanced mode. Registered, Swallow the final key and Held modifier keys are shown in Advanced mode only. In Simple mode a new hotkey is reserved with Windows and releases held modifier keys before its action runs. Simple mode never changes a value you set in Advanced mode.

Choosing the keys​

The key combination field records what you press instead of letting it act: Win+E doesn't open File Explorer while the field is waiting, and an existing hotkey doesn't run.

  • A combination is any number of modifiers (Ctrl, Shift, Alt, Win) and exactly one other key. Modifiers alone don't finish it; the field keeps waiting for the other key.
  • Any other key works as the final key, including function keys, the numeric keypad, and keys that have no name in the script key grammar.
  • A combination with no modifier, such as F9 alone, is allowed. A reserved one takes that key away from every program (Reserved or passive).
  • Escape with no modifier cancels and leaves the field unchanged. Escape with a modifier, such as Shift+Escape, is recorded.
  • Left and right modifier keys are the same modifier: a Ctrl+K hotkey runs for either Ctrl key.
  • The field records only while the configuration window is the active window. Clicking elsewhere stops recording.

Reserved or passive​

A hotkey is either reserved with Windows (Registered on, the default) or watched passively (Registered off).

Reserved with WindowsPassive watch
Does the program in front get the keys?Never, in any program.Yes, unless Swallow the final key is on and this hotkey's action applies to the window in front.
If another program has already reserved the same keysThis hotkey fails. Input.Observer reports it (Keys another program holds).Both run: the other program's shortcut and this action.
While the engine is disabled, or paused by an ignore groupThe keys are still taken from every program, and nothing runs.The keys reach programs normally, and nothing runs.
Best forKeys you want to belong to Input.Observer everywhere.Keys that should still work normally in programs where the action doesn't apply, or keys another program already reserves.

Reserving with Windows happens once for each distinct combination, each time the engine loads the configuration. It does not depend on which window is in front, which profile is active, or whether the action applies to the window in front. This is deliberate: reserving a hotkey is a choice to own those keys, so no other program can claim them later, and keeping the reservation avoids releasing and re-reserving keys on every change of window. So a reserved hotkey whose action belongs to another profile or another program still takes its keys and runs nothing. A combination is not reserved when every action using it is turned off, its app group is turned off, or Hotkeys work here is off for its group.

Swallow the final key​

For a passive-watch hotkey, Swallow the final key (on by default) keeps the last key of the combination from the program in front: its press, its key repeat and its release. Modifier keys always pass through. It applies only when this hotkey runs an action for the window in front; anywhere else the key goes through. A reserved hotkey doesn't show this choice, because Windows already keeps its keys.

Because the modifier keys pass through, Windows can still react to them on their own. With Alt or Win in a passive-watch combination, the program in front may see a lone Alt press and select its menu bar, or Windows may open the Start menu. Input.Observer can't fully prevent this. Reserve the combination with Windows, or choose one with Ctrl or Shift, if it happens.

Held modifier keys​

A hotkey runs while you still hold its modifier keys. An action that types text would otherwise type with Ctrl or Alt still down. Held modifier keys chooses between Release, then restore (the default for a new trigger) and Leave held. The full rules are in Modifiers and timing.

One run per press​

Holding a hotkey runs its action once. Windows' key repeat does not run it again; release the final key and press it again to run it again. This holds for both kinds of hotkey.

Which action runs​

A hotkey has no window under the pointer. It uses the window in front (the one with keyboard focus) at the moment you press the final key:

  1. If the window belongs to an ignore group, nothing runs. A reserved hotkey's keys are still kept from that window.
  2. If the window belongs to an app group with Hotkeys work here on and the group applies in the active profile, the first enabled action in that group, in match order, with this exact combination and kind of hotkey runs.
  3. If nothing in that group runs, the hotkey falls back to the Global group's actions, unless Fall back to Global is off for that group or on the General page.
  4. A window that belongs to no app group uses the Global group's actions directly.
  5. If nothing matches, nothing runs.

So one combination can run a different action in each app group, plus a Global action everywhere else. A reserved combination used in several groups is reserved only once. Scope and fallback are explained in full in Scope and fallback. Actions limited to certain profiles are skipped in other profiles (Profiles).

When hotkeys don't run​

No hotkey action runs:

  • while a gesture is being drawn;
  • while a macro is being recorded, or while gestures are being trained;
  • while the engine is disabled from the tray, or paused because a window with Pause everything while focused has focus (Ignore groups);
  • in Safe Mode, where no hotkey is reserved at all.

The stop-all-actions hotkey on the General page is the exception: it works in every one of these states except Safe Mode.

Conflicts​

The Action editor shows a banner on the trigger, and a dot on the action's row in the list, for each of these:

BannerWhat it means
Another action uses these keys hereTwo actions in the same app group have the same combination and kind. The one higher in the list runs; the other never runs for these keys. The banner says which one wins.
This key combination is used twiceThe same combination is reserved on one action and passive on another. Both may run for one key press. Resolve it by changing one of them.
These keys stop all actionsThe combination is the stop-all-actions hotkey on the General page. Pressing it stops every action instead of running this one.
Ctrl+Break stops a macro recordingA reserved Ctrl+Break hotkey keeps the recording stop key from working; stop recordings from the tray icon or the Recorder page instead.
Ctrl+Alt types characters on many keyboardsExactly Ctrl+Alt plus a character key. On keyboard layouts with an AltGr key, typing a character such as € or @ sets it off. Adding Shift avoids that.
No key setThe trigger has no combination yet and never runs.
Windows or another program already uses these keysSee Keys another program holds.

The same combination in two different app groups is not a conflict: the window in front decides which one runs (Which action runs).

Keys another program holds​

Only one program can reserve a combination with Windows. When the engine can't reserve one of your hotkeys, it shows one Configuration Warning message listing every combination it could not reserve, each time it loads the configuration (at startup, after a save or Reload Config). Those hotkeys don't work for that session. The Action editor marks them Windows or another program already uses these keys. Windows itself also reserves some combinations, such as Win+L.

To fix it, choose other keys, close the program that holds them and choose Reload Config from the tray menu, or turn Registered off to watch the keys passively instead.

If you have just changed or removed an action that used the keys, save first: Input.Observer keeps its own reservation until then.