Neovim duplicates { and [ on key release since Ghostty 1.3.x #13816
Issue DescriptionSince upgrading from Ghostty 1.2.3 to 1.3.1, Neovim inserts For example, pressing The same happens with Expected BehaviorPressing Actual Behaviorpressing Reproduction Steps
The same happens with Ghostty LogsNo response Ghostty VersionOS Version InformationCachy Os (Arch based) (Linux only) Display ServerWayland (Linux only) Desktop Environment/Window ManagerNiri Minimal Ghostty Configurationtheme = noctalia
font-family = JetBrainsMono Nerd Font
font-size = 13.5
font-style = SemiBold
background-opacity = 0.9
font-feature = liga
font-feature = calt
font-feature = ss02
adjust-cell-height = -5
working-directory = home
window-inherit-working-directory = falseAdditional Relevant ConfigurationThe issue does not occur with Alacritty using the same Neovim installation. I acknowledge that:
|
Replies: 3 comments 1 reply
|
This matches a known 1.3.x regression — see #12084, which reports the same pattern: characters doubled only inside Neovim, specifically keys that live on the physical bracket key ( Why only Neovim: Neovim opts into the kitty keyboard protocol with key-event reporting, so it receives press and release events; other programs (and other terminals without the regression) never surface the release as text. In the #12084 thread the Ghostty terminal inspector showed two events being emitted for a single physical keypress, and Kitty/Alacritty on the same setup were clean — which fits your Alacritty observation exactly. Things you can do right now:
Which keyboard layout are you on? So far the reports cluster on layouts where these characters involve the bracket keys with a modifier, which is a useful data point for the maintainers. |
|
I was going to make the same discussion before. I'm on spanish layout, however I've noticed it only happens with a specific sequence Timeline.1.mp4 |
This matches a known 1.3.x regression — see #12084, which reports the same pattern: characters doubled only inside Neovim, specifically keys that live on the physical bracket key (
!and]on a Swiss German layout there;{/[in your case), starting with 1.3.x and absent in 1.2.3. There's also a related upstream report at neovim/neovim#31806.Why only Neovim: Neovim opts into the kitty keyboard protocol with key-event reporting, so it receives press and release events; other programs (and other terminals without the regression) never surface the release as text. In the #12084 thread the Ghostty terminal inspector showed two events being emitted for a single physical keypress, and Kitty/Al…