Subject: Re: bug#64420: string-width of … is 2 in CJK environments

From: Eli Zaretskii <[email-masked]>
Date: Sat, 05 Aug 2023 18:01:39 +0300

> Cc: [email-masked], [email-masked]
> Date: Sun, 16 Jul 2023 20:15:30 +0300
> From: Eli Zaretskii <[email-masked]>
> 
> > From: SUNG TAE KIM <[email-masked]>
> > Date: Mon, 17 Jul 2023 01:59:15 +0900
> > Cc: [email-masked]
> > 
> > I see no issue in changing default width of ambiguous characters to
> > narrow except variation selector blocks(FE00..FE0F, E0100..E01EF) and
> > private-use blocks(E000..F8FF, F0000..FFFFD, 100000..10FFFD) because
> > the characters in the former blocks are not standalone[1] and the
> > characters of the latter blocks are reserved for 3rd-party and
> > everything else seems standalone characters.
> > 
> > [1] https://en.wikipedia.org/wiki/Variation_Selectors_(Unicode_block)
> 
> Thanks.
> 
> I said I intend to end at #x324F because use-cjk-char-width-table
> doesn't touch ambiguous characters with higher codepoints, so they are
> already narrow in Emacs, and we don't need to "fix" them.

OK, this is now installed on master.  We have a new user option named
cjk-ambiguous-chars-are-wide; its default is t, but if set to nil, the
characters proclaimed by Unicode as "ambiguous" will have char-width
of 1, not 2.  Note that this option should be set either via 'setopt'
or the Customize interface, not via 'setq'.

Let me know how well this works for you.