[Fontconfig] matching multiple families in <alias> and <test>
rs at mytum.de
Tue May 15 17:11:53 PDT 2012
Akira TAGOH wrote:
> Thanks for trying.
> FWIW I noticed that what I mentioned at Bug#33644 has inconsistency in
> the usage of qual. it is, even though qual="any" and qual="all"
> affects values in<test>, qual="first" and qual="not_first" actually
> affects values in the pattern. I suppose it may be a bug in FcOpComma
You mean comment #8 in that bug
( https://bugs.freedesktop.org/show_bug.cgi?id=33644#c8 )? Well I think
that suggestion would be a different interpretation than what is
I've always found the qual's in fontconfig to behave as I expected, i.
e. to specify whether the (single) value from <test> should match at:
* first position
* 2nd+ position
* all positions
* any position
in the pattern.
So qual="all" is mostly useful for compare="not_eq", or if the preceding
rule used mode="assign_replace" to remove all other fallback stuff from
Using other qual's than "any" with FcOpComma in <test> should trigger
some pretty awkward behavior at the moment, because the order of
FcOpComma operands will decide which one is used to check for the
position(s) in the pattern, which is totally counter-intuitive (for
example, I think for qual="all" the last operand would need to get the
match, while for "first"/"not_first" it's likely different).
But it's not allowed currently anyway ;-)
> This reminds me that we have to restructure the expression rules in
> the configuration, including any possibilities to introduce new syntax
> and we need to discuss first how to build the rules for "A AND B" and
> "A OR B" with/without FcOpComma say and may need to discuss if we
> should make the implicit rules clear in the configuration too, like
> the position of element that<edit> take effects as we are discussing
> now. we can go back to the alias thing after that because of its
You mean using <or> etc. not only to calculate ordinal FcTypeBool
values, but also for disjunction of subexpressions in <test>?
But still, as you said, the problem where to apply edits if more than
one value matched remains...
More information about the Fontconfig