microsoft/Terminal

Problem switching in and out of UTF-8 mode

Open

#16,529 opened on Jan 5, 2024

View on GitHub
 (5 comments) (0 reactions) (0 assignees)C++ (3,212 forks)batch import
Area-VTHelp WantedIssue-BugProduct-Conhost

Repository metrics

Stars
 (35,764 stars)
PR merge metrics
 (Avg merge 27d 19h) (24 merged PRs in 30d)

Description

Windows Terminal version

1.18.3181.0

Windows build number

10.0.22621.0

Other Software

No response

Steps to reproduce

Output the character sequence twice using a tool of your choice: Esc % G E2 A3 BF Esc % @

Expected Behavior

Each time, the unicode character 28FF ⣿ (Braille Pattern Dots-12345678) will be printed.

Actual Behavior

The correct character is printed the first time, the second time (and any subsequent times) prints "⣿".

From my reading of the code, this is because Esc % @ (Select Default Character Set) correctly disengages UTF-8 by calling DesignateCodingSystem in ActionCsiDispatch. However, its companion seuqnece Esc % G (Select UTF-8 Character Set) is not handled and thus the sequence is never again rendered in Unicode.

Contributor guide