とりあえず見てくれ
dotfiles/fonts.conf at master · endaaman/dotfiles
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<match target="pattern">
<edit name="dpi" mode="assign">
<double>96</double>
</edit>
</match>
<!-- rendering -->
<match target="font">
<edit name="antialias" mode="assign">
<bool>true</bool>
</edit>
<edit name="autohint" mode="assign">
<bool>false</bool>
</edit>
<edit name="hinting" mode="assign">
<bool>false</bool>
</edit>
<edit name="hintstyle" mode="assign">
<const>hintnone</const>
</edit>
<edit name="rgba" mode="assign">
<const>rgb</const>
</edit>
<edit name="lcdfilter" mode="assign">
<const>lcdlight</const>
</edit>
<edit name="embeddedbitmap" mode="assign">
<bool>false</bool>
</edit>
<test name="weight" compare="more">
<const>medium</const>
</test>
</match>
<!-- alias -->
<alias>
<family>serif</family>
<prefer><family>Ubuntu</family></prefer>
</alias>
<alias>
<family>sans-serif</family>
<prefer><family>Ubuntu</family></prefer>
</alias>
<alias>
<family>sans</family>
<prefer><family>Ubuntu</family></prefer>
</alias>
<alias>
<family>monospace</family>
<prefer><family>Ubuntu Mono</family></prefer>
</alias>
<!-- customize -->
<match>
<test name="family"><string>Ubuntu</string></test>
<edit name="family" mode="prepend" binding="strong">
<string>Ubuntu</string>
<string>MotoyaLMaru</string>
<string>Noto Sans CJK JP</string>
</edit>
</match>
<match>
<test name="family"><string>Ubuntu Mono</string></test>
<edit name="family" mode="prepend" binding="strong">
<string>UbuntuMonoDerivativePowerline Nerd Font</string>
<string>DejaVu Sans Mono</string>
<string>Noto Emoji</string>
<string>Migu 1M</string>
<string>Noto Sans Mono CJK JP</string>
</edit>
</match>
</fontconfig>
上のほうがレンダリング設定。これをしないとフォントによってはジャギったりして残念な感じになる。
-
Ubuntu
でUbuntu
→モトヤLマルベリ3等幅
→Noto CJK JP
-
Ubuntu Mono
でUbuntu Mono(with Powerline NERD Font)
→Dejavu Sans Mono
→Noto Emoji
→Migu 1M
→Noto Sans CJK JP
と解決するようにして、serif
sans-serif
sans
で Ubuntu
を使用し、monospace
でUbuntu Mono
を使うように設定している。Dejabu Sans Mono
を挟んでいるのは一部の使いたい半角記号がUbuntu Monoに収録されていないためである。
直接monospace
とかに割り当てようとしてもうまくいかないので、一番最初に解決されるフォント(この場合はUbuntu
とUbuntu Mono
)に日本語とか絵文字フォントとかぶら下げていくのが良い。
こんな感じの設定にしておけばLinuxデスクトップのフォント設定とかを一切いじらず好みのフォントになって楽。
確認とか
各フォントがどのような優先度になっているかは
$ fc-match -a Sans | head -n 10
で、どのようなフォントがあるかは
$ fc-list | peco
で、 peco
等出力を整形できるコマンドにパイプすると味が良い。