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

From: Gregory Heytings <[email-masked]>
Date: Tue, 22 Nov 2022 14:45:20 +0000

>> That's not what it does, no.  The loop in font_find_for_lface limits 
>> the number of fonts that are considered to some foundry, family, 
>> registry and additional style, and only considers more fonts if no 
>> suitable fonts have been found.
>
> But the same considerations apply to weight, slant, and width: shouldn't 
> we prefer an identical value for each one of those, if that is possible?
>

Of course, and that's font_select_entity does (by using font_score).

>
> And if no suitable candidate is found by making these 3 attributes free, 
> then we are back to the same problem, now with non-numerical attributes. 
> Right?
>

I don't understand your question, sorry.  As I said, if no suitable 
candidate is found, the loop at the end of font_find_for_lface gradually 
makes the other attributes less specific until a suitable font is found.

>> 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.