Vim速查表-幫你提高N倍效率

去年上半年開(kāi)始全面使用linux進(jìn)行開(kāi)發(fā)和娛樂(lè)了话肖,現(xiàn)在已經(jīng)回不去windows了北秽。

話歸正傳,在linux上一直使用vim最筒,慢慢熟悉了它的命令贺氓,才終于領(lǐng)悟了什么是編輯器之神。

最近抽空整理了這份速查表床蜘,收獲頗豐辙培,并分享給大家。

進(jìn)入vim

命令 描述
vim filename 打開(kāi)或新建文件,并將光標(biāo)置于第一行首
vim +n filename 打開(kāi)文件悄泥,并將光標(biāo)置于第n行首
vim + filename 打開(kāi)文件虏冻,并將光標(biāo)置于最后一行首
vim +/pattern filename 打開(kāi)文件肤粱,并將光標(biāo)置于第一個(gè)與pattern匹配的串處
vim -r filename 在上次正用vim編輯時(shí)發(fā)生系統(tǒng)崩潰弹囚,恢復(fù)filename
vim filename….filename 打開(kāi)多個(gè)文件,依次編輯

vim配置

命令 描述
all 列出所有選項(xiàng)設(shè)置情況
term 設(shè)置終端類型
ignorance 在搜索中忽略大小寫(xiě)
list 顯示制表位(Ctrl+I)和行尾標(biāo)志($)
number 顯示行號(hào)
report 顯示由面向行的命令修改過(guò)的數(shù)目
terse 顯示簡(jiǎn)短的警告信息
warn 在轉(zhuǎn)到別的文件時(shí)若沒(méi)保存當(dāng)前文件則顯示NO write信息
nomagic 允許在搜索模式中领曼,使用前面不帶“\”的特殊字符
nowrapscan 禁止vi在搜索到達(dá)文件兩端時(shí)鸥鹉,又從另一端開(kāi)始
mesg 允許vi顯示其他用戶用write寫(xiě)到自己終端上的信息
:set number / set nonumber 顯示/不顯示行號(hào)
:set ruler /set noruler 顯示/不顯示標(biāo)尺
:set hlsearch 高亮顯示查找到的單詞
:set nohlsearch 關(guān)閉高亮顯示
:syntax on 語(yǔ)法高亮
:set nu 顯示行號(hào)
:set tabstop=8 設(shè)置tab大小,8為最常用最普遍的設(shè)置
:set softtabstop=8 4:4個(gè)空格,8:正常的制表符,12:一個(gè)制表符4個(gè)空格,16:兩個(gè)制表符
:set autoindent 自動(dòng)縮進(jìn)
:set cindent C語(yǔ)言格式里面的自動(dòng)縮進(jìn)

移動(dòng)光標(biāo)

命令 描述
k nk 上 向上移動(dòng)n行
j nj 下 向下移動(dòng)n行
h nh 左 向左移動(dòng)n行
l nl 右 向右移動(dòng)n行
Space 光標(biāo)右移一個(gè)字符
Backspace 光標(biāo)左移一個(gè)字符
Enter 光標(biāo)下移一行
w/W 光標(biāo)右移一個(gè)字至字首
b/B 光標(biāo)左移一個(gè)字至字首
e或E 光標(biāo)右移一個(gè)字至字尾
) 光標(biāo)移至句尾
( 光標(biāo)移至句首
} 光標(biāo)移至段落開(kāi)頭
{ 光標(biāo)移至段落結(jié)尾
n$ 光標(biāo)移至第n行尾
H 光標(biāo)移至屏幕頂行
M 光標(biāo)移至屏幕中間行
L 光標(biāo)移至屏幕最后行
0 (注意是數(shù)字零)光標(biāo)移至當(dāng)前行首
^ 移動(dòng)光標(biāo)到行首第一個(gè)非空字符上去
$ 光標(biāo)移至當(dāng)前行尾
gg 移到第一行
G 移到最后一行
f 移動(dòng)光標(biāo)到當(dāng)前行的字符a上
F 相反
% 移動(dòng)到與制匹配的括號(hào)上去(),{}庶骄,[]毁渗,<>等
nG 移動(dòng)到第n行上
G 到最后一行

屏幕滾動(dòng)

命令 描述
Ctrl+u 向文件首翻半屏
Ctrl+d 向文件尾翻半屏
Ctrl+f 向文件尾翻一屏
Ctrl+b 向文件首翻一屏
nz 將第n行滾至屏幕頂部,不指定n時(shí)將當(dāng)前行滾至屏幕頂部

插入文本類

命令 描述
i 在光標(biāo)前
I 在當(dāng)前行首
a 光標(biāo)后
A 在當(dāng)前行尾
o 在當(dāng)前行之下新開(kāi)一行
O 在當(dāng)前行之上新開(kāi)一行
r 替換當(dāng)前字符
R 替換當(dāng)前字符及其后的字符单刁,直至按ESC鍵
s 從當(dāng)前光標(biāo)位置處開(kāi)始灸异,以輸入的文本替代指定數(shù)目的字符
S 刪除指定數(shù)目的行,并以所輸入文本代替之
ncw/nCW 修改指定數(shù)目的字
nCC 修改指定數(shù)目的行

刪除命令

命令 描述
x/X 刪除一個(gè)字符羔飞,x刪除光標(biāo)后的肺樟,而X刪除光標(biāo)前的
dw 刪除一個(gè)單詞(刪除光標(biāo)位置到下一個(gè)單詞開(kāi)始的位置)
dnw 刪除n個(gè)單詞
dne 也可,只是刪除到單詞尾
do 刪至行首
d$ 刪至行尾
dd 刪除一行
ndd 刪除當(dāng)前行及其后n-1行
dnl 向右刪除n個(gè)字母
dnh 向左刪除n個(gè)字母
dnj 向下刪除n行,當(dāng)前行+其上n行
dnk 向上刪除n行,當(dāng)期行+其下n行
cnw[word] 將n個(gè)word改變?yōu)閣ord
C$ 改變到行尾
cc 改變整行
shift+j 刪除行尾的換行符逻淌,下一行接上來(lái)了

