Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unicode EN (half an EM) cell width #353

Closed
ghost opened this issue Jan 18, 2019 · 4 comments
Closed

Unicode EN (half an EM) cell width #353

ghost opened this issue Jan 18, 2019 · 4 comments
Labels
Area-Rendering Text rendering, emoji, complex glyph & font-fallback issues Product-Conhost For issues in the Console codebase

Comments

@ghost
Copy link

ghost commented Jan 18, 2019

In Unicode it is ambiguous width character, but in cmd.exe it is always one cell of EN DASH (U+2013) How can I handle the character?
It is a short horizontal bar with red underline drawn.

First I thought it was a problem with Vim, but apparently when looking at other terminals, cmd.exe appears to be special.
I recognize that the problem of line display and right end display is on Vim side.

In ConPTY, the rows are swapped.
In winpty, the rightmost character is not output.
In cmd.exe, it will display normally.

I brought out two shots.
The first piece is before entering special case of EN DASH to Vim, after the second piece put it in.
The character string is the end part of the result of the Japanese version cl.exe /?.

Continue to the next article.

50749922-6d95e080-1285-11e9-9e1d-f63461680f50

image

@ghost
Copy link
Author

ghost commented Jan 18, 2019

If I want to be compatible with cmd.exe, what should we base on the cell width of the character?
Is there a way to get a list of ambiguous-width characters that cmd.exe treats as fixed-width characters?

@ghost
Copy link
Author

ghost commented Jan 18, 2019

It is here that is the source.
vim/vim#3775

@miniksa miniksa added Product-Conhost For issues in the Console codebase Area-Rendering Text rendering, emoji, complex glyph & font-fallback issues labels Jan 18, 2019
@be5invis
Copy link

Maybe related: #218
Please note that text layout is never a simple task, and, proper Unicode text layout inside a console is never well-studied.

@ghost
Copy link
Author

ghost commented Jan 20, 2019

I have read all the mainstream ( #57, #218 ). This story is interesting.
I remembered the Kanji display that was first installed in NEC PC6001mk2 and felt nostalgic. In those days I used KANJI ROM to read and render using the I/O port.
This genre is really fun!

I talked away.
I think that it is the story of the organization, not individuals or companies, to do this correctly.
It is a dream that it will be published as it is a character defined as an ambiguous width character (EN DASH in this case), and the table that cmd.exe has for rendering exists for each language.
Perhaps we must transcend the cell system. I am looking forward to it.

It seems that other emulators are doing the same thing about display disorder in Vim which is a problem with this issue. First, I will deal with an instant patch.

This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-Rendering Text rendering, emoji, complex glyph & font-fallback issues Product-Conhost For issues in the Console codebase
Projects
None yet
Development

No branches or pull requests

2 participants