LinuxSir.cn,穿越时空的Linuxsir!

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

KDE SC 4.4.3 下使用kimpanel+ fcitx/ibus 指南

[复制链接]
发表于 2010-5-11 22:07:59 | 显示全部楼层 |阅读模式
本文所述操作皆在debian sid下完成。如有不同,请自行参照对应发行版作相对应修改。到发文时间为止,本文所指软件版本如下:

KDE 4.4.3
fcitx 3.6.3
ibus 1.3.3


本文分三个部分:fcitx的安装配置和ibus的安装配置,有部分内容相同;常见问题及引用。

第一部分:fcitx的安装配置

1. 安装基础组件。

使用apt完成所需软件的安装。
  1. #apt-get install kde-full
复制代码

如果已经最小化安装kde,请安装plasma-widgets- addons。
  1. #apt-get install plasma-widgets-addons
复制代码

2. 安装fcitx。

sid源中的fcitx未包含dbus支持,因此没有kimpanel的支 持。
我们需要手动编译fcitx,这里给出debian方式的编译过程。假设已经安装好开发环境。
  1. #apt-get build-dep fcitx
复制代码
  1. #apt-get install libdbus-1-dev
复制代码
  1. $apt-get source fcitx
复制代码
  1. $cd fcitx-3.6.3
复制代码
  1. $DEB_BUILD_OPTIONS="--enable-dbus" dpkg-buildpackage -rfakeroot -b
复制代码
  1. #dpkg -i ../fcitx_3.6.3-1_i386.deb
复制代码

3.配置fcitx使用 dbus进行通讯。

在~/.config/fcitx/config[程序]段中添加如下语句:
  1. 使用 DBus接口=1
复制代码
并以GB2312编码保存。
如果是第一次使用fcitx,更简单的办法是将/usr /share/fcitx/data/config复制一份到~/.config/fcitx中并进行修改。

4. 调整启动顺序。

fcitx 如果在plasma之前启动,则无法启用对kimpanel的支持。因此debian方式的im-switch将导致 kimpanel不能正确接管fcitx。
如下调整步骤已被证明可行:

4.1. 取消im-switch的启动项目。
  1. cd ~/.xinput.d
复制代码
  1. unlink en_US
复制代码

4.2. 设定环境变量。

这一步为必需,否则其他应用程序仍无法与fcitx进行通讯。在debian系中,最为方便的仍然是通过im-switch进行设置。
  1. cat >>en_US<<_EOF
  2. XMODIFIERS="@im=fcitx"
  3. GTK_IM_MODULE=xim
  4. QT_IM_MODULE=xim
  5. _EOF
复制代码

其他locale同理。或者通过.xprofile进行设定(未验证)。

4.3. 设定fcitx为KDE自动启动项。
system settings -> Advanced -> AutoStart -> Add Program
填上/usr/bin/fcitx ,保存。

5. 添加Kimpanel

添加Plasma Widgets 找到Input Method 双击添加之。

6. 重启KDE。

第二部分:ibus的安装配置

1. 安装基础组件。

使用apt完成所需软件的安装。
  1. #apt-get install kde-full
复制代码

如果已经最小化安装kde,请安装plasma-widgets- addons。
  1. #apt-get install plasma-widgets-addons
复制代码

2. 安装ibus,ibus-pinyin

ibus相对简单。直接安装sid源中的即可。
  1. #apt-get install ibus ibus-pinyin ibus-qt4 ibus-qt4 ibus-pinyin-db-open-phrase
复制代码
您亦可安装其他ibus输入法。

使用ibus-setup添加所需要的输入法。

3. 安装ibus-kde后端支持

需要到 ubuntu源中下载plasma-widget-kimpanel-backend-ibus
lucid 中软件地址

安装plasma-widget-kimpanel-backend-ibus
  1. #dpkg -i plasma-widget-kimpanel-backend-ibus_4.4.2-0ubuntu1_all.deb
