LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1147|回复: 0

Mandrake 9.1 xsim输入法的安装

[复制链接]
发表于 2003-4-23 10:31:32 | 显示全部楼层 |阅读模式
经过8小时的摸索,在阅读文档和不点兄的建议后。终于成功的装上了xsim。经验总结如下:

1。Mandrake9.1根据/etc/sysconfig/i18n决定输入法和当前的locale。为了缺省使用xsim,需要在该文件中:
把 chinput 改成 xsim
把 Chinput 改成 XSIM
不点儿兄建议将里面第二行开始的zh_CN.XXXX全部改为zh_CN。ali_fred
发现这会导致一些不方便,比如ali_fred
在安装时选择了“缺省使用unicode、简体中文、繁体中文”等选项。导致安装最后的i18n文件中各LC_XXX全为zh_CN.UTF-8,如果直接改为zh_CN,在ls -l看文件时间有问题。在vim中提示是小方框。所以ali_fred
建议不改。

2。xsim的配置文件是/usr/local/xsim/etc/xsimrc,或~/.xsim/xsimrc。据不点兄说:
需要把 xsimrc 文件中的
STATUS_PANEL kde3
改成
STATUS_PANEL std
否则,可能导致 KDE 无法进入的老毛病。

3。由于使用linux不久,没有弄懂一些细节问题,按照xsim文档的方法不能自动启动xsim。(后来查看一些配置文件发现在启动时有对Chinput和xcin的支持和特殊处理,可能是它们导致的)。总之,ali_fred的xsim只能采用第二种方法:
开启一个console,运行
xsim &
在同一个console,执行需要运行的程序如:
kwrite &
在程序中可以通过ctrl+space调出中文输入。(顺便提一句:space是空格键,back或backspace是退格符。)
如何缺省开启xsim,请有经验的朋友指导。

3。因为xsim自动根据当前的locale决定字体等。程序对UTF-8处理不当,(从配置文件看ali_fred感觉好像没有处理。)我们看一下配置文件的前几行:
(以下凭记忆写,可能有笔误)。
LOCALE是可以使用xsim的LOCALE。缺省为AUTO,ali_fred感觉AUTO就包括zh_CN、zh_CN.GBK、zh_CN.GB2312、zh_CN.GB18030等不包括zh_CN.UTF-8。
EXT_LOCALE是除了LOCALE外,可以启动使用xsim的locale。作者可能感觉AUTO就够了,这里缺省使用的是空串。ali_fred在这里加上了zh_CN.UTF-8才能运行xsim。

4。安装了“缺省使用unicode”的用户可能在使用kwrite打开一些中文文件时会发现中文全部是小方框。没有关系,在查看菜单中可以制定编码,制定为GB18030就可以看到中文了。这里再顺便提一句。GB18030是今后国际统一的标准将逐步替代GBK、GB2312等。所以应尽可能使用改编码。当然它和GB2312等是兼容的。
扯远了,为什么ali_fred提kwrite的小方框呢?因为经过前几步的方法,可以启动xsim了,但是启动后的输入中文显示的是小方框。一些朋友怀疑这是字体的问题,ali_fred开始也是,不过后来ali_fred更相信是因为xsim在Mandrake9.1下对zh_CN.UTF-8的“理解”问题。ali_fred觉得是因为xsim不认识zh_CN.UTF-8。
根据这个判断我找到的解决办法:
在运行xsim前执行:export LC_CTYPE=zh_CN.GB18030,即我在kwrite中使用xsim的步骤为:
export LC_CTYPE=zh_CN.GB18030
xsim &
export LC_CTYPE=zh_CN.UTF-8
kwrite

5。部分网友反映输入法提示栏不怎么好看,就一“绠”字来表示是输入法,然后“浜”字表示五笔。
不点兄给出了建议:使用iconv转换xsimrc中的汉字的。把一种编码的汉字(例如 GB 码的“简拼”)转换成另外一种编码的汉字(例如 UTF-8 码的“简拼”)。
例如:前面说的“绠”和“浜”字。实际是UTF-8里的“简”和“五” 字。可以用两个命令来修正:
mv xsimrc xsimrc.UTF-8
iconv -f UTF-8 -t GB18030 xsimrc.UTF-8 > xsimrc
第一个命令将原来的xsimrc备份。第二个命令生成GB18030的编码。

总结:
安装时选择了“缺省使用unicode、简体中文、繁体中文”等选项的用户,使用xsim的步骤:
1。修改/etc/sysconfig/i18n把 chinput 改成 xsim 把 Chinput 改成 XSIM
2。修改/usr/local/xsim/etc/xsimrc,或~/.xsim/xsimrc。把
STATUS_PANEL kde3
改成
STATUS_PANEL std
3。启动xsim方式,以kwrite为例::
export LC_CTYPE=zh_CN.GB18030
xsim &
export LC_CTYPE=zh_CN.UTF-8
kwrite
4。如果输入法提示栏不是“简”、“五”表示拼音和五笔。需要通过iconv对xsimrc转码。

后记:
ali_fred是一个linux的新手(since 2002.10),但有多年window开发和管理的经验。这件事给我以下几点感想:
1。linux的普及还有很长的路要走。这些细节的问题会导致linux对普通用户实际不可用。
2。不知道xsim是不是开源的。希望有程序员看了ali_fred的帖子能够对xsim进行改进,使它自动支持zh_CN.UTF-8。(也许仅仅是在zh_CN.UTF-8下选择正确的字体。)
3。根据ali_fred查找的资料,于明俭先生的Chinput应该是一个很不错的输入法,里面内含李振春先生的智能拼音。(我不会五笔)。不知道为什么不能正常使用。我没有精力去hack这件事了,很遗憾。
4。linux尤其是Mandrake的论坛很少,很难得到帮助,我能够使用xsim而不能使用chinput,主要原因是因为安装xsim有不点兄的指导,特别致谢。如果我的帖子对大家有所帮助,建议大家今后有什么心得,能够象不点一样热心帮助别人,或者象我一样写出来。写本帖花了我1.5小时,希望是值得的。欢迎转载。


您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表