Full keyboard mode, Ctrl/Alt/Super, dead keys, shift levels

- Full (iPad Pro) mode: every typing key from the keymap, number row,
  tab, caps lock, ctrl/super/alt; shifted symbol shown above and flickable
- Dead keys compose with the locale's XKB compose table
- Ctrl/Alt/Super stick like shift and turn keys into shortcuts; a tapped
  or held shift joins shortcuts and non-text keys, auto-shift and caps
  lock don't
- Auto-capitalization and caps lock only capitalize letters; the user's
  shift picks the keymap's shifted level
- Mode switch in settings keeps key size by resizing the window

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-14 21:29:24 +02:00
co-authored by Claude Opus 5.5
parent 88338fde22
commit ba2f17d665
36 changed files with 948 additions and 202 deletions
+30
View File
@@ -77,6 +77,36 @@
"layers": [
{
"name": "letters",
"full": [
[
{"type": "keys", "row": 0},
{"type": "backspace", "width": 1.5, "stretch": true}
],
[
{"type": "keysym", "keysym": "Tab", "label": "tab", "width": 1.5, "stretch": true},
{"type": "keys", "row": 1}
],
[
{"type": "capslock", "label": "caps lock", "width": 1.75, "stretch": true},
{"type": "keys", "row": 2},
{"type": "enter", "width": 1.75, "stretch": true}
],
[
{"type": "shift", "width": 2.25, "stretch": true},
{"type": "keys", "row": 3},
{"type": "shift", "width": 2.25, "stretch": true}
],
[
{"type": "modifier", "modifier": "ctrl", "label": "ctrl", "width": 1.25},
{"type": "modifier", "modifier": "super", "label": "super", "width": 1.25},
{"type": "modifier", "modifier": "alt", "label": "alt", "width": 1.25},
{"type": "globe"},
{"type": "space", "width": 6, "stretch": true},
{"type": "modifier", "modifier": "alt", "label": "alt", "width": 1.25},
{"type": "layer", "label": ".?123", "target": "numbers", "width": 1.25},
{"type": "dismiss"}
]
],
"rows": [
[
{"type": "letters", "row": 0, "flicks": ["1", "2", "3", "4", "5", "6", "7", "8", "9", "0"]},