Skip to content

Implement layout-agnostic keyboard input#945

Merged
o-sdn-o merged 71 commits into
directvt:masterfrom
o-sdn-o:gui-bridge
Jun 27, 2026
Merged

Implement layout-agnostic keyboard input#945
o-sdn-o merged 71 commits into
directvt:masterfrom
o-sdn-o:gui-bridge

Conversation

@o-sdn-o

@o-sdn-o o-sdn-o commented Jun 27, 2026

Copy link
Copy Markdown
Collaborator

Breaking Changes

  • This release is not backward compatible.
  • Replace the following key bindings on Unix-like platforms:
    • Alt+Z -> Esc+F1 (FocusTaskbar)
    • Alt+Shift+B -> Ctrl-Alt (ExclusiveKeyboardMode in terminal)

Changes

  • Implement layout-agnostic keyboard input (Abstract Latin Layout, ALL (+KKP support) #943):
    • Introduce the Abstract Latin Layout "ALL" (evoking "All", tracking 309 unique physical keys normalized from 87 distinct OS layouts): Decouple physical key codes from national OS layouts, ensuring consistent runtime behavior across different language inputs.
    • Implement the Win32Api/KKP -> ALL mapping pipeline (ALL -> KKP generation is forthcoming).
  • Rename LeftWin/RightWin modifier keys to LeftSuper/RightSuper.
  • Decouple AltGr from RightAlt globally (they are no longer treated as equivalent).
  • Fix RightCtrl/RightAlt translation anomalies on Canadian and Korean layouts.
  • Respect AltGr and IsoLevel5Shift (GroupSelect on Canadian layouts) states when evaluating key chords.
  • Add a workaround for the RightAlt extended-key flag bug in native Win32 console API reports.
  • Filter out and exclude Shift, AltGr, and Level5Shift modifier keys from literal chord sequences.
  • Fix Pause, Break, PrintScreen, and SysRq press/release transaction emulation.
  • Fix invalid key-chord states (prevent stuck keys when an IME is active).
  • Fix an infinite loop triggered when synchronizing empty grapheme cluster lists (mitigate fake jumbo clusters on malformed UTF-8 output).
  • Implement a dead-key preview mechanism in the built-in terminal.
  • Configure LunaSVG and STB to be fetched automatically via CMake if not found in the system LunaSVG is not available on Debian #944.

o-sdn-o added 30 commits June 2, 2026 01:19
…ith physical keys of existing Latin-based layouts)
o-sdn-o added 28 commits June 22, 2026 13:56
@o-sdn-o o-sdn-o merged commit 97f1cf5 into directvt:master Jun 27, 2026
9 checks passed
@o-sdn-o o-sdn-o deleted the gui-bridge branch June 27, 2026 17:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant