Skip to content

fix(terminal): keep macOS dead keys out of the PTY until composed - #209

Open
ErikZigo wants to merge 1 commit into
contember:mainfrom
ErikZigo:fix/macos-dead-keys
Open

ErikZigo wants to merge 1 commit into
contember:mainfrom
ErikZigo:fix/macos-dead-keys

Conversation

@ErikZigo

Copy link
Copy Markdown
  • Fixes typing accented letters that need a dead key on macOS — Czech ď, ť, ň and U.S. é, ô now come out as one character instead of a stray accent followed by the letter (ˇď)
  • Shows the pending accent underlined at the cursor while composing, the way Terminal.app and iTerm2 do
  • Nothing reaches the shell until a character is actually committed, so an abandoned composition leaves the terminal clean

Impact

  • Affects everyone typing dead-key accents on macOS — Czech, Slovak, German, French, Spanish and Portuguese layouts in particular
  • Correct text input for non-English layouts, which previously produced garbage on every dead key
  • Only the path that receives composed text changes; plain keystrokes, shortcuts and paste are untouched

The input handler sent IME marked text (the `ˇ` of a Czech `ď`) straight
to the PTY and reported no marked range, so the committed `ď` followed it.
Marked text now lives on the Terminal, is drawn underlined in the cursor's
place and only the committed text is sent — the split Zed's terminal uses.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
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.

1 participant