1.編輯文件前端
C-x C-f 打開新文件 C-x C-v 來換一個 C-x i 在文件中最佳文件,如把兩個文件合併一塊兒 C-x C-s 保存 C-x c-c 退出 C-x C-w 另存 C-/ 撤銷 C-x u redo C-g 撤銷命令 C-h k (command)command的幫助 C-o 插入空行 C-x C-o 刪除空行 C-x z 前面輸的命令 再按z則繼續以前的命令 C-M-v 下滾動另外一個窗口 C-M-S-v向上滾動另外一個窗口 C-x h 全選
2.多窗口正則表達式
C-x 2 垂直拆分窗口 C-x 3 水平拆分窗口 C-x o 多個窗口中切換 C-M-v 滾動下一個窗口 C-x 4 b 操做另外一個窗口 C-x 0 關閉當前窗口 C-x 1 關閉其它全部窗口 C-x 4 0 連窗口打開的緩衝一併關掉
3.幫助shell
C-h i M-x info 8.1 h 對於info的幫助 8.2 d 回到根部 8.3 ? 相關命令 8.4 q 離開info 8.5 m 尋找相關幫助 8.5.2 n 下一個節點 p 上一個節點 u 上一層節點 l last節點 b 文件最前端 SPC 捲動屏幕
4,插入代碼函數
C-p 向上一行 C-n 向下一行 C-f 向前一個光標 C-b 向後一個光標 M-f 向前一個單詞 M-b 向後一個單詞 C-a 行首 C-b 行尾 M-a 句首 M-b 句尾 C-v 向下一頁 M-v 向上一頁 C-M-v 另外一個窗口向下一頁 C-M-V 另外一個窗口向上一頁 M-< 文件頭 M-> 文件尾 C-l 光標位置置於屏幕中間 C-u n 或 M-n 重複執行n次後繼命令
5,複製黏貼spa
M-w 複製 C-w 剪切/刪除 C-y 粘貼
6,刪除code
C-d 刪除光標上的字符 DEL 刪除光標前的字符 M-d 刪除光標後的單詞 M-DEL 刪除光標前的單詞 C-k 從光標位置刪除到行尾 C-S-Backspace 刪除當前行 C-y 恢復刪除最近的一個 M-y 循環恢復刪除上一個
7,簡單查找替換regexp
C-s 向前遞增查找 C-r 反向遞增查找 C-s C-w 向前遞增查找,把光標所在的單詞做爲查找對象 C-r C-w 反向遞增查找,把光標所在的單詞做爲查找對象 replace-string 查找替換光標後全部的內容 M-% 查詢替換操做
對於M-%,須要注意的是其相關的一些操做:對象
SPACE或y 用新字符串替換原來的,並進入下一個位置 DEL或n 不替換,進入下一個位置 . 在當前位置作替換後退出查詢-替換操做 , 替換,並顯示替換狀況(再按空格或y進入下一個位置) ! 對後面的內容所有進行替換,再也不提問 ^ 返回上一個替換了的位置 RETURN或q 退出查詢替換操做 C-r 進入遞歸編輯狀態 C-w 刪除此處內容並進入遞歸編輯狀態(好進行其餘修改) M-C-c 退出遞歸編輯狀態,繼續完成查詢-替換操做 C-] 退出遞歸編輯狀態和查詢替換操做
8,正則表達式查找與替換blog
C-M-s Return 向前查找正則表達式 C-M-r Return 反向查找正則表達式 C-M-s 向前遞歸查找正則表達式 C-M-r 反向遞歸查找正則表達式 query-replace-regexp 查詢-替換正則表達式 replace-regexp 無條件替換正則表達式(慎用)
9,文本塊操做遞歸
C-@ 標記文本塊的開始 C-x C-x 互換插入點和文本標記的位置 M-h 標記整個段落 C-x C-p 標記整個頁面 C-x h 標記整個緩衝區
10,Buffer 管理
C-x C-b 進入buffer管理窗口
M-p 歷史中的前一條
M-n 歷史中的後一條
Ctrl-x,Ctrl-q激活解除鎖定
11,在C/C++代碼中的操做
M-a 移動到當前語句的開始 M-e 移動到當前語句的末尾 C-M-a 移動到當前函數的開始 C-M-e 移動到當前函數的結尾 M-q 若光標在註釋文本中間,則進行段落重排,保留縮進和前導字符 C-M-h 把光標放在當前函數開頭,把文本塊標記放在函數結尾, 即把函數整個選做爲一個文本塊。 C-c C-q 對整個函數進行縮進 C-x h 選定整個buffer, 而後C-M-\能夠對代碼進行從新排版 C-c C-u 移動到當前預處理條件的開始位置 C-c C-p 移動到上一個預處理條件 C-c C-n 移動到下一個預處理條件 M-; 對當前行進行註釋 C-x C-x 快速返回移動前的光標位置 C-c C-c 對一塊代碼進行註釋;取消註釋用命令 uncomment-region
12.shell
M-x shell 啓動shell C-c C-c 中斷命令 M-! Emacs提示輸入一條準備執行的命令,Emacs會把執行接過放到*shell command output*緩衝區中。 M-| Emacs會提示輸入一條shell命令,Emacs會對選中區域執行該shell命令。 C-u M-! + command Emacs會把命令執行的結果放到當前的緩衝區中。 M-p 檢索前一條命令 M-n 檢索後一條命令 Tab 命令補完