雖然說 emacs 並非 SVR4 或是 Solaris 2。0 的一部份,但幾乎所有的 UNIX 系統上都可以看到它的蹤跡,常有人拿它來代替 vi,版本也相當的多。本書著墨者是 GNU 的 emacs,由 Free Software Foundation 出版。若要更詳細的解說,請參考 "Learning GNU Emacs" 一書。
你可以用下列指令啟動 emacs:
emacs [file]
有些系統上的 gnu emacs 是用 gmacs 而不是 emacs。
p7-2
列表說明事項
Emacs 常用兩個按鍵,Control 和 Meta ( 通常是 Escape 鍵 )。本章中以 C- 表示按著 CTRL 鍵不放然後按下後面的鍵。M- 則表示用 Meta 鍵,但按後面的鍵時不需按著 Meta 鍵。
下列表中,第一欄是按鍵,最後一欄是說明,若有中間欄時,則為指令說明。這個指令名稱可以用 M-x 後打入指令名稱使用。若對完整名稱不確定,也可只打入幾個字,然後按空白或是 enter,emacs 就會列出所有可能的指令名稱。
因為 emacs 是個相當複雜的編輯器,有上百個指令,在此只列出了一部份供速查。若要瀏覽所有的指令,可打入 C-h ( 輔助說明 ) 或是 M-x ( 可看指令名稱 )。
------------------------------------------------------------------------
基本指令
若是一開始使用 emacs,下列為一些絕對必要的指令 :
C-h 進入線上輔助說明系統
C-x C-s 存檔
C-x C-c 跳出 emacs
C-x u 恢復前一次的動作 ( 可重複使用 )
C-g 跳出目前的指令
C-p 上下前後一行或一個字
C-n
C-f
C-b
C-v 前後一頁
M-v
C-s 尋找字串
C-d 刪除一個字元
emacs 指令分類
p7-3
以群組的方式列出指令
注意 : 下面列出的是按鍵,名稱和說明,C- 是 Control 鍵, M- 是 Meta 鍵。
------------------------------------------------------------------------
檔案指令
C-x C-f find-file 找出檔案並讀入
C-x C-v find-alternate-file 找出另一個檔案並取代用 C-x C-f 讀入者
C-x i insert-file 插入指令
C-x C-s save-buffer 存檔 ( 可能會造成終端機當機 ; 用 C-q 重開 )
C-x C-w write-file 將暫存區的資料寫入檔案
C-x C-c save-buffers-kill-emacs 跳出 emacs
C-z suspend-emacs 暫停 emacs,用 fg 或是 exit 來重開
------------------------------------------------------------------------
游標指令
C-f forward-char 向右 ( forward ) 移動一格
C-b backward-char 向左 ( backward ) 移動一格
C-p previous-line 向上 ( previous ) 移動一行
C-n next-line 向下 ( next ) 移動一行
M-f forward-word 向右 ( forward ) 移動一個單字
M-b backward-word 向左 ( backward ) 移動一個單字
C-a beginning-of-line 到行頭
C-e end-of-line 到行尾 ( end )
M-a backward-sentence 向前移動一句
M-e forward-sentence 向後移動一句
M-[ backward-paragraph 向上移動一段
M-] forward-paragraph 向下移動一段
C-v scroll-up 向上一個畫面
M-v scroll-down 向下一個畫面
C-x[ backward-page 向上一頁
C-x] forward-page 向下一頁
M-> end-of-buffer 到檔尾
M-< beginning-of-buffer 到檔頭
(none) goto-line 到第 n 行
(none) goto-char 到第 n 個字元
C-l recenter 將目前行放到畫面中央
M-n digit-argument 將下一個指令重複 n 次
C-u n universal-argument 將下一個指令重複 n 次
p7-4
------------------------------------------------------------------------
刪除指令
DEL backward-delete-char 刪除前一個字元
C-d delete-char 刪除目前字元
M-d kill-word 刪除目前單字
C-k kill-line 刪除目前位置到行尾
M-k kill-sentence 刪除目前句
C-x DEL backward-kill-sentence 刪除前一句
C-y yank 恢復刪除
C-w kill-region 將標記的段落刪除 ( 見下一節 )
(none) backward-kill-paragraph 刪除前一段
(none) kill-paragraph 從目前位置刪除至段尾
------------------------------------------------------------------------
段落指令
C-@ set-mark-command 標記區塊起點終點
C-SPACE (same as above) 同上
C-x C-p mark-page 標記一頁
C-x C-x exchange-point-and-mark 將目前游標位置和標記位置對調
C-x h mark-whole-buffer 標記暫存區
M-q fill-paragraph 重新將段落格式化
M-g fill-region 重新將區塊內的每個段落分別格式化
M-h mark-paragraph 標記段落
------------------------------------------------------------------------
停止和恢復指令
C-g keyboard-quit 停止目前指令
C-x u advertised-undo 恢復前一個指令 ( 可重複進行 )
(none) revert-buffer 將暫存區恢復到前一次存檔時的狀態
------------------------------------------------------------------------
調換指令
C-t transpose-chars 對調兩字元
M-t transpose-words 對調兩單字
C-x C-t transpose-lines 對調兩行
(none) transpose-sentences 對調兩句
(none) transpose-paragraphs 對調兩段
p7-5
------------------------------------------------------------------------
大小寫指令
M-c capitalize-word 將字的第一個字母改為大寫
M-u upcase-word 將單字改為大寫
M-l downcase-word 將單字改為小寫
M--M-c negative-argument;capitalize-word 將前一個單字第一個字母改為大寫
M--M-u negative-argument;upcase-word 將前一個單字改為大寫
M--M-l negative-argument;downcase-word 將前一個單字改為小寫
(none) capitalize-region 將區塊中的每個單字的第一個字母改為大寫
C-x C-u upcase-region 將區塊中的每個單字改為大寫
C-x C-l downcase-region 將區塊中的每個單字改為小寫
------------------------------------------------------------------------
漸進搜尋指令
C-s isearch-forward 向後搜尋
C-r isearch-backward 向前搜尋
Meta (none) 跳出搜尋
C-g keyboard-quit 停止搜尋 ; 回到出發點
DEL (none) 將搜尋字串中不正確的字元刪除
------------------------------------------------------------------------
縮寫指令
(none) abbrev-mode 進出縮寫模式
C-x - inverse-add-global-abbrev 先打入全域縮寫然後打入定義
C-x C-h inverse-add-local-abbrev 先打入區域縮寫然後打入定義
(none) unexpand-abbrev 取消前一次的縮寫展開
(none) write-abbrev-file 寫入縮寫檔
(none) edit-abbrev 編輯縮寫
(none) list-abbrev 列出縮寫
(none) kill-abbrev 刪除本次 emacs 中的縮寫
------------------------------------------------------------------------
暫存區指令
C-x b switch-to-buffer 跳到指定的暫存區去
C-x C-b list-buffer 列出暫存區
C-x k kill-buffer 刪除指定的暫存區
(none) kill-some-buffers 對每個暫存區都詢問是否刪除
(none) rename-buffer 將暫存區重新命名
C-x s save-some-buffers 對每個暫存區都詢問是否儲存
------------------------------------------------------------------------
p7-6
視窗指令
C-x 2 split-window-horizontally 水平分割視窗
C-x 5 split-window-vertically 垂直分割視窗
C-x > scroll-right 將視窗向右捲動
C-x < scroll-left 將視窗向左捲動
C-x o other-window 切換至另一視窗
C-x 0 delete-window 關閉目前視窗
C-x 1 delete-other-window 關閉其他視窗,僅留目前視窗
(none) delete-windows-on 將指定暫存區的所有視窗關閉
C-x ^ enlarge-window 將視窗上下拉長
(none) shrink-window 將視窗上下縮小
C-x } enlarge-window-horizontally 將視窗左右變寬
C-x { shrink-window-horizontally 將視窗左右變窄
M-C-v scroll-other-window 捲動另一視窗
C-x 4 f find-file-other-window 在另一視窗中尋找檔案
C-x 4 b switch-to-buffer-other-window 在另一視窗中切換到另一個暫存區
(none) compare-windows 比較兩個暫存區 ; 列出第一個找到的不同之處
------------------------------------------------------------------------
特殊 shell 字元
C-c C-c interrupt-shell-subjob 結束目前的 job
C-c C-d shell-send-eof 檔尾字元
C-c C-u kill-shell-input 刪除目前行
C-c C-w backward-kill-word 刪除前一個單字
C-c C-z stop-shell-subjob 暫停目前的 job
------------------------------------------------------------------------
縮排指令
C-x . set-fill-prefix 將行首到目前游標所在列設定為縮排字串,並將每段的第一行首插入此字串。若在第一列執行此指令則取消此功能。
(none) indented-text-mode 主要模式 : 每按一次 tab 就指定接下來的縮排距離。
(none) text-mode 離開縮排模式,回到 text 模式。
M-C-\ indent-region 將整個區塊的每一行縮排設定和第一行一樣
M-m back-to-indentation 將游標移到該行第一個字元
M-C-o split-line 將游標所在位置分成兩行 ; 縮排至游標所在列。
(none) fill-individual-paragraphs 將縮排的段落重新格式化,保留縮排。
p7-7
------------------------------------------------------------------------
對中指令
M-s center-line 將游標所在之行放至螢幕中央
(none) center-paragraph 將游標所在之段落放至螢幕中央
(none) center-region 將目前標定之區塊放至螢幕中央
------------------------------------------------------------------------
巨集指令
C-x( start-kbd-macro 開始定義巨集
C-x) end-kbd-macro 結束巨集定義
C-x e call-last-kbd-macro 執行上一個定義的巨集
M-n C-x e digit-argument-and-call-last-kbd-macro 將上一個定義的巨集執行 n 次
C-u C-x ( start-kbd-macro 執行上一個定義的巨集,然後加上另一些按鍵
(none) name-last-kbd-macro 將上一個定義的巨集存檔之前予以命名
(none) insert-last-keyboard-macro 將命名過的巨集插入檔案
(none) load-file 將儲存的巨集檔載入
(none) macroname 執行儲存過的巨集
C-x q kbd-macro-query 將巨集定義中插入查詢
C-u C-x q (none) 將巨集定義中插入遞迴編輯
M-C-c exit-recuresive-edit 跳出遞迴編輯
------------------------------------------------------------------------
基本縮排指令
M-C-\ indent-region 將整個區塊的每一行縮排設定和第一行一樣
M-m back-to-indentation 將游標移到該行第一個字元
M-^ delete-indentation 將此行併入上一行
------------------------------------------------------------------------
查詢功能指令
C-h a command-apropos 以功能查詢相關指令
(none) apropos 以功能查尋相關函式與變數
C-h c describe-key-briefly 以按鍵查詢指令
C-h b describe-bindings 查詢此暫存區的相關按鍵
C-h k describe-key 以按鍵查詢指令及其功能
C-h l view-lossage 查詢前 100 個輸入過的字元
C-h w where-is 查詢此指令的按鍵
C-h f describe-function 查詢函式功能
C-h v describe-variable 查詢變數功能
C-h m describe-mode 查詢目前暫存區所處的模式
C-h s describe-syntax 查詢目前暫存區的語法表
------------------------------------------------------------------------
p7-8
線上輔助說明指令
C-h t help-with-tutorial 執行 emacs 的教學程式
C-h i info 啟動說明文件
C-h n view-emacs-news 顯示 emacs 的功能更新說明
C-h C-c describe-copying 顯示 emacs 的 General Public License
C-h C-d describe-distribution 顯示如何由 FSF 取得 emacs
C-h C-w describe-no-warranty 顯示 emacs 的保固文件
以按鍵分類列出 emacs 指令
---------------------------------------------------------------------------
Control鍵相關指令
C-@ set-mark-command 標記區塊起點終點
C-SPACE (same as above) 同上
C-] (none) 離開遞迴編輯或離開替換查詢
C-a beginning-of-line 到行頭
C-b backward-char 向左 ( backward ) 移動一格
C-c C-c interrupt-shell-subjob 結束目前的 job
C-c C-d shell-send-eof 檔尾字元
C-c C-u kill-shell-input 刪除目前行
C-c C-w backward-kill-word 刪除前一個單字
C-c C-z stop-shell-subjob 暫停目前的 job
C-d delete-char 刪除一個字元
C-e end-of-line 到行尾 ( end )
C-f forward-char 向右 ( forward ) 移動一格
C-g 跳出目前的指令
C-h 進入線上輔助說明系統
C-h a command-apropos 以功能查詢相關指令
C-h b describe-bindings 查詢此暫存區的相關按鍵
C-h C-c describe-copying 顯示 emacs 的 General Public License
C-h C-d describe-destribution 顯示如何由 FSF 取得 emacs
C-h C-w describe-no-warranty 顯示 emacs 的保固文件
C-h c describe-key-briefly 以按鍵查詢指令
C-h f describe-function 查詢函式功能
C-h i info 啟動說明文件
C-h k describe-key 以按鍵查詢指令及其功能
C-h l view-lossage 查詢前 100 個輸入過的字元
C-h m describe-mode 查詢目前暫存區所處的模式
C-h n view-emacs-news 顯示 emacs 的功能更新說明
C-h s describe-syntax 查詢目前暫存區的語法表
C-h t help-with-tutorial 執行 emacs 的教學程式
C-h v describe-variable 查詢變數功能
C-h w where-is 查詢此指令的按鍵
C-k kill-line 刪除目前位置到行尾
C-l recenter 將目前行放到畫面中央
C-n next-line 向下 ( next ) 移動一行
C-p previous-line 向上 ( previous ) 移動一行
C-r Meta (none) 啟動非漸進式搜尋:向前
C-r (none) 重複非漸進式搜尋:向前
C-r (none) 進入遞迴編輯模式(在進行替換功能時)
C-r isearch-backward 向前搜尋
C-s Meta (none) 啟動非漸進式搜尋:向後
C-s (none) 重複非漸進式搜尋:向後
C-r isearch-forward 向後搜尋
C-t transpost-chars 對調兩字元
C-u n universal-argument 將下一個指令重複 n 次
C-u C-x ( start-kbd-macro 執行上一個定義的巨集,然後加上另一些按鍵
C-u C-x q (none) 將巨集定義中插入遞迴編輯
C-v scroll-up 前後一頁
C-w kill-region 將標記的段落刪除 ( 見下一節 )
C-x( start-kbd-macro 開始定義巨集
C-x) end-kbd-macro 結束巨集定義
C-x[ backward-page 向上一頁
C-x] forward-page 向下一頁
C-x > scroll-right 將視窗向右捲動
C-x < scroll-left 將視窗向左捲動
C-x - inverse-add-global-abbrev 先打入全域縮寫然後打入定義
C-x .set-fill-prefix 將行首到目前游標所在列設定為縮排字串,並將每段的第一行首插入此字串。若在第一列執行此指令則取消此功能。
C-x 0 delete-window 關閉目前視窗
C-x 1 delete-other-window 關閉其他視窗,僅留目前視窗
C-x 2 split-window-horizontally 水平分割視窗
C-x 4 f find-file-other-window 在另一視窗中尋找檔案
C-x 4 b switch-to-buffer-other-window 在另一視窗中切換到另一個暫存區
C-x 5 split-window-vertically 垂直分割視窗
C-x b switch-to-buffer 跳到指定的暫存區去
C-x C-b list-buffer 列出暫存區
C-x C-c 跳出 emacs
C-x C-f find-file 找出檔案並讀入
C-x C-h inverse-add-local-abbrev 先打入區域縮寫然後打入定義
C-x C-l downcase-region 將區塊中的每個單字改為小寫
C-x C-p mark-page 標記一頁
C-x C-q (none) 切換暫存區的唯讀狀態
C-x C-s save-buffer 存檔 ( 可能會造成終端機當機 ; 用 C-q 重開 )
C-x C-t transpost-lines 對調兩行
C-x C-u upcase-region 將區塊中的每個單字改為大寫
C-x C-v find-alternate-file 找出另一個檔案並取代用 C-x C-f 讀入者
C-x C-w write-file 將暫存區的資料寫入檔案
C-x C-x exchange-point-and-mark 將目前游標位置和標記位置對調
C-x DEL backward-kill-sentence 刪除前一句
C-x e call-last-kbd-macro 執行上一個定義的巨集
C-x h mark-whole-buffer 標記暫存區
C-x i insert-file 插入指令
C-x k kill-buffer 刪除指定的暫存區
C-x o other-window 切換至另一視窗
C-x q kbd-macro-query 將巨集定義中插入查詢
C-x s save-some-buffers 對每個暫存區都詢問是否儲存
C-x u 恢復前一次的動作 ( 可重複使用 )
C-y yank 恢復刪除
C-z suspend-emacs 暫停 emacs,用 fg 或是 exit 來重開
--------------------------------------------------------------------
Meta鍵相關指令
Meta (none) 跳出搜尋
M--M-c negative-argument;capitalize-word 將前一個單字第一個字母改為大寫
M--M-l negative-argument;downcase-word 將前一個單字改為小寫
M--M-u negative-argument;upcase-word 將前一個單字改為大寫
M-$ spell-word 對游標後的字作拼字檢查
M-> end-of-buffer 到檔尾
M-< beginning-of-buffer 到檔頭
M-[ backward-paragraph 向上移動一段
M-] forward-paragraph 向下移動一段
M-^ delete-indentation 將此行併入上一行
M-n digit-argument 將下一個指令重複 n 次
M-n C-x e digit-argument-and-call-last-kbd-macro 將上一個定義的巨集執行 n 次
M-a backward-sentence 向前移動一句
M-b backward-word 向左 ( backward ) 移動一個單字
M-C-\ indent-region 將整個區塊的每一行縮排設定和第一行一樣
M-C-c exit-recuresive-edit 跳出遞迴編輯
M-C-o split-line 將游標所在位置分成兩行 ; 縮排至游標所在列。
M-C-v scroll-other-window 捲動另一視窗
M-c capitalize-word 將字的第一個字母改為大寫
M-d kill-word 刪除目前單字
M-DEL backward-kill-word 刪除前一個單字
M-e forward-sentence 向後移動一句
M-f forward-word 向右 ( forward ) 移動一個單字
M-g fill-region 重新將區塊內的每個段落分別格式化
M-h mark-paragraph 標記段落
M-k kill-sentence 刪除目前句
M-l downcase-word 將單字改為小寫
M-m back-to-indentation 將游標移到該行第一個字元
M-q fill-paragraph 重新將段落格式化
M-s center-line 將游標所在之行放至螢幕中央
M-t transpost-words 對調兩單字
M-u upcase-word 將單字改為大寫
M-v scroll-down 向下一個畫面
M-x (none) 取得指令按鍵的文字說明
以名稱分類列出 emacs 指令
macroname (none) 執行儲存過的巨集
abbrev-mode (none) 進出縮寫模式
advertised-undo C-x u 恢復前一個指令 ( 可重複進行 )
command-apropos C-h a 以功能查詢相關指令
back-to-indentation M-m 將游標移到該行第一個字元
backward-char C-b 向左 ( backward ) 移動一格
backward-delete-char DEL 刪除前一個字元
backward-kill-paragraph (none) 刪除前一段
backward-kill-sentence C-x DEL 刪除前一句
backward-kill-word C-c C-w 刪除前一個單字
backward-kill-word M-DEL 刪除前一個單字
beginning-of-buffer M-< 到檔頭
beginning-of-line C-a 到行頭
call-last-kbd-macro C-x e 執行上一個定義的巨集
capitalize-region (none) 將區塊中的每個單字的第一個字母改為大寫
capitalize-word M-c 將字的第一個字母改為大寫
center-line M-s 將游標所在之行放至螢幕中央
center-paragraph (none) 將游標所在之段落放至螢幕中央
center-region (none) 將目前標定之區塊放至螢幕中央
command-apropos C-h a 以功能查詢相關指令
compare-windows (none) 比較兩個暫存區 ; 列出第一個找到的不同之處
delete-char C-d 刪除目前字元
delete-indentation M-^ 將此行併入上一行
delete-other-window C-x 1 關閉其他視窗,僅留目前視窗
delete-window C-x 0 關閉目前視窗
delete-windows-on (none) 將指定暫存區的所有視窗關閉
describe-bindings C-h b 查詢此暫存區的相關按鍵
describe-copying C-h C-c 顯示 emacs 的 General Public License
describe-distribution C-h C-d 顯示如何由 FSF 取得 emacs
describe-function C-h f 查詢函式功能
describe-key C-h k 以按鍵查詢指令及其功能
describe-key-briefly C-h c 以按鍵查詢指令
describe-mode C-h m 查詢目前暫存區所處的模式
describe-no-warranty C-h C-w 顯示 emacs 的保固文件
describe-syntax C-h s 查詢目前暫存區的語法表
describe-variable C-h v 查詢變數功能
digit-argument M-n 將下一個指令重複 n 次
call-last-kbd-macro C-x e 執行上一個定義的巨集
digit-argument M-n 將下一個指令重複 n 次
downcase-word M-l 將單字改為小寫
downcase-region C-x C-l 將區塊中的每個單字改為小寫
edit-abbrev (none) 編輯縮寫
end-kbd-macro C-x) 結束巨集定義
end-of-buffer M-> 到檔尾
end-of-line C-e 到行尾 ( end )
enlarge-window C-x ^ 將視窗上下拉長
exchange-point-and-mark C-x C-x 將目前游標位置和標記位置對調
exit-recuresive-edit M-C-c 跳出遞迴編輯
fill-paragraph M-q 重新將段落格式化
fill-region M-g 重新將區塊內的每個段落分別格式化
find-alternate-file C-x C-v 找出另一個檔案並取代用 C-x C-f 讀入者
find-file C-x C-f 找出檔案並讀入
find-file-other-window C-x 4 f 在另一視窗中尋找檔案
forward-char C-f 向右 ( forward ) 移動一格
forward-sentence M-e 向後移動一句
forward-page C-x] 向下一頁
forward-paragraph M-] 向下移動一段
forward-word M-f 向右 ( forward ) 移動一個單字
goto-char (none) 到第 n 個字元
goto-line (none) 到第 n 行
help-command C-h 進入線上輔助說明系統
help-with-tutorial C-h t 執行 emacs 的教學程式
indent-region M-C-\ 將整個區塊的每一行縮排設定和第一行一樣
indented-text-mode (none) 主要模式 : 每按一次 tab 就指定接下來的縮排距離。
info C-h i 啟動說明文件
insert-file C-x i 插入指令
insert-last-keyboard-macro (none) 將命名過的巨集插入檔案
interrupt-shell-subjob C-c C-c 結束目前的 job
inverse-add-global-abbrev C-x - 先打入全域縮寫然後打入定義
inverse-add-local-abbrev C-x C-h 先打入區域縮寫然後打入定義
isearch-backward C-r 向前搜尋
isearch-backward-regexp C-r 同上,但是搜尋常規表示式
isearch-forward C-s 向後搜尋
isearch-forward-regexp C-s 同上,但是搜尋常規表示式
kbd-macro-query C-x q 將巨集定義中插入查詢
keyboard-quit C-g 停止目前指令
kill-buffer C-x k 刪除指定的暫存區
kill-line C-k 刪除目前位置到行尾
kill-region C-w 將標記的段落刪除 ( 見下一節 )
kill-sentence M-k 刪除目前句
kill-some-buffers (none) 對每個暫存區都詢問是否刪除
kill-shell-input C-c C-u 刪除目前行
kill-word M-d 刪除目前單字
list-abbrev (none) 列出縮寫
list-buffer C-x C-b 列出暫存區
load-file (none) 將儲存的巨集檔載入
mark-page C-x C-p 標記一頁
mark-whole-buffer C-x h 標記暫存區
mark-paragraph M-h 標記段落
name-last-kbd-macro (none) 將上一個定義的巨集存檔之前予以命名
negative-argument;capitalize-word M--M-c 將前一個單字第一個字母改為大寫
negative-argument;upcase-word M--M-u 將前一個單字改為大寫
negative-argument;downcase-word M--M-l 將前一個單字改為小寫
next-line C-n 向下 ( next ) 移動一行
other-window C-x o 切換至另一視窗
previous-line C-p 向上 ( previous ) 移動一行
query-replace-regexp (none) 查詢/替換一個正規表示式
recenter C-l 將目前行放到畫面中央
rename-buffer (none) 將暫存區重新命名
replace-regexp (none) 無條件地替換正規表示式
re-search-backward (none) 簡單的正規表示式搜尋:向前
re-search-forward (none) 簡單的正規表示式搜尋:向後
revert-buffer (none) 將暫存區恢復到前一次存檔時的狀態
save-buffer C-x C-s 存檔 ( 可能會造成終端機當機 ; 用 C-q 重開 )
save-buffers-kill-emacs C-x C-c 跳出 emacs
save-some-buffers C-x s 對每個暫存區都詢問是否儲存
scroll-down M-v 向下一個畫面
scroll-left C-x < 將視窗向左捲動
scroll-other-window M-C-v 捲動另一視窗
scroll-right C-x > 將視窗向右捲動
scroll-up C-v 向上一個畫面
set-mark-command C-@ 標記區塊起點終點
(same as above) C-SPACE 同上
set-fill-prefix C-x. 將行首到目前游標所在列設定為縮排字串,並將每段的第一行首插入此字串。若在第一列執行此指令則取消此功能。
shell-send-eof C-c C-d 檔尾字元
shrink-window (none) 將視窗上下縮小
shrink-window-horizontally C-x { 將視窗左右變窄
spell-buffer (none) 對目前的暫存區作拼字檢查
spell-region (none) 對目前的區域作拼字檢查
spell-string (none) 對目前的字串作拼字檢查
spell-word M-$ 對游標後的字作拼字檢查
split-line M-C-o 將游標所在位置分成兩行 ; 縮排至游標所在列。
split-window-horizontally C-x 2 水平分割視窗
split-window-vertically C-x 5 垂直分割視窗
start-kbd-macro C-x ( 開始定義巨集
start-kbd-macro C-u C-x ( 執行上一個定義的巨集,然後加上另一些按鍵
stop-shell-subjob C-c C-z 暫停目前的 job
suspend-emacs C-z 暫停 emacs,用 fg 或是 exit 來重開
switch-to-buffer C-x b 跳到指定的暫存區去
switch-to-buffer-other-window C-x 4 b 在另一視窗中切換到另一個暫存區
text-mode (none) 離開縮排模式,回到 text 模式。
transpose-chars C-t 對調兩字元
transpose-lines C-x C-t 對調兩行
transpose-paragraphs (none) 對調兩段
transpose-sentences (none) 對調兩句
transpose-words M-t 對調兩單字
unexpand-abbrev (none) 取消前一次的縮寫展開
universal-argument C-u n 將下一個指令重複 n 次
upcase-region C-x C-u 將區塊中的每個單字改為大寫
upcase-word M-u 將單字改為大寫
view-emacs-news C-h n 顯示 emacs 的功能更新說明
view-lossage C-h l 查詢前 100 個輸入過的字元
where-is C-h w 查詢此指令的按鍵
write-abbrev-file (none) 寫入縮寫檔
write-file C-x C-w 將暫存區的資料寫入檔案
yank C-y 恢復刪除
沒有留言:
張貼留言