This keyboard layout is the latest and smallest iteration in my keyboard journey. I’ve managed to fit everything into 34 keys, while removing anything superfluous.
Letting the classical QWERTY layout go in favor of one that made sense to me really helped shaping a more personal and simple layout.
See the code at https://github.com/nobe4/keyboards/blob/main/ferris/keymap.c
Glossary
[ ]
: space keyGUI
key, AKA “command”, “super”, or “windows”.<OS>
: OS layer<SY>
: Symbol layer
Default layer 🔗
q w f p g j l u y '
a r s t d h n e i o
z x c v b k m , . ↵
⇑ [ ] CTRL <SY>
⇑
held: Shift layer 🔗
Q W F P G J L U Y "
A R S T D H N E I O
Z X C V B K M ; : ↵
⇑ [ ] CTRL <SY>
Changing the defaults to have more logical shifted characters: '"
, ,;
,
.:
.
<SY>
held: Symbol layer 🔗
0 1 2 3 + ( ) [ ] |
␛ 4 5 6 = ← ↓ ↑ → \
⇒ 7 8 9 - { } < > /
GUI CTRL <OS>
Fun how the arrows stay in the HJKL place, because Vim ingrained those in my head.
Normal layer + long press 🔗
Long pressing on some keys bring some less common symbols, and the GUI modifier.
# $ `
* % @ ^ GUI & _ ? !
This leaves GUI
+ acvxzt
available for common operations.
<OS>
held: OS layer 🔗
F1 F2 F3 F4 F5 🔊
F6 F7 F8 F9 F10 🔈 ⏯
F11 F12 F13 F14 F15 🔉