Ubuntu 9.10上的emacs 23和ibus切换的快捷键发冲突,如何解决?

Vim、Emacs配置和使用
shoutrain
帖子: 31
注册时间: 2009-05-09 15:40

Ubuntu 9.10上的emacs 23和ibus切换的快捷键发冲突,如何解决?

#1

帖子 shoutrain » 2009-11-01 22:15

在Ubuntu 9.10上,我用iBus作为中文输入。

当我启动emacs23.1(用apt-get install安装的)的时候,发现ctrl+space被emacs23截获了,就算调用globle-unset-key取消ctrl+space的作用也不行,而且我已经快10年了,都习惯用ctrl+space来切换输入法了,大家看看能不能帮我。

在我以前用过的下列系统中,没有发现这些问题:
ubuntu 8.04, 8.10, 9.04 + emacs 23(自己编译的)没有问题
fedora 11 + emacs 23.1(用yum install安装的)也没有这个问题
JiangHui
论坛版主
帖子: 21308
注册时间: 2007-08-02 20:29
系统: 窓辺とうこ

Re: Ubuntu 9.10上的emacs 23和ibus切换的快捷键发冲突,如何解决?

#2

帖子 JiangHui » 2009-11-02 8:37

修改其中一个的快捷键
shoutrain
帖子: 31
注册时间: 2009-05-09 15:40

Re: Ubuntu 9.10上的emacs 23和ibus切换的快捷键发冲突,如何解决?

#3

帖子 shoutrain » 2009-11-02 9:52

楼上的,能说清除吗?如果不如何让emacs不捕获ctrl+space?
JiangHui
论坛版主
帖子: 21308
注册时间: 2007-08-02 20:29
系统: 窓辺とうこ

Re: Ubuntu 9.10上的emacs 23和ibus切换的快捷键发冲突,如何解决?

#4

帖子 JiangHui » 2009-11-02 9:57

shoutrain
帖子: 31
注册时间: 2009-05-09 15:40

Re: Ubuntu 9.10上的emacs 23和ibus切换的快捷键发冲突,如何解决?

#5

帖子 shoutrain » 2009-11-02 10:18

谢谢楼上的,不过那个发帖子的人说了问题,然后自己搞定,没说怎么搞定。下面的人也都没有正确的回复:)

我自己尝试修改X的快捷键吧,这个优先级高,不过不知道怎么和ibus对应起来,找到ibus的切换命令就可以了。
shoutrain
帖子: 31
注册时间: 2009-05-09 15:40

Re: Ubuntu 9.10上的emacs 23和ibus切换的快捷键发冲突,如何解决?

#6

帖子 shoutrain » 2009-11-02 10:40

查了国外的论坛(http://code.google.com/p/ibus/issues/de ... ail?id=208),猜测和emacs23.1的扩展菜单不显示的原因一样,是因为gnome的升级等原因,需要Emacs23.1调整内部的处理机制。这个只在ubuntu 9.10上发生,原来的ubuntu 9.04和fedora 11都没有这个问题。

扩展菜单不显示,需要手工export一些变量到环境中。
shoutrain
帖子: 31
注册时间: 2009-05-09 15:40

Re: Ubuntu 9.10上的emacs 23和ibus切换的快捷键发冲突,如何解决?

#7

帖子 shoutrain » 2009-11-02 11:34

找到一个非常简单的解决办法,就是把ubuntu 9.10换成中文环境就可以了,
也就是改变以下换进变量:
GDM_LANG=zh_CN.UTF-8
LANG=zh_CN.UTF-8
头像
ibear
帖子: 787
注册时间: 2006-10-19 8:43
来自: 长江口

Re: Ubuntu 9.10上的emacs 23和ibus切换的快捷键发冲突,如何解决?

#8

帖子 ibear » 2009-11-02 11:41

shoutrain 写了:谢谢楼上的,不过那个发帖子的人说了问题,然后自己搞定,没说怎么搞定。下面的人也都没有正确的回复:)

我自己尝试修改X的快捷键吧,这个优先级高,不过不知道怎么和ibus对应起来,找到ibus的切换命令就可以了。
这个是使用emacs常见问题,一般都是把emacs下的换掉

