[BUG] Thai language input display incorrectly - diacritics and vowels misaligned

Resolved 💬 3 comments Opened Jan 22, 2026 by kitchanut Closed Jan 25, 2026

Bug Description

Thai language input is broken when typing in Claude Code CLI. Thai diacritics (tone marks) and vowels are misaligned/misplaced, making the text unreadable.

Environment

  • OS: macOS 15.1 (Darwin 25.1.0)
  • Claude Code Version: 2.1.15
  • Terminal: Default macOS Terminal / iTerm2
  • Shell: zsh
  • Locale: UTF-8

Steps to Reproduce

  1. Open Claude Code CLI
  2. Try to type Thai text (e.g., "สวัสดี")
  3. Observe that the vowels and tone marks are displayed incorrectly

Expected Behavior

Thai text should display correctly with vowels and tone marks properly positioned above/below consonants:

  • สวัสดี (correct)

Actual Behavior

Thai vowels and tone marks are misaligned, appearing in wrong positions or separated from their base consonants. See screenshot below:

<img width="268" height="116" alt="Image" src="https://github.com/user-attachments/assets/549b3d27-8f07-4efe-b355-87506f68fd44" />

The text "สวัสดี สวัสดี" appears garbled with diacritics in wrong positions.

Additional Context

  • This issue is similar to #10429 (Vietnamese Input Not Working)
  • Thai language uses combining characters (vowels above/below, tone marks) similar to Vietnamese
  • The root cause is likely the same: custom input handling doesn't properly support IME composition events and Unicode combining characters
  • Thai input works correctly in regular terminal but broken in Claude Code CLI

Impact

This affects all Thai-speaking users who need to communicate in Thai when using Claude Code.

Suggested Fix

  • Add proper support for Thai IME
  • Handle composition events for languages with diacritics/combining characters
  • Support multi-byte UTF-8 input sequences with combining characters

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