GNU bug report logs -
#44020
28.0.50; Prefer selection of colour emoji fonts?
Previous Next
Reported by: Lars Ingebrigtsen <larsi <at> gnus.org>
Date: Thu, 15 Oct 2020 18:12:01 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
View this message in rfc822 format
>>>>> On Mon, 19 Oct 2020 21:52:13 +0300, Eli Zaretskii <eliz <at> gnu.org> said:
>> From: Robert Pluim <rpluim <at> gmail.com>
>> Cc: 44020 <at> debbugs.gnu.org, larsi <at> gnus.org
>> Date: Mon, 19 Oct 2020 20:34:41 +0200
>>
>> (set-fontset-font t 'emoji '("Apple Color Emoji . "iso1064601") nil
>> 'prepend)
>>
>> It *should* work as-is on GNU/Linux, but for some reason Emacs is
>> completely refusing to use any Emoji fonts for me there. Itʼs possible
>> Iʼve messed up my system somehow, since emacs-27 has the same issue,
>> but Iʼm seeing some very suspicious results from
>> ftcrfont_glyph_extents (the font average width is always 0), so perhaps
>> we need to adjust our font code.
Eli> Didn't someone say they can see color emoji on Cairo?
Lars said he could, and itʼs in the NEWS file, so it worked at some
point. I canʼt get either Noto Color Emoji nor Emoji One to work on
GNU/Linux, because the following code in font.c bugs out
/* We always open a font of manageable size; i.e non-zero average
width and height. */
for (psize = pixel_size; ; psize++)
{
font_object = driver_list->driver->open_font (f, entity, psize);
if (NILP (font_object))
return Qnil;
font = XFONT_OBJECT (font_object);
if (font->average_width > 0 && font->height > 0)
break;
/* Avoid an infinite loop. */
if (psize > pixel_size + 15)
return Qnil; <====== here
}
and thatʼs because font->average_width is always 0.
Robert
--
This bug report was last modified 3 years and 198 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.