(global-unset-key (kbd "C-SPC"))
(global-set-key (kbd "M-SPC") 'set-mark-command)
好好地做一个碌碌无为的人
shoutrain
帖子: 31
注册时间: 2009-05-09 15:40

Re: Ubuntu 9.10上的emacs 23和ibus切换的快捷键发冲突,如何解决?

#9

帖子 shoutrain » 2009-11-02 11:53

shoutrain 写了:在Ubuntu 9.10上,我用iBus作为中文输入。

当我启动emacs23.1(用apt-get install安装的)的时候,发现ctrl+space被emacs23截获了,就算调用globle-unset-key取消ctrl+space的作用也不行,而且我已经快10年了,都习惯用ctrl+space来切换输入法了,大家看看能不能帮我。

在我以前用过的下列系统中,没有发现这些问题:
ubuntu 8.04, 8.10, 9.04 + emacs 23(自己编译的)没有问题
fedora 11 + emacs 23.1(用yum install安装的)也没有这个问题
谢谢你的回复,请注意,你说的我已经尝试过了,就是用globle-unset-key,没有用,Emacs会说C-SPC没有定义
shoutrain
帖子: 31
注册时间: 2009-05-09 15:40

Re: Ubuntu 9.10上的emacs 23和ibus切换的快捷键发冲突,如何解决?

#10

帖子 shoutrain » 2009-11-02 11:59

其实,如果不转变整个桌面的语言环境,使Emacs可以输入中文,就使用Emacs23.1自带的中文输入,只要在option中设置语言环境和输入发即可,然后用ctrl+space去调出这个emacs内部的输入工具,取代原来的set mark。但是这个中文的输入法比较烂,只能一个一个字的打出来。
头像
ibear
帖子: 787
注册时间: 2006-10-19 8:43
来自: 长江口

Re: Ubuntu 9.10上的emacs 23和ibus切换的快捷键发冲突,如何解决?

#11

帖子 ibear » 2009-11-02 21:52

shoutrain 写了:但是这个中文的输入法比较烂,只能一个一个字的打出来。
这个坛子里有帖子说是两个类似的东东混了,换成正确的就好了
好好地做一个碌碌无为的人
头像
AiNIC
帖子: 17
注册时间: 2008-12-03 16:47

Re: Ubuntu 9.10上的emacs 23和ibus切换的快捷键发冲突,如何解决?

#12

帖子 AiNIC » 2009-11-04 12:57

要看你的local了
如果是中文的,我想应该没有这个问题
如是英文的,可能会遇到
sudo gedit /etc/environment
添加 LC_CTYPE=zh_CN.UTF-8
rainskywalker
帖子: 1
注册时间: 2007-02-02 22:23

Re: Ubuntu 9.10上的emacs 23和ibus切换的快捷键发冲突,如何解决?

#13

帖子 rainskywalker » 2009-11-05 19:17

在命令行下尝试输入
LC_CTYPE="zh_CN.UTF-8" emacs
回车
如果输入法正常,那么修改
sudo gedit /etc/environment
增加
LC_CTYPE="zh_CN.UTF-8"
重新login一下就好了。
shoutrain
帖子: 31
注册时间: 2009-05-09 15:40

Re: Ubuntu 9.10上的emacs 23和ibus切换的快捷键发冲突,如何解决?

#14

帖子 shoutrain » 2009-11-09 18:46

谢谢AiNIC和rainskywalker,你们的解决方法比较完美!
头像
liuhengloveyou
帖子: 167
注册时间: 2007-10-18 17:37
来自: 深圳
联系:

Re: Ubuntu 9.10上的emacs 23和ibus切换的快捷键发冲突,如何解决?

#15

帖子 liuhengloveyou » 2009-12-09 21:57

rainskywalker 写了:在命令行下尝试输入
LC_CTYPE="zh_CN.UTF-8" emacs
回车
如果输入法正常,那么修改
sudo gedit /etc/environment
增加
LC_CTYPE="zh_CN.UTF-8"
重新login一下就好了。
这个好!!! 谢谢。
回复