Manjaro
lcdfilter 設置被 fontconfig 忽略
我想使用https://wiki.archlinux.org/index.php/font_configuration#LCD_filter中的 LCD 過濾器設置。該文件已經存在:
$ cat /etc/fonts/conf.d/11-lcdfilter-default.conf <?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"> <fontconfig> <description>Use lcddefault as default for LCD filter</description> <!-- Use lcddefault as default for LCD filter --> <match target="pattern"> <!-- This configuration is available on the major desktop environments. We shouldn't overwrite it with "assign" unconditionally. Most clients may picks up the first value only. so using "append" may simply works to avoid it. --> <edit mode="append" name="lcdfilter"> <const>lcddefault</const> </edit> </match> </fontconfig>
但是這些設置似乎被忽略了:
$ grep lcd /etc/fonts/fonts.conf | wc 0 0 0 $ fc-match --verbose | rg lcd lcdfilter: 0(i)(w)
這是執行後的
fc-cache -f
。獲取更改的命令是什麼
/etc/fonts/conf.d
?我不想重新啟動我的系統,因為這會花費太長時間(我需要多次這樣做才能排除故障)。
我從來沒有弄清楚如何更廣泛地解決這個問題,但事實證明另一個配置文件正在覆蓋我的系統級配置文件:
$ grep cache /etc/fonts/fonts.conf <!-- Font cache directory list --> <cachedir>/var/cache/fontconfig</cachedir> <cachedir prefix="xdg">fontconfig</cachedir> <cachedir>~/.fontconfig</cachedir>
我沒有,
~/.fontconfig
但事實證明我確實有~/.config/fontconfig/fonts.conf
which 本身設置lcdfilter
為none
. 我刪除了這個文件(它沒有任何其他重要設置,否則我只會編輯/刪除該lcdfilter
塊),在關閉並再次打開我的應用程序後,字型按預期呈現。fc-cache -r
也顯示了正確的結果。