GNU bug report logs - #64420
string-width of … is 2 in CJK environments

Previous Next

Package: emacs;

Reported by: Dmitry Gutov <dmitry <at> gutov.dev>

Date: Sun, 2 Jul 2023 12:58:02 UTC

Severity: normal

Full log


View this message in rfc822 format

From: Eli Zaretskii <eliz <at> gnu.org>
To: Dmitry Gutov <dmitry <at> gutov.dev>
Cc: itaemu <at> gmail.com, casouri <at> gmail.com, 64420 <at> debbugs.gnu.org
Subject: bug#64420: string-width of … is 2 in CJK environments
Date: Sun, 13 Aug 2023 15:01:00 +0300
> Date: Sun, 13 Aug 2023 13:48:42 +0300
> Cc: casouri <at> gmail.com, itaemu <at> gmail.com, 64420 <at> debbugs.gnu.org
> From: Dmitry Gutov <dmitry <at> gutov.dev>
> 
> >> So the point here would be that some "ambiguous" ones are still wider
> >> than 1, I guess.
> > According to Yuan, at least in his environment those characters have a
> > width that is closer to 2 than to 1.  In which case using 2 would
> > produce better alignment.  Of course, using string-pixel-width will
> > produce an even better alignment.
> 
> In GUI, that is. But if they are displayed with width 1 in terminal, we 
> better make string-width return 1 for them too.

Yes.  But it turns out that how wide these characters are on TTY
frames depends on the terminal emulator and its own options regarding
those characters.  So some users will want the value 1 and others will
want the value 2, depending on which terminals they use and what
options of those terminals they like best.

The important part is that the Emacs's notion of the character width
is consistent with that of the terminal.

> That might be slightly worse for certain applications (like popup in 
> company), but at least the basic rendering and navigation bugs in 
> terminal will be fixed this way. And the new popup rendering for company 
> (using string-width and spacing instructions) is close to being ready 
> anyway.

Yes, sure.  There's no doubt on my side that this option is useful;
I'm just trying to collect data that would allow us to decide on the
best default value, that's all.




This bug report was last modified 2 years and 1 day ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.