[Fontconfig] reminder: 2.11.0 to be released in next week

Raimund Steger rs at mytum.de
Sun Aug 4 15:32:33 PDT 2013


Akira TAGOH wrote:
> That should works as expected now. please test as well as usual
> matching rule since the logic was somewhat rewritten.

There seems to be a regression.

When testing the following rule:

<match target="pattern">
   <test name="family"><string>testfamily2</string></test>
   <test name="pixelsize" compare="less" 
qual="all"><double>100</double></test>
   <edit name="family" 
mode="append"><string>testfamily2_append</string></edit>
</match>

with

FC_DEBUG=1 fc-match testfamily2 |grep family:


the <edit> is applied at the wrong position, i. e. the position of the 
'family' match isn't retained if another <test> is inbetween.

Raimund





> On Mon, Jun 17, 2013 at 9:25 PM, Raimund Steger <rs at mytum.de> wrote:
>> Hi,
>>
>>
>> On Tue, June 11, 2013 09:59, Akira TAGOH wrote:
>>> Hi,
>>>
>>> If there are not anything else we want to fix before releasing 2.11.0,
>>> please follow up on this mail otherwise I'll make one next week.
>>
>> Sorry- I know I should have tested this a lot earlier, but the
>> implementation of https://bugs.freedesktop.org/show_bug.cgi?id=59385
>> (intermixed <test> and <edit> elements in <match>,
>> http://cgit.freedesktop.org/fontconfig/commit/?id=d26fb23c41abd87422778bb38eea39f25ba3dc4a)
>> does not seem to exactly match Behdad's suggestion from his initial mail:
>>
>> http://thread.gmane.org/gmane.comp.fonts.fontconfig/4607
>>
>> The suggestion in the mail is that:
>>
>>    <match>
>>      <test1>
>>      <edit1>
>>      <test2>
>>      <edit2>
>>    </match>
>>
>> is a shortcut for:
>>
>>    <match>
>>      <test1>
>>      <edit1>
>>    </match>
>>    <match>
>>      <test1>
>>      <test2>
>>      <edit2>
>>    </match>
>>
>> i. e., test2 is only evaluated if test1 was successful.
>>
>> However the current implementation in head seems to generate two unrelated
>> rules.
>>
>> If I make an example configuration like this:
>>
>>    <match target="pattern">
>>      <test name="family" qual="first"><string>Helvetica</string></test>
>>      <edit name="family" mode="append"><string>Helvetica LT
>> Std</string></edit>
>>      <test name="pixelsize" compare="less"><double>12</double></test>
>>      <edit name="family" mode="prepend"><string>Lucida Sans</string></edit>
>>    </match>
>>
>> so that Helvetica LT Std is always acceptable for Helvetica, but below
>> 12px Lucida Sans is preferred for the family, fontconfig instead prepends
>> "Lucida Sans" to all patterns with a pixelsize below 12. So I'd have to
>> write
>>
>>    <match target="pattern">
>>      <test name="family" qual="first"><string>Helvetica</string></test>
>>      <edit name="family" mode="append"><string>Helvetica LT
>> Std</string></edit>
>>      <test name="family" qual="first"><string>Helvetica</string></test>
>>      <test name="pixelsize" compare="less"><double>12</double></test>
>>      <edit name="family" mode="prepend" binding="strong"><string>Lucida
>> Sans</string></edit>
>>    </match>
>>
>> instead.
>>
>> (Given I haven't made an error in my test) it's probably still an
>> improvement over 2.10 though.
>>
>>
>> Raimund
>>
>>
>>
>>
>>
>> --
>> Worringer Str 31 Duesseldorf 40211 DE  home: <rs at mytum.de>
>> +49-179-2981632 icq 16845346           work: <rs at interface-ag.de>
>>
>
>
>


-- 
Worringer Str 31 Duesseldorf 40211 DE  home: <rs at mytum.de>
+49-179-2981632 icq 16845346           work: <rs at interface-ag.de>


More information about the Fontconfig mailing list