diff options
| author | Kjetil Orbekk <kj@orbekk.com> | 2026-01-27 20:57:06 -0500 |
|---|---|---|
| committer | Kjetil Orbekk <kj@orbekk.com> | 2026-01-27 20:57:06 -0500 |
| commit | 37ec87d7c669ffccdafebf0ce4b1daa1f503a82a (patch) | |
| tree | 2f4d30886cbb78fc2034104b4e04f73c04a23abb | |
| parent | bcf9e61812e867291f2158ad4d14bc233aa1e757 (diff) | |
update katana config
| -rw-r--r-- | desktop/.config/kanata/kanata.kbd | 65 |
1 files changed, 14 insertions, 51 deletions
diff --git a/desktop/.config/kanata/kanata.kbd b/desktop/.config/kanata/kanata.kbd index 296f0df..6775d0f 100644 --- a/desktop/.config/kanata/kanata.kbd +++ b/desktop/.config/kanata/kanata.kbd @@ -5,27 +5,6 @@ process-unmapped-keys no ;; Ensure unmapped keys are passed to the OS unchanged. ) -(defvar - tap-time 200 - hold-time 150 - - left-hand-keys ( - q w e r t - g - z x c v b - ) - - right-hand-keys ( - y u i o p - h - n m , . / - ) -) - -(deffakekeys - to-base (layer-switch graphite) -) - ;; Define the source keys Kanata will intercept. (defsrc grv 1 2 3 4 5 6 7 8 9 0 - = bspc @@ -44,16 +23,12 @@ lctl lmet lalt spc ralt rmet rctl ) -;; (deflayermap nomods -;; a n -;; s r -;; d t -;; f s -;; j h -;; k a -;; l e -;; ; i -;; ) +(deftemplate charmod (char mod) + (switch + ((key-timing 3 less-than 250)) $char break + () (tap-hold-release-timeout 200 500 $char $mod $char) break + ) +) (defalias quote (fork ' S-- (lsft rsft)) ;; ' -> _ @@ -61,20 +36,15 @@ hyphen (fork - S-' (lsft rsft)) ;; - -> " slash (fork / S-, (lsft rsft)) ;; / -> < - tap (multi - (layer-switch nomods) - (on-idle-fakekey to-base tap 20) - ) - - n (tap-hold-release-keys $tap-time $hold-time (multi n @tap) lmet $left-hand-keys) - r (tap-hold-release-keys $tap-time $hold-time (multi r @tap) lalt $left-hand-keys) - t (tap-hold-release-keys $tap-time $hold-time (multi t @tap) lctl $left-hand-keys) - s (tap-hold-release-keys $tap-time $hold-time (multi s @tap) lsft $left-hand-keys) - h (tap-hold-release-keys $tap-time $hold-time (multi h @tap) lsft $right-hand-keys) - a (tap-hold-release-keys $tap-time $hold-time (multi a @tap) lctl $right-hand-keys) - e (tap-hold-release-keys $tap-time $hold-time (multi e @tap) lalt $right-hand-keys) - i (tap-hold-release-keys $tap-time $hold-time (multi i @tap) lmet $right-hand-keys) + n (t! charmod n lmet) + r (t! charmod r lalt) + t (t! charmod t lctl) + s (t! charmod s lsft) + h (t! charmod h lsft) + a (t! charmod a lctl) + e (t! charmod e lalt) + i (t! charmod i lmet) ;; Tap: backtick (grave), Hold: toggles 'layers' for layer switching. grl (tap-hold 200 200 grv (layer-toggle layers)) @@ -94,13 +64,6 @@ lsft q x m c v k p . @hyphen @slash rsft lctl lmet lalt spc ralt rmet rctl ) -(deflayer nomods - @grl 1 2 3 4 5 6 7 8 9 0 [ ] bspc - tab b l d w z @quote f o u j ; = \ - lctl n r t s g y h a e i @comma ret - lsft q x m c v k p . @hyphen @slash rsft - lctl lmet lalt spc ralt rmet rctl -) ;; Keys 1 and 2 switch between QWERTY and Graphite ;; The _ (underscore) indicates transparent behavior (passes through base layer). |
