Korean IME input broken — Hangul characters not composing in terminal

Resolved 💬 3 comments Opened Mar 30, 2026 by PAFGYM Closed Apr 2, 2026

Bug Description

Korean (Hangul) input via IME does not compose properly in Claude Code terminal. Characters appear as separated jamo instead of composed syllables.

Expected: 가나다 (composed syllables)
Actual: ㄱ ㅏ ㄴ ㅏ ㄷ ㅏ (separated jamo)

Environment

  • OS: macOS Sequoia 15.3 (Darwin 25.2.0), Mac mini M4
  • Terminal: Terminal.app / iTerm2 (same issue in both)
  • Claude Code version: latest
  • Input method: macOS default Korean IME (2-Set)
  • Node.js: v22.x

Impact

This makes Claude Code essentially unusable for Korean-speaking users who need to type instructions in Korean. Korea has a large developer community and this is a critical accessibility issue.

Steps to Reproduce

  1. Set macOS input source to Korean (2-Set or 3-Set)
  2. Open Claude Code in terminal
  3. Try typing any Korean text (e.g., "안녕하세요")
  4. Observe that characters appear as decomposed jamo, not composed Hangul syllables

Workaround

Currently the only workaround is typing Korean in another app (Notes, TextEdit) and pasting via Cmd+V.

Likely Cause

The terminal input handler likely doesn't handle multi-byte IME composition events (compositionstart, compositionupdate, compositionend). This affects all CJK (Chinese, Japanese, Korean) IME users but Korean is most impacted since Hangul requires composition for every character.

Related

This likely also affects Japanese (かな/漢字) and Chinese (Pinyin) input methods.

View original on GitHub ↗

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