麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 編程設計 > 正文

emacs常用快捷鍵 emacs快捷鍵大全

2020-07-14 13:22:29
字體:
來源:轉載
供稿:網友

Emacs這個東東聽說功能很強大。不過感覺有些難學,還好網絡上的資源還是比較豐富的。目前基于最基本的文本編輯來學習。而且它的快捷鍵很多,所以要在使用過程中學習會比較容易記住。這個是從網上搜索來的,總結的比較好的,貼在自己這里當做摘錄了,方便查詢。

C = Control
M = Meta = Alt | Esc 
Del = Backspace 
RET = Enter

沒啥好說的了,每個按鍵都去試驗下吧,注意觀察所有窗口的變化

C = Ctrl
M = Meta = Alt | Esc
Del = Backspace

emacs中最常用的快捷鍵綁定為“C+n" 其中 n為任意字符
次常用綁定為“ESC n",文件操作通常為“C-x n"
與編輯模式相關通常為“C-n n"

基本命令C-x C-c : 退出EmacsC-x C-f : 打開一個文件,如果文件不存在,則創建一個文件C-g : 取消未完成的命令
emacs -nw :不以gui形式啟動

移動光標

C-v : 向前翻頁
M-v : 向后翻頁
M-r : 將光標移動到屏幕中間那行
C-a : 移到行首
M-a : 移到句首,從行首到句首之間可能有空格
C-e : 移到行尾
M-e : 移到句尾
M-{ : 向上移動一段
M-} : 向下移動一段
C-right,esc-f : 向前移動一個單詞
C-left ,esc-b: 向后移動一個單詞
C-up : 向前移動一段
C-down : 向后移動一段
M-< : 移到整個文本開頭
M-> : 移到整個文本末尾
M-r : 將游標移到目前視窗的中央
C-u 數字 命令 : 執行多次(數字表示次數)該命令;“M-數字 命令” 也可以
M-gg(M-x goto-line) : 移動到某一行
C-l : 重繪屏幕,效果就是當前編輯行移動窗口中央
窗口操作
C-x 0 : 關閉當前窗口
C-x 1 : 將當前窗口最大化
C-x 2 : 垂直分割窗口
C-x 3 : 水平分割窗口C-u) C-x ^ : 加高當前窗口,如果有C-u,則每次加高4行(C-u) C-x } : 加寬當前窗口(C-u) C-x { : 壓窄當前窗口ESC C-v : 在其它窗口進行卷屏操作搜索和替換
搜索和替換
C-s : 向前搜索(增量式搜索);連續C-s,跳到下一個搜索到的目標
C-s RET : 普通搜索
C-r : 向前搜索
C-s RET C-w : 按單詞查詢
M-% : 查詢替換,也就是替換前會詢問一下
M-x replace-string : 普通替換

Bookmark
C-x r m : 設置書簽bookmark
C-x r b : 跳到bookmark處
esc c-n(c-m-n):調到后面對應的括號
esc c-p(c-m-p):調到前面對應的括號

幫助

C-h ? : 查看幫助信息
C-h f : 查看一個函數,此處的函數是指lisp語言中的某個函數的意思;
C-h v : 查看一個變量
C-h k : 查看一個鍵綁定 (C-h c 也是查看鍵綁定,但是信息較簡略)
C-h C-f : 查看一個函數的Info,非常有用
C-h i : 看Info

刪除命令
<Delback> 刪除光標前的一個字符 C-d 刪除光標后的一個字符 M-<Delback> 移除光標前的一個詞 M-d 移除光標后的一個詞

C模式快捷鍵

C-M-/ : 對選中區域,按照某種格式(比如C程序)進行格式化
C-x h : 全部選中
M-! : 執行外部shell命令
M-x shell : 模擬shell的buffer
ALT-/ : 快速補全
ESC-m :把光標移到當前行的第一個非空字符上
ESC-^:把當前行合并到上一行
ESC ; :添加注釋
ESC j :下一行添加注釋
C-c C-a:自動換行

基本快捷鍵(Basic)
C-x C-f “find”文件, 即在緩沖區打開/新建一個文件
C-x C-s 保存文件
C-x C-w 使用其他文件名另存為文件
C-x C-v 關閉當前緩沖區文件并打開新文件
C-x i 在當前光標處插入文件
C-x b 新建/切換緩沖區
C-x C-b 顯示緩沖區列表
C-x k 關閉當前緩沖區
C-z 掛起emacs
C-x C-c 關閉emacs

光標移動基本快捷鍵(Basic Movement)
C-f 后一個字符
C-b 前一個字符
C-p 上一行
C-n 下一行
M-f 后一個單詞
M-b 前一個單詞
C-a 行首
C-e 行尾
C-v 向下翻一頁
M-v 向上翻一頁
M-< 到文件開頭 注意這里是‘<’不是‘,’需要按shift,遇到相同情況下同
M-> 到文件末尾

編輯(Editint)
M-n 重復執行后一個命令n次
C-u 重復執行后一個命令4次
C-u n 重復執行后一個命令n次
C-d 刪除(delete)后一個字符
M-d 刪除后一個單詞
Del 刪除前一個字符
M-Del 刪除前一個單詞
C-k 移除(kill)一行

C-Space 設置開始標記 (例如標記區域)
C-@ 功能同上, 用于C-Space被操作系統攔截的情況
C-w 移除(kill)標記區域的內容
M-w 復制標記區域的內容
C-y 召回(yank)復制/移除的區域/行
M-y 召回更早的內容 (在kill緩沖區內循環)
C-x C-x 交換光標和標記

C-t 交換兩個字符的位置
M-t 交換兩個單詞的位置
C-x C-t 交換兩行的位置
M-u 使從光標位置到單詞結尾處的字母變成大寫
M-l 與M-u相反
M-c 使從光標位置開始的單詞的首字母變為大寫

重要快捷鍵(Important)
C-g 停止當前運行/輸入的命令
C-x u 撤銷前一個命令
M-x revert-buffer RETURN (照著這個輸入)撤銷上次存盤后所有改動
M-x recover-file RETURN 從自動存盤文件恢復
M-x recover-session RETURN 如果你編輯了幾個文件, 用這個恢復

在線幫助(Online-Help)
C-h c 顯示快捷鍵綁定的命令
C-h k 顯示快捷鍵綁定的命令和它的作用
C-h l 顯示最后100個鍵入的內容
C-h w 顯示命令被綁定到哪些快捷鍵上
C-h f 顯示函數的功能
C-h v 顯示變量的含義和值
C-h b 顯示當前緩沖區所有可用的快捷鍵
C-h t 打開emacs教程
C-h i 打開info閱讀器
C-h C-f 顯示emacs FAQ
C-h p 顯示本機Elisp包的信息

搜索/替換(Seach/Replace)
C-s 向后搜索
C-r 向前搜索
C-g 回到搜索開始前的位置(如果你仍然在搜索模式中)
M-% 詢問并替換(query replace)

Space或y 替換當前匹配
Del或n 不要替換當前匹配
. 僅僅替換當前匹配并退出(替換)
, 替換并暫停(按Space或y繼續)
! 替換以下所有匹配
^ 回到上一個匹配位置
RETURN或q 退出替換

使用正則表達式(Regular expression)搜索/替換
可在正則表達式中使用的符號:
^ 行首
$ 行尾
. 單個字符
.* 任意多個(包括沒有)字符
/< 單詞開頭
/> 單詞結尾
[] 括號中的任意一個字符(例如[a-z]表示所有的小寫字母)

M C-s RETURN 使用正則表達式向后搜索
M C-r RETURN 使用正則表達式向前搜索
C-s 增量搜索
C-s 重復增量搜索
C-r 向前增量搜索
C-r 重復向前增量搜索
M-x query-replace-regexp 使用正則表達式搜索并替換

窗口命令(Window Commands)
C-x 2 水平分割窗格
C-x 3 垂直分割窗格
C-x o 切換至其他窗格
C-x 0 關閉窗格
C-x 1 關閉除了光標所在窗格外所有窗格
C-x ^ 擴大窗格
M-x shrink-window 縮小窗格
M C-v 滾動其他窗格內容
C-x 4 f 在其他窗格中打開文件
C-x 4 0 關閉當前緩沖區和窗格
C-x 5 2 新建窗口(frame)
C-x 5 f 在新窗口中打開文件
C-x 5 o 切換至其他窗口
C-x 5 0 關閉當前窗口

書簽命令(Bookmark commands)
C-x r m 在光標當前位置創建書簽
C-x r b 轉到書簽
M-x bookmark-rename 重命名書簽
M-x bookmark-delete 刪除書簽
M-x bookmark-save 保存書簽
C-x r l 列出書簽清單

d 標記等待刪除
Del 取消刪除標記
x 刪除被標記的書簽
r 重命名
s 保存列表內所有書簽
f 轉到當前書簽指向的位置
m 標記在多窗口中打開
v 顯示被標記的書簽(或者光標當前位置的書簽)
t 切換是否顯示路徑列表
w 顯示當前文件路徑
q 退出書簽列表

M-x bookmark-write 將所有書簽導出至指定文件
M-x bookmark-load 從指定文件導入書簽

Shell
M-x shell 打開shell模式
C-c C-c 類似unix里的C-c(停止正在運行的程序)
C-d 刪除光標后一個字符
C-c C-d 發送EOF
C-c C-z 掛起程序(unix下的C-z)
M-p 顯示前一條命令
M-n 顯示后一條命令

DIRectory EDitor (dired)
C-x d 打開dired
C(大寫C) 復制
d 標記等待刪除
D 立即刪除
e或f 打開文件或目錄
g 刷新當前目錄
G 改變文件所屬組(chgrp)
k 從屏幕上的列表里刪除一行(不是真的刪除)
m 用*標記
n 光標移動到下一行
o 在另一個窗格打開文件并移動光標
C-o 在另一個窗格打開文件但不移動光標
P 打印文件
q 退出dired
Q 在標記的文件中替換
R 重命名文件
u 移除標記
v 顯示文件內容
x 刪除有D標記的文件
Z 壓縮/解壓縮文件
M-Del 移除標記(默認為所有類型的標記)
~ 標記備份文件(文件名有~的文件)等待刪除
# 標記自動保存文件(文件名形如#name#)等待刪除
*/ 用*標記所有文件夾(用C-u */n移除標記)
= 將當前文件和標記文件(使用C-@標記而不是dired的m標記)比較
M-= 將當前文件和它的備份比較
! 對當前文件應用shell命令
M-} 移動光標至下一個用*或D標記的文件
M-{ 移動光標至上一個用*或D標記的文件
% d 使用正則表達式標記文件等待刪除
% m 使用正則表達式標記文件為*
+ 新建文件夾
> 移動光標至后一個文件夾
< 移動光標至前一個文件夾
s 切換排序模式(按文件名/日期)

或許把這個命令歸入這一類也很合適:
M-x speedbar 打開一個獨立的目錄顯示窗口

Telnet(大致了解)
M-x telnet 打開telnet模式
C-d 刪除后一個字符或發送EOF
C-c C-c 停止正在運行的程序(和unix下的C-c類似)
C-c C-d 發送EOF
C-c C-o 清除最后一個命令的輸出
C-c C-z 掛起正在運行的命令
C-c C-u 移除前一行
M-p 顯示前一條命令

Text
只能在text模式里使用
M-s 使當前行居中
M-S 使當前段落居中
M-x center-region 使被選中的區域居中

宏命令(Macro-commands)(大致了解)
C-x ( 開始定義宏
C-x ) 結束定義宏
C-x e 運行最近定義的宏
M-n C-x e 運行最近定義的宏n次
M-x name-last-kbd-macro 給最近定義的宏命名(用來保存)
M-x insert-kbd-macro 將已命名的宏保存到文件
M-x load-file 載入宏

編程(Programming)
M C-/ 自動縮進光標和標記間的區域
M-m 移動光標到行首第一個(非空格)字符
M-^ 將當前行接到上一行末尾處
M-; 添加縮進并格式化的注釋
C, C++和Java模式
M-a 移動光標到聲明的開始處
M-e 移動光標到聲明的結尾處
M C-a 移動光標到函數的開始處
M C-e 移動光標到函數的結尾處
C-c RETURN 將光標移動到函數的開始處并標記到結尾處
C-c C-q 根據縮進風格縮進整個函數
C-c C-a 切換自動換行功能
C-c C-d 一次性刪除光標后的一串空格(greedy delete)

為了實現下面的一些技術, 你需要在保存源代碼的目錄里運行”etags
*.c *.h *.cpp”(或者源代碼的其他的擴展名)
M-.(點) 搜索標簽
M-x tags-search ENTER 在所有標簽里搜索(使用正則表達式)
M-,(逗號) 在tags-search里跳至下一個匹配處
M-x tags-query-replace 在設置過標簽的所有文件里替換文本

GDB(調試器)(大致了解)
M-x gdb 在另一個的窗格中打開gdb

版本控制(Version Control)(以后會用到現在大致了解就可以了)
C-x v d 顯示當前目錄下所有注冊過的文件(show all registered files in this dir)
C-x v = 比較不同版本間的差異(show diff between versions)
C-x v u 移除上次提交之后的更改(remove all changes since last checkin)
C-x v ~ 在不同窗格中顯示某個版本(show certain version in different window)
C-x v l 打印日志(print log)
C-x v i 標記文件等待添加版本控制(mark file for version control add)
C-x v h 給文件添加版本控制文件頭(insert version control header into file)
C-x v r 獲取命名過的快照(check out named snapshot)
C-x v s 創建命名的快照(create named snapshot)
C-x v a 創建gnu風格的更改日志(create changelog file in gnu-style)

文件操作:

C+x C+f
打開文件
C+x C+r
以只讀的方式打開文件
C+x C+q
進行 只讀/讀寫 模式切換
C+x C+v
切換緩沖區
C+x C+s
保存文件
C+x C+w
文件另存為
C+x i
 向緩沖區中插入文件

移動操作:C+f  
前進一個字符C+b 
后退一個字符M+f  
前進一個單詞M+b 
后退一個單詞C+a  
移動到行首C+e  
移動到行尾M+a  
移動到句首M+e  
移動到句尾C+p  
后退一行C+n  
前進一行M+g g 
跳到指定行C+v  
向下翻頁M+v  
向上翻頁M+< 移動到緩沖區首M+> 
移動到緩沖區尾C+M+f 
向前匹配括號C+M+b
向后匹配括號標記/復制/剪切/粘貼:C+xh 
全選C+@   
標記開始M+w   
復制區域到kill ring中,但不刪除C+w    
刪除區域C+y    
將kill ring 中的內容粘貼到緩沖區C+Del 
剪切光標到單詞結束M+Del 
剪切光標到單詞開始C+k    
剪切光標到行結尾M+k    
剪切光標到句結尾(C+d)/Del   
刪除光標上的字M+d   
剪切光標到下一個單詞結尾ctrl-S(shift+s)-Backspace  
刪除當前行

緩沖區操作:

C+x C+f 打開/創建一個文件,并創建一個新的緩沖區

C+x C+s  保存緩沖區內容到文件

C+x C+w  保存緩沖區內容到其它文件

C+xk    關閉當前緩沖區

C+x C+b 顯示緩沖區列表,可以使用方向鍵來選擇緩沖區

C+x C+c  關閉所有緩沖區,并推出emacs

M+x命令:

查找和替換:
C+s 向前查找C+r 向后查找按下這兩個快捷鍵后,
M+p顯示上一個搜索詞,
M+n顯示下一個搜索詞。輸入查找內容后,按C+s跳到下一個結果,
C+r跳到上一個結果。
Enter結束查找光標在當前位置,C+g取消查找光標返回原處。

2,查找單詞

按C - s RET C - w 或 C - r RET C - w 來使用單詞搜索。

3,查找及替換

按M - %啟動查找替換,輸入要被替換的詞,回車,然后輸入要替換的詞,再回車。

被替換的詞會高亮起來,這時,輸入y替換并跳到下一個,輸入n忽略并跳到下一個,輸入q結束,輸入!替換剩下的全部。

一些常用的選項:

  C - g 中斷查找替換過程。

  ^ 返回上一個替換點,按y繼續下一個,如果不想替換上一個的話,用^返回到上一個,然后按 C - r 進入編輯,修改完后按C- M - c退出繼續下一個。

  C - l 使當前匹配顯示在文檔中間。

  C - r 進入修改。

4,列出匹配的模式

有時候想列出匹配的全面模式,而不是在文檔中瀏覽,這個可以使用occur這個函數。

例子:M - x occur RET Create RET

這時,emacs會新開一個窗口來列出匹配的行,用鼠標點擊或把光標移到一行按回車就會跳轉到那里。

執行SHELL命令

M-x shell
打開shell命令
M-!
執行shell命令(shell-command)
M-1 M-!
執行Shell命令,命令輸出插入光標位置,不打開新輸入窗口
M-|
針對某一特定區域執行命令(shell-command-on-region),比如 C-x h M-juuencode

窗口操作

C-x 0
關閉本窗口
C-x 1
只留下一個窗口
C-x 2
垂直均分窗口
C-x 3
水平均分窗口
C-x o
切換到別的窗口
C-x s
保存所有窗口的緩沖
C-x b
選擇當前窗口的緩沖區
C-x ^
縱向擴大窗口
C-x }
橫向擴大窗口


