Vim--“神一樣的編譯器”
Vim編譯器被譽(yù)為“神一樣的編譯器”,為什么有這樣的美譽(yù),那就是因?yàn)樗茏屇愕碾p手全神貫注的在鍵盤上進(jìn)行編程,而不是在鍵盤和鼠標(biāo)來回切換,這樣的好處是能提高你的開發(fā)效率,讓你的工作更加專注。當(dāng)然能讓你雙手一直在鍵盤上是因?yàn)樗目旖萱I多到?jīng)]朋友,剛上手的時(shí)候我們都是一樣的,覺得記得快捷鍵有些多,但是用熟練之后,真的是飛一樣的感覺。
下面我來介紹一下vim編譯器的基本操作和快捷鍵:
進(jìn)入Vim編輯狀態(tài):
在控制臺(tái)輸入vim 1.txt來創(chuàng)建一個(gè)1.txt文本。
創(chuàng)建1.txt之后,進(jìn)入到1.txt的文件中,
在文件中默認(rèn)是命令行模式,按鍵盤的"i"鍵進(jìn)入"Insert"編輯模式,會(huì)在光標(biāo)位置插入文本;按鍵盤的"a"鍵進(jìn)入"addition"追加模式,光標(biāo)會(huì)停留在文本最后的位置。切換命令行模式和編輯模式:
默認(rèn)打開文本是進(jìn)入命令行模式的,如果想進(jìn)入編輯模式按鍵盤的“i”或者“a”,上面有介紹,這里不多贅述。如果想從編輯模式回到命令行模式,按鍵盤上的"ESC",
如果想退出1.txt可以在命令行模式下輸入":q"即不保存退出,如果想保存編輯的文本則輸入":wq"即保存退出。終端命令行
在終端控制臺(tái)中想查看1.txt的內(nèi)容可以輸入:cat 1.txt,這樣1.txt文本中的內(nèi)容將打印到終端控制臺(tái)。Vim拷貝,粘貼和刪除
拷貝命令:yy/yw
yy:代表拷貝一行字符串。
yw:代表拷貝一個(gè)字符串(遇到空格停止拷貝)。
粘貼命令:p
p:將拷貝的字符串換行粘貼。
刪除命令:dd/dw
dd:代表刪除一行字符串。
dw:代表刪除一個(gè)字符串(遇到空格停止刪除)。
注:拷貝,粘貼和刪除命令都是在命令行模式下執(zhí)行而非編輯模式下!Vim光標(biāo)移動(dòng)
左下上右:h/j/k/l
跳到文件頭:gg(光標(biāo)會(huì)停到文件第一個(gè)詞第一個(gè)字母的前面)
跳到文件尾:G(光標(biāo)會(huì)停到文件最后一個(gè)詞第一個(gè)字母的前面)
移動(dòng)到行首:^
移動(dòng)到行尾:$
按單詞移動(dòng):向前w/2w/3w... 向后b/2b/3b...
注:Vim光標(biāo)移動(dòng)命令是在命令行模式下執(zhí)行而非編輯模式下!-
Vim查找與替換
查找關(guān)鍵字:/關(guān)鍵字(如果整篇文本中有多個(gè)關(guān)鍵字,如:查找的是"uu",整篇文本里有3個(gè)"uu",查找到第一個(gè)關(guān)鍵字之后想快速跳到第二個(gè)關(guān)鍵字,快捷鍵是"n",如果想跳回上一個(gè)關(guān)鍵字,快捷鍵是"shift+n")查找與替換:
替換整篇文本中的關(guān)鍵字::%s/關(guān)鍵字/替換字/gc (%:代表整篇文本;s:代表"search"查找;關(guān)鍵字/替換字:可以使字符串也可以是正則表達(dá)式;g:代表查找到第一個(gè)關(guān)鍵字之后繼續(xù)查找;c:每次替換都需要用戶進(jìn)行確認(rèn))替換某個(gè)范圍中的關(guān)鍵字::21,23s/關(guān)鍵字/替換字/gc(21,23:代表21行到23行,其它的和上面一樣,不多贅述)
顯示行號(hào)::set number,輸入之后你的vim編譯器會(huì)顯示文本行號(hào)
-
Vim多窗口
在寫C語言代碼的時(shí)候要參考頭文件中定義的接口,如果要是單窗口寫起來就會(huì)很麻煩,所以Vim中要實(shí)現(xiàn)多窗口來進(jìn)行隨時(shí)查看,提高效率。分窗口::split/vsplit(split:將屏幕橫向切成兩半;vsplit:將屏幕縱向切成兩半)
窗口間跳轉(zhuǎn):ctrl+ww/ctrl+w[hjkl](ctrl+ww:從第一個(gè)窗口跳轉(zhuǎn)到下一個(gè)窗口;ctrl+w[hjkl]:如果有多于2個(gè)窗口,可以通過hjkl左下上右這種方式來控制跳轉(zhuǎn))
(橫向分屏)放大某個(gè)窗口:ctrl+w 松開ctrl鍵 ctrl+-(這個(gè)組合按鍵會(huì)讓光標(biāo)所在的窗口變到最大,另一個(gè)窗口只留一行顯示區(qū)域)
(豎向分屏)放大某個(gè)窗口:ctrl+w shift+|(這個(gè)組合按鍵會(huì)讓光標(biāo)所在的窗口變到最大)
平均窗口區(qū)域:ctrl+w 松開ctrl鍵 =(這個(gè)組合按鍵會(huì)讓所有窗口變得一樣大,并等分屏幕)
關(guān)閉窗口::close(關(guān)閉光標(biāo)所在的窗口)