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输入中文的解决办法

[3] GNU Emacs 中文處理說明(官方文档)

[4] Eim For Chinese(on www.emacswiki.org)

Emacs下的中文输入的更多相关文章

  1. sublime text3 在 14.04.1-Ubuntu 下的中文输入

    1.安装 fcitx sudo add-apt-repository ppa:fcitx-team/nightly // 添加FCITX仓库. sudo apt-get update // 更新仓库. ...

  2. 完美解决ubuntu下sublime中文输入问题

    声明 1.本人整理文章,转载请注明出处. 2.参考资料 http://my.oschina.net/tsl0922/blog/113495 问题描述 在ubuntu下想使用sublime,但是不能输入 ...

  3. CentOS 7 下Emacs无法录入中文的问题

    Emacs下的各种快捷键操作,实在是太方便了,像毒药一样让人上瘾! 问题描述: 最近重装了系统以及各种软件,但是碰到一个奇怪的问题,安装了极点五笔中文输入法,系统语言也设置为中文,结果在vim.ged ...

  4. 完美解决 Linux 下 Sublime Text 中文输入

    首先,我参考了好几篇文章,都是蛮不错的,先列出来: sublime-text-imfix:首先推荐这个方法,最简单,但是在我的系统上有些问题.可用这个的强烈推荐用这个 完美解决 Linux 下 Sub ...

  5. linux下QtCreator无法输入中文的情况

    解决linux下QtCreator无法输入中文的情况 本文由乌合之众 lym瞎编,欢迎转载 blog.cnblogs.net/oloroso 本文由乌合之众 lym瞎编,欢迎转载 my.oschina ...

  6. 开始ubuntu 14.04 的装X模式---终端模式下中文输入,听歌,上irc 开启framebuffer看电影 截图

    先上图吧 卡卡的全是在tty1 下的操作,看电影,听歌,截图 ,看图  ,上irc 等等,相当适合在小白面前装屁! 需要安装的软件: 为了能正常显示中文:安装fbterm sudo apt-get i ...

  7. intellij idea 12、13 win8 下 中文输入覆盖的问题(搜狗输入法或者其他输入法)

    最近升级到idea12,发现中文输入存在问题,输入中文的时候会出现空格,并且覆盖后面的字符,这个问题让我很郁闷. 假设idea的安装位置为:D:\Program Files\JetBrains\Int ...

  8. ubuntu下安装Sublime Text并支持中文输入

    Sublime Text还是文本编辑器中比较不错的,就是他的文件对比有些差劲吧,还有中文输入需要打补丁,不知道开发者是怎么想的... 当然,这个软件是收费的,但是不买也能一直的使用,在我天朝就这点好处 ...

  9. 解决Sublime-Text-3在ubuntu下中文输入的问题

    在ubuntu下使用ST这神器已经一段日子了,但是一直有个纠结的问题,就是中文输入非常坑爹,曾经一段时间,使用inputHelper这个插件来解决, 但是……每次都要按个快捷键,弹出一个小小小框来输入 ...

随机推荐

  1. treeview所有节点递归解法(转+说明)或者说递归的实际应用

    public void PrintTreeViewNode(TreeNodeCollection node) { foreach (TreeNode n in node) { Response.Wri ...

  2. ThreadLocal是什么?保证线程安全

    早在JDK 1.2的版本中就提供Java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路.使用这个工具类可以很简洁地编写出优美的多线程程序. 当使 ...

  3. HTML初步入门

    标签元素 标签介绍 html元素包括一个或一对标签定义的包含范围.而标签就是由两个字符串"<"和">"号组成,标签包括开始标签"<& ...

  4. 《编写可维护的JavaScript》——JavaScript编码规范(四)

    注释 单行注释 单行注释以两个斜线开始,以行尾结束 单行注释有三种使用方法: 独占一行的注释,用来解释下一行代码.这行注释前总是有一个空行,且缩进层级和下一行代码保持一致. 在行尾的注释.代码结束到注 ...

  5. java.sql.SQLException: 关闭的 Resultset: next

    根据异常信息判断是数据库查询出来的结果集被关闭了,所以就了next 我的代码是一个Impl方法(假设为A方法)中调用另一个Impl方法(假设为B方法),我在执行完B方法后,调用了一下关闭数据库连接的方 ...

  6. Markdown工具之---Typora

    在项目集成阶段中,接口文档是不可避免的,以往的我使用word编辑器编写接口文档,虽然word使用不是很熟练,但是只要在网上下载模板或者自己花时间搞定一个文档格式 基本能一劳永逸.但是还是会有很多问题存 ...

  7. 高通camera学习笔记

    http://www.2cto.com/kf/201609/548725.html http://www.android100.org/html/201508/24/176303.html

  8. 通知Notification

    步骤: 1.调用getSystemService()获取NotificationManager:NotificationManager manager = (NotificationManager)g ...

  9. tomcat启动超时问题

    当启动tomcat时候出现 Server Tomcat v6.0 Server at localhost was unable to start within 45 seconds. If the s ...

  10. 最全面的常用正则表达式大全 zz

    很多不太懂正则的朋友,在遇到需要用正则校验数据时,往往是在网上去找很久,结果找来的还是不很符合要求.所以我最近把开发中常用的一些正则表达式整理了一下,包括校验数字.字符.一些特殊的需求等等.给自己留个 ...