📄 00000003.htm
字号:
<HTML><HEAD> <TITLE>BBS水木清华站∶精华区</TITLE></HEAD><BODY><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER> <BR>EMACS 的萤幕安排 <BR> <BR>在 text-only 的终端机启动 EMACS 时, EMACS 会占据整个萤幕, <BR>此时的萤幕称为 frame。再一次的强调,本文只讨论 text-only 的 <BR>终端机,至於 X Window 的环境则不在讨论的行列中。 <BR> text-only 的 frame 又由数个 window 所组成。 <BR>启动 EMACS 时,会产生二个预设的视窗,一个视窗用来输入一般 <BR>的文件,在未有文件输入前先用来展示前面提到的 EMACS 版本、 <BR>线上辅助说明以及有关版权等讯息;另一个视窗用来输入指令 <BR>或是用做讯息的回应,称为 minibuffer或 echo area。 <BR> 若终端机提供反白的功能,在反白区域以上的地方是用来输入 <BR>文件的视窗;反白区域以下的地方则是 minibuffer 或 echo area。 <BR>此反白的长条型则称为 mode line,它是用来描述输入文件视窗 <BR>的一些讯息。现在就来谈谈组成 EMACS frame 的这三个部份。 <BR> 有关文字视窗的部份,因为还牵涉到缓冲区的问题, <BR>现在先略过不谈,下一节再行讨论。现在先讨论与其有关的 <BR>mode line和位於 mode line下的minibuffer <BR>或 echo area。 <BR> mode line 出现在每一个文字视窗的最後一列,其描述此 <BR>视窗的相关资讯。 <BR>mode line 所描述的讯息如下: <BR> <BR> --ch-Emacs: buf (major minor) --pos-------------- <BR> <BR>现在则分别解释其所代表的意义。 <BR> <BR> * rl-h 代表缓冲区的状态(何谓缓冲区会在下一节讨论)。 <BR> <BR> <BR> <BR> <BR> o -- 表示缓冲区未被修改过。 <BR> <BR> <BR> o ** 表示缓冲区已被修改过。 <BR> <BR> <BR> o %% 表示缓冲区为 read-only 的缓冲区。 <BR> <BR> <BR> o %* 表示 read-only 的缓冲区被修改过。 <BR> <BR> <BR> <BR> * buf <BR> 表示此视窗缓冲区的名称,一般即为所编辑的档案名称。 <BR> <BR> * major minor <BR> 此缓冲区所有使用的模式( mode)都列举在此括号内。其中 <BR> 包括一个主要模式 (major mode)和数个次要模式( minor mode)。 <BR> EMACS 允许一个缓冲区有数个次要模式,但只能有一个主要模式。 <BR> <BR> * pos <BR> 表示文件在视窗显示的情形。其表示的种类如下: <BR> <BR> <BR> <BR> <BR> o All <BR> 如果资料很少可以一「幕」了然,则会以 All 来表示。 <BR> <BR> <BR> o Top <BR> 若资料无法一「幕」了然,但出现的位置在最前面,则以 <BR> Top 来表示。 <BR> <BR> <BR> o 无法一「幕」了然的资料,出现的位置是在最尾端,则以 <BR> Bot 来表示。 <BR> <BR> <BR> o nn% <BR> 若资料出现的位置不在第前端也不在最後端,则以百分比 <BR> 来表示资料出现的情形。 <BR> <BR> <BR> <BR> 介绍完了 mode line ,现在来谈谈 echo area <BR>与 minibuffer。在 frame 的最後一列,也就是 <BR>mode line 的下一列就是 echo area或 minibuffer <BR>出现的地方。二者使用同一区位但所代表的意思却不相同。 <BR>Echoing 的意思就是将键入的字元在萤幕上回应出来。 EMACS <BR>对於只有一个字元的指令并不会把它 Echoing 出来,例如 `` Ctrl-e''。 <BR>对於多个字元的指令,只要在键入指令的时候给予稍许的停顿, <BR>echo area 就会把键入的指令回应出来。等第一次的回应 <BR>产生时,再输入的部份就不需要再给予停顿的时间,其回应会在 <BR>键入的同时立即产生。 echo area 除了回应键入的指令, <BR>也会将指令所产生的讯息显示出来;错误讯息的显示也是利用此区域。 <BR> <BR> minibuffer 所使用的地方与 echo area <BR>相同。它本身也是一个视窗,是用来输入执行指令所需的引数(argument)。 <BR>使用 minibuffer 的同时也会使用 echo area。 <BR> minibuffer 输入引数的地方,是在 echo area <BR>回应字串的 ``:'' 之後。因为 echo area 的回应是以 ``:'' <BR>的出现做为结束。换言之, ``:''冒号之後就是 minibuffer <BR>输入引数的地方。 <BR> 例如,要访问一个档案,键入指令 ``Ctrl-x Ctrl-f'' 时, <BR> echo area 会出现 <BR> Find file: <BR>``Find file'' 就是 echo area 的回应字,而此回应字串以 <BR>``:'' 做为结束。 所以 ``:'' 之後,就是 minibuffer 的地盘了, <BR>也就是 minibuffer 输入引数的地方。 <BR> 使用 minibuffer 时,游标会自动移至 minibuffer <BR>所在处,当游标在 minibuffer 时,就表示可以输入引数了。 <BR>若游标因为某些原因不出现在 minibuffer 的位置,此时可以 <BR>`` Ctrl-x o (other-window)使游标在视窗间移动,直到游标出现在 <BR>minibuffer 所在的视窗为止。 若已在 minibuffer 的状态, <BR>但不想输入任何引数,此时可以 `` Ctrl-g(keyboard-quit)) 离开 <BR> minibuffer。输入 ``Ctrl-g'' 後,游标会移至其它的视窗。 <BR> minibuffer 也是一个视窗,所以可以从别的视窗 <BR>移至此视窗; `` Ctrl-x o'' 的指令就是用来使游标在各个视窗间 <BR>移动的。一般的 minibuffer 都只有一列的高度,但有时 <BR>一列的高度无法将资料显示完毕,此时的 minibuffer 就需要 <BR>调整其大小了。至於如何将 minibuffer 的视窗做调整, <BR>就是下一节所要讨论的重点之一了。 <BR><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -