[BUG] Fullscreen renderer corrupts pasted multibyte UTF-8 (Korean/CJK) on Windows — bytes decoded as Latin-1; default renderer unaffected
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report
- [x] I am using the latest version of Claude Code
What's Wrong?
On Windows, the fullscreen renderer corrupts pasted multibyte UTF-8 text (Korean / CJK): the UTF-8 bytes of the pasted text are decoded byte-by-byte as Latin-1 / CP1252, producing mojibake. This is not just a rendering bug — the corrupted text is what actually gets sent to the model.
Switching to the default renderer (/tui default) makes paste work correctly, which isolates the bug to the fullscreen renderer's bracketed-paste decode path.
Smoking-gun evidence (mojibake decodes back exactly)
Pasting the Korean word 차별 (UTF-8 bytes EC B0 A8 EB B3 84):
'차별' → UTF-8 EC B0 A8 EB B3 84
→ decoded byte-by-byte as Latin-1/CP1252
→ ì°¨ë³ (exactly what appears in the prompt and is sent to the model)
A middle dot · (U+00B7, UTF-8 C2 B7) comes through as · — the unambiguous UTF-8-read-as-Latin-1 signature. ASCII input is unaffected.
Isolation (what I tried)
| Attempt | Result | Conclusion |
|---|---|---|
| chcp 65001 in the hosting console before launching | no change | not the console codepage |
| /config → turn Copy on select OFF | no change | not the copy/clipboard-write direction |
| /tui default (classic renderer) | paste works correctly | root cause = fullscreen renderer's paste-input decode path |
The user originally correlated the breakage with the arrival of the auto-copy-on-select feature; that feature ships with the fullscreen renderer + mouse reporting, which is consistent with the paste-decode regression living in that renderer.
Steps to Reproduce
- Be on Windows with a non-ASCII input (e.g. Korean).
- Ensure fullscreen renderer (
/tui fullscreen, which is the default here). - Copy any Korean text to the clipboard.
- Paste into the Claude Code prompt.
- Observe the text appears as
차볅mojibake, and is sent to the model that way. - Run
/tui default, paste again → correct.
Environment
- Claude Code version: 2.1.162
- OS: Windows 11
- Shell/terminal: PowerShell (VS Code integrated terminal; VS Code extension 2.1.162, server 2.1.161)
- Renderer: fullscreen (broken) vs default (works)
Related
Same renderer, same mojibake family, but those were all the copy-OUT direction and are closed/fixed — this report is the paste-IN direction:
- #42417 (new renderer: Japanese clipboard copy → CP932 mojibake via OSC 52)
- #44118 (NO_FLICKER: Korean copy becomes mojibake on 2nd+ copy)
- #42482 (Korean corrupted when copying with new renderer)
- #52164 (fullscreen doesn't normalize CRLF on paste)
- #65338 (Windows CP950/Big5 input corruption — same class, opposite decode direction)
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