← 全部文章

Emacs 使用教程:从打开文件到熟练编辑

用一份可跟做的练习,掌握 Emacs 的文件操作、光标移动、复制粘贴、搜索、窗口和帮助。

文章目录

第一次打开 Emacs,不需要先安装一堆插件。先用它完成一件小事:创建一个文件,写两段文字,修改并保存。本文使用原生 Emacs 的默认按键;Doom、Spacemacs 或 Evil 模式可能使用不同绑定。

准备:启动 Emacs,读懂按键

安装 GNU Emacs 后,从应用菜单启动,或在终端运行 emacs=。想在终端内使用,可以运行 =emacs -nw=。如果已有配置影响操作,先用 =emacs -Q 启动一个不加载个人配置的会话。

本文的 C- 表示按住 Ctrl,=M-= 通常表示按住 Alt;=RET= 是回车,=SPC= 是空格。=C-x C-f= 的顺序是 Ctrl+x,再 Ctrl+f。=M-x= 则打开命令输入区,可以输入命令名称并按回车执行。

Meta 键因平台配置不同而变化;Alt 不生效时,可先按 Esc、松开,再按后面的键。遇到没完成的命令或选错的提示,按 C-g 取消。

建议先按 C-h t 打开 Emacs 自带的交互教程,每天跟做一小段。

第一步:新建、打开与保存文件

  1. 按 =C-x C-f=,在底部的输入区填写 =~/emacs-practice.txt=,按回车。
  2. 输入下面两行文字。
  3. 按 C-x C-s 保存。
  4. 按 C-x C-f 再次选择这个文件,确认内容仍在。
今天开始学习 Emacs。
先学会编辑,再慢慢调整配置。

Emacs 会把文件内容读入“缓冲区”(buffer),你编辑的是缓冲区;保存后才写回磁盘。打开一个不存在的路径会创建新缓冲区,首次保存时才真正创建文件。若目标文件夹不存在,先创建文件夹。

C-x C-w 可以另存为其他路径。=C-x C-c= 退出 Emacs,存在未保存内容时会询问如何处理;请看清提示再选择。

第二步:移动光标,不用一直找鼠标

按键作用
C-f / C-b向前 / 向后一个字符
C-n / C-p下一行 / 上一行
C-a / C-e行首 / 行尾
M-f / M-b向前 / 向后一个词
M-< / M->文档开头 / 结尾
C-v / M-v向下 / 向上翻屏

练习:把光标放在第一行中间,按 C-e=,输入“我已经会保存文件了。”;再按 =C-a 回到行首。=M-<= 和 M-> 使用小于号、大于号,通常需要同时按 Shift。

长行自动换行后,“显示出来的一行”和文本里的实际一行可能不同。初学时先用短句练习,熟悉后再了解视觉行移动。

第三步:选中、复制、剪切和粘贴

  1. 移动到想复制的文字开头,按 C-SPC 设置标记。
  2. 移动光标到文字结尾,两点之间就是选区。
  3. 按 M-w 复制,或 C-w 剪切。
  4. 移动到目标位置,按 C-y 粘贴。

C-k 剪切光标到行尾的内容;在行尾使用时会剪切换行符。Emacs 把剪切或复制的内容保存在 kill ring 中;粘贴后立即按 =M-y=,可以换成更早的一项。

中文输入法有时占用 Ctrl+空格。此时可用 M-x set-mark-command RET 设置标记,之后再调整输入法的快捷键。

误删文字时,按 C-/ 撤销。默认也可用 =C-x u=。不要反复保存来“恢复”文字:保存只会把当前内容写入文件。

第四步:查找和逐项替换

C-s 开始向前搜索,直接输入要找的文字;再次按 C-s 跳到下一个匹配,按回车停在当前位置。=C-r= 向后搜索。

按 M-% 执行逐项替换,依次输入旧文字和新文字。遇到每个匹配时,=y= 替换,=n= 跳过,=q= 退出。先用这三个选项练习,确认范围后再考虑批量替换。

练习:搜索“Emacs”,找到之后退出搜索;再把第一行的“学习”替换成“练习”,最后保存。

第五步:理解缓冲区和窗口

一个 Emacs 窗口可以显示一个缓冲区;分屏不会复制文件,两个窗口也可以显示同一份内容。

按键作用
C-x b切换缓冲区,输入名称并回车
C-x C-b查看缓冲区列表
C-x 2上下分屏
C-x 3左右分屏
C-x o切换到另一个窗口
C-x 1只保留当前窗口
C-x 0关闭当前窗口,不关闭文件

练习:按 C-x 3 分屏,在右侧打开另一个文件;用 C-x o 切换,再用 C-x 1 回到单窗口。

第六步:不会的操作,现场查帮助

  • C-h k 后按某个快捷键:查看它当前绑定的命令与说明。
  • C-h f 后输入命令名称:查看函数帮助。
  • =C-h m=:查看当前模式的说明与按键。
  • =C-h r=:打开 Emacs 手册。

按键与文章描述不同,先用 C-h k 检查,不必马上重写配置。若终端中的 Ctrl+s 导致屏幕暂停,可先按 Ctrl+q 恢复;这是终端流控与快捷键冲突,GUI Emacs 通常没有这个问题。

用十分钟完成一次完整练习

创建文件 → 写两段文字 → 复制一段 → 撤销一次修改 → 搜索关键词 → 分屏查看 → 保存 → 退出。第二天重新打开,重复一次。

完成后,继续阅读 Org Mode 使用教程,把这些编辑动作应用到学习笔记中。也可以在 本站写作练习 中练习部分编辑键;浏览器练习只实现列出的按键,完整操作请在 Emacs 中进行。

参考资料

搜索