ZMK firmware for Glove80 with Engrammer layout, powered by zmk-nix.
This keymap draws inspiration from:
- sunaku’s Glorious Engrammer - app switcher behavior, bilateral home row mods, per-finger timing
- Miryoku - layer architecture and thumb cluster philosophy
- jcf/glove80-keymaps - previous fork with Engrammer adaptations
Arno’s Engram optimized for programmers. Vowels clustered on left hand, punctuation in center columns.
b y o u ' ; l d w v z c i e a , . h t s n q g x j k - / r m f p
Hold home row keys for modifiers, tap for letters. Bilateral enforcement prevents same-hand misfires.
| Finger | Left | Right |
|---|---|---|
| Index | Ctrl | Ctrl |
| Middle | Shft | Shft |
| Ring | Alt | Alt |
| Pinky | Cmd | Cmd |
Slower fingers get more time to avoid accidental activations (inspired by sunaku).
| Finger | Time |
|---|---|
| Index | 180ms |
| Middle | 210ms |
| Ring | 240ms |
| Pinky | 270ms |
Hold for Hyper/Meh above home row (pinky/ring protected):
| Finger | Modifier |
|---|---|
| Index | Hyper (Ctrl+Shift+Alt+Cmd) |
| Middle | Meh (Ctrl+Shift+Alt) |
| Ring | — |
| Pinky | — |
| Layer | Access | Purpose |
|---|---|---|
| Base | default | Engrammer with home row mods |
| Cursor | hold SPACE | Navigation, text editing |
| Number | hold BSPC | Numpad, hex digits |
| Function | hold ESC | F1-F15, media controls |
| Symbol | hold RETURN | Programming symbols |
| Mouse | hold TAB (right) | Mouse movement, scroll |
| System | hold ESC (right) | RGB controls, power, locks |
| Lower | inner thumbs | Layer toggles, sticky mods |
| Magic | outer corners | Bluetooth, bootloader, reset |
Upper: ESC/Fn UP DOWN | LEFT RIGHT ESC/Sys Lower: SPC/Cur BSP/Num Lower | Lower TAB/Mouse RET/Sym
Thumb-only combos (ergonomic, no lateral finger strain):
| Keys | Action |
|---|---|
| ESC + SPC | Cmd+Tab app switcher |
| ESC/Sys + ENT | Launchbar (Meh+L) |
| TAB + ENT | Screenshot (Cmd+Shift+4) |
ESC + SPACE (left thumb keys) activates Cmd+Tab with navigation:
- Hold the combo to activate
- Cmd is held, Tab is tapped (shows app switcher)
- Cursor layer activates for arrow key navigation
- Release combo to select app and deactivate Cmd
Full mouse control on Mouse layer (hold TAB on right thumb):
- Movement: arrows on home row (left, up, down, right)
- Scrolling: on left hand and bottom row
- Clicks: left, middle, right on thumb cluster and home row
- CapsWord: Dedicated key (types in CAPS until space/punctuation)
- Parang: Bottom row brackets morph with shift (tap for
(), shift for<>)
just --list
just build
For each half:
- Switch off power
- Connect USB cable
- Hold two keys while switching power on:
- The key directly above your middle finger’s home position
- The bottom outer corner key of the main key area
./doc/bootloader-power-up-method.png
A slow pulsing red LED (near power switch) confirms bootloader mode.
just flash
The volume unmounts automatically when complete.
All settings are in config/glove80.keymap header:
TAPPING_TERM: Base timing (increase if accidental holds)HRM_*: Home row mod assignmentsTOP_*: Top row mod assignmentsTHUMB_*: Thumb cluster keysCOMBO_TIMEOUT: Combo press window