[Bug] wired color blocks when running a CLI program based on Python and prompt_toolkit in cmder
kkhaveabigdream opened this issue · 6 comments
Version Information
Cmder version: 1.3.21
Operating system: win11
Description of the issue
When running a Python CLI program based on prompt_toolkit in cmder, there are strange color blocks in the UI. It appears to be a problem with Chinese character parsing, as lines containing Chinese characters render with color blocks exceeding their expected length. However, this issue does not occur in PowerShell
looks fine in powershell:
wired in cmder:
The difference is Windows Terminal vs ConEmu.
Powershell isn't related to this.
Also, probably if you run chcp 65001
that might resolve the issue.
Code page 936 has a collection of characters that it defines as "ambiguous width". Some things treat them as 1 cell wide, and some things treat them as 2 cells wide. Setting the terminal to use code page to UTF8 (by running chcp 65001
) gets out of that mode, and then the character widths are unambiguous.
tried run chcp 65001, doesn't resolve this issue :(
You might be able to try a different Chinese font in ConEmu, or a different font size. It looks like the Chinese font is different than in Windows Terminal, or at least a slightly different size.
But this isn't a Cmder issue, it's a ConEmu issue. Try going to the ConEmu repo and searching issues there, or opening an issue there.
thanks a lot! It does give me a direction.