ShortcutRecorder icon indicating copy to clipboard operation
ShortcutRecorder copied to clipboard

Keys don't track input source

Open iandunn opened this issue 4 years ago • 2 comments

Hi, it looks like apps that use ShortcutRecorder can't automatically update shortcuts when the keyboard layout changes. All the other apps I use do.

Steps to reproduce:

  1. set a shortcut to ctrl-alt-t
  2. type ctrl-alt-t, it will fire the assigned action
  3. switch to Colemak (or Dvorak) - system preferences > keyboard > input sources
  4. type ctrl-alt-t (Colemak's t is where QWERTY places the f key), it won't fire the action
  5. type ctrl-alt-g (Colemak's g is where QWERTY places the t key), it will fire the action

iandunn avatar Apr 29 '21 20:04 iandunn

Global shortcuts (shortcuts that can be triggered regardless of a currently active application) use key codes, not key symbols. When you change the input source the physical key is likely to remain the same. If you remove the qwerty layout input source from System Preferences after step 5, you will see shortcut recorder to re-render it as ctrl-alt-g.

Do you use a Colemak or a QWERTY physical keyboard? I think a keyboard specifically designed for the Colemak layout, if such exists, has the "t" key where you expect it.

That being said, I think with some modifications ShortcutRecorder can be modified to support Colemak / Dvorak properly if it is the only ABC input source configured in System Preferences.

Kentzo avatar Apr 29 '21 21:04 Kentzo

I shared my ideas of how this can be implemented with the Timelime's support.

Kentzo avatar Apr 29 '21 23:04 Kentzo