Emacs常用命令


原文鏈接:Emacs常用命令整理

 
Emacs 中文手冊
====================================================

[符號]
--------------------------------------
C- 意思是按住 Ctrol 鍵
M- 意指 Meta 鍵 (鍵盤上若無Meta 鍵,則可以ALT 或 ESC 鍵來取而代之)
DEL 意指退格鍵 (不是 刪除(Delete) key)
RET 意指回車鍵
SPC 意指空格鍵
ESC 意指Escape鍵
TAB 意指Tab鍵

像 "C-M-" (or "M-C") 這樣連在一起的意味着同時按住 Control 和 Meta 鍵不放.




[進入Emacs]
----------------------------------------
emacs 要進入GNU Emacs,只需鍵入它的名字
C-z 掛起Emacs:
C-x C-c 永久離開Emacs




[用方向鍵]
---------------------------------------

上一行 C-p (Prev line)
.
.
.
向左移 C-b .... 。.... 向右移 C-f (Forward character)
(Backward ) .
.
.
下一行 C-n (Next line)



[文件]
----------------------------------------
C-x C-f 讀取文件到Emacs
C-x r 只讀的方式打開一個文件
C-x C-q 清除一個窗口的只讀屬性
C-x C-s 保存文件到磁盤
C-x s 保存所有文件
C-x i 插入其它文件的內容到當前緩沖
C-x C-v 用將要讀取的文件替換當前文件
C-x C-w 將當前緩沖寫入指定的文件
C-x C-q Version control checkin/checkout




[錯誤恢復]
---------------------------------------
C-g 取消當前要執行的命令
M-x recover-file 恢復系統崩潰后丟失的文件
C-x u或C-_ 撤銷更新
M-x revert-buffer 使緩沖回復到初始內容
C-l Redraw garbaged screen




[增量查找]
---------------------------------------
C-s 向前查找
C-r 向后查找
C-M-s 規則表達式查找
C-M-r 反向規則表達式查找
M-p 選擇前一個查找字符串
M-n 選擇下一個查找字符串
RET 退出增量查找
DEL(Backspace) 取消上一個字符的作用
C-g 退出當前查找模式
可重復使用C-s和C-r來改變查找方向


[替換]
---------------------------------------
M-% 交互式地替換一個文本串
M-x replace-regexp 交互式地替換一個規則表達式
SPE 替換當前的並移動到下一處
, 替換當前的但不移動到下一處
L(Backspace) 不替換當前的並移動到下一處
! 替換所有剩下的符合條件的文本
RET 退出替換模式
C-r 進入遞歸的編輯模式
C-M-c 退出遞歸的編輯模式




[光標移動]
---------------------------------------
C-f 向前一個字符
C-b 向后一個字符
M-f 向前一個字
M-b 向后一個字
C-p 向上一行
C-n 向下一行
C-a 到行首
C-e 到行尾
M-a 到句首
M-e 到句尾
M-{ 到段首
M-} 到段尾
C-x [ 到頁首
C-x ] 到頁尾
C-M-f 到表達式首部
C-M-b 到表達式尾部
M-< 到緩沖首部
M-> 到緩沖尾部
C-v 滾動到下一屏
M-v 滾動到上一屏
C-x < 滾動到右邊一屏(內容向左移動)
C-x > 滾動到左邊一屏(內容向右移動)
C-u C-l 滾動當前行到屏幕中央

C-M-n 移到結尾的)、}或]
C-M-p 移到開始的)、}或]
C-M-u 向上移到父結構開始
C-M-d 向下移到父結構開始



[復制、粘貼、剪切、刪除]
-----------------------------
C-d 向前delete字符
DEL(Backspace) 向后delete字符
M-d 向前delete到字首
M-DEL(Backspace) 向后delete到字尾
M-0 C-k 向前delete到行首
C-k 向后delete到行尾
C-x DEL(Backspace) 向前delete到句首
M-k 向后delete到句尾
M-- C-M-k 向前delete到表達式首部
C-M-k 向后delete到表達式尾部
C-w Kill區域
M-w 拷貝區域到Kill Ring
M-z Kill到下一個給定字符出現的位置
C-y 拉回(yank)上次kill的內容
M-y 用更早kill的內容取代拉回的上次kill的內容



[標記Marking]
-----------------------------
C-SPC或C-@ 標記當前位置
C-x C-x 以字符為單位使用移動命令動態標記區域
M-@ 以字為單位使用移動命令動態標記區域
M-h 標記一段
C-x C-p 標記一頁
C-M-@ 標記一個表達式
C-M-h 標記一個函數
C-x h 標記整個緩沖區


[寄存器]
-----------------------------
C-x r s 存儲區域到寄存器
C-x r i 插入矩形內容到緩沖
C-x r SPC 存儲光標位置到寄存器
C-x r j 跳躍到寄存器中存儲的光標位置



[矩形]
-----------------------------
C-x r r 拷貝一個矩形到寄存器
C-x r k Kill矩形
C-x r y 拉回矩形
C-x r o 打開一個矩形, 將文本移動至右邊
C-x r c 清空矩形
C-x r t 為矩形中每一行加上一個字符串前綴
C-x r i r 從r緩沖區內插入一個矩形






[標記Tags]
-----------------------------
M-. 查找標記
C-u M-. 查找標記下一次出現的位置
M-x visit-tags-table 指定一個新的標記文件
M-x tags-search Regexp search on all files in tabs table
M-x tags-query-replace 在所有文件中執行查詢-替換
M-, 繼續進行上一次標記查找或查詢-替換





[窗口與緩沖]
-----------------------------
C-x 1 刪除所有其它窗口

C-x 5 2
C-x 2 上下分割當前窗口

C-x 3 左右分割當前窗口

C-x 5 0
C-x 0 刪除當前窗口

C-M-v 滾動其它窗口
C-x o 切換光標到另一個窗口
C-x 4 b C-x 5 b 選擇另一個窗口中的緩沖

C-x 5 C-o
C-x 4 C-o 顯示另一個窗口中的緩沖

C-x 5 f
C-x 4 f 在另一窗口中查找並打開文件

C-x 5 r
C-x 4 r 在另一窗口中以只讀方式打開文件

C-x 5 d
C-x 4 d 在另一窗口中運行dired命令

C-x 5 .
C-x 4 . 在另一窗口中查找tag

C-x ^ 增加窗口高度
C-x { 減小窗口寬度
C-x } 增加窗口寬度


C-x b 選擇另一個緩沖
C-x C-b 列出所有的緩沖
C-x k Kill一個緩沖


[分欄編輯]

C-x 6 2C-command
C-x 6 s 2C-split
C-x 6 b 2 C-associate-buffer
C-x 6 2 2 C-two-columns



[格式]
-----------------------------
TAB 縮進當前行(與模式相關)
C-M-\ 縮進區域(與模式相關)
C-M-q 縮進表達式(與模式相關)
C-x TAB Indent region rigidly arg. Columns
C-o 在光標后插入一個新的行
C-M-o 靜態地將一行下移
C-x C-o 刪除光標附近的空行(留下一行)
M-^ 與上一行合並成一行
M- 刪除光標附近的所有空格
M-SPC 刪除光標附近的空格(留下一格)
M-q Fill paragraph
C-x f Set fill column
C-x . 設置每一行開始的前綴
M-g 設置字體    
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM