使用linux最沮丧的事情莫过于中文输入法切换不出来,甚至有人错误地认为,要使用中文输入法,必须把“区域和语言”(Region & Language)设置为中国-中文。输入法只是一个软件,和区域设置没有什么必然联系。如果你在初始化安装系统的时候,选择了中文,倒是会帮你把中文输入法打包安装好。
所以和我一样使用en-us区域设置的朋友,如果输入法出了问题,怎么排查解决呢?
首选你必须安装一个中文输入法,推荐小企鹅
但是,安装完后,发现按 ctrl+space 却没有召唤出输入法。需要在终端中执行
选中当前输入法为FCITX,并进行基本的设置。 大部分情况下,至此你就可以正常地使用一个中文输入法了。
在早期的一些教程中,会强调在X环境变量(例如~/.xprofile,~/.xinitrc,~/.xinputrc )中声明环境变量来保证输入法正常启动。实际上没有必要。
现在的发行版喜欢用软链接来管理设定,系统读取的位置不变(认准软链接),用户设定时改变软链接的实际指向,这是一个漂亮的解耦做法。如果你开发过跨平台跨环境的应用,就知道兼容适配有多麻烦,一个简单易行的方案有多宝贵。
来看看Fedora20里面是怎么做的。
所以当你用标准姿势安装并设定过输入法,最后是可以通过软链接指向正确关联。 反正 /etc/X11/xinit/xinitrc.d/50-xinput.sh 启动脚本认准了/etc/X11/xinit/xinputrc
如果你不顺利,在运行im-chooser的时候出现了错误。 内容大概是
不要着急,Linux的易用性虽然还是有差距,但是一直保持有详细错误日志的优良传统。 在 ~/.cache/imsettings/log 看到关键错误日志如下:
如果不了解gsettings,可以参见gsettings简介及常用操作介绍