Emacs經常使用基本操做

按鍵約定

組合按鍵

Emacs中大量的按鍵操做都是各式各樣的組合按鍵(快捷鍵),下面是幾種一般的約定:shell

  • Ctrl鍵:表示爲C
  • Alt鍵:表示爲M
  • Shift鍵:表示爲S
  • 組合按鍵:好比向下移動一行的組合按鍵是Ctrl+n,就表示爲:C-n,其含義表示同時按下鍵盤上的Ctrln鍵。

按鍵順序

有時候用多個組合按鍵來表示一種操做,好比如下按鍵序列:C-x C-f [文件路徑] <RET>就表示打開文件的操做,它表示這樣的操做含義:先同時按下Ctrlx鍵,而後鬆開,緊接着立刻再同時按下Ctrlf鍵,而後再鬆開,而後在下方的輸入欄中輸入文件路徑,輸入完以後按回車鍵(用<RET>表示),最後就打開了一個文件。函數

還有一種按鍵順序:C-x o,表示切換到另一個緩衝區,它是這樣一組按鍵:先同時按下Ctrlx鍵,而後鬆開,而後緊接着按字母o鍵。ui

還有另一種按鍵順序,好比如下按鍵序列:C-u [10] C-p,就表示這樣的操做含義:先同時按下Ctrlu鍵,而後鬆開,而後依次按10鍵,而後鬆開,最後再同時按Ctrlp鍵。這組按鍵達到的效果就是把光標從當前位置往上移動10行。編碼

特殊按鍵

  • 表示輸入內容,用方括號括起來:[輸入的內容]
  • 表示回車鍵:<RET>
  • 表示其餘鍵:好比<Backspace>表示退格鍵(刪除鍵),<Delete>表示刪除鍵,<TAB>表示TAB鍵,<Left>表示左箭頭鍵,<Right>表示右箭頭鍵,<Up>表示上箭頭鍵,<Down>表示下箭頭鍵,<f5>表示F5鍵。

Quick Start

文本操做,無外乎打開文件、編輯文件、保存文件,涉及的核心、最高頻命令很是簡單,整理以下:spa

  • C-x C-f [文件路徑] <RET>:打開一個文件
  • C-n:將光標向下移動一行
  • C-p:將光標向上移動一行
  • C-g:取消以前的按鍵(將會成爲最經常使用的按鍵之一)
  • C-x C-s:保存文件
  • C-x C-c:退出Emacs

經常使用操做分類彙總

文件操做

  • C-x C-f [文件路徑] <RET>:打開一個文件
  • C-x C-s:保存文件
  • C-x 4 f [文件路徑] <RET>:在一個新的窗格(緩衝區)中打開文件
  • C-x 5 f [文件路徑] <RET>:在一個新的窗口中打開文件

