Subject: Re: bug#20984: 25.0.50; Combining accents don't display properly in certain fonts

From: Eli Zaretskii <[email-masked]>
Date: Sun, 05 Jul 2015 20:01:47 +0300

> Date: Sun, 5 Jul 2015 17:42:45 +0100
> From: Artur Malabarba <[email-masked]>
> Cc: [email-masked]
> 
> > Do both glyphs come from the same font, according to "C-u C-x ="?  (I
> > don't have that font installed to try that myself.)
> >
> > Emacs can only compose characters if their glyphs are covered by the
> > same font.
> 
> Yes. Investigating the weird combination yields this on the description buffer:
> 
> Composed with the following character(s) "̀" using this font:
>   xft:-adobe-Source Code Pro-normal-normal-normal-*-13-*-*-*-m-0-iso10646-1
> by these glyphs:
>   [0 1 0 626 8 1 6 8 -3 nil]
>   [0 1 0 734 0 1 5 11 -9 [0 0 0]]
> 
> And investigating the characters individually yields the same font for both
> 
>     xft:-adobe-Source Code
> Pro-normal-normal-normal-*-13-*-*-*-m-0-iso10646-1 (#x1C)
>     xft:-adobe-Source Code
> Pro-normal-normal-normal-*-13-*-*-*-m-0-iso10646-1 (#x2DD)
> 
> Should I paste the full *help* buffer here?

There's no need, thanks.  But it would be interesting, I think, to see
the output of "C-u C-x =" for the same pair of inserted characters,
but with your default font (assuming it is capable of displaying the
accented a).

Anyway, I've tried this on my system, after installing version 1.020
of the font, and I don't see the problem you report: the 2 characters
are composed and displayed as you'd expect.

So I think this might be some issue with the shaping engine you are
using -- do you have the latest versions of the libraries mentioned in
INSTALL, under "Complex Text Layout support libraries"?  If you do,
perhaps Handa-san could comment on this.

For the record, my system uses the Windows standard Uniscribe shaping
engine, and the composition information it returns is different:

  Composed with the following character(s) "̀" using this font:
    uniscribe:-outline-Source Code Pro Medium-normal-normal-normal-mono-13-*-*-*-c-*-iso8859-1
  by these glyphs:
    [0 1 97 231 8 1 7 12 4 nil]