程序员,花5分钟了解一下Emacs。一个优秀编辑器

emacs是个很强大的编辑器,使用的人数仅次于vi。下面向大家推荐一下现今最强的编辑器emacs。

1. emacs有很高的可定制性。整个编辑器的每个部分都可以定制。这种灵活性是其他编辑器无法比拟的。是来源于emacs的优雅设计。emacs先使用c实现了一个lisp语言解释器。然后用lisp实现编辑器的功能。每个功能都是一个函数。你按下键的时候就是调用这些函数来操作你的编辑区域。emacs用很多模式来组织这些函数。每种模式都有自己的键盘映射。你可以修改这些键绑定来达到自己的目的。比如。
下面的代码:
(defun my-make-CR-do-indent ()
            (define-key c-mode-base-map "/C-m" 'c-context-line-break))
(add-hook 'c-initialization-hook 'my-make-CR-do-indent)
定义了一个函数。在c模式的映射中。让回车以后自动到下一行正确的缩进。这样就可以省去了自己打缩进的麻烦。

2.emacs中有很多人性化的功能。比如可以自动设定代码风格。
(setq c-default-style '((java-mode . "java")
                                  (awk-mode . "awk")
                                  (other . "linux")))
比如我的c语言风格是linux内核风格。每个缩进都是8个字符。只要这样设置了。就能很轻松的编出正确风格的代码。你只管写代码。emacs自动帮你控制风格。emacs可以编辑很多种文件。比如java,c,c++,ptyon。也可以在emacs里面直接进行debug。另外。由于emacs除了主模式以外,还有副模式。比如我在使用c模式编程的时候。可以使用flyspell模式来检查我写的注释中的拼写错误。一个主模式可以搭配不同的副模式。这样功能就非常灵活的组织起来了。

3.emacs集成了很多功能。他首先是个全能的IDE,还可以写报告,收email,管理cvs。听mp3,上irc,收邮件。使用bash。日历,游戏(内置了很多游戏)管理文件,写wiki。可以生成各种格式的文档,比如pdf。总之功能繁多。而且可以通过网上下的扩展文件来增加功能。很多以文字编辑为生的人可以《生活在emacs中》。emacs以经编程一种生活方式

4使用emacs能提高工作效率。emacs的所有操作都不用离开键盘。当你熟练掌握快捷键以后就能很快的编辑文件。更重要的是。通过emacs方便的宏操作。可以大大减少重复劳动。就像我刚才说的那个离子。把缩进绑定在回车上。按一个键等于别人按三个键。这样的例子很多。别看emacs快捷键这么多。其实学起来并不复杂。照着emacs的指导。用过一遍就记住了。

5使用emacs很酷。因为你能控制emacs的每个部分。修改他们来满足你的需求。操纵emacs感觉就像驾驶太空飞船。能够充分满足程序员的控制欲(假定程序员都有很强的控制欲)。当你学会使用emacs后。驾驭emacs的感觉就像驾驭一匹烈马。许多著名的程序员和黑客都使用emacs。这也是我使用emacs的原因之一。

6emacs是免费的,不像ulteredit等等软件。emacs是开源软件。可以随便下载使用。不用找破解和算号器。现在我使用的版本是22.1.1版本号如此之高,因为emacs已经发展了许多年。非常成熟。有了大量的使用者。并且emacs现在还在持续开发中。一般linux系统都会自带一个eamcs。很容易找到。

当然emacs也有许多不足。比如他启动确实比vi慢。如果我想改一个文件的几个字。我还是会用vi。另外他个头很大。我现在使用的22版。压缩包就有36m,不过emacs又很多缩小版。比如一些uemacs。有emacs大部分功能。个头也很小。emacs学起来时间比较长。要边用边学。不要指望看了书就能会。快捷键之所以叫快捷键因为你按得快。emacs不能显示网页。即使显示了格式也不大好。英文不大好的人学习emacs也会比较吃力。因为很多内容都是英文写的。

但是。emacs能带给你的好处远远超过了它的一些劣势。它能提高你的生产力。让你更快的写出好代码。管理你的系统和你的生活。整合一切工具到同一个界面。为你与操纵系统之间搭建一个更加个性化的交流平台。最后一个理由。如果你心情不好。可以找emacs里面的心理医生功能聊聊。比去心理诊所还有效:)

相关资源
1.emacs里面自带的tutorial ,是中文的。只要花半小时就能了解emacs的编辑功能
2.emacs手册
其他
    • http://www.emacs.cn Emacs 中文站
    • http://zhdotemacs.sourceforge.net/emacs/index.html Emacs 中文化指南
    • http://learn.tsinghua.edu.cn/homepage/2001315450/emacs.html 王垠的EMACS指南
    • http://mule-gbk.sourceforge.net/ mule-gbk: GNU Emacs 的GBK中文支持包


EOF

你可能感兴趣的:(程序员,花5分钟了解一下Emacs。一个优秀编辑器)