移動操做

  • C-n:將光標向下移動一行
  • C-p:將光標向上移動一行
  • C-b:將光標左移一個字符
  • C-f:將光標右移一個字符
  • M-f:將光標右移一個單詞
  • M-b:將光標左移一個單詞
  • C-v:向下移動一屏
  • M-v:向上移動一屏
  • C-l:將當前光標所在行移動到屏幕中央(注意:這裏是字母L
  • C-a:將光標移到行首
  • C-e:將光標移到行尾
  • M-S-<:將光標移動到文件開頭
  • M-S->:將光標移動到文件末尾
  • M-m:將光標移動到行首的第一個非空白字符

查找與替換操做

  • C-s [查找的內容]:向前查找
  • C-r [查找的內容]:向後查找
  • C-M-s [查找的內容]:向前正則查找
  • C-M-r [查找的內容]:向後正則查找
  • M-S-%:查找並替換,操做步驟以下:按下M-S-%鍵啓動查找替換,輸入要被替換的詞,回車,而後輸入要替換的詞,再回車。被替換的詞此時會高亮起來,這時,輸入y替換並跳到下一個,輸入n忽略並跳到下一個,輸入q結束,輸入!替換剩下的所有。

文本選擇操做

  • C-S-e:選中從當前位置到行尾的文本
  • C-S-n:從當前位置開始往下選中一行文本
  • C-S-p:從當前位置開始往上選中一行文本
  • C-S-f:從當前位置開始日後選中一個字符
  • C-S-b:從當前位置開始往前選中一個字符
  • M-S-f:從當前位置開始日後選中一個單詞
  • M-S-b:從當前位置開始往前選中一個單詞
  • M-S-e:選中從當前位置開始到當前句尾的文本
  • M-S-a:選中從當前位置開始到當前句首的文本
  • C-S-@ [其餘移動操做]:從一個起始位置,選中連續的字符,好比C-S-@ C-e就表示選中從當前光標位置到行尾的全部字符
  • C-S-v:向下選擇一屏
  • M-S-v:向上選擇一屏
  • C-S-l:讓當前光標所在行居中
  • C-x h:全選

文本編輯操做

  • 插入文本:只要光標在當前緩衝區,就能夠直接輸入插入文本。
  • C-k:刪除光標到行尾的全部字符
  • C-u [N] [操做序列]:重複執行一個操做序列N次
  • C-/C-x u:撤銷(undo)上次操做,屢次按能夠撤銷以前的屢次操做
  • C-g C-/:重作(redo),用於重作上次的撤銷動做(撤銷以後後悔了,想恢復重作)
  • <Backspace>:刪除當前光標前的一個字符
  • C-<Backspace>:刪除當前光標前的一個單詞
  • C-d<Delete>:刪除當前光標後的一個字符
  • M-<Backspace>:剪切當前光標前的一個字符到剪貼板
  • M-d:剪切當前光標後的一個字符到剪貼板
  • C-k:剪切從光標到行尾的字符到剪貼板
  • C-y:粘貼剪貼板中的文本到當前光標位置
  • M-w:複製當前選中的字符
  • C-w:剪切當前選擇的字符到剪貼板
  • C-a C-k:剪切一整行到剪貼板中,其實也能夠用於刪除一整行
  • C-e <RET>:在當前行下方插入一空行
  • C-x C-q:讓當前buffer在「只讀」和「讀寫」兩種編輯模式之間切換

多窗格與多窗口

首先要明確一下Emacs中窗格與窗口的概念的區別:每一個窗格其實就是一個緩衝區,一個窗口中能夠同時打開多個窗格,而窗口就是像Windows那樣的GUI窗口。命令行

  • C-x 1:僅保留當前窗格,關閉其餘窗格
  • C-x 2:在垂直方向打開2個窗格
  • C-x 3:在水平方向打開2個窗格
  • C-x o:在不一樣窗格之間切換
  • C-x 0:關閉當前窗格
  • C-x S-{:減少當前窗格的水平寬度
  • C-x S-}:縮小當前窗格的水平寬度
  • C-x S-^:增大當前窗格的垂直高度
  • C-M-v:在另外一個窗格中向下滾動一屏(但光標還保留在當前窗格)
  • C-M-S-v:在另外一個窗格中向上滾動一屏(但光標還保留在當前窗格)
  • M-x make-frame:打開一個新窗口
  • M-x delete-frame:關閉當前窗口
  • C-z:掛起當前的窗口(至關於最小化當前的窗口)

文本編碼

  • M-x describe-coding-system <RET>:查看當前緩衝區的編碼格式
  • C-x <RET> r <TAB>:列出當前的全部編碼
  • C-x <RET> f utf-8 <RET>:改變當前緩衝區的編碼爲utf-8

命令與函數操做

  • M-x [函數名] <RET>:執行一個函數
  • M-S-! [命令] <RET>:執行一個命令行命令
  • M-x shell <RET>:在一個新窗格中、當前目錄位置打開命令行

一些經常使用操做

  • M-x goto-line <RET> [行號] <RET>:跳轉到某一行,將其綁定到快捷鍵C-c j
;; 快速跳到某一行 (global-set-key (kbd "C-c j") 'goto-line) 
  • M-x electric-pair-mode <RET>:打開括號配對模式

緩衝區

  • C-x C-b:在一個新窗格中列出當前全部的緩衝區
  • C-x b xxx <RET>:切換到名爲xxx的緩衝區
  • C-x k xxx <RET>:關閉一個名爲xxx的緩衝區(若是直接按回車,默認關閉的是當前緩衝區)
  • C-x s:一個個詢問是否保存當前每一個緩衝區的內容
  • M-x kill-some-buffers <RET>:一個個詢問是否關閉當前打開的緩衝區
  • C-x <Left>:在多個緩衝區之間切換
  • C-x <Right>:在多個緩衝區之間切換

配置相關

  • C-x d S-~ <RET>:打開Emacs配置文件所在路徑
  • C-h v load-path <RET>:查看Emacs的加載路徑

幫助操做

  • C-h t:查看Emacs快速指南
  • C-h f:查看一個函數(命令)的幫助文檔
  • C-h S-?M-x [help]:查看幫助
  • C-h c [命令序列]:顯示命令序列對應的函數名
  • C-h k [命令序列]:顯示命令序列的詳細文檔(打開一個新窗格)
  • C-h a [關鍵詞]:打開一個新窗格列出全部含有此關鍵詞的命令
  • C-h i:查看信息字典文檔
  • C-h r:查看使用手冊
  • C-h m:查看當前緩衝區的major mode和minor mode及其介紹
  • C-h b:查看和當前緩衝區綁定的快捷鍵列表
  • C-h v [變量名]:查看某個變量的值
  • C-h w [函數名]:查看某個函數綁定的快捷鍵
  • C-h i m [elisp] <RET>:查看elisp文檔

命令行操做

如下操做都是在系統命令行中的操做:code

  • emacs -nw -Q:在命令行中打開Emacs,-nw參數表示:no window-Q參數表示:不顯示歡迎界面。在命令行打開Emacs後,各項操做和按鍵與在GUI窗口中是一致的
做者:m2fox 連接:https://www.jianshu.com/p/89b689a586b3 來源:簡書 簡書著做權歸做者全部,任何形式的轉載都請聯繫做者得到受權並註明出處。
相關文章
相關標籤/搜索