Emacs快速指南
传说中的神级编辑器??
基础介绍
vim 和 emacs 分别被称为「 编辑器之神」与「 神之编辑器」,自有其独到之处。
快捷键的无差别延续
vim 和 emacs 诞生于 30 年前,快捷键基本没什么变化。这意味着,一旦你学会使用这两个编辑器,无论以后软件怎么更新,都不需要学习别的快捷键了。因为历史较长,加上快捷键变化不大,新兴编辑器大多提供模拟 vim/emacs 操作的插件。这也方便了用户迁移到其他编辑器,无需学习更多的同质快捷键。
基础和适用的默认配置
vim 和 emacs 都可以运行在终端,也有图形化的软件,非常适合快速编辑文件。当需要在无法运行图形界面的服务器上编辑代码的时候,二者也足以胜任。虽然在终端也有 nano 这样的编辑器,但毕竟过于简洁,无法支撑较为复杂的编辑工作。这两个编辑器的默认配置的功能就已经很强大了,语法着色、补全、缩进等功能都很不错。
emacs有别于vim的地方
为了实现强大的功能,vim 选择了多模式编辑(Normal, Insert, Visual 模式),而 emacs 没有输入上的 mode 差别,所以需要依赖复杂的快捷键来实现强大的编辑功能,正如上图所示。emacs 插件想象力更加丰富,有「伪装成编辑器的操作系统」之称。插件的 major mode 和 minor mode 的设计很出彩,对一个文件,只有一个 major mode,但是可以有多个 minor mode,这样一个文件一个主插件,多个附加插件,可以实现很多有趣的效果。
快捷键说明
在网上的Emacs文档或手册中,总有一些快捷键说明如下所示:
C-v : 其中C 代表 Ctrl,因此这项快捷键代表 Ctrl + C M-v : 其中M 代表 Alt,这项快捷键代表 Alt + V
基本光标控制
1 2 3 4 5 6 7 8 9 |
|
M-f 移动到词的末尾 M-b 移动到词的首部
请注意 C-f 、C-b 和 M-f 、M-b 两对之间的类比关系。通常的惯例是:META 系 列组合键用来操作“由语言定义的单位(比如词、句子、段落)”,而 CONTROL 系列组合键用来操作“与语言无关的基本单位(比如字符、行等等)”。
这里对简单的光标移动命令做一个总结,其中也包括了整词和整句的移动:
C-f 向右移动一个字符
C-b 向左移动一个字符
M-f 向右移动一个词【对中文是移动到下一个标点符号】
M-b 向左移动一个词【对中文是移动到上一个标点符号】
C-n 移动到下一行
C-p 移动到上一行
C-a 移动到行首
C-e 移动到行尾
M-a 移动到句首
M-e 移动到句尾
窗格(WINDOWS)
Emacs 可以有多个“窗格”,每个窗格显示不同的文字。后面会介绍怎么对付多个窗 格,现在我们先学会如何关掉多余的窗格。其实也很简单:
C-x 1 只保留一个窗格(也就是关掉其它所有窗格)。
也就是先按 CONTROL-x 然后再按 1。C-x 1 会保留光标所在的窗格,并将其扩大 到整个屏幕,同时关掉所有其它的窗格。
把光标移到本行然后输入 C-u 0 C-l。
输入 C-h k C-f。观察当一个新窗格出现时当前窗格(用来显示 C-f 命令的文档)是如何缩小的。
输入 C-x 1 关掉文档窗格。
Emacs中的删除
在Emacs删除文字有很多种方法。在说明相应的操作方法前,我们需要先弄明白几个概念:“删除(Delete)”、“移除(Kill)”、“召回(Yank)”还有“移除环(Kill-Ring)”
好吧,“删除”和“移除”在文本编辑的过程中实现的效果非常类似——对应的字符或内容在文档中“消失”了。存在细微差别的地方在与取回这些“消失”的内容的方法上:
被“删除”的内容,只能使用“撤销(Undo)”的办法来找回这些“消失的字符”。和大多数人预想的一样,这些“消失的字符”只会重新出现在原来它们所在的地方。
Emacs的剪贴板以及Undo/Redo
被“移除”的内容,除了可以使用“撤销”的方法了找回内容以外,还可以使用“召回”的方法让这些“消失”的内容出现在当前光标之后。这样的操作效果和使用了“剪贴板”的效果类似了。
“召回”,是将移除的内容插入到光标所在位置的一种操作。使用召回操作,让人有一种使用“剪贴板”的感觉。不过Emacs会记录多次“移除”操作的内容,这一点可要比windows操作系统提供的“剪贴板”功能要强大多了。这种记录多次“移除”操作内容的机制在Emacs中叫做“移除环”——Yank Ring。
Emacs中的查找和替换
任何编辑器都有查找和替换的功能,Emacs也不例外。在Emacs中最常用的查找方法是“增量查找”。除此之外,Emacs还提供了“正则查找”、“词组查找”、“简单查找”三种方法。这些查找方法,一般来说,熟练掌握其中的一至两类就足够应付日常使用的需要了。
Emacs中的文件操作
基础的Emacs文件操作是创建、保存、另存。
创建新文件: 使用组合键 Ctrl-x Ctrl-f 打开“find file” 在提示符处输入一个不存在的文件名 回车确认后,Emacs即创建了一个空的Buffer供输入使用。 保存文件 Emac的保存文件非常简单,只需要按下组合键Ctrl-x Ctrl-s即可。 另存文件 要另存一个文件,按下组合键Ctrl-x Ctrl-w,按提示输入新的文件名即可。
常用快捷键
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 |
|