Ubuntu Emacs Fcitx 中文输入法设置

由于之前对emacs的配置不太熟悉.就按照大多数人的配置,在emacs中使用ibus输入法. ibus虽然配置简单,但是使用起来始终感觉没有fcitx来大爽. 配置也不如fcitx来大灵活,(到目前为止都不知道怎么配置才可以让ibus在中文输入状态下输入英文的半角标点)很是郁闷. 下面保存一下关于在ubuntu环境下在emacs中使用fcitx的心得

首先当然是要安装fcitx了

sudo apt-get install im-switch fcitx

sudo im-switch -s fcitx -z default

运行fcitx

fcitx &

接下来要增加一条配置命令到.emacs把C-SPC组合键屏蔽掉。

(global-set-key (kbd "C-SPC") nil)

网上好多关于emacs配置fcitx的帖子都是转载的,提供了一种不方便的启动方式

自己做个shell文件放在桌面上。

#!/bin/sh
export LC_CTYPE=zh_CN.UTF-8
sudo emacs

这种方式每次运行时还要输密码,以及弹出一个确认框很麻烦

 

最终找到这篇帖子

http://codespider.is-programmer.com/posts/27222.html

emacs中使用fcixt需LC_CTYPE设置为zh_CN.UTF-8,比如在shell中:


1
LC_CTYPE=zh_CN.UTF-8 emacs

 启动emacs后就可以使用fcitx了,但是这样输入很麻烦,虽然可以在shell的配置文件中用alias设置


1
alias emacs='LC_CTYPE=zh_CN.UTF-8 emacs'

这样在shell中启动emacs时会方便些,但是在用fbrun或是gmrun来启动emacs可就无效了。

我用openbox,所以直接给emacs设置了快捷键,但是在配置文件中使用LC_CTYPE=zh_CN.UTF-8 emacs是无法运行的,

好在有个命令env,可以用它来给emacs绑定快捷键,在rc.xml中绑定快捷键是设置为:


1
<execute>env LC_CTYPE=zh_CN.UTF-8 emcas</execute>

这样就可以通过快捷键来启动emacs,在emacs使用fcitx了。重点是env来改变运行环境,至于在openbox或是别的图形环境下估计就大同 小异了。这在linux或是freebsd中一样的,在slackware13.37和freebsd8.2中是可以的。

 

知道原理后,解决办法就简单了..

 

在ubuntu用户目录下的.profile文件中可以直接写入LC_CTYPE的配置

编辑.profile文件注释掉原来的LC_CTYPE 并添加新的保存,问题就解决了.

#export LC_CTYPE="en_US.UTF-8"
export LC_CTYPE="zh_CN.UTF-8"

现在可以在emacs中爽快的输入中文了.

posted @ 2012-01-05 09:27 LemonLi 阅读(...) 评论(...) 编辑 收藏