复制代码

4. 调整启动顺序。

4.1. 设定环境变量,
与fcitx方式类似,但内容稍有不同。
  1. cd ~/.xinput.d
  2. unlink en_US
  3. cat >>en_US<<_EOF
  4. XMODIFIERS="@im=ibus"
  5. GTK_IM_MODULE=ibus
  6. QT_IM_MODULE=ibus
  7. _EOF
复制代码

4.2. 设定ibus为KDE自动启动项。
system settings -> Advanced -> AutoStart -> Add Program
填上/usr/bin/ibus-daemon --panel=/usr/lib/ibus/ibus-ui-kde -d -x,保存。

5. 添加Kimpanel

添加Plasma Widgets 找到Input Method 双击添加之。

6. 重启KDE。

第三部分:QA

Q: 选字界面字太小。
A: http://songlinyi.spaces.live.com ... 6716547EE!266.entry,未验证。

Q: ibus输入法的图标显示不正常,有时候是ibus的图标,有时候是oxygen里的unknown。
A: 原因未明。请联系developer。

Q: ibus才5个候选字,太少了。
A: 单击第6个齿轮图标,就会出来设置界面。

Q: xterm调不出ibus输入法。
A: ibus-daemon 必须以-x(--xim)参数启动,http://userbase.kde.org/Tutorials/Kimpanel疑似有遗漏。

References
http://songlinyi.spaces.live.com ... 6716547EE!266.entry
http://userbase.kde.org/Tutorials/Kimpanel
http://csslayer.blogbus.com/logs/58815426.html
http://code.google.com/p/ibus/wiki/ReadMe

tag: fcitx ibus debian kimpanel tutorial
 楼主| 发表于 2010-5-11 22:10:54 | 显示全部楼层
BBCode size=8 看起来仍然有些怪异……
回复 支持 反对

使用道具 举报

发表于 2010-5-12 11:22:58 | 显示全部楼层
过程详细啊,赞。
不过我一直不清楚用kimpanel有什么好处,能不能介绍一下。
现在一直都是直接在kde4.4.3里用fcitx,然后隐藏主窗口,就留一个托盘图标。
回复 支持 反对

使用道具 举报

发表于 2010-5-12 12:17:21 | 显示全部楼层
看了一下fcitx关于kimpanel的介绍,跟传统的相比,好像没有很出彩的地方。
可能对于ibus来说,kimpanel的意义大一点。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-5-12 12:35:36 | 显示全部楼层
主要作用在于输入法选字窗口和桌面KDE风格统一。像ibus这种用GTK的原本看起来尤其不协调啊。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2010-5-12 12:49:31 | 显示全部楼层
Post by kliz;2089573
主要作用在于输入法选字窗口和桌面KDE风格统一。像ibus这种用GTK的原本看起来尤其不协调啊。


所以我觉得对fcitx这种用xim的就没有很大意义了,呵呵,貌似现在sunpinyin也开始用xim了。不知道现在在KDE里用ibus的人多不,个人认为KDE上还是用fcitx这种不需要gtk的比较合适。
回复 支持 反对

使用道具 举报

发表于 2010-5-13 01:09:35 | 显示全部楼层
看上去确实舒服一些, kliz兄是否有意把这几个软件包添加到debian官方呢?
回复 支持 反对

使用道具 举报

发表于 2010-5-13 11:13:44 | 显示全部楼层
谢谢分享,mark一下
回复 支持 反对

使用道具 举报

发表于 2010-5-13 16:37:15 | 显示全部楼层
用过一段时间,觉得不错,就一点不足,字词的候选窗口的高度不够,会被iceweasel的下拉菜单挡住。
回复 支持 反对

使用道具 举报

发表于 2010-5-14 17:09:22 | 显示全部楼层
有遗漏的话直接userbase补充上去就行。

xterm介个是x程序吧
回复 支持 反对

使用道具 举报

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

本版积分规则

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