Emacs 缓冲区导航
100%

高级文本操作 · 第 11 课

Emacs 缓冲区导航

学习如何切换和终止 Emacs 缓冲区,以及如何拆分、选择和关闭显示窗口。

Emacs 缓冲区保存文本或编辑器状态,而窗口负责显示缓冲区。缓冲区可以存在而不显示,多个窗口也可以显示同一个缓冲区。管理其中一个对象不会自动管理另一个。

切换缓冲区

使用运行 switch-to-bufferC-x b,在当前窗口中按名称选择缓冲区:

C-x b

迷你缓冲区会为已有名称提供补全。输入新名称可以创建该名称的非文件缓冲区;这不会访问文件路径。

默认情况下,C-x Right 运行 next-bufferC-x Left 运行 previous-buffer,在所选窗口中循环切换缓冲区。

哪个按键序列会提示输入要在当前窗口中显示的缓冲区名称?

拆分所选窗口

使用 C-x 2 把所选窗口拆分为上下两个窗口:

C-x 2

使用 C-x 3 把它拆分为左右两个窗口:

C-x 3

新窗口起初会显示一个缓冲区,通常与原窗口相同。可以在任一窗口中独立切换缓冲区。

哪个按键序列会把所选 Emacs 窗口拆分为左右两个窗口?

选择和关闭窗口

使用运行 other-windowC-x o 选择下一个窗口:

C-x o

使用以下命令移除窗口显示:

  • C-x 0:删除所选窗口。
  • C-x 1:删除当前框架中的其他窗口。

删除窗口通常会让它所显示的缓冲区继续存在。你可以在另一个窗口中再次显示该缓冲区。

哪个按键序列会把 point 和键盘焦点移动到另一个 Emacs 窗口?

哪个按键序列会保留所选窗口,并删除其框架中的其他窗口?

终止缓冲区

使用运行 kill-bufferC-x k,提示选择要从 Emacs 中移除的缓冲区:

C-x k

默认选择是当前缓冲区。如果访问文件的缓冲区有未保存更改,Emacs 会在终止前发出警告。请阅读提示;终止已修改缓冲区可能丢弃编辑。

终止缓冲区与删除窗口不同。Emacs 会在任何显示该缓冲区的窗口中替换已终止缓冲区,而删除窗口可以让其缓冲区保持不变。

哪个按键序列会提示终止 Emacs 缓冲区?

请使用 *scratch* 和可丢弃缓冲区练习这些命令。终止任何访问文件的缓冲区前,应确认其已修改标记是否表示存在未保存工作。

课程已完成

你已完成 Emacs 缓冲区导航

现在,你可以管理 Emacs 存储的内容以及各窗口显示的内容。

  • 使用 C-x b 在所选窗口中切换缓冲区。

  • 使用 C-x 2 向下拆分,或使用 C-x 3 向右拆分。

  • 使用 C-x o 选择另一个窗口。

  • 使用 C-x 0C-x 1 移除窗口显示。

  • 只有审查未保存更改后,才使用 C-x k 终止缓冲区。

保存学习进度

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

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