GNU bug report logs - #25216
26.0.50 [regression]; Curly quotes are not found in some sizes of ‘Terminus’ font

Previous Next

Package: emacs;

Reported by: Dmitry Alexandrov <321942 <at> gmail.com>

Date: Sat, 17 Dec 2016 01:04:02 UTC

Severity: normal

Tags: moreinfo

Found in version 26.0.50

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


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

From: Dmitry Alexandrov <321942 <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 25216 <at> debbugs.gnu.org
Subject: Re: bug#25216: 26.0.50 [regression]; Curly quotes are not found in
 some sizes of ‘Terminus’ font
Date: Sat, 31 Dec 2016 08:56:21 +0300
>> > And I still don't understand why you need that.  AFAICS, Emacs
>> > explicitly tries to use the default font for punctuation and symbol
>> > characters before falling back on looking up other fonts.
>> 
>> Do you mean that you could not reproduce this?
>
> It means I don't understand how it could happen.  The function
> face_for_char (defined in fontset.c) explicitly tries the current
> default font for any punctuation and symbol character, before it
> starts looking in other fonts.  I don't understand why this fails for
> you, and only in certain font sizes on top of that.  Perhaps you could
> step through that code with a debugger and see what happens there?

Well.  font_has_char of font.c:2989 returns 0 ← xftfont_has_char of xftfont.c:532 returns 0 ← XftCharExists of libXft.so.2 returns 0.

So the problem goes into libxft2.

Thus the possible workaround may be to prefer ‘x’ backend for font rendering:

   $ emacs -q -fn '-*-terminus-*-18-*-iso10646-1' -xrm 'emacs.fontBackend: x,xft'

However, by a fluke dropping ‘x’ entirely also conceals the issue at least on my system:

   $ emacs -q -fn '-*-terminus-*-18-*-iso10646-1' -xrm 'emacs.fontBackend: xft'

Only that (which is presumably the default) leads to the problem:

   $ emacs -q -fn '-*-terminus-*-18-*-iso10646-1' -xrm 'emacs.fontBackend: xft,x'

At least it’s now clear what’s so special about combination of Terminus and GNU Emacs — the former it is a rare example of a font that is available through both of font engines, the latter — of an application that uses both of them.




This bug report was last modified 5 years and 236 days ago.

Previous Next


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