GNU bug report logs - #59347
29.0.50; `:family` face setting ignored

Previous Next

Package: emacs;

Reported by: Stefan Monnier <monnier <at> iro.umontreal.ca>

Date: Fri, 18 Nov 2022 04:58:01 UTC

Severity: normal

Found in version 29.0.50

Done: Gregory Heytings <gregory <at> heytings.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 59347 <at> debbugs.gnu.org
Subject: bug#59347: 29.0.50; `:family` face setting ignored
Date: Sat, 19 Nov 2022 11:01:03 -0500
> But I'd be happier if you could step through the code and verified
> that indeed the foundry mismatch is what causes us to reject DejaVu
> Sans, and that after we reject it, we never try it with foundry set to
> nil in the font-spec.  Perhaps we first set family to nil and only
> after that set foundry to nil?

I'll try that, tho I haven't looked at that code in quite a while, so
it'll take some time for me to figure out how&where to look.

>> PS: Things become really weird with:
>> 
>>     src/emacs -Q --eval '(progn (custom-set-faces `(variable-pitch ((t
>> (:family "DejaVu Sans" :foundry "*"))))) (add-to-list `default-frame-alist
>> `(font . "-*-fixed-*-*-semicondensed-*-13-*-*-*-*-*-*-*"))
>> (font-lock-mode -1) (insert (propertize "hello" `face `variable-pitch) "
>> world"))'
>> 
>> where "hello" ends up with the following font:
>> 
>>     ftcrhb:-urw-Century Schoolbook L-medium-normal-normal-*-13-*-*-*-*-0-iso10646-1
>
> Why is this weird?

To me this font comes literally out of nowhere.

AFAICT the only relevant face specifications at play here are the two
pieces of font-info in the recipe (and `face-font-family-alternatives`
but this doesn't seem to play any role).

So, how do we end up with the `Century Schoolbook L` family (rather
than either `fixed` or `DejaVu Sans` both of such seem just as
qualified)?

And if `urw` matches `*`, then why doesn't `PfEd` match it as well?


        Stefan





This bug report was last modified 2 years and 159 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.