Oddness in the classification of FreeSans
In fc-match -a 'monospace'
, I cannot fathom why FreeSans appears where it does, and I have been unable to remove it.
I want my "monospace" generic font to be MotoyaLCedar → serif [Gentium → 一点明朝CP ...] → HanaMinB
.
Instead, in fc-match -a 'monospace'
, I see MotoyaLCedar → HanaMinB → FreeSans → serif (?)
. The ordering is not expected.
Besides the odd ordering of "serif" (which may be another issue, but refrain for now), FreeSans should not be here.
I tried to classify FreeSans as "fantasy", which had no effect. I tried to declassify all fonts as "sans-serif", in case it is from the Fontconfig pre-installed classification, which had no effect.
I have run fc-cache -fv
after every modification of my personal fonts.conf
.
(And please ignore the odd font stack: I pruned the configuration for this issue, and my usual font stack is not as weird!)
Environment: Debian; fontconfig / libfontconfig1 / fontconfig-config 2.13.1-4.2
Attempt to declassify fonts as sans-serif (I have tried numerous modifications, this is just one):
<match>
<test qual="any" name="family" compare="eq">
<string>sans-serif</string>
</test>
<edit name="family" mode="delete" binding="strong">
</edit>
</match>
$ fc-match -a 'monospace'
MTLc3m.ttf: "モトヤLシータ゛3等幅" "Regular"
gw1796547.ttf: "花園明朝B" "Regular"
FreeSans.ttf: "FreeSans" "Regular"
I.MingCP-6.12.ttf: "一点明朝CP" "レギュラー"
GentiumPlus-R.ttf: "Gentium Plus" "Regular"
GenSekiGothic-R.ttc: "GenSekiGothic TW" "R"
_NanumBarunGothic-YetHangul.ttf: "NanumBarunGothic YetHangul" "Regular"
_NanumMyeongjo-YetHangul.ttf: "NanumMyeongjo YetHangul" "Regular"
GenSekiGothic-M.ttc: "GenSekiGothic TW" "M"
GenSekiGothic-L.ttc: "GenSekiGothic TW" "L"
FreeSansBold.ttf: "FreeSans" "Bold"
GenSekiGothic-B.ttc: "GenSekiGothic TW" "B"
GenSekiGothic-H.ttc: "GenSekiGothic TW" "H"
FreeSansOblique.ttf: "FreeSans" "Oblique"
GentiumPlus-I.ttf: "Gentium Plus" "Italic"
FreeSansBoldOblique.ttf: "FreeSans" "Bold Oblique"
$ fc-match -a 'serif'
GentiumPlus-R.ttf: "Gentium Plus" "Regular"
GentiumPlus-I.ttf: "Gentium Plus" "Italic"
I.MingCP-6.12.ttf: "一点明朝CP" "レギュラー"
_NanumMyeongjo-YetHangul.ttf: "NanumMyeongjo YetHangul" "Regular"
FreeSans.ttf: "FreeSans" "Regular"
MTLc3m.ttf: "モトヤLシータ゛3等幅" "Regular"
GenSekiGothic-R.ttc: "GenSekiGothic TW" "R"
_NanumBarunGothic-YetHangul.ttf: "NanumBarunGothic YetHangul" "Regular"
GenSekiGothic-M.ttc: "GenSekiGothic TW" "M"
gw1796547.ttf: "花園明朝B" "Regular"
GenSekiGothic-L.ttc: "GenSekiGothic TW" "L"
FreeSansBold.ttf: "FreeSans" "Bold"
GenSekiGothic-B.ttc: "GenSekiGothic TW" "B"
GenSekiGothic-H.ttc: "GenSekiGothic TW" "H"
FreeSansOblique.ttf: "FreeSans" "Oblique"
FreeSansBoldOblique.ttf: "FreeSans" "Bold Oblique"
~/.config/fontconfig/fonts.conf
:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!--serif-->
<alias><family>Gentium Plus</family><accept><family>serif</family></accept></alias>
<alias><family>serif</family><prefer><family>Gentium Plus</family></prefer></alias>
<alias><family>I.MingCP</family><accept><family>serif</family></accept></alias>
<alias><family>serif</family><prefer><family>I.MingCP</family></prefer></alias>
<alias><family>NanumMyeongjo YetHangul</family><accept><family>serif</family></accept></alias>
<alias><family>serif</family><prefer><family>NanumMyeongjo YetHangul</family></prefer></alias>
<!--sans-serif-->
<alias><family>GenSekiGothic TW</family><accept><family>sans-serif</family></accept></alias>
<alias><family>sans-serif</family><prefer><family>GenSekiGothic TW</family></prefer></alias>
<alias><family>NanumBarunGothic YetHangul</family><accept><family>sans-serif</family></accept></alias>
<alias><family>sans-serif</family><prefer><family>NanumBarunGothic YetHangul</family></prefer></alias>
<!--monospace-->
<alias><family>MotoyaLCedar</family><accept><family>monospace</family></accept></alias>
<alias><family>monospace</family><prefer><family>MotoyaLCedar</family></prefer></alias>
<alias><family>monospace</family><prefer><family>serif</family></prefer></alias> <!--temp-->
<alias><family>HanaMinB</family><accept><family>monospace</family></accept></alias>
<alias><family>monospace</family><prefer><family>HanaMinB</family></prefer></alias>
<!--fantasy-->
<alias><family>FreeSans</family><accept><family>fantasy</family></accept></alias>
<alias><family>fantasy</family><prefer><family>FreeSans</family></prefer></alias>
<!--x-->
<match>
<edit name="lang" mode="delete_all">
</edit>
</match>
</fontconfig>