emacs
功能強大的全屏文本編輯器
補充說明
emacs命令 是由GNU組織的創始人Richard Stallman開發的一個功能強大的全屏文本編輯器,它支持多種編程語言,具有很多優良的特性。有衆多的系統管理員和軟件開發者使用emacs。
語法
1emacs(選項)(參數)
選項
1+<行號>:啓動emacs編輯器,並將光標移動到制定行號的行;
2-q:啓動emacs編輯器,而不加載初始化文件;
3-u<用戶>:啓動emacs編輯器時,加載指定用戶的初始化文件;
4-t<文件>:啓動emacs編輯器時,把指定的文件作爲中端,不適用標準輸入(stdin)與標準輸出(stdout);
5-f<函數>:執行指定lisp(廣泛應用於人工智能領域的編程語言)函數;
6-l<lisp代碼文件>:加載指定的lisp代碼文件;
7-batch:以批處理模式運行emacs編輯器。
參數
文件:指定要編輯的文本文件。
emacs命令操作大全
基本命令
1C-x C-c : 退出Emacs
2C-x C-f : 打開一個文件,如果文件不存在,則創建一個文件
3C-g : 取消未完成的命令
編輯
1C-z (redefined): Undo;原來C-z是掛起Emacs(然後用fg命令調出);C-x u 是默認的命令; 移動一下光標,再C-z就可以redo
2M-d : 刪除光標後的詞語
移動光標
1C-v : 向前翻頁
2M-v : 向後翻頁
3M-r : 將光標移動到屏幕中間那行
4C-a : 移到行首
5M-a : 移到句首,從行首到句首之間可能有空格
6C-e : 移到行尾
7M-e : 移到句尾
8M-{ : 向上移動一段
9M-} : 向下移動一段
10C-right : 向前移動一個單詞
11C-left : 向後移動一個單詞
12C-up : 向前移動一段
13C-down : 向後移動一段
14M-< : 移到整個文本開頭
15M-> : 移到整個文本末尾
16C-u 數字 命令 : 執行多次(數字表示次數)該命令;"M-數字 命令" 也可以
17M-x goto-line : 移動到某一行
18C-l : 重繪屏幕,效果就是當前編輯行移動窗口中央
Buffer 相關
1C-x k : 關閉當前buffer
2C-x b : 切換到前一個編輯的buffer
3C-x C-b : 列出當前所有buffer
4C-x C-s : 保存當前buffer
5C-x s : 保存所有未保存的buffer,會提示你是否需要保存
6C-x C-w : 文件另存爲
拷貝與粘貼
1M-space (redefined): 設置mark; C-@ 是默認命令
2C-w (redefined) : 剪切一塊區域;如果沒有設置mark,則是剪切一行
3M-w (redefined) : 拷貝一塊區域;如果沒有設置mark, 則是拷貝一行
4C-k : 從當前位置剪切到行尾
5C-y : 粘貼
6M-y : 用C-y拉回最近被除去的文本後,換成 M-y可以拉回以前被除去的文本。鍵入多次的M-y可以拉回更早以前被除去的文本。
7C-x r k : 執行矩形區域的剪切
8C-x r y : 執行矩形區域的粘貼
1窗口操作
2C-x 0 : 關閉當前窗口
3C-x 1 : 將當前窗口最大化
4C-x 2 : 垂直分割窗口
5C-x 3 : 水平分割窗口
6M-o (redefined) : 在窗口之間切換; C-x o 是默認命令
7C-x 5 1/2/3/0 : 對frame類似的操作
8C-x < : 窗口內容右卷
9C-x > : 窗口內容左卷(這兩個命令在垂直分割窗口後比較有用)
10(C-u) C-x ^ : 加高當前窗口,如果有C-u,則每次加高4行
11(C-u) C-x } : 加寬當前窗口
12(C-u) C-x { : 壓窄當前窗口
13ESC C-v : 在其它窗口進行卷屏操作
搜索和替換
1C-s : 向前搜索(增量式搜索);連續C-s,跳到下一個搜索到的目標
2C-s RET : 普通搜索
3C-r : 向前搜索
4C-s RET C-w : 按單詞查詢
5M-% : 查詢替換,也就是替換前會詢問一下
6M-x replace-string : 普通替換
Tags
1M-! etags .c .h : 創建TAGS文件
2M-. : 跳到tag所在位置
3M-x list-tags : 列出tags
書籤
1C-x r m : 設置書籤bookmark
2C-x r b : 跳到bookmark處
幫助
1C-h ? : 查看幫助信息
2C-h f : 查看一個函數
3C-h v : 查看一個變量
4C-h k : 查看一個鍵綁定 (C-h c 也是查看鍵綁定,但是信息較簡略)
5C-h C-f : 查看一個函數的info,非常有用
6C-h i : 看Info
其它
1C-M-\ : 對選中區域,按照某種格式(比如C程序)進行格式化
2C-x h : 全部選中
3M-! : 執行外部shell命令
4M-x shell : 模擬shell的buffer
5M-x term : 模擬terminal, C-c k 關閉terminal
6C-x C-q : 修改buffer的只讀屬性
來源:https://github.com/jaywcjlove/linux-command
最後修改於: Wednesday, January 31, 2024
版權申明:
- 未標註來源的內容皆為原創,未經授權請勿轉載(因轉載後排版往往錯亂、內容不可控、無法持續更新等);
- 非營利為目的,演繹本博客任何內容,請以'原文出處'或者'參考鏈接'等方式給出本站相關網頁地址(方便讀者)。