Challenge_C_PlusPlus的专栏

“血蝙蝠小组”创建者,专注于C/C++/Unix/Linux/算法/服务端开发

SCIM的安装配置
声明:本文转载自http://blog.sina.com.cn/u/4b721ac3010006bp,作了小小注解,其实已经很详细了,献给很多愿意使用rhel4,但不习惯其输入法在oo中乱蹦的朋友们,rhel5明年出来了就好了!
系统是RHEL-AS4 ,情况类似于fedora core 3.0
系统自带的IIIM我不太熟悉,所以就禁用了该服务,但根据很多老大的建议,千万不要删除之,以免带来不必要的麻烦。
//注:ntsysv注销掉iiim,然后注销当前用户即可
然后在 sourceforge上下载SCIM最新源码包SCIM-1.3.3.tar.gz scim-pinyin-0.5.0.tar.gz  
scim-tables-0.5.1.tar.gz
分别安装,其中SCIM的安装配置中要指定--prefix=/usr,否则安装后面两个软件时会出错误。
命令如下:
#tar -zxvf scim-1.3.3.tar.gz
#cd scim-1.3.3
#./configure --prefix=/usr && make && make install
//请指定--prefix=/usr,否则就修改scim-pinyin的配置,不然不能正确安装完毕
#tar -zxvf scim-pinyin-0.5.0.tar.gz
#cd scim-pinyin-0.5.0
#./configure  && make && make install
#tar -zxvf scim-tables-0.5.1.tar.gz
#cd scim-tables-0.5.1
#./configure  && make && make install
至此如果没有什么错误,SCIM就算安装完成了,下面进行输入法环境的设置。
新建文件: /etc/X11/xinit/xinput.d/scim
内容如下:
XIM=SCIM
XIM_PROGRAM=scim
XIM_ARGS=-d
GTK_IM_MODULE=scim
QT_IM_MODULE=scim
gnome-im-settings-daemon >/dev/null
为了全局的设置,要介绍一下 alternatives 命令。这是一个只有 root 才能执行的命令。alternatives 的意思是 “可选择的内容”。
假如你的系统中有几个命令功能十分类似,却又不能随意删除,那么可以用 alternatives 来指定一个全局的设置。
在 FC3 中,全局默认输入法和 java 系统等等都是用它来进行设置的。它有几种功能,可以用命令行参数来指定。
alternatives --install     意思是在 alternatives
数据库中添加一个 ,使它成为  的可选项,优先级是 。而  则是一个中转站。
#/usr/sbin/alternatives --install  /etc/X11/xinit/xinput.d/zh_CN  xinput-zh_CN
/etc/X11/xinit/xinput.d/scim 100
这个命令的意思就是将刚才新建的 scim 文件作为 zh_CN 的可选内容。它的优先级分别是 100,它的名字是 xinput-zh_CN。
另外一种功能是选择默认值。上面的命令仅仅向数据库中添加了可选内容,接下来当然是进行选择了。可以用两种办法,
第一种是 alternatives --auto ,这时系统会根据优先级来选择  的默认值。例如,运行
#/usr/sbin/alternatives --auto xinput-zh_CN
会把默认输入法设置为 scim
上面都是全局的设置。应该说,这些都是输入法自己的任务,虽然现在我们暂时只能手动操作。
要进行个人的设置怎么办?
最简单的应该是 gnome-im-switch applet 吧…… 在任务栏里有的
如果找不到这个 applet,那么在命令行下怎么配置呢?根据 xinput.sh 文件,它会检测 $HOME/.xinput.d/zh_CN 和
$HOME/.xinput.d/default。所以,我们这样做
$mkdir $HOME/.xinput.d
$ln -s /etc/X11/xinit/xinput.d/scim $HOME/.xinput.d/zh_CN
如果想默认使用英文环境 en_US.UTF-8 但是仍然需要用中文输入法
$ln -s /etc/X11/xinit/xinput.d/scim $HOME/.xinput.d/en_US
scim 和 fcitx 都支持 en_US.UTF-8 环境, 如果要用 fcitx 就把上面的改一改就可以
不要在 .bashrc 中做有关输入法
和 locale 的设置!需要的话 , 尽量在 $HOME/.i18n 中设置, 而不要修改 /etc/sysconfig/i18n 。安装输入法不需要修改
locale 设置。
我的$HOME/.i18n设置如下:
LC_CTYPE="zh_CN"
再次强调,只要是 zh_CN.*, 或者是 *.UTF-8 ,那么都可以使用中文输入法。
至此整个输入法设置完毕。 重启X,应该可以看到方便好用的SCIM了。
如果是 acroread 或者 realplay 之类的第三方非自由软件/程序,那么可能与 scim 等等使用 gtk-immodules 的输入法发生冲突。
运行这些软件时会莫名其妙地失去响应。发生这种情况时,先打开一个终端,然后在终端下启动程序,例如 realplay,看看有没有
什么特别的输出,例如 segment fault 或者 double free 等等。
按照作者们的说法,是因为 c++ 的 ABI 不一致,造成了 gtk-immodules 向应用程序报告了错误的输入法位置。
解决的办法只要重新编译输入法就可以了。不过更简单的办法,是修改可执行文件 /usr/bin/acroread 以及 /usr/bin/realplay ,
在第二行插入一行
export GTK_IM_MODULE=xim
原因同上,这时,所有在脚本中执行的命令属于同一个终端会话,因此重置环境变量之后,可以影响整个应用程序的设置,
而 gtk-immodules 设置为 xim 也就是使用 XIM,这时输入法与应用程序就不直接联系了。
更详细的设置请参考在linuxsir 上BBBUSH老大的一篇绝对精华: FC3 中启动输入法的方法步骤以及 alternatives 工具的介绍
原文地址:
::URL::http://www.linuxsir.org/bbs/showthread.php?t=167277&highlight=%B9%A4%BE%DF
引用地址:
::URL::http://www.linuxfans.org/nuke/modules.php?name=Forums&file=viewtopic&p=4432364
或者
::URL::http://blog.chinaunix.net/article.php?articleId=19503&blogId=657
我操作的步骤主要是以下4个:
1. 安装 scim 三件套。
2. 在/etc/X11/xinit/xinput.d/下建立 scim
3. 在$HOME下建立.xinput.d目录,做好连接
4. 在$HOME下建立.i18n文件, 设定LC_CTYPE=zh_CN  或者 zh_CN.UTF-8
阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

SCIM的安装配置

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