如何给Noto CJK 字体排序?

看了一下本坛17年的讨论,似乎也是这问题,就是手写 /etc/fonts/conf.d/64-language-selector-prefer.conf 文件并不生效。
在以 poppler 为后端的 PDF 阅读器如 zathuraOkular 中并不生效,简体中文仍然使用日文字体显示。
这是我使用的/etc/fonts/conf.d/64-language-selector-prefer.conf 文件,用户目录下没有相关的 font.conf 文件

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
	<alias>
		<family>sans-serif</family>
		<prefer>
			<family>Noto Sans CJK SC</family>
			<family>Noto Sans CJK TC</family>
			<family>Noto Sans CJK JP</family>
		</prefer>
	</alias>
	<alias>
		<family>monospace</family>
		<prefer>
			<family>Noto Sans Mono CJK SC</family>
			<family>Noto Sans Mono CJK TC</family>
			<family>Noto Sans Mono CJK JP</family>
		</prefer>
	</alias>
</fontconfig>

但输出的还是JP 字体 。

fc-match -s | grep 'Noto Sans CJK'              ✔  1014  00:14:34
NotoSansCJK-Regular.ttc: "Noto Sans CJK JP" "Regular"

在pdf 中看起来很碍眼。

可以将配置放到 ~/.config/fontconfig/fonts.conf,然后执行 fc-cache
具体可以参考:fonts.conf 中文手册 [金步国]

系统编码是 zh_CN.UTF-8 会默认使用 Noto Sans CJK SC

没有效果啊。

一剂管好!

把里面的 @@…@@ 替换掉,后缀的 .tmpl 去掉。

你这个fonts.conf文件放在 ~/.config/fontconfig/, 或者将相同内容写入 /etc/fonts/conf.d/64-language-selector-prefer.conf, 再fc-cache -fv,都没有生效。

fc-match serif 输出啥?

/etc/fonts/conf.d/70-fonts-noto-cjk.conf 中的 JP 和 SC 互换一下

fc-match serif                              
NotoSerifCJK-Regular.ttc: "Noto Serif CJK SC" "Regular"

/etc/fonts/conf.d/70-fonts-noto-cjk.conf里面每个字体都是独立服务某一特定选项的,没有JP 和 SC 同时出现需要排序的地方。