ubuntu输入法SCI 不显示方案解决

一剑行天下 posted @ 2009年8月17日 04:17 in 学习 with tags ubuntu输入法SCI 不显示方案解决 , 3062 阅读

在7.10版本的Ubuntu中,默认的scim模式改成了XIM。造成在有些程序中无法输入文字,即使是英文字母也不行的bug。我多次在 nautilus里遇到该bug。该bug很早就被报告了,只是最近才由于默认设置的改变而更加容易出现了。不过这似乎是libx11库的bug。

launchpad上给出了两种解决办法:

1. 如果不需要使用依赖 libstdc++5库的程序。可以执行
im-switch -s scim-immodule
把scim模式改掉。但是我需要用到java6,acroread这些依赖stdc++5的程序,所以该方法不适合我。

2. 如果不需要使用deadkeys,可以按以下步骤修改:
a. 执行im-switch -s none,使得scim默认不会启动,退出并重登录
b. 修改 ~/.scim/config 文件, 将 /FrontEnd/X11/Dynamic 改为 true
c. 执行im-switch -s scim,使得scim默认启动。
但是我要用deadkeys来输入法文音标字母,所以该方法也不适合我。

于是有人给出了第三种方法,
a. 按照方法2修改设定
b. 安装 scim-uim以及 uim-latin
c. 设置一个复合键(在gnome的键盘选项中)
d. 启动scim,把输入法改为 UIM-Latin

 

2.

 经常出现在gnome下能显示出scim输入法的图标,而在xgl下不显示,但是scim确实在运行,用快捷键没有办法调出输入法,就没有办法输入中 文。还有另外一个问题,就是好像和openoffice冲突,openoffice界面一闪就退出了。  于是,卸载了scim的所有的东西,重新安装, 问题还是存在,又试了scim-agent、scim-bridge两个,也不行,而且还出现了在进程中有两个scim-launcher进程,有时候还 有两个scim-panel-gtk什么的。尤其是scim-launcher,无论怎样都是两个。后来又把所有的scim都卸载了,并且把 /root、~/目录下的.scim也一起删除了,并在/etc/X11/xinit/xinput.d/下面把所有的没有的输入法的启动文件统统删除 了,包括chewing、scim等。然后再次安装scim,scim-pinyin(装完后,scim里面的输入法只有英文、拼音、内码三种了,正是我 要的)。这下更完蛋了,进入系统后,进程里面根本就没有scim了,但是在consol里面输入scim却能够启动scim。最后参考了/etc/X11 /xinit/xinput.d/default文件重新建立了scim文件,把里面的内容添好:  XIM=scim
XIM_PROGRAM=scim
XIM_ARGS="-d"
XIM_PROGRAM_XTRA=
GTK_IM_MODULE=scim
QT_IM_MODULE=scim
XMODIFIERS="@im=scim"  再次启动后,一切正常了,

而且进程中只有:scim-helper-manager、scim- launcher、scim-panel-gtk三个进程了,连scim这个进程都看不到了(原来有scim的,而且状态总是“僵死”,别的进程最多是“ 睡眠中”),与openoffice也不冲突了。  记得原来的scim启动参数是scim -d o socket什么的,是不是因为只用了scim -d所以进程少了,而且也和openoffice不冲突了?  在网上查的冲突解决办法是两种:  

(1).将/etc/gtk-2.0 /gtk.immodules中的
"/usr/lib/gtk-2.0...../immodules/im-scim.so"
"scim" "SCIMInput Method" "scim" "/usr/share/locale" ""
这两行注释掉,确实起作用  

(2).换成scim-bridge,并且将/etc/X11/xinit/xinput.d/scim中的 GTK_IM_MODULE=scim换成GTK_IM_MODULE="scim-bridge"  


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter