GNU bug report logs - #39799
28.0.50; Most emoji sequences don鈥檛 render correctly

Previous Next

Package: emacs;

Reported by: Mike FABIAN <mfabian <at> redhat.com>

Date: Wed, 26 Feb 2020 14:30:03 UTC

Severity: normal

Found in version 28.0.50

Fixed in version 28.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


Message #266 received at 39799 <at> debbugs.gnu.org (full text, mbox):

From: Robert Pluim <rpluim <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: rgm <at> gnu.org, 39799 <at> debbugs.gnu.org, mfabian <at> redhat.com
Subject: Re: bug#39799: 28.0.50; Most emoji sequences don鈥檛 render correctly
Date: Tue, 21 Sep 2021 18:10:37 +0200
>>>>> On Tue, 21 Sep 2021 18:58:38 +0300, Eli Zaretskii <eliz <at> gnu.org> said:

    >> From: Robert Pluim <rpluim <at> gmail.com>
    >> Cc: mfabian <at> redhat.com,  rgm <at> gnu.org,  39799 <at> debbugs.gnu.org
    >> Date: Tue, 21 Sep 2021 16:43:17 +0200
    >> 
    Eli> Not sure I understand.  The sequence U+1F4F9,U+1F3FD indeed does not
    Eli> appear in emoji-zwj.el, but it does appear in emoji-sequences.txt.
    Eli> However, the string "馃懇馃徑" doesn't match the regexp in the
    Eli> composition-function-table's slot for U+1F4F9.  Why is this?
    >> 
    >> Because for skin tones we index on the modifier, and use lookback:
    >> 
    >> ;; Skin tones
    >> (set-char-table-range composition-function-table
    >> '(#x1F3FB . #x1F3FF)
    >> (nconc (char-table-range composition-function-table '(#x1F3FB . #x1F3FF))
    >> (list (vector ".[\U0001F3FB-\U0001F3FF]"
    >> 1
    >> 'compose-gstring-for-graphic))))

    Eli> Ah, okay.  But why isn't that working?

I have no idea. Even a single entry for U+1F469 in
composition-function-table in emoji-zwj.el messes things up.

    >> I始ve just tried adding "\N{U+1F469}\N{U+1F3FE}" to the composition
    >> function table regexp for U+1F469 manually, and now I get correct
    >> composition. That means we could process the
    >> RGI_Emoji_Modifier_Sequence entries from emoji-sequences.txt with
    >> emoji-zwj.awk and add them, indexed on the base character (and remove
    >> the above code).
    >>

This turns out to be a pretty small change, so if we don始t get to the
bottom of it we have an alternative.

    >> I始d still like to understand where things are going wrong though.

    Eli> Are you debugging this, or would you like me to take a look?

I始d appreciate it if you have time. It始s not code I始m very familiar
with (and someone asked me to implement VS-16 based composition, so
I始m busy :-) )

Robert
-- 




This bug report was last modified 3 years and 255 days ago.

Previous Next


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