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

From: Yuan Fu <[email-masked]>
Date: Thu, 10 Aug 2023 14:58:37 -0700

> On Aug 5, 2023, at 8:01 AM, Eli Zaretskii <[email-masked]> wrote:
> 
>> 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.

Thanks! I can’t tell you how well it works tho since I don’t use company :-)

Yuan