Emacs下的中文输入
Emacs如此优秀的编辑器,如果输入中文不顺畅,不免遗憾。可惜现实是折腾很久也未必用得称心如意,作为一个重度(也许是中毒) Emacs使用者,根据个人经验写下此文,希望对同道中人有所帮助。
在Windows下,我们可以使用Windows下的任何输入法; 但在Linux下却不行,如需使用ibus或者scim输入中文,要额外配置。最简单的方法一,配置LC_CTYPE(语言符号及其分类)为“zh_CN.UTF-8”,但这会影响整个系统的语言设置[1],很多人不喜欢,我也是。方法二,使用桥接方式,比如ibus-el,我用过一段时间,基本满足需求,但小问题不断。比如使用xmonad桌面管理器时时经常出错,配置同步到其它电脑又不行了,而且不能在命令行下面使用。除此之外ibus下面的输入法也挺渣的,好多成语无法连打[2]。
其实Emacs自带很多中文输入法。用M+x set-input-method可以选择各种输入法。如果能用Emacs自带的输入系统,那不管是在CLI下还是GUI下面,体验都是一致的,甚至不同的OS平台(Linux,Windows,Mac)也一致,大大简化了学习成本,切换系统时也不需要想着如何使用不同的输入法,也可以使用git或者dropbox轻松同步配置到任何其它系统。生活美好很多,有没有?可惜的是,这些输入法大多活在上个世纪,不实用。比如输入法Chinese-ccdospy初始状态居然不按常用词频来排序,“我”居然排在第七个,前面是“挝,蜗,涡......”,令人十分崩溃。
当我左右为难时,突然发现一个不错的Emacs集成输入法eim,中国人开发,十分好用,支持五笔和拼音。词库很全,词频也完全没问题,支持词组,自定义很方便。有种雪中被送炭的感觉。向各位挣扎于Emacs中文输入的同学大力推荐, 更要感谢作者的辛勤劳动。安装和配置请参考github主页:https://github.com/wenbinye/emacs-eim 。 截图如下,如果将来它能加入GNU Emacs 的Code Base,那就完美了。

另外作者把默认的设置把Tooltip功能关闭了,因为在没有GTK时有点问题,比如Windows和Mac下,但如果你只是在Linux下使用,可以开启,效果如下,还是挺漂亮的。注释或删除(setq eim-use-tooltip nil)这行即可。

