Skip to content

Fix kitty keyboard "Report event types" behavior not matching spec#5791

Open
zeertzjq wants to merge 1 commit intoxtermjs:masterfrom
zeertzjq:kitty
Open

Fix kitty keyboard "Report event types" behavior not matching spec#5791
zeertzjq wants to merge 1 commit intoxtermjs:masterfrom
zeertzjq:kitty

Conversation

@zeertzjq
Copy link
Copy Markdown

@zeertzjq zeertzjq commented Apr 2, 2026

According to spec:

  • The Enter, Tab and Backspace keys will not have release events unless
    "Report all keys as escape codes" is also set.
  • Key events that result in text are reported as plain UTF-8 text, so
    events are not supported for them, unless the application requests
    "key report" mode.

I checked kitty's behavior. While it does report release events for keys
that result in text as CSI sequences, press and repeat events for these
are reported as plain UTF-8 text. This commit changes Xterm.js to match
this behavior.

Fix neovim/neovim#38651

According to spec:
- The Enter, Tab and Backspace keys will not have release events unless
  "Report all keys as escape codes" is also set.
- Key events that result in text are reported as plain UTF-8 text, so
  events are not supported for them, unless the application requests
  "key report" mode.

I checked kitty's behavior. While it does report release events for keys
that result in text as CSI sequences, press and repeat events for these
are reported as plain UTF-8 text. This commit changes Xterm.js to match
this behavior.
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.

Shift modifier on input 0-9 blocked in VSCode terminal when upgrading from Neovim 0.11.7 to 0.12.0

2 participants