1. 程式人生 > >Emacs常用命令快速參考

Emacs常用命令快速參考

外部命令 set 環境 文檔 table 空白 earch 終端 put

Emacs常用命令快速參考

Emacs常用命令的匯總,來自Emacs參考卡片

註意:以下命令中標註的按鍵,大寫的C代表Control,在鍵盤上通常是Ctrl鍵,而M代表Meta,在鍵盤上通常是Alt鍵,S則代表Shift,在鍵盤上通常是Shift鍵,也就是

C

Control

M

Alt

S

Shift

這三個鍵在Emacs裏通常作為組合鍵的前導按鍵使用,也就是說,執行一條命令前可能需要按住這個鍵不放,比如搜索命令是C-s,要執行這個命令首先要按住Ctrl鍵不放,再按下字母s鍵;而打開文件命令是C-x C-f,要打開文件就必須按下Ctrl鍵不放,依次按下x和f(當然也可以按下Ctrl不放再按下x,放開,再按下Ctrl不放再按f);有的命令組合鍵和非組合鍵都要用到,比如保存所有文件是C-x s,需要按下Ctrl不放的時候按下x,然後放開所有按鍵,再按下s;也有兩個組合按鍵一起使用的,比如使用正則表達式進行增量搜索的快捷鍵是C-S-%,這就要求你同時按下Ctrl和Alt不放開,再按下s。

啟動Emacs

在有圖形界面的環境下只需要在終端輸入Emacs按回車或者找到啟動emacs程序的圖標打開就可以了。

在沒有圖形界面的環境或者偽終端下需要使用字符界面的Emacs可以輸入emacs -nw,也就是增加一個-nw參數。

掛起Emacs

C-z

掛起在圖形界面下通常是把Emacs窗口最小化的意思,而在字符界面下則是把Emacs掛起到後臺後回到終端,比如在GNU/Linux字符終端下按C-z會回到shell,使用jobs命令可以列出你掛起的所有任務,使用fg可以返回以最後一次掛起的任務,fg %num可以選擇回到任意一個被掛起的任務。

退出Emacs

C-x C-z

如果沒有未保存的文件,那麽這條命令會直接退出Emacs程序,否則它會提示是否保存文件。

文件

打開文件

C-x C-f

保存文件

C-x C-s

保存所有文件

C-x s

插入其他文件到當前緩沖區

C-x i

在當前緩沖區打開另一個文件

C-x C-v

另存為文件

C-x C-w

獲取幫助

打開快速指南

C-h t

獲取按鍵幫助

C-h k

獲取函數幫助

C-h f

打開Emacs幫助手冊

C-h r

錯誤恢復

放棄當前命令或終止正在執行的操作

C-g

恢復因系統崩潰而丟失的文件

M-x recover-file

撤銷上一次操作

C-x u或C-_

還原緩沖區的內容

M-x revert-buffer

刷新屏幕

C-l

增量搜索

正向搜索

C-s

反向搜索

C-r

使用正則表達式正向搜索

C-M-s

使用正則表達式反向搜索

C-M-r

選擇上一個搜索結果

M-p

選擇下一個搜索結果

M-n

退出搜索並停留在當前搜索到的位置

RET

中止當前搜索

C-g

移動

移動的單位

向後

向前

字符

C-b

C-f

單詞

M-b

M-f

C-p

C-n

當前行開頭或結尾

C-a

C-e

M-a

M-e

M-{

M-}

C-x [

C-x ]

表達式

C-M-b

C-M-f

函數

C-M-a

C-M-e

緩沖區開頭或結尾

M-<

M->

垂直滾動屏幕

C-v

M-v

水平滾動屏幕

C-x <

C-x >

滾動當前行到屏幕中央

C-u

C-l

指定行移動

M-g M-g

刪除

刪除的單位

向後

向前

字符

DEL

C-d

單詞

M-DEL

M-d

M-0 C-k

C-k

C-x DEL

M-k

表達式

M-- C-M-k

C-M-k

刪除當前行

C-S-DEL

刪除區域

C-w

復制區域到刪除環

M-w

刪除到字符

M-z char

從刪除環中拉回內容

C-y

從刪除環中拉回更早期的內容

M-y

註:這裏的DEL在你的鍵盤上可能是Backspace

標記

設置標記

C-@

在當前光標位置和標記處跳轉

C-x C-x

設置單詞標記

M-@

標記段

M-h

標記頁

C-x C-p

標記表達式

C-M-@

標記函數

C-M-h

標記整個緩沖區

C-x h

查詢替換

交互替換

M-%

使用正則表達式

M-x query-replace-regexp

在查詢替換模式下:

替換當前項並跳轉到下一項

SPC

替換當前項不跳轉

,

不替換當前項並跳轉到下一項

DEL

替換全部剩下的查詢結果

!

回到上一個匹配結果

^

退出查詢替換

RET

進入遞歸編輯(C-M-c退出)

C-r

多窗格

首先解釋一下,Emacs裏一個框(Frame)是值窗口系統中的一個窗口,一個窗格(Window)則是指顯示在一個Frame

命令描述

窗格

刪除所有其他窗格

C-x 1

垂直分割

C-x 2

C-x 5 2

刪除當前窗格

C-x 0

C-x 5 0

水平分割

C-x 3

滾動其他窗格

C-M-v

切換到另一個窗格

C-x o

C-x 5 o

在其他窗格切換緩沖區

C-x 4 b

C-x 5 b

在其他窗格顯示緩沖區

C-x 4 C-o

C-x 5 C-o

在其他窗格打開文件

C-x 4 f

C-x 5 f

在其他窗格以只讀方式打開文件

C-x 4 r

C-x 5 r

在其他窗格打開目錄

C-x 4 d

C-x 5 d

在其他窗格查找標簽

C-x 4 .

C-x 5 .

窗格高度增加

C-x ^

窗格寬度減少

C-x {

窗格寬度增加

C-x }

格式化

縮進當前行

TAB

縮進區域

C-M-/

縮進表達式

C-M-q

增加縮進

C-x TAB

在當前位置後增加新行

C-o

當前位置到行尾的內容下移

C-M-o

刪除當前位置附近的空行

C-x C-o

將當前行連接到上一行

M-^

刪除光標附近的空白

M-/

大小寫轉換

單詞轉換為大寫

M-u

單詞轉換為小寫

M-l

單詞轉換為首字母大寫

M-c

區域轉換為大寫

C-x C-u

區域轉換為小寫

C-x C-l

微型緩沖區

盡可能多地補全

TAB

補全至多一個單詞

SPC

補全並執行

RET

顯示可能的補全項

?

切換到上一個輸入

M-p

切換到下一個輸入

M-p

用正則表達式往後搜索歷史記錄

M-r

用正則表達式往前搜索歷史記錄

M-s

終止命令

C-g

緩沖區

選擇另一個緩沖區

C-x b

列出所有緩沖區

C-x C-b

關閉一個緩沖區

C-x k

緩沖區

交換字符

C-t

交換單詞

M-t

交換行

C-x C-t

交換表達式

C-M-t

交換

交換字符

C-t

交換單詞

M-t

交換行

C-x C-t

交換表達式

C-M-t

拼寫檢查

見車當前單詞拼寫

M-$

檢查區域內所有單詞

M-x ispell-region

檢查整個緩沖區

M-x ispell-buffer