by Yazy,2005-6-1
http://www.gnu.org/software/chinese/manual/TUTORIAL.cn
Emacs 命令通常包含有 CONTROL 鍵(有時候以 CTRL 或 CTL 來標示)或是
META 鍵(有時候以 EDIT 或 ALT 來標示)。爲了避免每一次都要寫出其全名,
我們將會使用下述的縮寫:
C-<chr> 表示按住 CONTROL 鍵的同時鍵入字符 <chr> 。例如 C-f 就是:按
住 CONTROL 鍵再鍵入 f 。
M-<chr> 表示按住 META 鍵再鍵入字符 <chr> 。 如果沒有 META 鍵時,可以
用「按一下 ESC 鍵」來替代 META。我們以 <ESC> 來表示 ESC 鍵。
* SUMMARY
-----------------
C-v 向前移動一個屏幕/窗格 = PageUp
M-v 向後移動一個屏幕/窗格 = PageDn
C-l 清除屏幕/窗格,再重新顯示所有文字,
光標所在位置顯示於屏幕/窗格的中央。
(是 CONTROL-L 而不是 CONTROL-1)
* BASIC CURSOR CONTROL
----------------------------------------
META 用作與「以語言定義出的單位(字、句子、段落)」有關的操作
CONTROL 用作「與您所編輯無關的『基本』單位(字符或行等)」上。
C-f 往前移動一個字符
C-b 往回移動一個字符
M-f 往前移動一個字【中文是移動到下一個標點符號】
M-b 往回移動一個字【中文是移動到上一個標點符號】
C-n 移動到下一行(往下移)
C-p 移動到上一行(往上移)
C-a 移動到行首
C-e 移動到行尾
M-a 移回句首
M-e 移到句尾
M-< (META Less-than),移動到文字的最開始,
M-> (META Greater-than),移動到文字的最後。
P 表示 previous
N 表示 next
B 表示 backward
F 表示 forward
C-u 數字參數 其它命令
M 數字參數 其它命令
大部份的 Emacs 命令接受數字參數;對大部份的命令而言,它的作用是指定重
複次數。
C-g 停止當前命令,或取消操作
* INSERTING AND DELETING
--------------------------------------
<Return> carriage-return
C-u 重複數 字符 重複輸入N個字符
<Delback> 刪除光標 前一個字符
C-d 刪除光標 後一個字符
M-<Delback> 刪除光標 前一個字
M-d 刪除光標 後一個字
C-k 刪除從光標到「行尾」的字符
M-k 刪除從光標到「句尾」的字符
C-@
C-SPC 設置Mark Set(任一個即可)。
C-w 殺掉選中文字(剪切)
C-y 拉回(yanking)(粘貼)
M-y 拉回上次、上上次……的內容
「拉回(yanking)」:即“粘貼”
「殺掉(killing)」:即“剪切”,可以yanking
「刪除(deleting)」:不能yanking
C-x u
C-/
C-_ Undo
C-x C-f 打開文件(visiting file,find file)
C-x C-s 保存文件
注意:在某些系統中,鍵入 C-x C-s 將會把屏幕凍結,您將看不到從 Emacs 來
的任何輸出。這表示操作系統一個稱爲「流程控制」的「功能」將 C-s 命令攔
截住,並且不讓它傳到 Emacs。要取消屏幕的凍結,請鍵入 C-q。然後到 Emacs
使用手冊中看看對於「漸進式搜尋的同時進入(Spontaneous Entry to
Incremental Search)」這個主題,以取得處理這個「功能」的建議。
Emacs 將每個文件的文字在「緩衝區(buffer)」中。
打開一個文件會在 Emacs 內部建立一個緩衝區。
C-x C-b 列出緩衝區
C-x b 編輯某個緩衝區(要求輸入緩衝區名)
C-x s 詢問是否要保存所有修改過的緩衝區。
* EXTENDING THE COMMAND SET
-----------------------------------------
C-x 字符擴充。後面跟著一個字符。
M-x 有名稱的命令擴充。後面跟著一個長的名稱。
鍵入 M-x 時,Emacs 會詢問您命令的名稱。
C-z 是 *暫時* 退出 Emacs 的命令
C-x C-c 退出
其它 C-x 命令。
C-x C-f 找文件。
C-x C-s 儲存文件。
C-x C-b 列出緩衝區。
C-x C-c 退出 Emacs。
C-x 1 除了一個外,刪去其它所有的窗格。
C-x u 取消動作。
M-x replace-string s<Return>changed<Return>altered<Return>
* AUTO SAVE
-----------------------
M-x recover file<Return> 從自動保存文件中恢復
* MODE LINE
---------------------
--:** TUTORIAL.cn (Fundamental)--L670--58%----------------
-- 就是您找的文件。
-NN%-- 有 NN 百分比的文字位在窗格的上面。
如果文件的頂端就位在窗格中,那麼它就會顯示 --Top--
如果文件的底部就位在窗格中,那麼它是顯示 --Bot--
如果在窗格中足以看到全部的內容,那麼狀態行就會顯示 --All--
L 目前所在的行數(Line)。
編輯模式
如 Lisp 模式、 Text 模式,C/C++模式……
主要(major)、次模式(minormode)
次要的模式不是主模式的後選,而是次要的更改
每個次模式可以自身啓用或停止,和所有其它的次模式無關
可以組合任何數量的次模式
M-x fundamental-mode<Return> Fundamental 模式
M-x text mode<Return> Text模式
M-x auto fill mode<Return> Auto Fill 模式(自動換行,即所謂的fill)
Auto Fill 只在空白處斷行。
M-q Auto Fill re-fill
C-x f Auto Fill 改變每行的長度(連界)
C-u 2 0 C-x f 以 20 個字符,進行 fill
C-h m 列出所有模式
* SEARCHING
-------------------
Emacs 搜尋命令與大部分編輯器的搜尋命令不同的地方在於,它是「漸進的
(incremental)」。這表示搜尋發生在您鍵入想要搜尋的文字串後。
「I-search」:「漸進式搜尋」
C-s 往前搜尋
C-r 往回搜尋
C-g 也可以用來結束搜尋。
<Return> 結束搜尋。
* MULTIPLE WINDOWS
------------------------------
C-u 0 C-l 移動光標到當前行
C-u XXX C-l 移動到XXX行
C-x 1 僅保留當前窗格(光標所在的窗格)
C-x 2 水平拆分當前窗格
C-x 3 垂直拆分當前窗格
C-M-v 捲動下方的窗格。(鍵入 ESC C-v 亦可。)
C-x o (o是other的意思),將光標移動到下方的窗格。
C-x 4 C-f 在新窗格中打開文件,並編輯之
C-x 5 C-f 新啓動一個的Emacs,在之中打開文件
* RECURSIVE EDITING LEVELS
------------------------------------------
有時候您會進入所謂的「遞歸編輯階層」。它是由位在狀態行的方括弧所指明,
並且包含住以小括弧來指明的模式名稱。舉例來說,您可能會看到
[(Fundamental)],而不是 (Fundamental)。
<ESC> <ESC> <ESC> 全功能命令,退出遞歸編輯
也可以用來關閉多餘的窗格,並且退出小緩衝區。
* GETTING MORE HELP
-------------------------------------
C-h 查詢需要幫助的字元
C-h ? Emacs 將會告訴您它能夠提供的幫助。
M-x help
C-h c 查看簡要說明
C-h k 查看詳細說明
C-h f 解釋一個函數。您要鍵入此函數的名稱。
C-h f previous-line<Return>
C-h v 「您可以用來定製 Emacs 行爲的變數」的文檔。
C-h a 命令相關查找(Command Apropos)。
鍵入一個關鍵字然後 Emacs 會列出所有「在其名稱中含有此
關鍵字」的全部命令。這些命令全部都可以經由 META-x 來啓
動。對於一些命令而言,命令相關查找也會列出「可以執行相
同命令」的一個或兩個字符的串列。
C-h i 閱讀在線使用手冊(a.k.a. Info)。
這個命令將您帶到了稱爲「*info*」的特殊緩衝區,在那,您
可以閱讀安裝在您的系統裏的軟件包的在線使用手冊。鍵入
m emacs <Return> 以閱讀 Emacs 使用手冊。如果您在此之前
未曾使用過 Info 系統,請鍵入『?』。 Emacs 將會帶您進入
Info 模式功能的導覽指南。一旦完成了本快速指南的研讀,
您應該查閱 Emacs Info 使用手冊,以作爲主要的參考文檔。