[Fontconfig-bugs] [Bug 95428] Subfamilies with different OpenType 'size' should not be merged

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Fri Jun 24 21:07:21 UTC 2016


https://bugs.freedesktop.org/show_bug.cgi?id=95428

--- Comment #7 from gm at lyx.org ---
For reference, here's an updated proof-of-concept configuration that fixes some
issues wrt my previous messages:


<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- Arno Pro -->
<!-- Disambiguate Arno Pro family -->
<match target="scan">
  <test name="family"><string>Arno Pro</string></test>
  <test name="file"
compare="not_contains"><string>ArnoPro-Regular.otf</string></test>
  <test name="file"
compare="not_contains"><string>ArnoPro-Bold.otf</string></test>
  <test name="file"
compare="not_contains"><string>ArnoPro-Italic.otf</string></test>
  <test name="file"
compare="not_contains"><string>ArnoPro-BoldItalic.otf</string></test>
  <edit name="family" mode="delete"/>
</match>
<!-- Fix semibolds and light -->
<match target="scan">
  <test name="family"><string>Arno Pro Smbd Caption</string></test>
  <edit name="family" mode="prepend"><string>Arno Pro Caption</string></edit>
</match>
<match target="scan">
  <test name="family"><string>Arno Pro Smbd SmText</string></test>
  <edit name="family" mode="prepend"><string>Arno Pro SmText</string></edit>
</match>
<match target="scan">
  <test name="family"><string>Arno Pro Smbd</string></test>
  <edit name="family" mode="prepend"><string>Arno Pro</string></edit>
</match>
<match target="scan">
  <test name="family"><string>Arno Pro Smbd Subhead</string></test>
  <edit name="family" mode="prepend"><string>Arno Pro Subhead</string></edit>
</match>
<match target="scan">
  <test name="family"><string>Arno Pro Smbd Display</string></test>
  <edit name="family" mode="prepend"><string>Arno Pro Display</string></edit>
</match>
<match target="scan">
  <test name="family"><string>Arno Pro Light Display</string></test>
  <edit name="family" mode="prepend"><string>Arno Pro Display</string></edit>
</match>
<!-- further fix semibolds and light -->
<match target="scan">
  <test name="family" compare="contains">
    <string>Arno Pro Smbd</string>
    <!-- Arno Pro Smbd SmText -->
  </test>
  <test name="style" compare="contains">
    <string>Semibold Italic</string>
    <!-- Semibold Italic SmText -->
  </test>
  <edit name="style" mode="delete"/>
  <edit name="style" mode="prepend_first">
    <string>Semibold Italic</string>
  </edit>
</match>
<match target="scan">
  <test name="family" compare="contains">
    <string>Arno Pro Smbd</string>
    <!-- Arno Pro Smbd SmText -->
  </test>
  <test name="style" compare="contains">
    <string>Semibold</string>
    <!-- Semibold SmText -->
  </test>
  <test name="style" compare="not_contains">
    <string>Italic</string>
  </test>
  <edit name="style" mode="delete"/>
  <edit name="style" mode="prepend_first">
    <string>Semibold</string>
  </edit>
</match>
<match target="scan">
  <test name="family" compare="contains">
    <string>Arno Pro Light</string>
    <!-- Arno Pro Light Display -->
  </test>
  <test name="style" compare="contains">
    <string>Light Italic</string>
    <!-- Light Italic Display -->
  </test>
  <edit name="style" mode="delete"/>
  <edit name="style" mode="prepend_first">
    <string>Light Italic</string>
  </edit>
</match>
<match target="scan">
  <test name="family" compare="contains">
    <string>Arno Pro Light</string>
    <!-- Arno Pro Light Display -->
  </test>
  <test name="style" compare="contains">
    <string>Light</string>
    <!-- Light Display -->
  </test>
  <test name="style" compare="not_contains">
    <string>Italic</string>
  </test>
  <edit name="style" mode="delete"/>
  <edit name="style" mode="prepend_first">
    <string>Light</string>
  </edit>
</match>
<!-- remove duplicate styles -->
<match target="scan">
  <test name="family" compare="eq"><string>Arno Pro Caption</string></test>
  <test name="style" compare="contains"><string>Caption</string></test>  
  <edit name="style" mode="delete"/>
</match>
<match target="scan">
  <test name="family" compare="eq"><string>Arno Pro SmText</string></test>
  <test name="style" compare="contains"><string>SmText</string></test>  
  <edit name="style" mode="delete"/>
</match>
<match target="scan">
  <test name="family" compare="eq"><string>Arno Pro Subhead</string></test>
  <test name="style" compare="contains"><string>Subhead</string></test>  
  <edit name="style" mode="delete"/>
</match>
<match target="scan">
  <test name="family" compare="eq"><string>Arno Pro Display</string></test>
  <test name="style" compare="contains"><string>Display</string></test>  
  <edit name="style" mode="delete"/>
</match>

<!-- disambiguate EB Garamond -->
<match target="scan">
  <test name="family" compare="eq"><string>EB Garamond</string></test>
  <edit name="family" mode="delete"/>
</match>
<match target="scan">
  <test name="family" compare="eq"><string>EB Garamond 08</string></test>
  <test name="style" compare="contains"><string>08</string></test>  
  <edit name="style" mode="delete"/>
</match>
<match target="scan">
  <test name="family" compare="eq"><string>EB Garamond 12</string></test>
  <test name="style" compare="contains"><string>12</string></test>  
  <edit name="style" mode="delete"/>
</match>
<match target="scan">
  <test name="family" compare="eq"><string>EB Garamond SC</string></test>
  <edit name="family" mode="delete"/>
</match>
<match target="scan">
  <test name="family" compare="eq"><string>EB Garamond SC 08</string></test>
  <test name="style" compare="contains"><string>08</string></test>  
  <edit name="style" mode="delete"/>
</match>
<match target="scan">
  <test name="family" compare="eq"><string>EB Garamond SC 12</string></test>
  <test name="style" compare="contains"><string>12</string></test>  
  <edit name="style" mode="delete"/>
</match>
<!-- disambiguate Latin Modern -->
<!-- does not work -->
<match target="scan">
  <test name="family" compare="eq"><string>Latin Modern Roman</string></test>
  <edit name="family" mode="delete"/>
</match>
<match target="scan">
  <test name="family" compare="eq"><string>Latin Modern Sans</string></test>
  <edit name="family" mode="delete"/>
</match>
<match target="scan">
  <test name="family" compare="eq"><string>Latin Modern Roman
Slanted</string></test>
  <edit name="family" mode="delete"/>
</match>
<match target="scan">
  <test name="family" compare="eq"><string>Latin Modern Mono</string></test>
  <edit name="family" mode="delete"/>
</match>
</fontconfig>

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/fontconfig-bugs/attachments/20160624/5f67b9f1/attachment.html>


More information about the Fontconfig-bugs mailing list