配置FONTCONFIG_PATH

上一级页面:index-wsl

前言

您需要正确设置$FONTCONFIG_PATH。通常它被设置在/etc/profile

FONTCONFIG_PATH

报错:

1
Fontconfig error: Cannot load default config file: No such file: (null)

您需要正确设置$FONTCONFIG_PATH。通常它被设置在/etc/profile中,

使用命令查看:

1
echo $FONTCONFIG_PATH

发现输出为空,如果 $FONTCONFIG_PATH没有设置的话,默认读取/etc/fonts/fonts.conf

一般情况下,$FONTCONFIG_PATH如果没有自动设置的话,不应由用户指定,其应当保持为空,

但用户还需要做一些操作如下:

  1. 如果你使用zsh或是其他非Bash的shell,将/etc/profile里面的内容复制,然后粘贴到/etc/zsh/zprofile文件的末尾,见配置oh-my-zsh

  2. 尝试重新安装fontconfig

1
sudo apt install fontconfig --reinstall
  1. 如果您从非登录 shell 执行命令(例如,通过 cron),还需要通过执行以下操作显式设置它:加到全局的profile文件中
1
sudo vim /etc/profile
1
2
# set default fontconfig
export FONTCONFIG_PATH=/etc/fonts

fontconfig读取顺序

fontconfig 主要读取/etc/fonts/fonts.conf/etc/fonts/conf.d/*.conf~/.config/fontconfig/fonts.conf~/config/fontconfig/conf.d/*.conf

至于那些历史遗留的目录位置~/.fonts.conf.d/*.conf~/.fonts.conf,由于不遵守 XDG 规范,我们就不要再使用它们了。

Linux fontconfig 的字体匹配机制 - 双猫CC (catcat.cc)

参考、引用、致谢

Linux fontconfig 的字体匹配机制 - 双猫CC (catcat.cc)

Font Configuration and Customization for Open Source Systems - 白皮书翻译和深入_Franklin的博客-CSDN博客