0

Prelude: Part-1:

I have pain in my little fingers and wrists if I have to repeatedly press key combinations such as Ctrl+Shift+<key>.

I found some respite in using vi's modal editing which largely eliminated the need for such key combinations. More recently I have been using the God-mode in Emacs and it also works great. Here is a short description of God-mode (adapted from their github page):

God-mode is an global minor mode for entering Emacs commands without modifier keys. For example in this mode one can do the following:

Before: C-p C-k C-n M-^ ) C-j C-y M-r C-x z z M-2 M-f C-x C-s
After:    p   k   n g ^ )   j   y g r     . .   2 g f   x   s

(You may check out their key-mapping section for an explanation of the framework).

So far so good! However a lot of applications (outside of the nice Emacs and vi/vim world) require me to press key combinations such as Ctrl+Shift+Tab or Ctrl+Alt+u etc, which are hurting my wrists and little fingers.

Prelude: Part-2:

I am aware of the Input Method framework/ Input Method Engine that allows users to enter foreign characters and glyphs with key combinations. Here is an Youtube video demonstrating the use of fctix5 to input Japanese characters/ glyphs.

I am also aware of Plover project from the Open Steno Project which is an open-source stenography engine, that can translate key-chords on an N-key rollover-keyboard into English words via a predefined dictionary. I also know that Plover supports modifier keys such as Ctrl, Alt, Shift etc.

Questions:

I wish to have an Emacs's God-mode like framework system wide everywhere that works across applications, so that I wouldn't ever have to press Ctrl+Shift+<key> and instead I can simply press G <Key> etc.

  1. Does there already exist something like this?

  2. If no, will it be possible to build something like this? I am thinking of a Plover like daemon that would translate G <key> to Ctrl+Shift+<key> etc.

  3. Will Plover qualify as an Input Method Engine (in the same sense that fcitx5 is an Input Method Engine)? If no, how are Plover and fcitx different?

  4. I use i3 as my window manager. I would want that my Global Modal Input translator should intercept and process my keybindings before my window manager does. Will that be possible?

Inspired_Blue
  • 2,308
  • 3
  • 15
  • 21
  • 1
    I know nothing of "Input Method Engine" but perhaps "sticky modifier keys" would help? You configure that in your OS, and then you never have to hold a modifier for any application. I have it so a single tap modifies the subsequent key, and a double-tap locks the modifier on until the next time I tap it. So you never need to hold a modifier, and you get the equivalent of Caps Lock for *all* modifiers, rather than just shift (obviously rendering Caps Lock itself redundant, so you can use that key for something else). IIRC I think "Ctrl Lock" would be similar to `god-mode`? – phils Sep 22 '22 at 01:02
  • @phils: Indeed that is a great suggestion and a great starting place. Thanks! – Inspired_Blue Sep 22 '22 at 10:54
  • I intend to take it a few steps further from Phil's idea. I have started this [github issue](https://github.com/emacsorphanage/god-mode/issues/140) where I intend to extend `god-mode` system wide and outside of Emacs! I will post updates here if any concrete progress is made. – Inspired_Blue Sep 22 '22 at 10:55

0 Answers0