一 基本文件操作
表 1. 常用的缺省 Emacs 按键前缀
按键前缀 | 描述 |
| 当前编辑模式特有的命令 |
| 文件和缓冲区命令 |
| 帮助命令 |
| 函数名称 |
表 2. 常用的 Emacs 缓冲区和文件函数
绑定 | 函数名 | 描述 |
|
| 将当前的缓冲区保存到磁盘。 |
|
| 要求将所有未保存的缓冲区保存到磁盘。 |
|
| 要求将所有未保存的缓冲区保存到磁盘,并退出 Emacs。 |
|
| 挂起 Emacs 并使之成为一个后台进程。 |
|
| 列出所有缓冲区。 |
|
| 杀死一个缓冲区(缺省情况下为当前的缓冲区)。 |
|
| 切换当前缓冲区的可读状态(如果适用还可以执行版本控制)。 |
|
| 在插入点插入某个文件的内容。 |
表 3. 有用的 Emacs 键盘输入(用于移动和导航)
键盘输入 | 函数 | 描述 |
|
| 将插入点向上移动到上一行。 |
|
| 将插入点向下移动到下一行。 |
|
| 将插入点移动到下一个字符。 |
|
| 将插入点移动到上一个字符。 |
|
| 将插入点移动到下一个单词。 |
|
| 将插入点移动到上一个单词。 |
|
| 将文本向上滚动一屏。 |
|
| 将文本向下滚动一屏。 |
|
| 将插入点移到缓冲区的开始处。(在某些版本中,这个键被缺省定义为移动到当前行的开始处。) |
|
| 将插入点移到缓冲区的末尾。(在某些版本中,这个键被缺省定义为移动到当前行的末尾。) |
|
| 将插入点移到本行的开始处。 |
|
| 将插入点移到本行的结尾。 |
|
| 将插入点移到句子的开始处。 |
|
| 将插入点移到句子的结尾处。 |
|
| 将插入点移到段落的开始处。 |
|
| 将插入点移到段落的结尾处。 |
表 4. 常用 Emacs 编辑命令
键盘输入 | 函数 | 描述 |
Ins |
| 切换改写模式(缺省为关闭)。 |
Backspace
|
| 删除插入点前的字符。 |
|
| 删除插入点处的字符。 |
|
| 从插入点开始向前删除字符,直到单词末尾。 |
|
| 从插入点开始向回删除字符,直至单词的开始处。 |
|
| 撤消您的上一次键入或操作 |
|
| 在插入点插入按键本身代表的字符或由八进制数字(XXX)表示的字符。 |
|
| 按总的次数(缺省为 4 次)连续执行命令。 |
列出缓冲区:C-x C-b
切换缓冲区:C-x b
二 帮助信息
1 Emacs 为您可以在其中键入的每个键盘输入提供了相关的文档说明,并且 Emacs 可以采用一些不同的方式向您说明特定键盘输入的功能。
其中的第一种方式、也是最快的一种方式,是使用 describe-key-briefly
函数,该函数允许您输入一个键盘输入,然后在迷你缓冲区中告诉您该键盘输入所执行的函数的名称。它与C-h c
进行了绑定。
C-h c C-x C-c C-h c C-h l C-h c C-h c
对于某个特定的键盘输入,您还可以获得一些更详细的信息。describe-key
函数(与 C-h k
进行了绑定),可以提供关于一个按键或者键盘输入的更多信息,并在帮助窗口中打开一个新的帮助缓冲区,并对其用途进行描述。尝试针对一个字母按键运行这个操作:
C-h
C-h
C-x C-h
C-h
您在 Emacs 中最后键入的 100 个键盘输入称为 Lossage。要查看这些内容,可以运行 view-lossage
函数。它与C-h l
键盘输入进行了绑定。
Emacs 键盘输入帮助命令汇总
表 1 列出了可用于获得键盘输入帮助的各种 Emacs 命令,给出了它们的函数名(如果适用的话),并描述了它们的用途。
表 1. Emacs 键盘输入帮助命令汇总
键盘输入 | 函数 | 描述 |
Tab | 如果给出了某个命令的一部分,那么这个命令将执行命令完成功能,显示给定命令的所有可能的输入值。 | |
| 这个命令用于描述给定命令前缀 或者键盘输入 的所有可能的命令和函数。 | |
|
| 这个命令将在迷你缓冲区中报告与给定键盘输入 进行了绑定的函数名称。 |
|
| 这个命令将打开新的帮助缓冲区窗口,其中描述了与给定键盘输入 进行了绑定的函数。 |
|
| 这个命令将打开新的缓冲区,并显示最后键入的 100 个字符。 |
| 这个命令将打开指定的文件,并将所有键盘输入的副本记录到该文件。 |
3 获得关于 Emacs 命令和函数的帮助
| 对于一个给定的正则表达式,这个命令将给出 | |
|
| 对于给定的正则表达式,这个命令将给出 |
|
| 这个命令将在一个新的帮助缓冲区窗口中描述当前主要模式的所有有效的键绑定。 |
|
| 这个命令将在一个新的帮助缓冲区窗口中描述给定函数 的用途。 |
|
| 这个命令将在一个新的帮助缓冲区窗口中描述给定变量 的用途。 |
|
| 这个命令将描述某个特定函数所绑定到的键盘输入(如果有的话)。 |
如果文件被外部程序修改,使用命令revert-buffer 和 revert-buffer-with-coding-system可以重新load这个文件