{ services.kanata = { enable = true; keyboards.k14 = { devices = [ "/dev/input/by-id/usb-Keychron_Keychron_K14-event-kbd" ]; extraDefCfg = "process-unmapped-keys yes"; config = # lisp '' (defsrc) (defvar tap-timeout 200 hold-timeout 200 tt $tap-timeout ht $hold-timeout ) (deflayermap (default-layer) ;; tap caps lock as enter, hold as left ctrl ;; tap-hold-release will activate the hold action early ;; if another key is pressed while it is held. CapsLock (tap-hold-release 200 200 Escape ControlLeft) ;; space if pressed twice in quick succession will ;; enter a space then delete it and put enter Space (tap-hold-release 200 200 (tap-dance-eager 200 ( (macro Space) ;; use macro to prevent auto repeat (macro Backspace Enter) )) MetaRight) ) ''; }; }; }