Thai text input: Backspace deletes entire grapheme cluster instead of one code point at a time
Summary
On Windows, when typing Thai text in the Claude Code prompt, pressing Backspace removes an entire grapheme cluster (the visible syllable) at once instead of removing one Unicode code point at a time. This makes it difficult to correct individual tone marks or vowels.
Steps to reproduce
- Open Claude Code in Windows Terminal (PowerShell) on Windows 11.
- Type the Thai word "ถี่" — three code points: ถ (U+0E16), ี (U+0E35), ่ (U+0E48).
- Press Backspace once.
Expected behavior
Backspace should remove only the last code point — first ่, then ี, then ถ — one code point per keypress. This matches how Notepad, browsers, VS Code, and most native Windows text inputs behave with Thai text, and it matches how Thai users actually type: one mark at a time.
Actual behavior
A single Backspace removes all three code points ("ถี่") at once. There is no way to delete only the tone mark or only the vowel — the entire syllable must be retyped for any small correction.
Why this matters
Thai writing combines base consonants with stacked vowels and tone marks as separate code points. Correcting a single mark (e.g., changing tone ่ to ้) is very common, and the current behavior forces re-typing the whole syllable on every small fix. This adds friction for Thai-speaking users.
Environment
- OS: Windows 11 Pro (10.0.26200)
- Terminal: Windows Terminal + PowerShell 5.1
- Shell input: Claude Code prompt
Suggested resolution
Consider deleting by Unicode code point (or Thai-aware boundaries) on Backspace, at least as an opt-in setting. Word-delete shortcuts (Ctrl+Backspace) could keep current cluster/word behavior.
Thank you for your great work on Claude Code!
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