Modified Kanata conf.kbd to reflect new and improved config for Windows/Linux machines

This commit is contained in:
elishaqtrogers 2025-09-13 20:18:25 -04:00
parent 28f70cab38
commit cd0113256e

View file

@ -2,18 +2,15 @@
Kanata Config
○ Ergonomic (kinda?) 34-key QWERTY layout
○ GACS home-row mods
○ Layers for function, number, and symbol keys
○ 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!!!
NOTE: Due to NixOS's declarative nature, you must comment out the
defcfg for proper functionality. Defcfg arguments can be added using
the 'extraDefCfg' variable.
|#
(defcfg
concurrent-tap-hold yes
movemouse-smooth-diagonals yes
)
#|
Trying to be minimal in order to reduce constant editing
@ -31,6 +28,7 @@
(defvar
tap-time 200
hold-time 250
chord-time 50
)
;; Bindings
(defalias
@ -47,14 +45,9 @@
chl (chord ch l)
ch_lalt (chord ch lalt)
ch_ralt (chord ch ralt)
;; Remap Caps to tap dance with Escape/Hyper Key & Caps/Navlayer
;; Remap Caps to Escape/Nav layer
navlayer (layer-while-held nav)
caps (tap-dance 200
(
(tap-hold $tap-time $hold-time esc (multi lmet lalt lctl lsft))
(tap-hold $tap-time $hold-time caps @navlayer)
)
)
caps (tap-hold $tap-time $hold-time (tap-dance 200 (esc caps)) @navlayer)
;; Home row mods
a (tap-hold $tap-time $hold-time a lmet)
s (tap-hold $tap-time $hold-time s lalt)
@ -71,11 +64,11 @@
fnkeys (layer-while-held fn)
h (tap-hold $tap-time $hold-time h @fnkeys)
#|
Meh key when V or N are held down to allow for either hand to
use meh key for Raycast shortcuts.
Hyper key when V or M are held down to allow for either hand to
use hyper key for AHK/Raycast shortcuts.
|#
v (tap-hold $tap-time $hold-time v (multi lsft lalt lctl))
n (tap-hold $tap-time $hold-time n (multi lsft lalt lctl))
v (tap-hold $tap-time $hold-time v (multi lsft lctl lalt))
m (tap-hold $tap-time $hold-time m (multi lsft lctl lalt))
;; Holding Spacebar activates symbol layer
symbols (layer-while-held symbol)
spc (tap-hold $tap-time $hold-time spc @symbols)
@ -86,7 +79,7 @@
)
;; Chord definitions. Kind of weird to read as a layperson
;; so I provided sufficient comments for general understanding.
(defchords ch 50
(defchords ch $chord-time
(w ) w ;; W => W
( e) e ;; E => E
(w e) ret ;; W + E => Enter
@ -99,8 +92,8 @@
(k ) @k ;; K => K (See defalias)
( l) @l ;; L => L (See defalias)
(k l) esc ;; K + L => Escape
(lalt ) lalt ;; LAlt => LAlt
( ralt) ralt ;; RAlt => RAlt
(lalt ) (tap-dance $tap-time ((multi lsft lctl lalt lmet) lalt)) ;; LAlt => Hyper Key, LAlt × 2 => LAlt
( ralt) (tap-dance $tap-time ((multi lsft lctl lalt lmet) lalt)) ;; RAlt => Hyper Key, RAlt × 2 => RAlt
#|
Put simply, the below line allows for toggling a no-bind
layer for when you may require a standard layout (such as
@ -116,7 +109,7 @@
@caps
q @chw @che r t y u @chi @cho p
@a @chs @chd @f @g @h @j @chk @chl @scln
@z x c @v b @n m , . @/
@z x c @v b n @m , . @/
@ch_lalt @spc @ch_ralt
)
;; Navigation layer
@ -160,10 +153,12 @@
z x c v b n m , . /
@ch_lalt spc @ch_ralt
)
;; Media layer
;; NOTE: On Windows the brdn and brup keys cause Kanata to crash for some reason as of kanata_gui 1.8.1
(deflayer md
_
_ _ _ _ _ _ _ _ _ _
prev pp next mute vold volu ins del brdn brup
prev pp next mute vold volu brdn brup ins del
_ _ _ _ _ _ _ _ _ _
_ _ _
)