Emacs
100%

高级文本操作 · 第 9 课

Emacs

学习如何启动 Emacs、理解其按键记法,以及区分缓冲区、窗口和框架。

GNU Emacs 是一款可扩展的文本编辑器,可以使用 Emacs Lisp 自定义其行为。它支持纯文本编辑、编程模式、文件与缓冲区管理,以及许多可选软件包。你可以学习其核心编辑命令,而不必采用所有扩展。

检查并启动 Emacs

不要假设 Emacs 已经安装。请检查 shell 如何解析它:

$ command -v emacs
/usr/bin/emacs

以正常的显示选择方式启动 Emacs:

$ emacs

在图形会话中,这可能创建图形框架。如果 Emacs 应留在当前终端中,请使用 -nw,即不使用窗口系统:

$ emacs -nw

哪个命令会在当前终端中启动 Emacs,而不使用图形窗口系统?

打开文件

启动 Emacs 时传入路径名即可访问文件:

$ emacs notes.txt

如果文件存在,Emacs 会把它读入缓冲区。如果文件不存在,Emacs 会创建与该路径关联的新缓冲区;只有成功保存后才会创建文件。文件系统权限仍决定写入能否成功。

notes.txt 尚不存在时,emacs notes.txt 通常会做什么?

理解缓冲区、窗口和框架

Emacs 使用相互关联但彼此不同的对象:

  • 缓冲区保存文本或其他编辑器状态。所访问文件的内容位于缓冲区中。
  • 窗口是 Emacs 框架内显示缓冲区的区域。
  • 框架是 Emacs 的顶层显示,例如图形框架或终端框架。

多个缓冲区可以存在而不显示,两个窗口也可以显示同一个缓冲区。关闭窗口不一定会终止其缓冲区或删除文件。

Emacs 缓冲区是什么?

阅读 Emacs 按键记法

Emacs 文档使用简洁记法:

  • C-x 表示按住 Control 再按 x
  • M-x 表示按住 Meta 再按 x;在现代终端和桌面中,Alt 通常充当 Meta。
  • C-x C-f 是一个按键序列:先按 Control+x,再按 Control+f。

具体终端可能会拦截或重映射某些按键。先按 Esc 再按另一个键,通常可以替代 Meta 组合键。

如何输入写作 C-x C-f 的 Emacs 按键序列?

启动内置教程

在 Emacs 中输入 C-h t 可打开交互式教程。它会在安全的练习缓冲区中教授移动、插入、保存和退出。C-h 是帮助前缀;C-h C-h 会显示如何使用帮助的说明。

如果 Emacs 显示菜单或欢迎缓冲区,教程仍比直接在重要文件上试验更适合作为结构化起点。

哪个 Emacs 按键序列会打开内置教程?

课程已完成

你已完成 Emacs

现在,你可以启动 Emacs,并理解其基础界面概念。

  • 检查 emacs 命令是否可用。

  • 使用 -nw 选择图形或终端运行方式。

  • 在缓冲区中访问已有或新的路径。

  • 区分缓冲区、窗口和框架。

  • 阅读按键记法并打开内置教程。

保存学习进度

创建免费账户即可保存本课进度,并在任意设备上继续学习。

创建免费账户
下一节
返回 高级文本操作