claude-code
claude-code copied to clipboard
[BUG] Korean IME composition: jamo not displayed until syllable completion (Kitty + Gureumkim)
Environment
- Platform: macOS (darwin 25.0.0)
- Terminal: Kitty
- IME: Gureumkim (구름)
- Claude Code Version: 2.1.7
Problem
When typing Korean in Claude Code, individual jamo (자모) are not displayed during composition. Characters only appear after a complete syllable is formed.
Expected Behavior
Like native macOS apps and Gureumkim's normal behavior:
- Type
ㄱ→ seeㄱ - Type
ㄱ+ㅏ→ see가 - Type
ㄱ+ㅏ+ㄴ→ see간
Actual Behavior
- Type
ㄱ→ nothing displayed - Type
ㄱ+ㅏ→ nothing displayed - Type
ㄱ+ㅏ+ㄴ→간suddenly appears (or only after pressing space/enter)
This makes Korean input feel unnatural and hard to track what's being typed.
Related Issues
- #1547 - IME input causes performance issues
- #1553 - IME Composition Input Rendering Lag for Non-Latin Scripts
- #2620 - IME Composition Failure for Korean Character Input (closed as duplicate)
- #3045 - Investigation: Fixing IME Issues by Patching React Ink
Notes
This appears to be related to React Ink's TextInput component not properly handling IME pre-edit/composition state in terminal environments. The August 2025 IME fixes improved cursor positioning but the composition display issue persists.