Comment 7 for bug 1468027

Revision history for this message
Cheng-Chia Tseng (zerng07) wrote :

Fedora 21 only applies Adobe Source Han Sans / Noto Sans CJK to Chinese locale (zh_CN and zh_TW).

Fedora does not use 69-language-selectors-*.conf because they only set one major font for one locale, and they write the relevant configuration in the corresponding fontconfig fille for the major font. That is, they set one font for Serif, Sans-serif, and Monospace (listed below). However, I don't like this method. Using 69-language-selectors-*.conf is more flexible here.

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
    <match>
        <test name="family" compare="contains">
                <string>Source Han Sans</string>
        </test>
        <edit name="autohint" mode="assign">
                <bool>false</bool>
        </edit>
        <edit name="hintstyle" mode="assign">
                <const>hintfull</const>
        </edit>
    </match>
    <match>
        <test name="lang">
            <string>zh-tw</string>
        </test>
        <test name="family">
            <string>monospace</string>
        </test>
        <edit name="family" mode="prepend">
        <string>Source Han Sans TW</string>
        <string>Source Han Sans CN</string>
        </edit>
        <edit name="family" mode="prepend" binding="strong">
        <string>DejaVu Sans Mono</string>
        </edit>
    </match>
    <match>
        <test name="lang">
            <string>zh-hk</string>
        </test>
        <test name="family">
            <string>monospace</string>
        </test>
        <edit name="family" mode="prepend">
        <string>Source Han Sans TW</string>
        <string>Source Han Sans CN</string>
        </edit>
        <edit name="family" mode="prepend" binding="strong">
        <string>DejaVu Sans Mono</string>
        </edit>
    </match>

    <alias>
        <family>Source Han Sans TW</family>
        <default>
            <family>monospace</family>
        </default>
    </alias>

    <match>
        <test name="lang">
            <string>zh-tw</string>
        </test>
        <test name="family">
            <string>serif</string>
        </test>
        <edit name="family" mode="prepend">
            <string>Source Han Sans TW</string>
            <string>Source Han Sans CN</string>
        </edit>
    </match>
    <match>
        <test name="lang">
            <string>zh-hk</string>
        </test>
        <test name="family">
            <string>serif</string>
        </test>
        <edit name="family" mode="prepend">
            <string>Source Han Sans TW</string>
            <string>Source Han Sans CN</string>
        </edit>
    </match>

    <alias>
        <family>Source Han Sans TW</family>
        <default>
            <family>serif</family>
        </default>
    </alias>

    <match>
        <test name="lang">
            <string>zh-tw</string>
        </test>
        <test name="family">
            <string>sans-serif</string>
        </test>
        <edit name="family" mode="prepend">
            <string>Source Han Sans TW</string>
            <string>Source Han Sans CN</string>
        </edit>
    </match>
    <match>
        <test name="lang">
            <string>zh-hk</string>
        </test>
        <test name="family">
            <string>sans-serif</string>
        </test>
        <edit name="family" mode="prepend">
            <string>Source Han Sans TW</string>
            <string>Source Han Sans CN</string>
        </edit>
    </match>

    <alias>
        <family>Source Han Sans TW</family>
        <default>
            <family>sans-serif</family>
        </default>
    </alias>
</fontconfig>