Korean (CJK) IME input composing text appears below prompt line then jumps up

Resolved 💬 3 comments Opened Mar 12, 2026 by ai-roselab Closed Apr 18, 2026

Description

When typing Korean (and likely other CJK languages) in the Claude Code CLI prompt, the composing (uncommitted) text appears below the input line and then jumps up to the correct position once the character is confirmed. This makes Korean input very uncomfortable to use.

Expected Behavior

Composing text should render inline at the cursor position (like Windows Terminal or macOS Terminal.app).

Actual Behavior

  1. Start typing a Korean character (e.g., "안")
  2. The composing jamo appears one line below the prompt
  3. Once the syllable is committed (by pressing space or next consonant), it jumps up to the correct position

Environment

  • OS: macOS 15 (Darwin 25.3.0)
  • Terminal: iTerm2 3.6.9 (also reproducible in other terminals)
  • Input Method: macOS default Korean (2-Set)
  • Claude Code: latest version

Impact

Korean-speaking users have to rely on copy-paste workaround (type in another app → Cmd+V) instead of typing directly, which significantly hurts productivity.

Notes

This is likely related to how the underlying TUI framework (ink/React) handles IME marked text / composition events. Similar issues exist in other Node.js CLI tools using ink.

View original on GitHub ↗

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