Krei-se
5 hours ago
You can use xkb with just 5 concepts thus reducing the complexity from ~20 to 5:
- scancodes (evdev) -> keycodes
- keycodes --(keytype)--> keysymbol (actual character).
- modifiers actions -> keytypes
Useful but not needed: Keycode-aliases, indicators
Scrapped: All .lst, .xml, Rules, Models, Layouts, Variants, Options, virtual modifiers, explicit, implicit, indirect.
It's possible to write a full X11 compatible map with 8 modifiers, 4 groups, 8 levels getting (108) * 4 * 8 = 3456 characters. Then you only send this map and actually know whats going on - never needing strange overrides, etc. - which feels great.
It took me 4 days, you can likely do it in 1-2.