#| Kanata Config ○ Ergonomic (kinda?) 34-key QWERTY layout ○ GACS home-row mods ○ Layers for function, number, media, and symbol keys ○ Dedicated (and non-intrusive!) standard layout toggle for reliant tasks ○ Decently commented for beginners and seasoned veterans alike. FEEL FREE TO FORK!!! |# (defcfg process-unmapped-keys yes block-unmapped-keys yes concurrent-tap-hold yes movemouse-smooth-diagonals yes ) (defsrc caps q w e r t y u i o p a s d f g h j k l scln z x c v b n m , . / lalt spc ralt ) (defvar tap-time 200 hold-time 250 chord-time 50 ) (defalias ;; Normal keyboard layer for gaming/other normie usage normie (layer-switch norm) ;; Key chord definitions chw (chord ch w) che (chord ch e) chi (chord ch i) cho (chord ch o) chs (chord ch s) chd (chord ch d) chf (chord ch f) chj (chord ch j) chk (chord ch k) chl (chord ch l) ch_lalt (chord ch lalt) ch_ralt (chord ch ralt) ;; Hyper and Meh Aliases hyper (multi lmet lsft lctl lalt) meh (multi lsft lctl lalt) ;; Remap Caps to Escape/Nav layer navlayer (layer-while-held nav) caps (tap-hold $tap-time $hold-time (tap-dance 200 (esc @hyper caps)) @navlayer) ;; Home row mods a (tap-hold $tap-time $hold-time a lmet) s (tap-hold $tap-time $hold-time s lalt) d (tap-hold $tap-time $hold-time d lctl) f (tap-hold $tap-time $hold-time f lsft) j (tap-hold $tap-time $hold-time j rsft) k (tap-hold $tap-time $hold-time k lctl) l (tap-hold $tap-time $hold-time l lalt) scln (tap-hold $tap-time $hold-time scln rmet) numpad (layer-while-held num) g (tap-hold $tap-time $hold-time g @numpad) fnkeys (layer-while-held fn) h (tap-hold $tap-time $hold-time h @fnkeys) v (tap-hold $tap-time $hold-time v @meh) m (tap-hold $tap-time $hold-time m (multi lsft lctl lalt)) symbols (layer-while-held symbol) spc (tap-hold $tap-time $hold-time spc @symbols) medialy (layer-while-held md) z (tap-hold $tap-time $hold-time z @medialy) / (tap-hold $tap-time $hold-time / @medialy) ) ;; Chord definitions. Kind of weird to read as a layperson ;; so I provided sufficient comments for general understanding. (defchords ch $chord-time (w ) w ( e) e (w e) XX (i ) i ( o) o (i o) XX (s ) @s ( d) @d (s d) ret (f ) @f (f d) tab (j ) @j (j k) esc (k ) @k ( l) @l (k l) bspc (lalt ) (tap-dance $tap-time ((multi lsft lctl lalt lmet) lalt)) ( ralt) (tap-dance $tap-time ((multi lsft lctl lalt lmet) lalt)) (lalt ralt) (tap-hold $tap-time $hold-time @normie (layer-switch base)) ) (deflayer base @caps q @chw @che r t y u @chi @cho p @a @chs @chd @chf @g @h @chj @chk @chl @scln @z x c @v b n @m , . @/ @ch_lalt @spc @ch_ralt ) (deflayer nav _ mbck (movemouse-up 3 2) mfwd _ _ _ mlft mrgt (mwheel-up 50 120) (mwheel-down 50 120) (movemouse-left 3 2) (movemouse-down 3 2) (movemouse-right 3 2) _ home left down up right end _ _ _ _ _ _ _ _ _ _ _ _ _ ) (deflayer num _ _ _ _ _ _ _ 7 8 9 _ _ _ _ _ _ _ 4 5 6 0 _ _ _ _ _ _ 1 2 3 _ _ _ _ ) (deflayer fn _ f1 f2 f3 f4 _ _ _ _ _ _ f5 f6 f7 f8 _ _ _ _ _ _ _ f9 f10 f11 f12 _ _ _ _ _ _ _ _ ) (deflayer symbol _ S-1 S-2 S-3 S-4 S-5 S-6 S-7 S-8 S-9 S-0 S-\ = - S-= S-- ` S-` S-scln ' S-' _ \ S-[ S-] S-, S-. [ ] _ _ _ _ _ ) (deflayer norm esc q w e r t y u i o p a s d f g h j k l scln z x c v b n m , . / @ch_lalt spc @ch_ralt ) (deflayer md _ _ _ _ _ _ _ _ _ _ _ prev pp next mute _ _ vold volu brdn brup _ _ _ _ _ _ _ _ _ _ _ _ _ )