Arch Linuxでいくつかのフォント設定を調整しています。から新しい.conf
ファイルを作成し、/etc/fonts/conf.avail/
にシンボリックリンクしました/etc/fonts/conf.d
。今、これらの変更をテストしたいと思います。端末を起動しfc-cache -rv
て再起動してみました。私の知る限り、アップデートは適用されません。
Arch Linux Wikiでは、次のように言います。
Fontconfigは、中央ファイル(/etc/fonts/fonts.conf)にすべての設定を収集します。このファイルはフォント設定の更新中に置き換えられるため、編集しないでください。 Fontconfigをサポートするアプリケーションは、このファイルを使用して利用可能なフォントとフォントがどのようにレンダリングされるかを学びます。このファイルは、グローバル構成 (/etc/fonts/local.conf)、/etc/fonts/conf.d/ で構成されたプリセット、およびユーザー構成ファイル ($XDG_CONFIG_HOME/fontconfig/fonts.conf) の規則の組み合わせです。 。 fc-cacheを使用すると、フォント構成の構成を再構築できますが、変更は新しく起動したアプリケーションでのみ表示できます。
しかし、私はfonts.conf
そうではありませんバラより派閥のように。
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- /etc/fonts/fonts.conf file to configure system font access -->
<fontconfig>
<!--
DO NOT EDIT THIS FILE.
IT WILL BE REPLACED WHEN FONTCONFIG IS UPDATED.
LOCAL CHANGES BELONG IN 'local.conf'.
The intent of this standard configuration file is to be adequate for
most environments. If you have a reasonably normal environment and
have found problems with this configuration, they are probably
things that others will also want fixed. Please submit any
problems to the fontconfig bugzilla system located at fontconfig.org
Note that the normal 'make install' procedure for fontconfig is to
replace any existing fonts.conf file with the new version. Place
any local customizations in local.conf which this file references.
Keith Packard
-->
<!-- Font directory list -->
<dir>/usr/share/fonts</dir>
<dir>/usr/share/fonts</dir>
<dir prefix="xdg">fonts</dir>
<!-- the following element will be removed in the future -->
<dir>~/.fonts</dir>
<!--
Accept deprecated 'mono' alias, replacing it with 'monospace'
-->
<match target="pattern">
<test qual="any" name="family">
<string>mono</string>
</test>
<edit name="family" mode="assign" binding="same">
<string>monospace</string>
</edit>
</match>
<!--
Accept alternate 'sans serif' spelling, replacing it with 'sans-serif'
-->
<match target="pattern">
<test qual="any" name="family">
<string>sans serif</string>
</test>
<edit name="family" mode="assign" binding="same">
<string>sans-serif</string>
</edit>
</match>
<!--
Accept deprecated 'sans' alias, replacing it with 'sans-serif'
-->
<match target="pattern">
<test qual="any" name="family">
<string>sans</string>
</test>
<edit name="family" mode="assign" binding="same">
<string>sans-serif</string>
</edit>
</match>
<!--
Load local system customization file
-->
<include ignore_missing="yes">conf.d</include>
<!-- Font cache directory list -->
<cachedir>/var/cache/fontconfig</cachedir>
<cachedir prefix="xdg">fontconfig</cachedir>
<!-- the following element will be removed in the future -->
<cachedir>~/.fontconfig</cachedir>
<config>
<!--
Rescan configuration every 30 seconds when FcFontSetList is called
-->
<rescan>
<int>30</int>
</rescan>
</config>
</fontconfig>
最後に、結合されたフォント設定がどのようになるかを確認できることを願っています。
答え1
fc-cache -rvを実行して端末を再起動しました。私の知る限り、アップデートは適用されません。
アプリケーションを再起動すると、変更を再ロードできます。一部のアプリケーションは、再起動を必要とせずに定期的に構成を再ロードします。
fc-cache
私が知っている限り、一般的に設定変更には役に立ちません。
変更が適用されないと思われる場合は、一致する項目がないため、一致する項目があってもルールを適用するほど強力ではない可能性があります。
無条件で制限的で非常に目立つ変更のために、次のようなものを追加することをお勧めします。
<match target="pattern">
<edit name="family" mode="prepend" binding="strong">
<string>Comic Sans MS</string>
</edit>
</match>
目から血が出始めると効果があることがわかります。
それにもかかわらず、この規則の後に評価された規則は、このパターンをさらに修正することができます。
他のものよりも優先順位が高いようですが、特定のTTFファイルを扱うので、何が一致するのかを知る必要があります(FC_DEBUG=1
それで十分です)
<selectfont>
<rejectfont>
<glob>/usr/share/fonts/TTF/DejaVuSans.ttf</glob>
</rejectfont>
</selectfont>
質問の別の部分:
しかし、私のチームは
fonts.conf
派閥のようには見えません。
魔法はそれが<include ignore_missing="yes">conf.d</include>
他のすべてをカバーするということです。
私のシステムでは、次のようになります。
$ FC_DEBUG=1024 leafpad
Loading config file /etc/fonts/fonts.conf
Scanning config dir /etc/fonts/conf.d
Loading config file /etc/fonts/conf.d/10-hinting-slight.conf
Loading config file /etc/fonts/conf.d/10-scale-bitmap-fonts.conf
Loading config file /etc/fonts/conf.d/20-unhint-small-dejavu-sans-mono.conf
Loading config file /etc/fonts/conf.d/20-unhint-small-dejavu-sans.conf
Loading config file /etc/fonts/conf.d/20-unhint-small-dejavu-serif.conf
Loading config file /etc/fonts/conf.d/20-unhint-small-vera.conf
Loading config file /etc/fonts/conf.d/30-metric-aliases.conf
Loading config file /etc/fonts/conf.d/30-urw-aliases.conf
Loading config file /etc/fonts/conf.d/30-win32-aliases.conf
Loading config file /etc/fonts/conf.d/40-nonlatin.conf
Loading config file /etc/fonts/conf.d/45-latin.conf
Loading config file /etc/fonts/conf.d/49-sansserif.conf
Loading config file /etc/fonts/conf.d/50-user.conf
Scanning config dir /home/dx/.config/fontconfig/conf.d
Loading config file /home/dx/.config/fontconfig/conf.d/10-powerline-symbols.conf
Loading config file /home/dx/.config/fontconfig/fonts.conf
Loading config file /home/dx/.fonts.conf
Loading config file /etc/fonts/conf.d/51-local.conf
Loading config file /etc/fonts/local.conf
Loading config file /etc/fonts/conf.d/57-dejavu-sans-mono.conf
Loading config file /etc/fonts/conf.d/57-dejavu-sans.conf
Loading config file /etc/fonts/conf.d/57-dejavu-serif.conf
Loading config file /etc/fonts/conf.d/60-latin.conf
Loading config file /etc/fonts/conf.d/65-fonts-persian.conf
Loading config file /etc/fonts/conf.d/65-nonlatin.conf
Loading config file /etc/fonts/conf.d/69-unifont.conf
Loading config file /etc/fonts/conf.d/75-fix-calibri.conf
Loading config file /etc/fonts/conf.d/80-delicious.conf
Loading config file /etc/fonts/conf.d/90-synthetic.conf