Cascade Of Insights

Personal Site of Adam Gordon Bell - Software Engineer

Modifier Keys in the Home Row

With today’s opensource keyboard firmware, it is possible to use dual role keys to have all modifier keys in your home row.

I don’t like having to leave the home row on the keyboard enter commands like CTRL-S or even CTRL-ALT-Left Arrow. Using the tmk firmware or ( the qmk fork) I am able to have my keys function as normal when pressed, but as a modifier when held down.

Dual-role keys:


It is possible to use (with some utility software) one same key both as a normal key and as a modifier.

For example, you can use the space bar both as a normal Space bar and as a Shift. Intuitively, it'll be a Space when you want a whitespace, and a Shift when you want it to act as a shift. I.e. when you simply press and release it, it is the usual space, but when you press other keys, say X, Y and Z, while holding down the space, then they will be treated as ⇧ Shift plus X, Y and Z.

The above example is known as "SandS", standing for "Space and Shift" in Japan. But any number of any combinations are possible.

To press shift+space in the previous example, you need in addition to a space/shift dual role key, one of (a) another space/shift key, (b) a usual shift, or (c) a usual space key.
-- Wikipedia

In my keymap, D and K when held down act as Ctrl, L and S do the same for Alt. Shift is placed under A and ;. Additionally, F or J, when held down, active a layer which is shown on the center right of the keys in the image above. My Escape key also acts as the windows key if held down. It sounds complicated, but the muscle memory takes over after an hour or two and it just feels fast and simple.

Resources: