给新手的提示

即使你不了解 GNU Emacs,阅读本文依然是有益的。不过,我建议你学习一下 Emacs,哪怕只是为了学会如何在电脑屏幕上移动。你可以通过内置的教程自学如何使用 Emacs。使用方法是输入 C-h t。(这意味着你同时按下并松开 CTRL 键和 h 键,然后再按下并松开 t 键。)

此外,我经常会通过列出调用命令所需的按键,然后在括号中给出命令名称的方式来提及 Emacs 的某个标准命令,例如:C-M-\ (indent-region)。这意味着 indent-region 命令通常通过输入 C-M-\ 来调用。(当然,如果你愿意,可以修改调用该命令的按键;这被称为 重绑定(rebinding)。See 键盘映射。)缩写 C-M-\ 表示你需要同时按下 CTRL 键、META 键和 \ 键。(在许多现代键盘上,META 键标注为 ALT。)这种组合有时被称为键盘组合键(keychord),因为它类似于在钢琴上弹奏一个和弦。如果你的键盘没有 META 键,则可以使用 ESC 键作为前缀来代替。在这种情况下,C-M-\ 表示你先按下并松开 ESC 键,然后同时按下 CTRL 键和 \ 键。但通常情况下,C-M-\ 指的是同时按下 CTRL 键和标有 ALT 的键,以及 \ 键。

除了单独输入一个键盘组合键之外,你还可以在输入内容前加上 C-u,这被称为 通用参数(universal argument)C-u 键盘组合键会向后续的命令传递一个参数。因此,要将一个纯文本区域缩进 6 个空格,请标记该区域,然后输入 C-u 6 C-M-\。(如果你不指定数字,Emacs 通常会向命令传递数字 4,或以其他不同的方式运行该命令。)See 数值参数 in GNU Emacs 手册

如果你正在 GNU Emacs 的 Info 模式中阅读本文,只需按空格键 SPC,就可以通读整篇文档。(要了解 Info 的使用方法,请输入 C-h i 然后选择 Info。)

关于术语的说明:当我单独使用 “Lisp” 一词时,通常指的是各种 Lisp 方言;而当我提到 “Emacs Lisp” 时,则特指 GNU Emacs Lisp。