在Kile下(QT)不能输入中文了,折腾一晚上,终于解决,思路比较散,但还是小结一下。

系统字体配置、中文显示和输入法问题
回复
boubalos
帖子: 14
注册时间: 2010-03-05 1:38

在Kile下(QT)不能输入中文了,折腾一晚上,终于解决,思路比较散,但还是小结一下。

#1

帖子 boubalos » 2011-03-26 5:35

在Kile下(QT)不能输入中文了,折腾一晚上,终于解决,思路比较散,但还是小结一下。

ubuntu10.04以上版本scim 安装

10.04下scim输入法引擎有两种版本,一种就叫做scim,最新的是scim-bridge. 它是scim的一个扩展,依赖于scim。在gnome的gtk程序中,要使用scim, 只需要保证:scim 已启动,且环境变量XMODIFIERS=@im=SCIM GTK_IM_MODULE=scim, 此时不管scim-bridge引擎有没有启动,系统均使用scim引擎。如果要在qt界面下使用scim, 必须将系统环境变量QT_IM_MODULE设置成scim-bridge(需要事先安装好scim-bridge-client-qt),在scim已经启动的情况下,打开在任一QT,并按Ctrl-Space将自动激活scim-bridge引擎,并使用之。

如果添加开机启动scim,可以在/etc/X11/Xsession.d/95xinput中加入scim -d

注意:GNOME下输入法的几个重要环境变量为:GTK_IM_MODULE QT_IM_MODULE , 在/etc/X11/Xsession.d/95xinput被调用之前,系统就根据/etc/X11/xinit/xinput.d/下的几个配置文件对GTK_IM_MODULE QT_IM_MODULE 等进行赋值,因此95xinput中对GTK_IM_MODULE QT_IM_MODULE等环境变量进行操作会覆盖系统的之前的设定。

在ubuntu10.04以上版本中,只需新建95xinput中并加入一行scim -d即可。

在我的系统中,当GTK_IM_MODULE=scim-bridge时, 开机登录后,按Ctrl-Space不能切换出中文输入法。必须通过右键将Input Methods从默认的Scim Bridge Input Method 切换到 SCIM Input Method,方可切换出。之后不管输入法是scim-bridge 还是 scim 均没关系。 不知道这是不是bug


这时候在qt下输入中文可能出现光标闪烁的情况(就是所谓的光标不能跟随现象),只需

在scim输入法中进行了如下设定:
scim设置->全局设置->将预编辑字符串嵌入到客户端中 前的勾去掉
scim设置->gtk->嵌入式候选词标的勾去掉

参考:https://help.ubuntu.com/community/SCIM
头像
jqx1990
帖子: 181
注册时间: 2007-02-22 17:07
联系:

Re: 在Kile下(QT)不能输入中文了,折腾一晚上,终于解决,思路比较散,但还是小结一下。

#2

帖子 jqx1990 » 2011-03-27 2:11

消灭零回复!

辛苦了, 不过我基本不用scim,fcitx为主
Lee
Computer Science at Columbia University
KF7NCH


我做的软件https://code.google.com/p/geeky-shutdown/
我开发的NLP工具包https://code.google.com/p/lee-lemmatizer/
跟我一步一步做一个QT Python程序http://forum.ubuntu.org.cn/viewtopic.php?f=162&t=444808
我的简历http://www.linkedin.com/pub/qingxiang-jia/32/4a6/54
shimingzhou
帖子: 269
注册时间: 2008-06-28 6:14

Re: 在Kile下(QT)不能输入中文了,折腾一晚上,终于解决,思路比较散,但还是小结一下。

#3

帖子 shimingzhou » 2011-03-27 8:26

export QT_IM_MODULE=scim
export GTK_IM_MODULE=scim
凡是用scim输入平台的,建议都不要设置成scim-bridge。
boubalos
帖子: 14
注册时间: 2010-03-05 1:38

Re: 在Kile下(QT)不能输入中文了,折腾一晚上,终于解决,思路比较散,但还是小结一下。

#4

帖子 boubalos » 2011-03-27 23:51

不知道为何, 我在QT_IM_MODULE=scim 时,不能在kile下输入中文,连emacs下都不行。 改成scim-bridge后就可以了。
shimingzhou
帖子: 269
注册时间: 2008-06-28 6:14

Re: 在Kile下(QT)不能输入中文了,折腾一晚上,终于解决,思路比较散,但还是小结一下。

#5

帖子 shimingzhou » 2011-10-20 9:07

看来ubuntu真的是专门败坏kde和scim名声的发行版。俺的mandriva就用scim不用scim-bridge就可以 输入 :em02:em06
回复