美中不足:
- 不支持使用“.”前向遍历单个候选词, 使用","后向遍历单个候选词,只能翻页。但这点Chinese-ccdospy做到了,用起来非常爽,飞一般的感觉。准备择日向作者提提。如果他没有时间或者不喜欢,那只能我自己hack了。
- 另外eim每页显示7个词,虽比大部分古董输入法的每页10个词好很多,但我觉得还是略多,不超过6个为好。
- 成语的支持还不够好。
REFERENCES:
[1] 英文中文,Ubuntu下设定Emacs输入法的曲折经历
[2] emacs输入中文的解决办法
[4] Eim For Chinese(on www.emacswiki.org)
Emacs下的中文输入的更多相关文章
- sublime text3 在 14.04.1-Ubuntu 下的中文输入
1.安装 fcitx sudo add-apt-repository ppa:fcitx-team/nightly // 添加FCITX仓库. sudo apt-get update // 更新仓库. ...
- 完美解决ubuntu下sublime中文输入问题
声明 1.本人整理文章,转载请注明出处. 2.参考资料 http://my.oschina.net/tsl0922/blog/113495 问题描述 在ubuntu下想使用sublime,但是不能输入 ...
- CentOS 7 下Emacs无法录入中文的问题
Emacs下的各种快捷键操作,实在是太方便了,像毒药一样让人上瘾! 问题描述: 最近重装了系统以及各种软件,但是碰到一个奇怪的问题,安装了极点五笔中文输入法,系统语言也设置为中文,结果在vim.ged ...
- 完美解决 Linux 下 Sublime Text 中文输入
首先,我参考了好几篇文章,都是蛮不错的,先列出来: sublime-text-imfix:首先推荐这个方法,最简单,但是在我的系统上有些问题.可用这个的强烈推荐用这个 完美解决 Linux 下 Sub ...
- linux下QtCreator无法输入中文的情况
解决linux下QtCreator无法输入中文的情况 本文由乌合之众 lym瞎编,欢迎转载 blog.cnblogs.net/oloroso 本文由乌合之众 lym瞎编,欢迎转载 my.oschina ...
- 开始ubuntu 14.04 的装X模式---终端模式下中文输入,听歌,上irc 开启framebuffer看电影 截图
先上图吧 卡卡的全是在tty1 下的操作,看电影,听歌,截图 ,看图 ,上irc 等等,相当适合在小白面前装屁! 需要安装的软件: 为了能正常显示中文:安装fbterm sudo apt-get i ...
- intellij idea 12、13 win8 下 中文输入覆盖的问题(搜狗输入法或者其他输入法)
最近升级到idea12,发现中文输入存在问题,输入中文的时候会出现空格,并且覆盖后面的字符,这个问题让我很郁闷. 假设idea的安装位置为:D:\Program Files\JetBrains\Int ...
- ubuntu下安装Sublime Text并支持中文输入
Sublime Text还是文本编辑器中比较不错的,就是他的文件对比有些差劲吧,还有中文输入需要打补丁,不知道开发者是怎么想的... 当然,这个软件是收费的,但是不买也能一直的使用,在我天朝就这点好处 ...
- 解决Sublime-Text-3在ubuntu下中文输入的问题
在ubuntu下使用ST这神器已经一段日子了,但是一直有个纠结的问题,就是中文输入非常坑爹,曾经一段时间,使用inputHelper这个插件来解决, 但是……每次都要按个快捷键,弹出一个小小小框来输入 ...
随机推荐
- Linux_用户级_常用命令(3):mkdir
Linux常用命令之mkdir 开篇语:懒是人类进步的源动力 本文原创,专为光荣之路公众号所有,欢迎转发,但转发请务必写出处! Linux常用命令第3集包含命令:mkdir (附赠tree命令,日期时 ...
- Java数据结构与算法之---求两个数的最大公约数(欧几里得算法)
一个简单的小算法来获取两个数的最大公约数, public class Test { public static void main(String[] args) { long result = gcd ...
- LabVIEW如何调用C#Winform
界面交互并不是Labview的强项,使用Labview创建UI时候总会受制于VI有限的控件,有限的皮肤和有限的控件事件.而当需要实现UI的多文档的窗口,窗口的浮动停靠,动画等功能时还需要花很大的功夫. ...
- 关于Android中ArrayMap/SparseArray比HashMap性能好的深入研究
由于网上有朋友对于这个问题已经有了很详细的研究,所以我就不班门弄斧了: 转载于:http://android-performance.com/android/2014/02/10/android-sp ...
- OFDM学习之旅
前言: 这些日子开始准备搞OFDM之类的,未动先行matlab仿真,这里我会慢慢更新,基本上是自己学习感悟吧<未完待续> 一.PRBS PRBS 是 Pseudo Random Binar ...
- Uva 11248 网络扩容
题目链接:https://vjudge.net/contest/144904#problem/A 题意:给定一个有向网络,每条边均有一个容量.问是否存在一个从点1到点N,流量为C的流.如果不存在,是否 ...
- GOLANG 声明
GO语言声明关键字 var 声明变量 const 声明常量 type 声明新类型 func 声明函数(方法) package 声明包 interface 声明接口
- spring-事物-jdbc-hibernate
- 扩展卡尔曼滤波(MRPT)
EKF relies on a linearisation of the evolution and observation functions which are good approximatio ...
- Crontab中的除号(slash)到底怎么用?
crontab 是Linux中配置定时任务的工具,在各种配置中,我们经常会看到除号(Slash)的使用,那么这个除号到底标示什么意思,使用中有哪些需要注意的地方呢? 在定时任务中,我们经常有这样的 ...