目錄操作

C-x d
打開目錄模式
s
按日期/文件名排序顯示
v
閱讀光標所在的文件
q
退出閱讀的文件
d
標記為刪除
x
執行標記
D
馬上刪除當前文件
C
拷貝當前文件
R
重命名當前文件
+
新建文件
Z
壓縮文件

對光標所在的文件執行SHELL命令
g
刷新顯示
i
在當前緩沖區的末尾插入子目錄的內容
[n]m
標記光標所在的文件,如果指定n,則從光標所在的文件后n個文件被標記
[n]u
取消當前光標標記的文件,n的含義同上
t
反向標記文件
%-m
正則標記
q
退出目錄模式

其他:

C+x u 撤銷

C+x C+c 退出emacs

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产精品久久久久久久av | 在线看一级片 | 福利在线免费视频 | 亚洲第五色综合网 | 羞羞视频免费网站 | 欧美在线a| 国产乱一区二区三区视频 | xxxx18韩国护士hd老师 | 日韩精品久久久久久久电影99爱 | wwwxxx免费视频 | 久草在线免费资源站 | 在线播放黄色片 | 国产精品免费一区二区三区四区 | av资源在线 | 国产精品久久久免费看 | 免费国产自久久久久三四区久久 | 久久久久久免费免费 | 久久久一区二区精品 | 影视免费观看 | 激情小视频在线观看 | 免费观看黄色一级视频 | 日日草夜夜操 | 美女擦逼 | 成年人免费视频播放 | 色淫影院 | 国产外围在线 | 精品国产91久久久久久久妲己 | jizzjizzjizzjizz国产| 中文字幕网在线 | 日韩欧美综合在线 | 久久精品免费网站 | www.国产免费 | a视频在线播放 | 99国产精品白浆在线观看免费 | 亚洲免费看片网站 | 国产精品一区自拍 | 色播视频在线播放 | 日韩激情一区 | 久久亚洲线观看视频 | 欧美中文字幕一区二区 | 国产精品爱久久久久久久 |