Subject: bug#20628: 25.0.50; Incorrect line height for some fonts

From: Clément Pit--Claudel <[email-masked]>
Date: Fri, 22 May 2015 15:03:24 -0400

On 05/22/2015 02:15 PM, Eli Zaretskii wrote:
>> From: Oleh Krehel <[email-masked]>
>> Cc: [email-masked],  [email-masked]
>> Date: Fri, 22 May 2015 18:33:43 +0200
>>
>>> Math fonts are notorious for requesting huge ascent and descent
>>> values.  I always disable them using fontsets.
>>
>> Can you explain what are fontsets
> 
> Type "i fontset RET" in the ELisp manual and "i fontsets RET" in the
> Emacs User manual, and you will be able to read about that.  The
> latter includes (in the section next to the one where the above
> command lands you) several examples of how to set up your fontset to
> display certain ranges of characters with specific fonts.

I believe you have something like the following line in mind:

  (set-fontset-font fontset 'unicode (font-spec :name "Symbola") nil 'append)

Indeed, this fixes the problem. Unfortunately, this problem makes it hard for package developers to make use of prettify-symbols-mode. Indeed, programming languages like Agda or Gallina (Coq) would gain a lot from heavy prettification, but since the default fallback font tends to be one of these badly behaved TeX fonts, users of Adga and Coq packages will often run into this problem if we enable prettification by default at the package level the package level. IOW, it's currently hard to come up with a workaround that does not involve user intervention at the moment.

> (...)
>> Is it possible for Emacs to do so by default?
> 
> You mean, have the default fontset set up to avoid the problem?  The
> difficulty with that is that the fonts we'd need to put into the
> default fontset are not free, and there's an understandable reluctance
> to advertise them.

Symbola (in package ttf-ancient-fonts in Debian) actually seems to have good coverage for the kind of math symbols that triggers fallback to TeX fonts.

Clément.