Skip to content

support "rich keyboard" protocols by iTerm2/kovidgoyal's kitty/Windows Terminal #1575

@unxed

Description

@unxed

At the time far2l tty mode was firstly introduced, no terminal supported sending rich keypress information to console apps. Now it is possible in at least two terminals: iTerm2 on Mac and kovidgoyal's kitty on Mac/BSD/Linux.

Each one uses its own protocol for that (actually there is also third protocol for that, called "CSI u" or "libtickit protocol" and supported by some other terminals, but it does not suit far2l well as it is unable to tell equivalent latin letter for alt/ctrl+non_latin_letters key combinations, also no separate escape sequences for keyup/keydown events and some other limitations).

The first one is iTerm2 "raw keyboard" protocol:
https://gitlab.com/gnachman/iterm2/-/issues/7440#note_129307021

The second one is kovidgoyal's kitty keyboard protocol:
https://sw.kovidgoyal.net/kitty/keyboard-protocol/

If far2l's tty backend will support those portocols it will for sure improve UX of tty version users.

PS: Maybe iTerm2's protocol should not have priority in implementation as it looks like they are planning to adopt kovidgoyal kitty's one also sometime in the future:
https://gitlab.com/gnachman/iterm2/-/issues/10017

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