Hi, could be possible to extend 30-metric-aliases.conf by mapping Arial Narrow <-> Liberation Sans Narrow? E. g. Index: conf.d/30-metric-aliases.conf =================================================================== --- conf.d/30-metric-aliases.conf +++ conf.d/30-metric-aliases.conf @@ -296,5 +296,15 @@ </accept> </alias> + <!-- Map Arial Narrow <-> Liberation Sans Narrow --> + <alias binding="same"> + <family>Arial Narrow</family> + <accept><family>Liberation Sans Narrow</family></accept> + </alias> + + <alias binding="same"> + <family>Liberation Sans Narrow</family> + <accept><family>Arial Narrow</family></accept> + </alias> </fontconfig> Thanks for consideration.
Why do you want to substitute them each other?
(In reply to comment #1) > Why do you want to substitute them each other? Because they are metric compatible, aren't they?
This is to define a fallback for those metrics-compatible fonts. how many documentations use Liberation Sans Narrow and how many people who doesn't have it but Arrial Narrow, wants to substitute for it? even though it's a free font.
To make it clear, (In reply to comment #0) > + <alias binding="same"> > + <family>Arial Narrow</family> > + <accept><family>Liberation Sans Narrow</family></accept> > + </alias> This one would be worth adding but: > + > + <alias binding="same"> > + <family>Liberation Sans Narrow</family> > + <accept><family>Arial Narrow</family></accept> > + </alias> This one wouldn't be.
Well, because sake of symmetry. With same logic, you could also drop <alias binding="same"> <family>Liberation Sans</family> <default> <family>Arial</family> </default> </alias> and like, or am I missing something?
(In reply to comment #5) > Well, because sake of symmetry. > > With same logic, you could also drop > > <alias binding="same"> > <family>Liberation Sans</family> > <default> > <family>Arial</family> > </default> > </alias> This isn't <accept>. so is it a typo maybe? you mean: <alias binding="same"> <family>Arial Narrow</family> <accept><family>Liberation Sans Narrow</family></accept> </alias> <alias binding="same"> <family>Liberation Sans Narrow</family> <default><family>Arial Narrow</family></default> </alias> ?
Maybe I do not understand you exactly, so please try to rephrase if my reply is wrong or incomplete: (In reply to comment #6) > (In reply to comment #5) > > Well, because sake of symmetry. > > > > With same logic, you could also drop > > > > <alias binding="same"> > > <family>Liberation Sans</family> > > <default> > > <family>Arial</family> > > </default> > > </alias> > > This isn't <accept>. so is it a typo maybe? This isn't <accept>, but if I understand correctly, it maps 'Liberation Sans' to other families in 'Arial' group defined in 30-metric-aliases.conf. So document requiring 'Liberation Sans' will be displayed with some font in that group if installed. With the same probability there can be document requiring 'Liberation Sans Narrow', right?
(In reply to comment #7) > So document requiring 'Liberation Sans' will be displayed with some font in > that group if installed. If Liberation Sans are not installed of course.
difference between <accept> and <default> is a priority where specified font appears in the pattern. behavior depends on other recipes and what fonts are installed on system though, given that one doesn't have Liberation Sans but Arrial, fontconfig may picks up Arrial in <accept> but not necessarily in <default>. particularly other fonts are set to the pattern by other recipes. Please see a description for <alias> in fonts.conf(5).
(In reply to comment #9) > difference between <accept> and <default> is a priority where specified font > appears in the pattern. behavior depends on other recipes and what fonts are > installed on system though, given that one doesn't have Liberation Sans but > Arrial, fontconfig may picks up Arrial in <accept> but not necessarily in > <default>. particularly other fonts are set to the pattern by other recipes. Because we are talking about 30-*.conf file, most likely first conf file read by fontconfig which deals with <alias>es, there very probably isn't nothing behind 'Liberation Sans Narrow' in the family list if the requested pattern itself doesn't contain more families, so <default> and <accept> should do identical work, correct? So yes, we can use <default> but I do not see the reason right now why not do it consistently for both rules in question.
(In reply to comment #10) > Because we are talking about 30-*.conf file, most likely first conf file > read by fontconfig which deals with <alias>es, there very probably isn't > nothing behind 'Liberation Sans Narrow' in the family list if the requested > pattern itself doesn't contain more families, so <default> and <accept> > should do identical work, correct? Well, *if* no other receipes, yes. otherwise that depends as I've already explained in the above comment. though such assumption makes no sense. I wonder how many people/distros use them as is without any extra recipes, but anyway.
fixed in master.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.