dunlin

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit 3dd0d3f11cdd68d6d27e54a315c3e91dfb84b03e
parent a5a65006ca58cc2edd9a14056938d8a31c50641d
Author: Daniel Barlow <dan@telent.net>
Date:   Tue, 10 Sep 2024 14:17:55 +0100

ignore num lock state when recognising keys

Diffstat:
Mkeymap.fnl | 9++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/keymap.fnl b/keymap.fnl @@ -19,6 +19,7 @@ :Super_R ; menu key? not on my keyboard :Alt_L :Alt_R + :Num_Lock :ISO_Level3_Shift ; AltGr ]] (collect [_ n (ipairs names)] @@ -27,6 +28,10 @@ (fn modifier? [keyval] (. modifier-keyvals keyval)) +(fn ignored-modifier? [mod] + (= mod :MOD2_MASK) ; numlock + ) + (fn keychord->spec [keychord] (let [Mod Gdk.ModifierType symbol (keychord:match "(%w+)$") @@ -49,7 +54,9 @@ (let [modmask (accumulate [m 0 k _ (pairs event.state)] - (bor m (. Gdk.ModifierType k)))] + (if (ignored-modifier? k) + m + (bor m (. Gdk.ModifierType (trace k)))))] (spec->index {:keyval event.keyval : modmask}))) (fn compact [xs]