Skip to content

Keyboard protocol mode 31 needed for non-latin layouts #90

@unxed

Description

@unxed

I'm using the Turbo editor in a Kitty-compatible terminal. The Kitty keyboard protocol is great because it allows hotkeys like Alt+F to work regardless of the active keyboard layout (e.g., Cyrillic), as it reports not only chars but the physical key info.

However, this currently is only applied to key combinations with modifiers. When a menu is open (like the File menu after pressing Alt+F), subsequent key presses without modifiers (like pressing X for eXit) are treated as character input, so no phisycal key info is available. If a non-latin layout is active at that moment, pressing X sends a different character (e.g., Ч in Russian), and the menu shortcut fails.

This issue could be resolved by adding support for Kitty Keyboard Protocol Mode 31 (CSI > 31 u). In this mode, plain key presses are sent as Kitty protocol events, having the physical key information in "alternative key" field. Using this field can make menu navigation and other shortcuts layout-independent.

Could you please consider switching Turbo Vision and Turbo to this mode?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions