这是一篇篇幅不长的文章。说说,fedora18 init3模式下,startx进入纯英文界面,输入中文的方法。要说明的是,对于linux这是一个通用方法。而不仅仅局限于fedora。
既然,startx是启动X界面的入口,那么就要看看startx到底是什么了。
$ which startx
/bin/startx
$file /bin/startx
/bin/startx: POSIX shell script, ASCII text executable
原来,startx只是一个shell脚本文件,而不是二进制文件。
我们打开startx:
$vim /bin/startx
看到如下语句:
userclientrc=$HOME/.xinitrc
sysclientrc=/etc/X11/xinit/xinitrc
说明,X启东时,读取的是 /etc/X11/xinit/里的配置文件内容。由xinit文件名就知道了。init是初始化的意思。找找看有没有关于输入法的配置文件吧。为了简便,可以用如下命令:
grep lang `du -a`
或者
grep input `du -a`
(我觉得得凭经验~)
最后,在xinitrc.d这个目录里发现了。这个也是shell脚本文件。打开它:
$ vim 50-xinput.sh
通过/lang 搜索lang发现几处$tmplang=xxx。只有一行是 前面没有$符号的:
tmplang=${LC_CTYPE:-${LANG:-"en_US.UTF-8"}}
tmplang一个全局变量,只需要修改它的value值即可。
将 tmplang=${LC_CTYPE:-${LANG:-"en_US.UTF-8"}}
修改为 tmplang="zh_CN.UTF-8"。
让系统输入法语言环境初始化为中文。
然后我们在进入字符模式验证修改,成功! 系统语言环境是纯英文的,但是可以调出中文输入法,可以切换输入法。