Ubuntu下使用中文输入法时汉字写法与常规相异的解决办法
问题描述
在Ubuntu下使用中文输入法,键盘输入(Keyboard input method system)为IBus
,中文输入法使用的是Chinese(Intelligent Pinyin)
.
在输入过程中会出现汉字和常规不同的情况,比如“大门”
的“门”
字在输入时会变成下图所示:
原因
这种情况是因优先使用了日本字体的缘故,即图片中的那个“门”是日本汉字的写法。
解决
修改/etc/fonts/conf.avail/64-language-selector-prefer.conf
这个文件中字体的顺序,然后重启或登出(Log Out)再进入系统就行。为保险请仍记得事先备份:
- 修改前
<?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 KR</family>
<family>Noto Sans CJK SC</family>
<family>Noto Sans CJK TC</family>
<family>Noto Sans CJK HK</family>
<family>Lohit Devanagari</family>
<family>Noto Sans Sinhala</family>
</prefer>
</alias>
<alias>
<family>serif</family>
<prefer>
<family>Noto Serif CJK JP</family>
<family>Noto Serif CJK KR</family>
<family>Noto Serif CJK SC</family>
<family>Noto Serif CJK TC</family>
<family>Lohit Devanagari</family>
<family>Noto Serif Sinhala</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>Noto Sans Mono CJK JP</family>
<family>Noto Sans Mono CJK KR</family>
<family>Noto Sans Mono CJK SC</family>
<family>Noto Sans Mono CJK TC</family>
<family>Noto Sans Mono CJK HK</family>
</prefer>
</alias>
</fontconfig>
- 修改后
<?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 HK</family>
<family>Noto Sans CJK JP</family>
<family>Noto Sans CJK KR</family>
<family>Lohit Devanagari</family>
<family>Noto Sans Sinhala</family>
</prefer>
</alias>
<alias>
<family>serif</family>
<prefer>
<family>Noto Serif CJK SC</family>
<family>Noto Serif CJK TC</family>
<family>Noto Serif CJK JP</family>
<family>Noto Serif CJK KR</family>
<family>Lohit Devanagari</family>
<family>Noto Serif Sinhala</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 HK</family>
<family>Noto Sans Mono CJK JP</family>
<family>Noto Sans Mono CJK KR</family>
</prefer>
</alias>
</fontconfig>
效果
现在输入恢复正常:
参考
[1] https://github.com/libpinyin/ibus-libpinyin/issues/123