emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Better emoji support


From: Robert Pluim
Subject: Re: Better emoji support
Date: Mon, 20 Sep 2021 19:32:23 +0200

>>>>> On Mon, 20 Sep 2021 18:27:31 +0300, Eli Zaretskii <eliz@gnu.org> said:

    >> From: Robert Pluim <rpluim@gmail.com>
    >> Cc: kevin.legouguec@gmail.com,  emacs-devel@gnu.org
    >> Date: Mon, 20 Sep 2021 15:50:49 +0200
    >> 
    Eli> Btw, we could perhaps tweak the composition code to produce emoji
    Eli> representation for the likes of U+231A followed by VS-16, even though
    Eli> U+231A etc. aren't in the emoji script.  Remind me about this after
    Eli> the basic emoji composition code is installed, and let's see if it
    Eli> could be improved for those sequences.
    >> 
    >> ? U+231A has Emoji_Presentation=Yes.

    Eli> Well, bad example.  U+21AA is better.

OK

    >> In any case, donʼt you need at least one codepoint to be using the
    >> emoji font to do that? (Noto Color Emoji doesnʼt have a glyph for
    >> VS-16, so that canʼt be used)

    Eli> My idea is to trick the font_range function, which verifies that the
    Eli> sequence can be composed using a single font, to use an Emoji font
    Eli> when it sees something followed by a variation selector, instead of
    Eli> the font for the first character in the sequence.  For that, the rules
    Eli> for Emoji sequences in composition-function-table should be anchored
    Eli> on the VS-n codepoints (which I think is a good idea regardless).

Weʼd have to raise the lookback limit for composition-function-table
rules higher than 3 (maybe only to 4).

I guess it reduces the number of entries in
composition-function-table, but then you end up with a lot of rules
for eg VS-16. emoji-zwj-sequences.txt would result in about 840 rules,
with a lot of redundancy, which could be reduced, but I think that can
wait until after the zwj sequence stuff goes in.

Robert
-- 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]