nix-config/modules/kanata/config.nix
Oliver Davies d8579a38c5 Update Kanata configuration
Signed-off-by: Oliver Davies <oliver@oliverdavies.uk>
2025-11-19 18:09:55 +00:00

63 lines
3.1 KiB
Nix

{
flake.modules.nixos.pc.services.kanata.keyboards.default.config = ''
(defsrc
esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12
grv 1 2 3 4 5 6 7 8 9 0 - = bspc
tab q w e r t y u i o p [ ]
caps a s d f g h j k l ; ' Backslash ret
lsft IntlBackslash z x c v b n m , . / rsft
lctl lmet lalt spc ralt rmet rctl
)
(defvar
hold-time 200
hold-time-slow 300
tap-time 200
)
(defalias
mnavi (tap-hold-press $tap-time $hold-time esc (layer-toggle navi))
msymb (tap-hold-press $tap-time $hold-time bspc (layer-while-held symbols))
a (tap-hold $tap-time $hold-time-slow a lmet)
s (tap-hold $tap-time $hold-time-slow 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 rctl)
l (tap-hold $tap-time $hold-time-slow l ralt)
; (tap-hold $tap-time $hold-time-slow ; rmet)
)
(deflayer base
XX f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12
XX XX XX XX XX XX XX XX XX XX XX XX XX XX
tab q w e r t y u i o p XX XX
@mnavi @a @s @d @f g h @j @k @l @; ' XX XX
XX XX z x c v b n m , . / XX XX
XX XX @msymb spc ret XX XX XX XX XX
)
;; TODO: add ~
;; TODO: add IntlBackslash
(deflayer symbols
XX XX XX XX XX XX XX XX XX XX XX XX XX
XX XX XX XX XX XX XX XX XX XX XX XX XX XX
S-- S-1 S-2 S-3 S-4 S-5 S-6 S-7 S-8 S-9 S-0 - XX
S-Backslash 1 2 3 4 5 6 7 8 9 0 Backslash grave XX
S-= XX S-, S-. S-/ [ ] S-[ S-] , . / XX XX
XX XX XX spc ret XX XX XX XX
XX
)
(deflayer navi
XX XX XX XX XX XX XX XX XX XX XX XX XX
XX XX XX XX XX XX XX XX XX XX XX XX XX XX
XX XX XX XX XX XX XX XX XX XX XX XX XX
XX XX XX XX XX XX left down up right XX XX XX XX
XX XX XX XX XX XX XX XX XX XX XX XX XX XX
XX XX XX XX XX XX XX XX XX XX
)
'';
}