VIM常見快捷鍵不徹底手冊

vim是一個跨平臺(Windows、UNIX、Linux和Mac等)開源文本編輯器,通過再配置也具備多種代碼編譯等各類複雜功能,前身是文本編輯器vi。vim可以和Shell無縫連接,幫助咱們順利完成工做目標。本文測試系統環境是CentOS。php

vim下操做主要是鍵盤操做,使用快捷鍵可以讓咱們操做變得更有效率。本文推薦使用鍵盤對vim進行操做。下文將對vim常見快捷鍵加以介紹。vim

vim自帶多種操做模式,分爲2大類,分別是基本模式和派生模式。派生模式本文再也不詳加介紹。編輯器

基本模式有6種,本文介紹經常使用類型有普通、插入、選擇和命令模式共4種。測試

本文操做從建立一個空文件test.txt開始。請注意Esc按鍵是不一樣模式切換快捷鍵,之後會常常用到。普通模式快捷鍵等輸入內容不會顯示到屏幕上。ui

[root@promote test]# mkdir test
[root@promote test]# cd test
#建立新文件test.txt
[root@promote test]# vim test.txt #按i鍵進入插入模式
#測試文本以下
#直接複製到文本編輯器
ABCDEFG
1234567890
Hi Tom
The quick brown fox jumps over the lazy dog.

[root@promote test]# cat test.txt 
#測試文本以下
#直接複製到文本編輯器
ABCDEFG
1234567890
Hi Tom
The quick fox jump over the lazy dog.
[root@promote test]#

aioAIO與Insert等按鍵進入插入(或編輯)模式。編輯模式下Home End等快捷鍵也有相似功能。區別在於i鍵在光標所在字符前插入字符,a鍵在光標所在字符後插入字符。I鍵在當前行頭部插入字符,A鍵在當前行尾部插入字符。小寫字母o在當前光標所在行下新增一行並插入字符,大寫字母O在當前光標所在行上新增一行並插入字符。spa

普通模式下能夠進行光標移動、查找、替換、刪除、更改撤銷和恢復等操做,詳細介紹請看下文。須要注意部分快捷鍵命令字符不顯示,部分命令有更詳細提示。3d

普通模式快捷鍵方向鍵有小鍵盤方向鍵和hjkl,hjkl分別表明左下右上四個方向,每次移動1個字符或1行。Ctrl+J等價於j,Ctrl+P等價於k。code

w和b鍵以一個單詞爲單位移動,w鍵向後,b鍵向前。當輸入3B和3W鍵分別表明向前移動3個單詞和向後移動3個單詞,到頭或尾部後再也不移動。blog

$^兩個快捷鍵在當前行移動頭尾部切換,$移動至當前行尾部,^移動至當前行頭部。文檔

gg快捷鍵移動至文件頭部(即文件第一個字符),G(區分大小寫)移動至文件最後一行頭部。

()[]{}均可以快速移動,[[ ]] [] ][ 都有不一樣定義,和上文2種快捷鍵類型相似,請在鍵盤中實際練習一下,本文再也不詳細介紹。

按r鍵進入插入模式,能夠替換光標所在字符,所以每次操做只能替換1個字符。R進入替換模式,可一次替換多個字符。

y鍵是單個字符複製,快捷鍵yy(不區分大小寫)能夠複製當前行到緩衝區(等待複製等操做)。

x刪除當前一個字符,2x則刪除2個字符。以此類推,d鍵和其餘組合鍵刪除(或剪切)多個字符,例如dd刪除當前行。d0(數字)刪除光標前所在行所有字符,d$刪除當前行等等。快捷鍵delete刪除光標末尾字符。

3dd表示刪除光標所在下行3行。

p(小寫)在當前光標下一行複製(粘貼)緩衝區字符,P(大寫)在當前光標上一行復制緩衝區字符。

進行以上插入操做時,也會進入插入模式,咱們大部分操做均在該模式下完成。

u(小寫)和Ctrl+R是互逆操做,u鍵撤銷更改,Ctrl+R是u快捷鍵。

普通模式下 /string 等字符能夠進入查找模式。能夠理解爲關鍵字查找。

string是待查找字符穿,符合查找條件字符高亮顯示,未找到提示錯誤。n和N分別表明向上和向下全文重複查找,查找到頭部或尾部會提示一次後從新進行操做。:noh取消高亮顯示。

:%s /原字符 /待替換字符 只進行一次替換。:%s /原字符 /待替換字符 /g 進行屢次替換(全文替換)。

v和V進入逐字個逐行可視模式,可進行多字符或多行操做,配合d(Delete)鍵能夠進行刪除操做。~單個字符切換大小寫,cc也能夠進行行刪除操做。

:開頭爲命令模式,例如:w保存文件,:q退出文件,文件被修改使用:!q強制退出不保存。:wq保存並退出文件。:x等價於:wq。

:0快速定位到行行首,:n快速定位到n行行首,:$定位到尾行行首。

當前行進行替換:s/XXX/YYY/g XXX是須要被字符串,YYY是替換字符串。/g表示所有替換。被替換字符串"/" 用"\"轉義,即用"\/"表示。

所有替換:% s/XXX/YYY/g。

部分替換::100,102s/XXX/YYY/g替換100-102行所有XXX。

Ctr+V普通模式光標所在位置進入可視化編輯模式。方向鍵選擇後輸入AIO等快捷鍵,例如I,輸入須要插入內容,例如#或d等,輸入命令,例如:wq。

須要注意執行當前操做不顯示直到下次從新打開,該操做可用於快速註釋多行內容或取消多行內容等操做。

vim還能夠一次性打開編輯多個文件。:wqa保存所有文件。

#-o上下排列,-O左右排列
[root@promote test]# vim -O test.txt txt.txt
還有 2 個文件等待編輯

#查看模式下使用Ctrl+w+w切換文檔

一次性打開多個文件

更詳細操做文檔請看VIM官方文檔。https://vim.sourceforge.io/docs.php

相關文章
相關標籤/搜索