- November 2, 2021 at 7:10 pm #27883Yangsu KimParticipant
Normally monospace fonts are used in text editors like EmEditor. Width of each font is defined by multiple of the narrowest character.
For simplicity, let me allow to call ‘unit length’ for width of the narrowest character.
We have consensus on following length definition
Length 1 for a.k.a ASCII characters.
Length 2 for CJK characters (Chinese characters, Kana, and Hangeul)
However other characters are in ambiguous state. For example, Box Drawing characters are length 2 characters in many Asian country because they were assigned to double bytes in legacy encoding systems. However in western, they are considered as length 1 because their legacy encodings assigned them to one byte.
It’s problem more complicated when Unicode collects lots of characters into one repertoire. Google Noto Sans is one of the proactive monospace fonts to adapt lots Characters into their monospace group. Here was their implementation of mathematical signs; https://github.com/googlefonts/noto-fonts/issues/669#issuecomment-661170358 (Not the final one)
They chose to use various length even one group for considering meaning of the characters. Actually, U+27F6 (Long Rightward Arrow) cannot be modeled with when length is limited to one. Not in the figure, but they also use length of more than 2.
To cover recent changes in font rendering, I request a feature to cover them;
1. Assign length for each character (or character group) more detailed. Currently only 1 or 2 can be assigned to whole ambiguous characters OR
2. Add an option to manually denote length of characters. It can be a simple text box and list of characters have been (or considered to be) the same length can be written to the box. OR
3. Dynamically calculate length of characters from configured fonts when the fonts is monospace.
By the way, I think option 1 is not desirable and least priority for me.
Thank you.November 4, 2021 at 12:21 pm #27890Yutaka EmuraKeymaster
Thanks for your feedback. Very old versions of EmEditor use 3. for all fonts, but this was a problem with proportional fonts.
I might add an option to use 3. in a future version.
- You must be logged in to reply to this topic.