vim常用命令總結

2021-09-25 10:21:29 字數 4627 閱讀 9738

游標移動

h、j、k、l游標移動左下上右

20j、20↓向下移動20行

+、-游標移動到非空格符的下、上一行

0 或[home]移動到本行首字元處

$ 或[end]移動到本行尾字元處

^移動到本行第乙個非空字元處

g_移動到本行最後乙個非空字元處

w到下乙個單詞的開頭

e到下乙個單詞的結尾

gg移動到第一行

g移動到最後一行

ng移動到第n行(ngg/:n亦可)

n回車向下移動n行

h移動到螢幕最上方第乙個字元(high)

m移動到螢幕最**第乙個字元(middle)

l移動到螢幕最下方第乙個字元(low)

%匹配括號移動,包括 (,{, [,需將游標先移動到括號

*/#匹配游標當前所在的單詞

大小寫轉換

~單個字元,游標所在位置大小寫轉換,reverse

gu/gu切換為小/大寫,再加限定gggug

gggug整篇轉換為小寫,可理解為gg:檔案頭,g:檔案尾,gu:切換為小寫

gggug整篇轉換為大寫

gu0從游標所在位置到行首,都變為大寫

gu$從游標所在位置到行尾,都變為大寫

gug從游標所在位置到文章最後乙個字元,都變為大寫

gu1g從游標所在位置到文章第乙個字元,都變為大寫,和gugg一樣,其實就是指令+限定

刪除、複製、貼上

u撤銷undo

ctrl+r重做redo

.重複前乙個動作(重複刪除、貼上等)

x、x刪除乙個字元

dd刪除一整行

ndd刪除游標所在的向下n行

d1g刪除游標所在到第一行的所有資料

dg刪除游標所在到最後一行的所有資料

d$刪除游標所在處到該行的最後乙個字元

d0刪除游標所在處到該行的最前面乙個字元

:n1,n2d刪除n1至n2行

:n1,n2con3將n1至n2行複製到n3行之後

:n1,n2mon3將n1至n2行移動到n3行之後

yy複製游標所在的那一行

nyy複製游標所在的向下 n 行

y1g複製游標所在行到第一行的所有資料

yg複製游標所在行到最後一行的所有資料

y0複製游標所在的那個字元到該行行首的所有資料

y$複製游標所在的那個字元到該行行尾的所有資料

p、p將複製的資料貼上在游標下/上一行

j將游標所在行與下一行資料合成一行

:%s/^\s*//g 刪除行首空格

:%s/\s*$//g刪除行尾空格

查詢、替換

/word向游標之下尋找乙個名稱為word的字串

?word向游標之上尋找乙個名稱為word的字串

n、nnext搜尋/反向搜尋(與n相反)

:%s/word1/word2/g第一行到最後一行1替換為2

:%s/word1/word2/gc第一行到最後一行1替換為2,需確認

:n1,n2s/word1/word2/g第 n1 與 n2 行之間,1替換為2

:s/word1/word2/g當前行(:s)

:%s/word1/word2/g全文

:』s/word1/word2/gvisual模式下選擇區域後輸入:可自動補全

r、r取代模式,取代字元一次/一直取代(replace)cw替換游標位置到乙個單詞結束

塊操作ctrl+v開始塊操作

向下移動

i(大寫i)+esci(a插入到行尾)是插入行首,按esc鍵來為每一行生效。 分屏

vim -on file1 file2 …大寫的o引數來垂直分屏,n表示分成幾個屏

vim -on file1 file2 …小寫的o引數來水平分屏

ctrl+w 上下左右游標移到上下左右屏。

ctrl+w h/j/k/l移動分屏

ctrl+w =/+/-使所有螢幕增加/減少/等高

ctrl+w s上下分割當前開啟的檔案(split)

ctrl+w v左右分割當前開啟的檔案

ctrl+w c關閉當前視窗

:sp filename上下分割,並開啟乙個新的檔案

:vsp filename左右分割,並開啟乙個新的檔案

**摺疊

vim 提供 6中摺疊方式:

zf建立摺疊(也可用 :行號,行號fold)

zc摺疊

zc對所在範圍內所有巢狀的摺疊點進行摺疊

zo展開摺疊(空格也可)

zo對所在範圍內所有巢狀的摺疊點展開

zd刪除 (delete) 在游標下的摺疊

zd迴圈刪除 (delete) 游標下的摺疊,即巢狀刪除摺疊

ze除去 (eliminate) 視窗裡「所有」的摺疊 通用

i輸入模式,從目前游標所在處輸入

o、o輸入模式,從目前游標所在下/上一行處輸入

:w儲存

:q退出

:q!強制退出不儲存(!強制)

:wq儲存退出,同zzzz若未更改不儲存離開,若更改,儲存後離開

:w [filename]另存為

:r [filename]讀入另乙個檔案的資料到游標所在行後

:n1,n2 w [filename]將n1到n2行的內容儲存為filename

:e [filename]編輯新的檔案

:set nu顯示行號

:set nonu取消行號

ctrl+v/ctrl+vinsert 模式下,自動補齊

批量注釋

批量注釋:ctrl+v進入塊選擇模式,然後移動游標選中你要注釋的行,再按大寫的i進入行首插入模式輸入注釋符號如//或#,輸入完畢之後,按兩下esc,vim會自動將你選中的所有行首都加上注釋,儲存退出完成注釋。

取消注釋

ctrl+v進入塊選擇模式,選中你要刪除的行首的注釋符號,注意/ 要選中兩個,選好之後按d或x即可刪除注釋,esc儲存退出。

VIM常用命令總結

個人常用的vim命令列表 移動游標 上 k nk 向上移動n行 9999k或gg可以移到第一行 g移到最後一行 下 j nj 向下移動n行 左 h nh 向左移動n列 右 l nl 向右移動n列 w 游標以單詞向前移動 nw 游標向前移動n個單詞 游標到單詞的第乙個字母上 b 與w相反 e 游標以單...

vim常用命令總結

把vim常用命令總結一下,以便日後查閱 模式 normal 常規模式 esc insert 插入模式 i visual 可視模式 選擇整行,整段文字 v 儲存,退出 wq 儲存 退出 q 強制退出 進入,返回 ctrl 進入tag ctrl o 返回上一層 插入 i 在游標前插入字元 a 在一行的末...

Vim常用命令總結

h j k l 分別對應於 ctrl f 向下翻一頁 forward ctrl b 向上翻一頁 back ctrl d 向下翻半頁 down ctrl u 向上翻半頁 up h 螢幕頂行首字元 m 螢幕中間首字元 l 螢幕末行首字元 gg 當前檔案首行首字元 g 當前檔案末行首字元 n g 跳轉到第...