把Firefox3的使用解决后,这两天一直为中文输入法困恼,今天在gedit和firefox中都能输入汉字了,我想把整个中文输入环境全部理顺,只是再花点时间的问题了,这里把过程小结一下。 我的Linux系统中文显示没问题,当初用光盘安装系统时,ttfonts-zh_CN已经装好了,如果你是全英文的系统,中文都没法显示,你要先装中文字库,见Install Chinese Fonts(读1这一段就行了)。在X窗口系统下的输入方法(Input Method)常见的有Xcin、Chinput和scim等,scim是目前走输入法通用化的一种,在这个框架下,中文搭上拼音模块可用来输拼音,其它非英语民族搭上各自的语言模块可输各自的文字。我找到了scim官网,根据指示下载了3个包,即scim-1.4.7, scim-pinyin-0.5.91, scim-tables-0.5.7。scim官网提供了安装方法,我在装scim包时没有用configure选项(缺省装在/usr/local下没什么不好)。装好这些包后,怎么启动scim服务,并使拼音输入法生效,scim官网讲得不清楚,强烈推荐“在 OpenBSD 4.4 上搭建中文语言环境”这篇文章,虽然这是为OpenBSD写的,对我还起到了不小的帮助作用,强调三个关键命令,第一个# gtk-query-immodules-2.0 >/var/db/gtk-2.0/gtk.immodules,这个gtk-query-immodules-2.0命令的结果要写到你机器对应 的gtk.immodules文件中(注意是覆盖式,不是追加式写入),我的gtk.immodules文件在/etc/gtk-2.0/i386*/目 录下;第二个export XMODIFIERS="@im=SCIM",注意大小写,如果敲成小写的scim,Ctrl+Space就出不来中文输入菜单了;第三个export GTK_IM_MODULE=scim,这里scim要小写。老实说,我浪费大把时间最后看是在这大小写上。顺便说一下,我只在gedit和firefox上测试通过了,vi、vim、emacs的测试我还未做,这需要做一些终端参数的设置。 如果包安装好、环境变量也设好(前面说了两个环境变量,关于语言的环境变量和LD_LIBRARY_PATH环境变量我没说,后面再说)、gtk.immodules
文件做好,在启动scim守护程序后(执行scim
-d命令),在窗口底部任务栏会出现一个小键盘图标,把鼠标移到这个图标上,点鼠标右键,会出现关于SCIM设置的菜单,但实际上在设置项中你可以不做任
何操作(包括在GTK中字体的选择),如果在gedit或类似应用中敲Ctrl+Space,不出现中文输入框,这与小键盘图标中SCIM设置无关,你不
需要在这个上面花时间,多试试环境变量,是不是这上面有问题。网上有的文章还提到XIM、XIM_PROGRAM等环境变量,我的经验是这些环境变量不设
也没什么关系。LANG、LC_CTYPE这两个与语言有关的环境变量要注意,在X终端下执行export命令检查一下这两个变量有没有设置,若
LC_CTYPE未设,LANG设成en_US类的值,象gedit界面就变成了英文显示,敲Ctrl+Space,中文输入框也出不来;若LC_CTYPE未设,LANG设成zh_CN.UTF-8类的值,gedit界面变成中文显示,敲Ctrl+Space,中文输入框应该出得来;若LC_CTYPE设成zh_CB.UTF-8类的值,LANG设成en_US类的值,gedit界面显示英文,但敲Ctrl+Space,中
文输入框出得来;若LC_CTYPE和LANG都设成en_US类的值,中文输入就出不来了。我想gedit是一个很好的测试器。运行gedit之前,我
把LD_LIBRARY_PATH动态库搜索路径环境变量设置如下export
LD_LIBRARY_PATH=/usr/local/lib:/usr/lib,不然的话gedit会加载scim模块出错。 相关链接: Chapter 2. Installing and supporting languages - Red Hat Documentation Linux Chinese Howto English Version - 98年的一篇文章,那个时候难度更大(关于locale的一段话: After you accomplished the establishments of Chinese System, you have Red Hat Enterprise Linux 5升级指南 |
|