Description
Korean characters are not committed during normal typing.
The composition remains in a "pending" state indefinitely, and characters
only appear in the terminal when pressing Space (which forces compositionend).
Typing "안녕하세요" results in nothing appearing until Space is pressed,
at which point some characters are lost/skipped.
Environment
- Wave Terminal version: latest (autoupdate:latest channel)
- macOS version: Darwin 25.2.0 (Sequoia)
- Input method: macOS built-in Korean (두벌식)
- Locale: ko_KR.UTF-8
- Term settings: rendermode: dom, font: JetBrains Mono
Steps to Reproduce
- Open Wave Terminal
- Switch to Korean input (macOS built-in 한글)
- Type any Korean text (e.g., "테스트")
- Observe: characters stay in composition state, not committed
- Press Space → characters finally appear (with some dropped)
Expected Behavior
Korean characters should be committed to the terminal as each syllable
is completed (same as VS Code integrated terminal, iTerm2, etc.)
Comparison
- VS Code terminal (also Electron + xterm.js): Works correctly ✅
- iTerm2: Works correctly ✅
- Wave Terminal: Broken ❌
This suggests the issue is in Wave's input event handling layer
between Electron and xterm.js, not in xterm.js itself.
Possibly Related