Subject: Re: bug#18077: 24.4.50; Info-quoted face should inherit default

From: Sebastian Wiesner <[email-masked]>
Date: Fri, 25 Jul 2014 12:25:47 +0200

> > I do no think that mode faces should *hard-code* specific font families,
> > and thus bypass any customization of the default face that the user
> > might have made to pick their preferred font.
> > 
> > Besides, courier is not a particularly friendly choice.  There is no
> > specific font with that name.  The actual font depends on the font
> > configuration and aliasing picked by the OS and the user, and depending
> > on the quality of this configuration the appearance of this font varies
> > greatly.  If the configuration is particularly poor, or if a proper
> > substitute font is missing, Emacs might even fall back to X11 bitmap
> > fonts, which are particularly ugly on modern screens.
> > 
> > So just because it's pretty on your screen, it doesn't need to be pretty
> > on some else's screen.
> > 
> > Please remove the hard-coded font family and inherit from the default
> > face instead.
> 
> Thank you for your report.
> 
> Would you like to suggest a patch for fixing this problem?  Please
> note that the underlying issue here is that the font should provide
> nice-looking glyphs for the Unicode quote characters.

I do not think that I am in a position to suggest a patch that could generally 
fix this problem.  I use Emacs only in two different environments, and have no 
idea of what limits and constraints Emacs must obey with regards to fonts to 
remain portable across various platforms.

I can only say that for my case it would be entirely sufficient to simply make 
Info-quoted inherit from default, i.e. use '((:inherit default)) as spec in 
defface.  

But I only use a GUI Emacs, and only on very recent and modern systems (Arch 
Linux with KDE, and OS X 10.9), where Unicode fonts are less of a problem.  On 
these systems Emacs typically picks a font with good unicode coverage for the 
default face automatically, e.g. DejaVu Sans Mono or a variant thereof.

Courier however does not exist as a specific family, and might be aliased to 
something entirely different than the standard monospace font of the system.  
It could be a fallback URW font, or (even worse) a built-in X11 bitmap font, 
which looks really ugly, and quite likely has much worse Unicode coverage than 
the font picked for the default face, if it even has any Unicode support at 
all.

But I do not know whether this is also the case on Windows, or on older X11 
environments, that do not use fontconfig, or even still rely on a font server.

Still, presuming that the user customized the default face to use a good font 
with reasonable character coverage (many users do, in my expierence), I think 
that it is very unlikely that "courier" is a better choice than the font of 
the default face with regards to Unicode coverage.

Also, inheriting from default seems to be the standard among other built-in 
faces.

TL;DR: My suggestion would be to simply inherit from default, with no other 
attributes set.  Sorry for the long comment.