Thai combining characters (vowels/tone marks) display as boxes in input field

Resolved 💬 3 comments Opened Jan 21, 2026 by Gotppsn Closed Jan 24, 2026

Description

When typing Thai text in the Claude Code input field, combining characters (such as vowels above/below consonants and tone marks) are displayed as boxes/tofu (□) instead of rendering correctly.

Thai language uses combining characters that attach to base consonants:

  • Upper vowels: ◌ิ ◌ี ◌ึ ◌ื ◌ั
  • Lower vowels: ◌ุ ◌ู
  • Tone marks: ◌่ ◌้ ◌๊ ◌๋
  • Other marks: ◌็ ◌์

These characters render correctly in Windows Terminal itself, but not in the Claude Code input field.

Steps to Reproduce

  1. Open Claude Code in Windows Terminal
  2. Switch to Thai keyboard layout
  3. Type Thai words containing combining characters (e.g., สวัสดี, ภาษาไทย)
  4. Observe that combining characters appear as boxes

Expected Behavior

Thai combining characters should render correctly, attached to their base consonants.

Actual Behavior

Combining characters are displayed as separate box characters (□).

Environment

  • Claude Code version: v2.1.6
  • OS: Windows 11
  • Terminal: Windows Terminal
  • Font: Various tested (Cascadia Code, JetBrainsMono Nerd Font, Leelawadee UI)

Additional Context

  • The issue appears to be in the Ink-based input component, not the terminal or font
  • Windows Terminal renders Thai correctly in PowerShell prompt
  • Only the Claude Code input field has this issue
  • Copy-pasting Thai text works as a workaround

View original on GitHub ↗

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