復(fù)制粘貼

命令 描述
p 粘貼用x或d刪除的文本
ynw 復(fù)制n個(gè)單詞
yy 復(fù)制一行
ynl 復(fù)制n個(gè)字符
y$ 復(fù)制當(dāng)前光標(biāo)至行尾處
nyy 拷貝n行

撤銷

命令 描述
u 撤銷前一次的操作
shif+u(U) 撤銷對(duì)該行的所有操作

搜索及替換

命令 描述
/pattern 從光標(biāo)開(kāi)始處向文件尾搜索pattern
?pattern 從光標(biāo)開(kāi)始處向文件首搜索pattern
n 在同一方向重復(fù)上一次搜索命令
N 在反方向上重復(fù)上一次搜索命令
cw newword 替換為newword
n 繼續(xù)查找
. 執(zhí)行替換
:s/p1/p2/g 將當(dāng)前行中所有p1均用p2替代,g表示執(zhí)行 用c表示需要確認(rèn)
:n1,n2 s/p1/p2/g 將第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g 將文件中所有p1均用p2替換
:1,$ s/string1/string2/g 在全文中將string1替換為string2

書(shū)簽

命令 描述
m[a-z] 在文中做標(biāo)記么伯,標(biāo)記號(hào)可為a-z的26個(gè)字母
`a 移動(dòng)到標(biāo)記a處

visual模式

命令 描述
v 進(jìn)入visual 模式
V 進(jìn)入行的visual 模式
ctrl+v 進(jìn)如塊操作模式用o和O改變選擇的邊的大小
在所有行插入相同的內(nèi)容如include< 將光標(biāo)移到開(kāi)始插入的位置,按CTRL+V進(jìn)入VISUAL模式卡儒,選擇好模塊后按I(shift+i)田柔,后插入要插入的文本俐巴,按[ESC]完成

行方式命令

命令 描述
:n1,n2 co n3 將n1行到n2行之間的內(nèi)容拷貝到第n3行下
:n1,n2 m n3 將n1行到n2行之間的內(nèi)容移至到第n3行下
:n1,n2 d 將n1行到n2行之間的內(nèi)容刪除
:n1,n2 w!command 將文件中n1行至n2行的內(nèi)容作為command的輸入并執(zhí)行之
若不指定n1,n2硬爆,則表示將整個(gè)文件內(nèi)容作為command的輸入

命令 描述
q[a-z] 開(kāi)始記錄但前開(kāi)始的操作為宏欣舵,名稱可為【a-z】,然后用q終止錄制宏
reg 顯示當(dāng)前定義的所有的宏摆屯,用@[a-z]來(lái)在當(dāng)前光標(biāo)處執(zhí)行宏[a-z]

窗口操作

命令 描述
:split 分割一個(gè)窗口
:split file.c 為另一個(gè)文件file.c分隔窗口
:nsplit file.c 為另一個(gè)文件file.c分隔窗口邻遏,并指定其行數(shù)
ctrl+w 在窗口中切換
:close 關(guān)閉當(dāng)前窗口

文件及其他

命令 描述
:q 退出vi
:q! 不保存文件并退出vi
:e filename 打開(kāi)文件filename進(jìn)行編輯
:e! 放棄修改文件內(nèi)容,重新載入該文件編輯
:w 保存當(dāng)前文件
:wq 存盤(pán)退出
:ZZ 保存當(dāng)前文檔并退出VIM
:!command 執(zhí)行shell命令command
:r!command 將命令command的輸出結(jié)果放到當(dāng)前行
:n1,n2 write temp.c
:read file.c 將文件file.c的內(nèi)容插入到當(dāng)前光標(biāo)所在的下面
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末虐骑,一起剝皮案震驚了整個(gè)濱河市准验,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌廷没,老刑警劉巖糊饱,帶你破解...
    沈念sama閱讀 219,539評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異颠黎,居然都是意外死亡另锋,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評(píng)論 3 396
  • 文/潘曉璐 我一進(jìn)店門(mén)狭归,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)夭坪,“玉大人,你說(shuō)我怎么就攤上這事过椎∈颐罚” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,871評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵疚宇,是天一觀的道長(zhǎng)亡鼠。 經(jīng)常有香客問(wèn)我,道長(zhǎng)敷待,這世上最難降的妖魔是什么间涵? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,963評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮榜揖,結(jié)果婚禮上勾哩,老公的妹妹穿的比我還像新娘。我一直安慰自己举哟,他們只是感情好思劳,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,984評(píng)論 6 393
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著炎滞,像睡著了一般敢艰。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上册赛,一...
    開(kāi)封第一講書(shū)人閱讀 51,763評(píng)論 1 307
  • 那天钠导,我揣著相機(jī)與錄音震嫉,去河邊找鬼。 笑死牡属,一個(gè)胖子當(dāng)著我的面吹牛票堵,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播逮栅,決...
    沈念sama閱讀 40,468評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼悴势,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了措伐?” 一聲冷哼從身側(cè)響起特纤,我...
    開(kāi)封第一講書(shū)人閱讀 39,357評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎侥加,沒(méi)想到半個(gè)月后捧存,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,850評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡担败,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,002評(píng)論 3 338
  • 正文 我和宋清朗相戀三年昔穴,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片提前。...
    茶點(diǎn)故事閱讀 40,144評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡吗货,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出狈网,到底是詐尸還是另有隱情宙搬,我是刑警寧澤,帶...
    沈念sama閱讀 35,823評(píng)論 5 346
  • 正文 年R本政府宣布孙援,位于F島的核電站害淤,受9級(jí)特大地震影響扇雕,放射性物質(zhì)發(fā)生泄漏拓售。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,483評(píng)論 3 331
  • 文/蒙蒙 一镶奉、第九天 我趴在偏房一處隱蔽的房頂上張望础淤。 院中可真熱鬧,春花似錦哨苛、人聲如沸鸽凶。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,026評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)玻侥。三九已至,卻和暖如春亿蒸,著一層夾襖步出監(jiān)牢的瞬間凑兰,已是汗流浹背掌桩。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,150評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留姑食,地道東北人波岛。 一個(gè)月前我還...
    沈念sama閱讀 48,415評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像音半,于是被迫代替她去往敵國(guó)和親则拷。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,092評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 待整理~ 1曹鸠、vim ~/.vimrc 進(jìn)入配置文件 如果不知道vimrc文件在哪煌茬,可使用 :scriptname...
    spfanlost閱讀 1,720評(píng)論 0 0
  • 目錄(?)[-] 關(guān)于Vim 1 Vim的幾種模式 啟動(dòng)Vim 文檔操作 光標(biāo)的移動(dòng) 1 基本移動(dòng) 2 翻屏 3 ...
    SunnyLeong閱讀 8,667評(píng)論 0 32
  • 最近集中讀了幾本關(guān)于Vim的書(shū),?以《Practical Vim》最為詳盡彻桃,特重新溫習(xí)并總結(jié)成篇宣旱,一來(lái)作為復(fù)習(xí)和練...
    南瓜不胡鬧閱讀 5,780評(píng)論 1 28
  • 感恩蕾蕾,讓我學(xué)會(huì)了愛(ài)比抱怨有用 感恩洋叛薯,陪我回家很溫暖 感恩媽媽姥姥做很多好吃的給我們 感恩爸爸浑吟,辛勤的為了這個(gè)...
    朱雨哲閱讀 225評(píng)論 0 0
  • day2作業(yè) colspancolspan這個(gè)標(biāo)簽可以將表格中的橫行單元格合并 rowspanrowspan這個(gè)標(biāo)...
    愛(ài)吃貓肉的老鼠閱讀 217評(píng)論 0 0