红联Linux门户
Linux帮助

Debian Sid里的fcitx+im-switch无痛输入法的安装

发布时间:2006-03-05 12:37:42来源:红联作者:linux
Debian 唯一不如意的可能就是输入法的问题了
没有输入法管理工具和切换工具
使得刚用Debian的新手无所适从
前一段时间huangjiahua版主发一了个帖子
<<托妮做的 fcitx 3.2 deb 包>>
http://www.linuxsir.org/bbs/showthre...ghlight=switch
其中提到了im-switch+支持im-swtich的fcitx3.2为我提供了一个有用信息
但是当时我是用fvwm的
在上面帖子中提到在~/下不能有.xinitrc or .Xsession文件
使我百思不得其解
于是放弃了im-switch
可是前几天我给同学装sid时想起了这个帖子
想用尽量简单的方法来处理输入法的问题
于是费了老大劲从hua版主浩浩的帖子中找到了这篇原帖子
于是下载了那个etony打的包
安装了im-switch
然后注销后再登陆就能用Ctrl+Space就能唤出fcitx了
于是总结基于gdm登陆的sid系统的输入法简单处理如下:

测试系统的locale为zh_CN.GBK用gdm登陆

1.im-switch

代码:
引用:
#apt-get install im-switch
2.fcitx 3.2


代码:
引用:
#wget http://www.fcitx.org/download/fcitx_3.2-051010_i386.deb
#dpkg -i fcitx_3.2-051010_i386.deb

3.注销重再登陆即可
注:我没有utf8下的locale下测试,希望哪位能测试一下,看看能不能成功


给同学安装成功了后我于是也想摆弄一下了
但是我的系统没用gdm而是用startx来启动fvwm,而fvwm用的是~/.xinitrc来启动的
所以按照上面的办法怎么也没成功(.xinitr里关于输入法的export已经注掉)
于是google到一篇
<>
http://bamanzi.blogeden.cn/post/110848/3911
还有这一个
http://www.linuxsir.org/bbs/showthread.php?t=231396
在这篇文章里我知道了im-switch在安装后还是要进行配置一点东西的
而上面hua版主的文章里讨论要删掉.Xsession or .xinitrc才能启动fcitx这个观点个人感觉是不对的
于是我就看了一下im-switch的发行注记

代码:
引用:
$ more /usr/share/doc/im-switch/README.Debian
im-switch for Debian
--------------------

- To check input method list:
# im-switch -l
- To change default SYSTEM input method:
# im-switch -s
(inputmethod is such as uim_skk)
This changes /etc/alternatives/xinput-
- To change default USER input method:
$ im-switch -s
This changes ~/.xinput/xinput-

Each input method needs
-----------------------
Each input method deb should provide alternative such as:

[postinst]
update-alternatives \
--install /etc/X11/xinit/xinput.d/ja_JP xinput-ja_JP \
/etc/X11/xinit/xinput.d/uim_skk 50

[prerm]
update-alternatives --remove xinput-ja_JP /etc/X11/xinit/xinput.d/uim_skk

-- Kenshi Muto <kmuto@debian.org>, Sun, 13 Feb 2005 21:12:00 +0900



其实工作原理大概是:
im -switch根据当前LANG执行/etc/X11/xinput.d/或~/.xinput/xinput-
链接到一个由输入法自行提供的启动脚本(这个链接由alternatives系统来管理)。
但目前fcitx尚未提供im-switch备选项,所以我们要做的有下面这几步:

我的locale是zh_CN.utf-8,其实gb,gbk也可以按这种方法来处理 BIG5不知道,因为不知道fcitx支持否,按理说应该支持吧(偶没查证,如果这样应该也行
1.安装fcitx3.2 , im-switch方法同上
2.创建 /etc/X11/xinit/xinput.d/fcitx 文件

代码:
引用:
#cat > /etc/X11/xinit/xinput.d/fcitx <<"EOF"
>XIM=fcitx
>XIM_PROGRAM=/usr/bin/fcitx
>XIM_ARGS=
>GTK_IM_MODULE=XIM
>DEPENDS=
>EOF

3.用update-alternatives来创建链接
zh_CN的locale下

代码:
引用:
#update-alternatives --install /etc/X11/xinit/xinput.d/zh_CN xinput-zh_CN /etc/X11/xinit/xinput.d/fcitx 50
zh_CN.UTF-8的locale下


代码:
引用:
#update-alternatives --install /etc/X11/xinit/xinput.d/zh_CN.UTF-8 xinput-zh_CN.UTF-8 /etc/X11/xinit/xinput.d/fcitx 50
4.注销再登陆即可


我发现如果你的locale跟上面相对应时根本用不着im-switch -s ...来配置
这一点还是很智能的

以上只是我的总结,也学会了怎么用update-alternatives
还用上了传说中的FVWM-Crystal
呵呵
在一些环境下还没有充分测试
其实最主要的是我不知道im-swtich在sarge和testing里有没有
写希望对大家能有帮助和启发
也做一个笔记发便日后查看
文章评论

共有 0 条评论