Skip to content

Kitty Keyboard Protocol on Windows doesn't handle the Escape button properly #6250

@NSPC911

Description

@NSPC911

Have you checked closed issues? (https://github.com/Textualize/textual/issues?q=is%3Aissue+is%3Aclosed)

Yes

Have you checked against the most recent version of Textual? (https://pypi.org/search/?q=textual)

Yes

The bug

For simplicity's sake, I will reference KKP to Kitty Keyboard Protocol

If you enable the KKP on something like Wezterm, you need to send any event to force the escape key to be registered.

2025-11-25_23-41-12.mp4

This is such a genuinely weird bug that I had to pull out my git bisect to find the root cause, and it determined that the reason was that I bumped textual from 6.3.0 to 6.6.0, the release that added KKP for Windows.

However, this issue is a bit different on Rioterm, but I can't exactly properly test it, because Rio doesn't want to disable the KKP. However, the output value is a bit different

Image

left: wezterm, right: rio

but the issue I showed in Wezterm? Doesn't exist on Rio. So, I'm not exactly sure what is going on here...

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions