microsoft / microsoft/terminal

`more` doesn't properly support upper-range BMP / 3B UTF-8 chars

Open
#8,974 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Area-Output Impact-Correctness Issue-Bug Priority-2 Product-Cmd.exe
Dominant language
C++
Stars
105k
Forks
9.6k
Avg merge
3d 17h
Merged PRs (30d)
29

Description

Environment

Win32NT             10.0.19042.0 Microsoft Windows NT 10.0.19042.0
Windows Terminal version: latest Preview from store

Any other software?
TSDuck (console application)

Steps to reproduce

  1. download latest tsduck nightly from https://tsduck.io/download/prerelease/
  2. download eit.zip from https://github.com/tsduck/tsduck/issues/720 (at the top of report) and extract eit.ts
  3. extract tsduck and run bin\tstables.exe --japan eit.ts
  4. The output looks like this: image

Expected behavior

After repeating 1-3 above, the output should look like the third image here https://github.com/tsduck/tsduck/issues/720#issuecomment-770239722 (2 lines of Japanese text, "Event name:" and "Description:" followed by Japanese text.

      Event name: "日本共産党自主放送"
      Description: "色は匂へど散りぬるを我が世誰ぞ常ならん有為の奥山今日越えて浅き夢見じ酔ひもせず"

Actual behavior

Entire "Description: " line is NOT displayed, like it simply doesn't exist.
Note, the same problem occurs in cmd.exe and powershell command prompts (using native win32 console), so I'm not actually sure what causes the problem, but according to tsduck dev it is windows/terminal/console fault.

Additionally, if using console redirection, such as bin\tstables.exe --japan eit.ts > file.txt from cmd.exe, both Japanese lines are present in file. So they're definitely being "printed" just not displayed.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce with TSDuck's bin\tstables.exe --japan eit.ts using the eit.ts file from tsduck/tsduck#720, then compare Windows Terminal, cmd.exe, and PowerShell with redirected output. Trace the console display path for the missing Japanese Description line; done means both Japanese lines render while redirection continues to include them.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
cli, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.