Subject: Re: bug#57962: 29.0.50; Odd font choices

From: Eli Zaretskii <[email-masked]>
Date: Fri, 14 Oct 2022 16:00:18 +0300

> From: Lars Ingebrigtsen <[email-masked]>
> Cc: [email-masked],  [email-masked]
> Date: Fri, 14 Oct 2022 14:48:20 +0200
> 
> >> (defface fixed-pitch
> >>   '((t :family "Monospace" :spacing mono))
> >>   "The basic fixed-pitch face."
> >>   :group 'basic-faces)
> >
> > "No effect" in the sense that if the default face uses a proportional
> > font, fixed-pitch defined as above still uses a proportional font?
> 
> It makes no difference either way, whether `default' uses a fixed-width
> font or not -- the `fixed-pitch' font uses "Monospace", which is a
> fixed-width font.

But it produces a font different from the default face's font, which
AFAIU was what you wanted?  That's what happens for me: if I start
Emacs with "emacs -fn FOO" where FOO is a variable-pitch font, then
using the defface form I suggested makes fixed-pitch use a monospaced
font.

> >   (defface fixed-pitch
> >     `((t :font ,(font-spec :spacing 'M)))
> >     "The basic fixed-pitch face."
> >     :group 'basic-faces)
> 
> That leads to:
> 
> Don't know how to purify: #<font-spec nil nil nil nil nil nil nil nil nil nil 100 nil nil>

I only tried that in a running Emacs session, and with a face whose
name is different from fixed-pitch.  I haven't tried bootstrapping
with the above in faces.el.  I'm sure we can avoid the problem, if the
effect is what we want: for example, we could have the defface in
startup.el or something.