Я использую Debian с XFCE.
Поведение по умолчанию: нет совпадений или псевдонимов
Во-первых, позвольте мне показать поведение моей системы по умолчанию, когда ~/.config/fontconfig/fonts.conf не имеет совпадений или псевдонимов.
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
</fontconfig>
В этом случае fc-match выводит следующее для Courier и Consolas.
lone@debian:~$ fc-match Courier
n022003l.pfb: "Nimbus Mono L" "Regular"
lone@debian:~$ fc-match Consolas
DejaVuSans.ttf: "DejaVu Sans" "Book"
Пользовательское поведение: когда совпадение определено
Теперь у меня есть следующее в ~/.config/fontconfig/fonts.conf.
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- Courier => DejaVu Sans Mono -->
<match>
<test name="family"><string>Courier</string></test>
<edit name="family"><string>Deja Vu Sans Mono</string></edit>
</match>
<!-- Consolas => DejaVu Sans Mono -->
<match>
<test name="family"><string>Consolas</string></test>
<edit name="family"><string>Deja Vu Sans Mono</string></edit>
</match>
</fontconfig>
В этом случае fc-match выдает следующее.
lone@debian:~$ fc-match Courier
n022003l.pfb: "Nimbus Mono L" "Regular"
lone@debian:~$ fc-match Consolas
DejaVuSansMono.ttf: "DejaVu Sans Mono" "Book"
Здесь мы видим, что система соблюдала мое правило замены для Consolas, но она не соблюдала мое правило замены для Courier. Почему выход fc-match Courier
прежнему "Nimbus Mono L", а не "DejaVu Sans Mono"?