Othi’s Universal HHKB keymap
Goals
Colemak layout. If you don’t use Colemak then you’ll need to also change the arrow key bindigns in other layers
Vim-like navigation layer so you can use vim binding arrowkeys in non-vim environment
Good modifier support so you don’t have to hold 14 modifier keys at the same time
RGB indicating layer change(only work with plain colors so far, don’t put your rgb to pulsing or any non static animation)
Layers
CL:
The base layer, default is Colemak
NM_MODE:
Vim-like arrowkeys in the home row, it’s
LHNEfor JENK Colemak andHJKLfor QWERTYAlso
HOME,ENDand next/prev word (Ctrl + Left/Right) in0, 4, w, blike in vimVI_MODE:
The same as
NM_MODEbut withKC_LSFTheld down for mostly highlightingACCENT + ACCENT_CAP:
Function row and Unicode characters
Modifiers and Tap Dance keys
LHS:
Any Tap Dance key with the format of
TD(XXX_NM)act as normal XXX modifier upon hold, but will hold and put you toNM_MODEwhen double click hold(a tap before the hold)(eg you can produceAlt + PgUpby pressingAlt + Alt + U)KC_TABacts as bothKC_TABon tap andKC_LGUIon holdR3 CapsLock acts as both
KC_BSPCon tap andKC_LCTLon holdHolding
KC_Qalso puts you intoNM_MODEHolding
KC_Fputs you intoVI_MODEfor fast function keys
RHS:
3 keys
KC_SCLN,KC_DOTandKC_SLSHinCLlayer can also be held down for respectivelyKC_LCTL,KC_LSFT,KC_LALTfor easier 2-hand modifier holdingRight modifiers hold the selected modifier with
KC_LGUIat the same time, mainly for i3wm, you can change this to whatever combination you want
Misc. functionalities
Unicode:
In case the keyboard output the 4-digit codepoint instead of the actual unicode, you need to change the rewrite input mode of the keyboard into the EEPROM(you only have to do this if the EEPROM was cleared or your current machine use another unicode compose method other than IBus/Linux’s
Ctrl + Shift + U). Change the corresponding Inputvoid eeconfig_init_user(void). See this for availble input modes.NOTE: make sure to keep your qmk env up to date with upstream