Subject: bug#59347: 29.0.50; `:family` face setting ignored

From: Gregory Heytings <[email-masked]>
Date: Tue, 22 Nov 2022 15:41:47 +0000

>>>> That's the purpose of the loop at the end of font_find_for_lface. 
>>>> It starts with a specific spec and gradually makes it less specific 
>>>> if necessary (that is, if no suitable font has been found with a more 
>>>> specific spec).
>>>
>>> So we will be back to the same problem with those.
>>
>> Sorry, I don't understand what you mean.
>
> I mean that the basic algorithm that gradually makes the spec less 
> specific is used for non-numerical attributes, and so can potentially 
> reject valid fonts, just like it happens with these 3 numerical 
> attributes.
>

No, it won't reject valid fonts (unless I misunderstand what you mean by 
"valid font").  For example, when searching for a font in the monospace 
family, all fonts in the monospace family are considered.  If no such 
fonts are found, Emacs tries again (see face-font-family-alternatives) and 
considers all fonts in the courier family.  If no such fonts are found, 
Emacs tries again and considers all fonts in the fixed family.  After 
which Emacs gives up.