英文无版图(Ubuntu)系统环境的汉字显示兼容的解决方法


如果您像我一样:安装的是英文的无版图(Ubuntu),然后添加兼容中文的输入支援。在应用的过程中,您一定会发现,在这样的英文界面上,遇到要输入中文时,总有几个汉字在显示上,有些怪怪的……例如:门、复、径等这些汉字。不是显示为半角,就是显示犹如日本字的笔画写法。如下图:

 

 

实际上,这些都不是汉字,这是日文。怎么会这样?怎么解决?

在网络上,有许多人提出这样的问题。可是,回复的答案不外是通过Ubuntu Tweak,或者Unity Tweak Tool修改字体的显示:

 

 

可是,这样的修改,虽然界面上如您所愿,在阅读的界面上依照您自己的设定字体字形显示,但是,实际上,并没有彻底解决问题。怎么证明?

当您应用中文输入时,您就会发现这个问题。无论您是采用Ubuntu所提供的拼音输入法,或者自行安装的谷歌输入法,或者许多人应用的搜狗输入法,您会发现,在输入条上的显示,这几个字还是阴魂不散地在那儿显示……

在英文的无版图论坛,没有人问这个问题。在中文的论坛上,有人问了,但是没有人回答……

我对程式语言,一窍不通,当然无法自己去找答案。

后来遇到一位江湖大哥,他说:我不懂中文。这应该是系统字体的应用问题。建议我到下面的几个文件夹里去找找:

/home/[user]/.config/fonts

/etc/fonts/

于是,我像海底捞针一样,把这些文件夹的文件,应用最愚笨的方法:一个个打开来——找、找、找……

终于,皇天不负有心人,终于找到了解决的办法:问题是出在这个文件:64-language-selector-prefer.conf里有关语文预读的先后次序。只要修改了这个先后的次序,就解决了这个问题了。

我的这个64-language-selector-prefer.conf文件,就在/etc/fonts/conf.avail/里。

修改的步骤如下:

1)用管理员的权限,用文本编辑器打开这个在 /etc/fonts/conf.avail/ 目录下的 64-language-selector-prefer.conf 文件。

2)文件的内容是:


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

如图:

 

修改的地方,我想不懂程序的朋友都可以胜任愉快。就是把这三行的次序,做些微的调整即可。

Noto Sans CJK JP
Noto Sans CJK SC
Noto Sans CJK TC

这个次序是要系统先读取Noto Sans CJK JP字库。这个是日本字库,难怪系统显示的是日文!终于恍然大悟。这个我还稍微懂一点,因为常常接触到这三个字库:
Noto Sans CJK SC 是思源的中文简体字库;
Noto Sans CJK TC 是思源的中文繁体字库;
Noto Sans CJK JP 是思源的日文字库。

动手把它们的读取次序改一改即可:

次序应该是这样:

Noto Sans CJK SC
Noto Sans CJK TC
Noto Sans CJK JP

修改后的文件内容应该是这样:


<?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>

如图:

3)修改后,记得要保存这个文件。

4)重启系统。大功告成。

如图:

事实上,其他的什么都不必改,只要修改这个文件就可以解决这个问题了。

当然,您如果对字体有偏好,要修改显示的字库,那么,请听尊便。因为,跟这个我提的问题一点关系也没有。

用了一年多的无版图(Ubuntu),越来越觉得这个系统——太好了。

Print Friendly, PDF & Email

有问题或评论?

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.

文章月度归档