Subject: bug#1955: 23.0.60; otf font renders, but not when 'default' face is explicitly selected

From: "Greg Falcon" <[email-masked]>
Date: Mon, 19 Jan 2009 00:44:04 -0500

Please write in English if possible, because the Emacs maintainers
usually do not have translators to read other languages for them.

Your bug report will be posted to the [email-masked] mailing list.

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:

(This is with an emacs built from cvsroot on Ubuntu 8.10.  Build
details below.)

I am having only partial success getting emacs to render the otf font
"Inconsolata".  Specifically, the font renders successfully inside
emacs, *except* when displaying the 'default' face, or a face that
explicitly inherits from it.  In that case, the font renders as
rectangles.  For a screenshot, see

  http://verylowsodium.com/faces.png

This seems to happen no matter how I set the default font.  My
standard ~/.emacs sets a font using window-system-default-frame-alist.
But even a simple invocation of

  emacs -Q -fn "-*-Inconsolata-*-*-*-*-16-*-*-*-m-0-iso10646-1"

produces the sort of behavior as in the screenshot.  Note that the
font in the attached screenshot *is* Inconsolata.  It's not that emacs
can't read the font at all; it just doesn't work for the 'default'
face.  Other (non-otf) fonts do not exhibit this behavior.

--

Trent W. Buck in IRC gave me a few questions and suggestions, the
results of which I will relay here:

Launching emacs with  -fn 'Inconsolata'  or  -fn 'Inconsolata-12' did
not work, responding that the font "is not defined".

'fc-list' does list 'Inconsolata:style=Medium' among the available
fonts, and 'fc-match Inconsolata' responded
  Inconsolata.otf: "Inconsolata" "Medium"

Setting 'Emacs.FontBackend: xft' as an X resource did not have any
effect.

--

Build details:

All libraries used were from standard Ubuntu 8.10 packages, except for
libotf, which I built from version 0.9.8 sources.

./configure output:

Configured for `x86_64-unknown-linux-gnu'.

  Where should the build process find the source code?
/home/veloso/emacs-23/emacs
  What operating system and machine description files should Emacs use?
        `s/gnu-linux.h' and `m/amdx86-64.h'
  What compiler should emacs be built with?               gcc -g -O2
-Wno-pointer-sign
  Should Emacs use the GNU version of malloc?             yes
      (Using Doug Lea's new malloc from the GNU C Library.)
  Should Emacs use a relocating allocator for buffers?    yes
  Should Emacs use mmap(2) for buffer allocation?         no
  What window system should Emacs use?                    x11
  What toolkit should Emacs use?                          GTK
  Where do we find X Windows header files?                Standard dirs
  Where do we find X Windows libraries?                   Standard dirs
  Does Emacs use -lXaw3d?                                 no
  Does Emacs use -lXpm?                                   yes
  Does Emacs use -ljpeg?                                  yes
  Does Emacs use -ltiff?                                  yes
  Does Emacs use a gif library?                           yes -lgif
  Does Emacs use -lpng?                                   yes
  Does Emacs use -lrsvg-2?                                yes
  Does Emacs use -lgpm?                                   no
  Does Emacs use -ldbus?                                  yes
  Does Emacs use -lfreetype?                              yes
  Does Emacs use -lm17n-flt?                              no
  Does Emacs use -lotf?                                   yes
  Does Emacs use -lxft?                                   yes
  Does Emacs use toolkit scroll bars?                     yes

In GNU Emacs 23.0.60.1 (x86_64-unknown-linux-gnu, GTK+ Version 2.14.4)
 of 2009-01-18 on pookachu
Windowing system distributor `The X.Org Foundation', version 11.0.10502000
Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default-enable-multibyte-characters: t

Major mode: Text

Minor modes in effect:
  tooltip-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  global-auto-composition-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t

Recent input:
M-x r e p o r <tab> <return>

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.