github / github/copilot-cli

OSC 52 clipboard write stores raw UTF-8 bytes, causing CJK characters when pasted on Windows/WSL

Offen
#3,062 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
area:input-keyboard area:platform-windows area:terminal-rendering
Vorherrschende Sprache
Shell
Sterne
11.2k
Forks
1.9k
Ø Merge
14 Std. 16 Min.
Gemergte PRs (30 T.)
6

Beschreibung

Copilot CLI writes shell commands to the clipboard via OSC 52 when rendering responses. On Windows Terminal + WSL, the OSC 52 content is stored as raw UTF-8 bytes rather than UTF-16LE. When pasting, Windows interprets the bytes as UTF-16LE, producing CJK characters.

Steps to reproduce:

1. Run Copilot CLI in WSL via Windows Terminal
2. Ask for a command (e.g. sudo apt install libsecret-tools gnome-keyring)
3. Select 30+ characters from the command and Ctrl+C
4. Paste anywhere

Expected: sudo apt install libsecret-tools gnome-keyring
Actual: 畳潤愠瑰椠獮慴汬氠扩敳牣瑥琭潯獬朠潮敭欭祥楲杮

Evidence:

- [System.Windows.Forms.Clipboard]::GetText() always returns the full 46-byte command as 23 UTF-16LE code points, regardless of actual selection length
- No hidden/control characters present — pure ASCII bytes misread as UTF-16LE pairs
- Selecting fewer than 30 characters works correctly (selection stays within OSC 52 boundary)
- Copying the same string from Notepad works correctly

Environment:

- Windows 11, Windows Terminal (latest), WSL Ubuntu
- $LANG=C.UTF-8, system locale: German (Germany)

Workaround: Use /copy slash command instead of manual selection

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne beim OSC 52-Clipboard-Schreibpfad, der verwendet wird, wenn Copilot CLI Antworten rendert, und reproduziere das Problem in WSL über Windows Terminal mit einem Befehl, der länger als 30 Zeichen ist. Verfolge, wie der ausgewählte Text codiert wird, und überprüfe, dass das Einfügen unter Windows den vollständigen Befehl und seine Zeichen beibehält, einschließlich des bereitgestellten Reproduktionsbefehls.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
shell, ubuntu
Bereich
cli, operating-systems
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Ruhig
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
48/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.