<b>簡評:</b>都說emacs的愛好者經常吹噓自己的emacs的功能可多了,除了文本編輯,其他的諸如收發郵件、聽音樂甚至是打遊戲都不在話下,這也說明emacs的擴充性是極其強大的,一個emacs往往可以搞定很多軟體需要做的事情。雖然如此,但你的emacs的基本功真的合格了嗎?你真的對每一個快捷鍵都了如指掌了嗎?下面就來測試一下吧,看看你是否能打滿分呢?
掌握emacs的快捷鍵可以說是emacs愛好者的基本功,也是提高編輯速度和品質所必備的,但是初學者可能記不住那麼多的快捷鍵必要時可以翻一下,最常用的快捷鍵數量也就數十個。emacs的快捷鍵都是綁定于ctrl和alt(或稱meta)上的,例如c-x就是ctrl+x,m-x就是alt+x。當然所有的按鍵都可以自定義。當要退出編輯時c-x c-c 代表着,先按c-x 再按c-c才可以退出編輯環境.
c-x c-f 打開檔案,出現提示時輸入/username@host:filepath可編輯ftp檔案
c-x c-v 打開一個檔案,取代目前緩沖區
c-x c-s 儲存檔案
c-x c-w 存為新檔案
c-x i 插入檔案
c-x c-q 切換為隻讀或者讀寫模式
c-x c-c 退出emacs
c-f 前進一個字元
c-b 後退一個字元
m-f 前進一個字
m-b 後退一個字
c-a 移到行首
c-e 移到行尾
m-a 移到句首
m-e 移到句尾
c-p 後退一行
c-n 前進一行
m-x goto-line 跳到指定行
c-v 向下翻頁
m-v 向上翻頁
m-< 緩沖區頭部
m-> 緩沖區尾部
c-m-f 向前比對括号
c-m-b 向後比對括号
c-l 目前行居中
m-n or c-u n 重複操作随後的指令n次
c-u 重複操作随後的指令4次
c-u c-u 重複操作随後的指令8次
c-x esc esc 執行曆史指令記錄,m-p選擇上一條指令,m-n選擇下一條指令
c-d 删除一個字元
m-d 删除一個字
c-k 删除一行
m-k 删除一句
c-w 删除标記區域
c-y 粘貼删除的内容
注意:c-y可以粘貼連續c-k删除的内容;先按c-y,然後按m-y可以選擇粘貼被删除的内容
c-@ 标記開始區域
c-x h 标記所有文字
c-x c-x 交換光标位置和區域标記區開頭
m-w 複制标記區域
c-_ or c-x u 撤消操作
m-x shell 打開shell
m-! 執行shell指令 (shell-command)
m-1 m-! 執行shell指令,指令輸出插入光标位置,不打開新輸出視窗
m-| 針對某一特定區域執行指令(shell-command-on-region), 比如 c-x h m-|uuencode
c-x 0 關閉本視窗
c-x 1 隻留下一個視窗
c-x 2 垂直均分視窗
c-x 3 水準均分視窗
c-x o 切換到别的視窗
c-x s 儲存所有視窗的緩沖
c-x b 選擇目前視窗的緩沖區
c-x ^ 縱向擴大視窗
c-x } 橫向擴大視窗
c-x c-b 打開緩沖區清單
d or k 标記為删除
~ 标記為未修改狀态
% 标記為隻讀
s 儲存緩沖
u 取消标記
x 執行标記的操作
f 在目前視窗打開該緩沖區
o 在其他視窗打開該緩沖區
c-x d 打開目錄模式
s 按日期/檔案名排序顯示
v 閱讀光标所在的檔案
q 退出閱讀的檔案
d 标記為删除
x 執行标記
d 馬上删除目前檔案
c 拷貝目前檔案
r 重命名目前檔案
+ 建立檔案夾
z 壓縮檔案
! 對光标所在的檔案執行shell指令
g 重新整理顯示
i 在目前緩沖區的末尾插入子目錄的内容
[n]m 标記光标所在的檔案,如果指定n,則從光标所在的檔案起後n個檔案被标記
[n]u 取消目前光标标記的檔案,n的含義同上
t 反向标記檔案
%-m 正則标記
q 退出目錄模式
說明:在目錄模式中,如果輸入!,在指令行中包含*或者?,有特殊的含義。*比對目前光标所在的檔案和所有标記的檔案,?分别在每一個标記的檔案上執行該指令。
m-x compile 執行編譯操作
m-x gdb gdb排錯
m-x dbx dbx排錯
m-x xdb xdb排錯
m-x sdb sdb排錯
c-s key 向前搜尋
c-s 查找下一個
enter 停止搜尋
c-r key 反向搜尋
c-s c-w 以光标所在位置的字為關鍵字搜尋
c-s c-s 重複上次搜尋
c-r c-r 重複上次反向搜尋
c-s enter c-w 進入單詞搜尋模式
c-r enter c-w 進入反向單詞搜尋模式
m-x replace-string enter search-string enter 替換
m-% search-string enter replace-string enter 互動替換
c-r 在進入查找/替換模式後,該指令進入疊代編輯模式
c-m-x 退出疊代編輯模式,傳回到查找/替換模式
c-m-s 向前正則搜尋
c-m-r 向後正則搜尋
c-m-% 正則互動替換
c-c c-c 相當于bash下的c-c
c-c c-z 相當于bash下的c-z
c-c c-d 相當于bash下的c-d
m-p 執行前一條指令
c-n 執行下一條指令
c-c c-o 删除最後一條指令産生的輸出
c-c c-r 螢幕滾動到最後一條指令輸出的開頭
c-c c-e 螢幕滾動到最後一套指令輸出的結尾
c-c c-p 檢視前一條指令的輸出
c-c c-n 檢視後一條指令的輸出
m-x print-buffer 先使用pr,然後使用lpr
m-x lpr-buffer 直接使用lpr
m-x print-region
m-x lpr-region
m-x mail 發送郵件, c-c c-s 發送,c-c c-c 發送并退出
m-x rmail 接受郵件
本文轉載自:站長百科 原文有删改