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: Gregory Heytings <gregory <at> heytings.org>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 59347 <at> debbugs.gnu.org
Subject: bug#59347: 29.0.50; `:family` face setting ignored
Date: Thu, 08 Dec 2022 01:07:25 +0000
>
> But when I specify the `weight` property of the `bold` face, it's not 
> clear at all that the `:family` of the default face should take 
> precedence over the `:weight` of the `bold` face.
>

I'm not sure I understand what you mean.

Do you mean that if a user chooses a font for the default face that has a 
single variant (say 'regular'), then the 'bold' face (which does not 
specify any family) should be realized with another font which has a bold 
variant?  And that the 'italic' face should likewise be realized with 
another font which has an italic variant?

Or do you mean that if a user chooses a font for the default face, and 
then updates the weight attribute of the 'bold' face to a weight value 
that is not explicitly supported by the font of the default face (say 
'ultra-bold'), then the 'bold' face should be realized with another font 
that explicitly supports that variant?

Or do you mean something else?

FWIW, I don't think either of these options are reasonable.  IMO in the 
first case the user should just use a font which has more variants for the 
default face (there are plenty of excellent fonts), and in the second case 
it is fine to approximate the weight with the weights that are available 
in the default font.

>
> Maybe the ordering should depend on the "stacking order" of the faces 
> and their properties.  I.e. instead of merging 
> `bold+variable-pitch+default` to get a set of properties on which we 
> apply a globally-imposed ordering, we could keep track of the relative 
> ordering of the properties: `bold` was on top, so the `:weight` property 
> comes first, then came `variable-pitch` so its `:family` property comes 
> second and the second comes afterwards.
>
> So `bold+variable-pitch+default` could result in a different font than 
> `variable-pitch+bold+default` even if the combined properties (i.e. the 
> merged face) are identical.
>

Why not.  But it is already possible to fine-tune each individual face 
with the existing mechanisms, so I'm not sure the added complexity is 
worth the price.





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.