一年成为Emacs高手(像神一样使用编辑器)推荐文章
http://ftp.gnu.org/gnu/emacs/windows/
http://blog.csdn.net/redguardtoo/article/details/7222501/
1.vi与Emacs的不同
vi | Emacs | |
---|---|---|
快捷键命令 | vi通过记录按键序列,形成决策树中的一条路径,从而确定一个命令。 | Emacs通过组合键的方式立即执行命令。 |
内存占用和定制性 | 由于历史原因,vi小而快,但定制性上比较受限。 | Emacs启动慢且占用更多内存,但高度可定制,包含大量复杂功能。它基本上是一个Lisp程序的执行环境。 |
用户界面 | vi早先独占命令行终端,没有图形用户界面(GUI)。后来的衍生版本,如MacVim和gVim,都具备全功能的GUI。 | Emacs,最初也为终端设计,但很早就具备了GUI,现代版本提供众多GUI版本。 |
功能/导航 | vi具名明确的编辑模式。 | Emacs采用功能键组合。 |
vi类型编辑器的优点
- 遵循“简单工具,多样组合”的理念。
- 小,符合Unix哲学中的“只做一件事,并做好它”,避免了功能蔓延。
- 比Emacs快(至少历史上是这样的)。
- 可运行于任何实现了C标准库的系统之上,包括UNIX、Linux、AmigaOS、DOS、Windows、Mac、BeOS和POSIX兼容系统等等。
- 让“QWERTY”键盘用户将手指保持在默认键位上,使编辑时手指移动更少。
- 更普及。基本上所有Unix和类Unix系统都默认提供了vi或其变体。
Emacs的优点
- 符合“厨房水槽”理念,提供了比vi更多的功能。
- 移植最广泛的非试用计算机程序之一。它能在各种操作系统上运行,包括大多数类Unix系统(GNU/Linux、各种BSD、Solaris、AIX、IRIX、AmigaOS、Mac OS X[1][2]等)、MS-DOS、Microsoft Windows和OpenVMS。Unix系统,无论*版本或商业版本,均随系统提供Emacs。
- 可扩展和可定制(Lisp的变体 - Emacs Lisp),功能包括:
- 专门的编辑模式,支持大量编程语言、标记语言、排版语言,如Bash、C、Delphi、Java、Lisp、LaTeX、MediaWiki、Python等。
- 可模拟vi(“viper-mode”)。
- 强大可扩展的文件管理器(dired)、智能调试器和大量工具。
1、下载
到这个网址可以下载到Emacs的windows版本:http://ftp.gnu.org/pub/gnu/emacs/windows/
只需要一个压缩文档,如emacs-22.3-bin-i386.zip
2、安装
在D盘根目录下新建一个文件夹,取名Emacs22.2(也可以是其他路径,随个人喜好而定),将emacs-22.2-bin-i386.zip里的文件解压到这个目录下,这样在d:/Emacs22.2/下就有bin, tec, info, leim, lisp, site-lisp等目录。
双击bin文件夹里的addpm.exe进行安装,安装后将在开始菜单生成Gnu Emacs/Emacs链接,点击这个链接便可启动Emacs。也可以双击bin文件夹里的runemacs.exe启动。注意到bin目录里还有个文件是emacs.exe,双击它也可以启动,但是会出现一个控制台窗口
3、修改注册表
打开注册表,找到HKEY_LOCAL_MACHINE/SOFTWARE/GNU/Emacs(如果没有则手动添加项),在此项下添加字符串值,名称为HOME,值为D:/Emacs22.2。这样做的目的是让D:/Emacs22.2成为Emacs的home路径(传说中的home path,以后你将会经常看到“home目录”、“home directory”等等)。
4、创建.emacs.d目录和.emacs文件
相信.emacs.d目录和.emacs文件是困扰大家很久的问题了,其实有个简单的办法可以解决此问题。启动emacs,用鼠标点击Options菜单,随便点击一两个选项,比如点击一下Active Region Highlighting,然后点击Save Options。先不要担心你会破坏了什么东西,这样做的目的是让emacs自动创建.emacs.d目录以及.emacs文件!观察你的Emacs窗口最后一行,是否显示“Wrote d:/Emacs22.2/.emacs”?如果是的话就对了,当你选择Save Options的时候,Emacs会在home路径下产生.emacs文件,并把配置信息写进这个文件。现在看看你的d:/Emacs22.2/目录下是否产生了这两个东西?
5、加载.el文件
lisp目录下存放着lisp源文件(*.el)和已编译的lisp文件(*.elc),以后你也可以将自己的.el文件放在这个目录下,然后还要在.emacs文件插入相关语句。比如你有一个文件叫做abcd.el,将它复制到lisp目录下,然后打开.emacs文件插入一句(require 'abcd)就可以了(包括圆括号,不需要扩展名.el)。
如果你不喜欢lisp文件夹,也可以自己新建一个,比如在home目录下建一个文件夹叫做xyz,然后把abcd.el放在xyz目录下,在.emacs文件插入以下两句:
(setq load-path (cons "~/xyz" load-path))
(require 'abcd)
第一句告诉emacs先加载你的xyz目录,第二句再加载abcd.el。注意“~/”是linux系统的用法,表示home目录。
如果你和我一样在学习《Sams Teach Yourself Emacs in 24 Hours》这本书的话,我想你一定需要sams-lib.el这个文件!可以到这个网址下载:
http://www.cs.virginia.edu/~wh5a/personal/Emacs/
找到sams-lib.el之后右键点击“目标另存为”就可以了!
以上的之中:路径及环境变量的设置,也就是HOEM值得设置有些矛盾,跟cadence的工作路径矛盾了,后面就把cadence的路径改了。
1 配置成神一样的编辑器要花很多时间
抄高手的配置,不要抱着玩玩的心态在低水平上创新.
Steve Purcell的配置 | https://github.com/purcell/emacs.d |
Matt Briggs的配置 | https://github.com/mbriggs/.emacs.d |
我的配置(抄Steve Purcell的,加中文和C++支持) | https://github.com/redguardtoo/emacs.d |
2 太难看
安装emacs24,然后看这:http://www.emacswiki.org/emacs/ColorTheme
3 记不住那么多命令,打字太烦
安装Smex,记住你最常用的命令,只要打命令中的关键字就可以匹配.使用Smex后我基本不再设置快捷键.
4 没有非用不可的功能,总能找到替代品
Org Mode是非常优秀的软件,可以用来做笔记,做GTD,写文档.我没有找到替代品.
5 对Vi用户来说快捷键陌生且低效
安装Evil,emacs版的vim(注意,不是vi),结合Vi的高效和Emacs的强大的编辑器,完美了.
6 对普通用户来说快捷键陌生
试着适应吧,Emacs比Notepad出生的早,所以你不能怪Emacs.
7 Ctrl键太难按
交换Caps Lock和左Ctrl.
8 不知道怎么看帮助
快捷键 | 说明 |
---|---|
C-h v | 按变量名查找 |
C-h f | 按函数名查找 |
C-h k | 按快捷键查找 |
9 恩,有时候我要用代理(Emacs很多功能需网络)
在bash下:
export http_proxy=http://127.0.0.1:8000; emacs
使用socks server和tsocks:
tsocks emacs
4.史上最强的vimrc文件,据说有800行,还是作者精简后的结果.
我在尽可能保留原作者的创意的前提下做了些小的修正,主要的修改如下:
增加了对win32系统的兼容,原来的vimrc文件只兼容linux和mac
修正了一些快捷键,例如ctr-q被原作者用来搜索buffer,用过win32版本vim的都知道ctrl-q被用来作为块编辑的快捷键,所以ctrl-q是万万不能被移做他用的.
去掉了colorscheme,原作者的colorscheme对我来说实在是太geeky,我想软件默认的colorscheme就该是最适合大多数人的.
启用了swap文件,因为我的机器配置太低,而且我经常要编辑大文件
取消了所有和python有关的plugin,因为一些路径问题,也因为我觉得vim对python的支持够强大了(事实是,我缺乏用python写大项目的经验).
增加了对中文编码的支持,参考了吴咏炜的一篇文章
- 兼容低版本vi,目前我在vim5.8.9, vim6.1,vim6.3, vim6.4,vim7.0, 上测试过。
其他一些通用性,兼容性的修正
去掉了输入([{时的自动填入右括号的功能,在我修改代码时增加很多麻烦.
我强烈建议你通读这个vimrc文件,一定会很有收获的,至少我是如此.