Trigger Caps Lock in Linux from the terminal
I have rebound my Caps Lock key using
xmodmap so that it can be used as a modifier key to trigger Norwegian characters.
However, when I connect an external keyboard, the keymap changes back to default again and I have to re-run
xmodmap ~/.xmodmap in order to reload the custom key bindings.
If I have enabled Caps Lock before I reload, I can no longer use that button to disable it again. This is where
xdotool come into the picture.
Send keystroke to X11
xdotool - command-line X11 automation tool
One of the available commands is
key, which will send a key to the current window.
I don’t really care what window I send Caps Lock to, so I can just send it directly.
$ xdotool key Caps_Lock
And now my Caps Lock is disabled again.