Emacs教程–窗口、框架

确定您的 Emacs 视图的形状

窗口命令表

键盘输入 功能 描述
C-x 2 split-window-vertically 从中间将当前窗口划分为两半,垂直地堆叠新的缓冲区。
C-x 4 b switch-to-buffer-other-window 垂直地将当前窗口划分为两半,提示输入缓冲区以使用底部的窗口,并将其作为活动窗口。
C-x 4 C-o display-buffer 在另一个窗口中显示一个缓冲区,提示输入缓冲区以使用另一个窗口,但保持当前窗口为活动窗口。(如果仅存在一个窗口,那么垂直地划分该窗口以显示另一个缓冲区。)
C-x 4 f find-file-other-window 在新的缓冲区中打开新的文件,在新的垂直窗口中绘制它。
C-x 4 r find-file-read-only-other-window 在一个新的只读缓冲区中打开新的文件,在新的垂直窗口中绘制它。
C-M-v scroll-other-window 滚动到下一个由 C-x o 切换到的窗口。
scroll-all 切换 scroll-all 次要模式。当它处于打开状态时,将同时滚动显示当前窗口中的缓冲区的所有窗口,并滚动均等的相应距离。
C-x o other-window 将光标移动到下一个窗口,并使其成为活动窗口。
windmove-up 移动到恰好位于当前窗口上方的窗口,如果它存在的话。
windmove-down 移动到恰好位于当前窗口下方的窗口,如果它存在的话。
windmove-left 移动到恰好位于当前窗口左边的窗口,如果它存在的话。
windmove-right 移动到恰好位于当前窗口右边的窗口,如果它存在的话。
C-x 0 delete-window 删除当前窗口,并将光标移动到使用 C-x o 将切换到的下一个窗口。
C-x 1 delete-other-windows 删除当前窗口之外的所有窗口。
C-x 4 0 kill-buffer-and-window 删除当前窗口,并剪切它的缓冲区。
C-x 3 split-window-horizontally 将当前窗口从中间划分为两半,水平地堆叠新的缓冲区。
follow-mode 切换 follow 次要模式。当它在缓冲区中处于打开状态时,将所有显示该缓冲区的窗口连接为一个较大的虚拟窗口。
C-x ^ enlarge-window 使当前窗口增加一行的高度;在其之前使用一个负数,将使得当前窗口减少一行的高度。
C-x } shrink-window-horizontally 使当前活动窗口减少一列的宽度。
C-x { enlarge-window-horizontally 使当前活动窗口增加一列的宽度。
C-x – shrink-window-if-larger-than-buffer 将当前活动窗口的大小缩小到对于它所包含的缓冲区来说可能的最小尺寸。
C-x + balance-windows 平衡所有窗口的尺寸,使它们的大小大致相等。
compare-windows 将当前窗口与下一个窗口进行比较,在两个窗口中从光标处开始比较,并在两个缓冲区中将光标移动到第一个不同的字符处,直到到达缓冲区的末尾为止。

框架命令表

键盘输入 功能 描述
C-x 5 2 make-frame-command 生成一个新的 Emacs 框架,并使其成为活动框架。
C-x 5 b switch-to-buffer-other-frame 在另一个框架中打开指定的缓冲区。如果不存在其他框架,则创建一个新的框架。
C-x 5 f find-file-other-frame 在另一个框架中打开指定的文件。如果不存在其他框架,则创建一个新的框架。
C-x 5 r find-file-read-only-other-frame 在另一个框架中的只读缓冲区中打开指定的文件。如果不存在其他框架,则创建一个新的框架。
C-x 5 o other-frame 移动到下一个框架,并使其成为活动框架。
C-x 5 0 delete-frame 删除当前框架,并使下一个框架成为活动框架。
C-x 5 1 delete-other-frames 删除当前框架之外的所有框架。
C-z iconify-or-deiconify-frame 图标化当前框架。如果该框架已经图标化了,那么取消它的图标化。(在控制台中,这个绑定将挂起 Emacs。)