一 基本文件操作
按键前缀 | 描述 |
---|---|
C-c | 当前编辑模式特有的命令 |
C-x | 文件和缓冲区命令 |
C-h | 帮助命令 |
M-x | 函数名称 |
绑定 | 函数名 | 描述 |
---|---|---|
C-x C-s | save-buffer | 将当前的缓冲区保存到磁盘。 |
C-x s | save-some-buffers | 要求将所有未保存的缓冲区保存到磁盘。 |
C-x C-c | save-buffers-kill-emacs | 要求将所有未保存的缓冲区保存到磁盘,并退出 Emacs。 |
C-x C-z | suspend-emacs | 挂起 Emacs 并使之成为一个后台进程。 |
C-x C-b | list-buffers | 列出所有缓冲区。 |
C-x k | kill-buffer | 杀死一个缓冲区(缺省情况下为当前的缓冲区)。 |
C-x C-q | vc-toggle-read-only | 切换当前缓冲区的可读状态(如果适用还可以执行版本控制)。 |
C-x i | insert-file | 在插入点插入某个文件的内容。 |
键盘输入 | 函数 | 描述 |
---|---|---|
C-p ,UpArrow | previous-line | 将插入点向上移动到上一行。 |
C-n , DownArrow | next-line | 将插入点向下移动到下一行。 |
C-f , RightArrow | forward-char | 将插入点移动到下一个字符。 |
C-b , LeftArrow | back-char | 将插入点移动到上一个字符。 |
M-f | forward-word | 将插入点移动到下一个单词。 |
M-b | backward-word | 将插入点移动到上一个单词。 |
C-v , PgDn | scroll-up | 将文本向上滚动一屏。 |
M-v , PgUp | scroll-down | 将文本向下滚动一屏。 |
Home | beginning-of-buffer | 将插入点移到缓冲区的开始处。(在某些版本中,这个键被缺省定义为移动到当前行的开始处。) |
End | end-of-buffer | 将插入点移到缓冲区的末尾。(在某些版本中,这个键被缺省定义为移动到当前行的末尾。) |
C-a | beginning-of-line | 将插入点移到本行的开始处。 |
C-e | end-of-line | 将插入点移到本行的结尾。 |
M-a | beginning-of-sentence | 将插入点移到句子的开始处。 |
M-e | end-of-sentence | 将插入点移到句子的结尾处。 |
C-{ | beginning-of-paragraph | 将插入点移到段落的开始处。 |
C-} | end-of-paragraph | 将插入点移到段落的结尾处。 |
键盘输入 | 函数 | 描述 |
---|---|---|
Ins | overwrite-mode | 切换改写模式(缺省为关闭)。 |
BackspaceDel | delete-backward-char | 删除插入点前的字符。 |
C-d | delete-char | 删除插入点处的字符。 |
M-d | kill-word | 从插入点开始向前删除字符,直到单词末尾。 |
M-Backspace ,M-Del | backward-kill-word | 从插入点开始向回删除字符,直至单词的开始处。 |
C-_ | undo | 撤消您的上一次键入或操作 |
C-q 字符 或 XXX | quoted-insert | 在插入点插入按键本身代表的字符或由八进制数字(XXX)表示的字符。 |
C-u 次数 命令 | universal-argument | 按总的次数(缺省为 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 k k 2 列出所有以给定前缀开头的键绑定 当您使用通用的帮助前缀C-h
作为后缀 的时候,它将具有特殊的含义,当您在某些其他控制字符前缀之后键入C-h
的时候, 您将得到一个新的缓冲区,其中列出了该前缀的所有可用键绑定。 例如,键入C-x C-h
以获得所有可能的以C-x 开头的键盘输入的列表 Emacs 帮助键不仅仅只是一个前缀:您甚至可以在键入一个命令的过程中使用它。 在您希望了解已经键入的部分可能对应于哪些命令的时候,可以键入C-h
。 查看 Lossage
您在 Emacs 中最后键入的 100 个键盘输入称为 Lossage。要查看这些内容,可以运行 view-lossage
函数。它与C-h l
键盘输入进行了绑定。
表 1 列出了可用于获得键盘输入帮助的各种 Emacs 命令,给出了它们的函数名(如果适用的话),并描述了它们的用途。
键盘输入 | 函数 | 描述 |
---|---|---|
Tab |
| 如果给出了某个命令的一部分,那么这个命令将执行命令完成功能,显示给定命令的所有可能的输入值。 |
command prefix 或者 keystroke C-h |
| 这个命令用于描述给定命令前缀 或者键盘输入 的所有可能的命令和函数。 |
C-h c keystroke | describe-key-briefly | 这个命令将在迷你缓冲区中报告与给定键盘输入 进行了绑定的函数名称。 |
C-h k keystroke | describe-key | 这个命令将打开新的帮助缓冲区窗口,其中描述了与给定键盘输入 进行了绑定的函数。 |
C-h l | view-lossage | 这个命令将打开新的缓冲区,并显示最后键入的 100 个字符。 |
| open-dribble-file | 这个命令将打开指定的文件,并将所有键盘输入的副本记录到该文件。 |
3 获得关于 Emacs 命令和函数的帮助
apropos | 对于一个给定的正则表达式,这个命令将给出 apropos 命令和变量的列表。 | |
C-h a regexp | command-apropos | 对于给定的正则表达式,这个命令将给出 apropos 命令的列表。 |
C-h b | describe-bindings | 这个命令将在一个新的帮助缓冲区窗口中描述当前主要模式的所有有效的键绑定。 |
C-h f function | describe-function | 这个命令将在一个新的帮助缓冲区窗口中描述给定函数 的用途。 |
C-h v variable | describe-variable | 这个命令将在一个新的帮助缓冲区窗口中描述给定变量 的用途。 |
C-h w function | where-is | 这个命令将描述某个特定函数所绑定到的键盘输入(如果有的话)。 |
如果文件被外部程序修改,使用命令revert-buffer 和 revert-buffer-with-coding-system可以重新load这个文件