您的位置:首页 > 其它

Emacs 窗口相关的概念

2010-10-28 16:50 127 查看
Window

Emacs 中的 Window 不是指桌面上的由你的窗口管理器所管理的窗口,而是在 Emacs 自己的一个 Frame 中管理的 Window 。默认情况下只有一个 Window ,你可以横着或者竖着将 Window 进行分割。C-x 2 试一试!

Frame

在图形界面下(例如 X window 或者 Microsoft Windows 中),一个 Frame 就是我们通常说的一个顶层窗口了。如果不明白,C-x 5 2 试验一下应该就知道了。Emacs中C-x 5 是专门用于Frame相关的操作的快捷键,许多关于Window的快捷键(例如 C-x o )都可以以类比的方式对应到Frame上来(对应与 C-x 5 o )。

Buffer

一个 Buffer 就对应一个你可以编辑的地方了,如果你在 Emacs 中打开了一个文件,那么 Emacs 就创建一个对应该到该文件的 Buffer ,你可以在 Buffer 中编辑,直到你保存该 Buffer 为止,都不会影响到原文件的内容,也有一些 Buffer 并不关联到任何文件,例如刚打开 Emacs 时出现的 *Scratch* Buffer。通常在 Buffer 的名字两边加上星号表示这个 Buffer 不关联到某个文件。Buffer 和 Window 并不是一一对应的,一个 Buffer 可以同时在几个 Window 中显示出来,也会有一些 Buffer 暂时没有在任何 Window 中显示出来,不过你可以随时进行切换。

MiniBuffer

MiniBuffer 在Emacs中是一个非常特殊的Buffer ,每个 Frame 最多只有一个 MiniBuffer 。它就是你在Emacs界面中看到的最下面的那一个小横条,通常是输入各种命令以及参数的地方,例如按下 M-x 手工调用某个命令的时候,Emacs就是在

MiniBuffer 中接受你输入的命令名的。不仅如此,它还被用来显示各种消息(例如文件正在被自动保存的消息)。可以说它基本上取代了我们平时在其他GUI程序中常见的各种弹出对话框的功能。 在编辑的时候MiniBuffer和普通的Buffer差别不是很大,一些常用的快捷键(如 C-a 、C-e 等)都可以用。不过它也有它特殊的地方,例如可以通过 M-p 、M-n 来切换历史命令(就是你之前在MiniBuffer中输入过的内容),并且许多时候可以通过 tab 来进行补全,并且补全还是很智能的,例如你用 C-x C-f 来打开文件的时候它会针对文件名进行补全,而用 C-x b 来切换 Buffer 的时候他会针对 Buffer 名称进行补全,非常方便。



注:原作者为pluskid
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: