歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 5分鐘學會vim

5分鐘學會vim

日期:2017/2/28 17:57:26   编辑:Linux教程
一。游標移動(當然是在普通模式下,不明白?多按幾次Esc就是了。)
左h 右l,上j 下k。(對了就是鍵盤上右手放的基本位置。)
Ctrl+f 向前(下)翻頁(f=forward)
Ctrl+b 向後(上)翻頁(b=backward)
0 是數目字 0 而不是英文字母 o。或是 Home 鍵,移至行首,(含空白字)。
$ 移至行尾,或 End 鍵。要 Shift 鍵。(用不太正確的說法簡單記憶$就是行尾的意思,記住這個 對以後有用)
G 移至檔尾(全文最後一行的第一個非空字元處)(我就假象g=go,大寫g就是go大了,go到最後)
gg 移至檔首(全文第一行之第一個非空白字元處)
:n 移至第 n 行行首。或 nG。(vim裡面可以用數字表示第幾或者執行幾次命令,大概就這個意思了) n| 移至第 n 個字元(欄)處。注意,要用 Shift 鍵。n 是從頭起算的。
好了,平時最常用的移動命令就這些了。什麼?還不滿足?請立刻離開本文檔,這是給想在5分鐘內快速開始使用vim簡單編輯文檔用的人看的。
二。插入(開始編輯了)
i 在游標所在字元前開始輸入文字(insert)。
a 在游標所在字元後開始輸入文字(append)。
o 在游標所在行下開一新行來輸入文字(open)。
夠了,3個命令已經讓我頭大了。
三。刪除(還是在普通模式下)
x 刪除游標所在處之字元,在中文指一個中文字。
dd 刪除一整行(delete line)。(注意括號裡的英文單詞,他們可以幫助記憶)
dG 刪至檔尾。(還記得麼G=go大了)
Ok,還是3個命令,其實只要x也能用阿,一直按住試一下:)。
四。取代和還原
r (replace)取代游標所在處之字元。(實驗一下用鍵盤輸入":r !date")
u 這個太重要了,就是 undo,傳統的 vi 僅支援一次 undo,Vim 及 elvis 就不只了,Vim 幾乎是 沒有限制的。
U 在游標沒離開本行之前,回復所有編輯動作。
Crtl+r 這個也是很重要,就是 redo 鍵。
五。加上數字
原文很有意思,摘錄如下:
喔!騷到 Vim 的癢處了,這是 Vim 一個非常騷包的功能,只此一家別無分號(當然同源的 ed,sed 等不在此限)。就是您可以在大部份的指令前加上數目字,代表要處理幾次的意思。以下用實例來說明比較清楚。
5dd 刪除游標所在處(含)起算以下五行內容。妙吧!
5i A 然後按 Ecs,插入五個 A。中文也可以!
5G 游標移至第五行,是從檔首開始起算。和 :5 作用相同。
六。復制(yank)
yy 複製游標所在行整行。或大寫一個 Y。(對照dd)
y$ 複製至行尾。含游標所在處字元。
yG 複製至檔尾。
p (paste)小寫 p 代表貼至游標後(下)。
. 是英文句點.只要是編輯動作(移動游標不算,冒號命令也不算)都可以按英文句點來重複,要重 複幾次都可以。
七。搜尋和替換
/ 在 c-mode 的情形下(按下:就可以了),按 / 就會在左下方出現一個 /,然後鍵入您要尋找的字 串,按個 Enter 就會開始找。? 和 / 相同,只是 / 是向前(下)找, ? 則是向後( 上)找。
n 繼續尋找。
N 繼續尋找(反向)。
替換的命令格式為
:[range]s/pattern/string/[c,e,g,i]
range 指的是範圍,1,7 指從第一行至第七行,1,$ 指從第一行至最後一行,也就是整篇文章 ,也可以 % 代表。還記得嗎? % 是目前編輯的文章,# 是前一次編輯的文章。
pattern 就是要被替換掉的字串,可以用 regexp 來表示。
string 將 pattern 由 string 所取代。
c confirm,每次替換前會詢問。
e 不顯示 error。
g globe,不詢問,整行替換。
i ignore 不分大小寫。
g 大概都是要加的,否則只會替換每一行的第一個符合字串。可以合起來用,如 cgi,表示不分大小 寫,整行替換,替換前要詢問是否替換。
[實例] :%s/Edwin/Edward/g
這樣整篇文章的 Edwin 就會替換成 Edward。
唉這個替換可真麻煩,不過如果你暫時用不著就別管他了。嘿嘿。
八。標記(書簽)功能
這個有用哦。
mx x 代表 26 個小寫英文字母,這樣游標所在處就會被 mark。
`x 回到書籤原設定位置。` 是 backward quote,就是 Tab 鍵上面那一個。
'x 回到書籤設定行行首。' 是 forward quote,是 Enter 鍵隔壁那一個。
這裡舉個簡單的子,請隨便開一個現成的檔案,把游標移到任一個位置,然後按 ma 做個 mark,再按大寫 G 移到檔尾,然後按 'a 看現在在什麼地方?
下面移動光標到任意位置,實驗一下y`a,然後換個地方p一下。呵呵如何,不用鼠標來拖動也可以拷貝粘貼一個塊了吧。
好了就這麼多,5分鐘過去了,最後就是打開文件用:e 。下面開始去google更高級的vim教程吧。
:q 如本文有修改而沒存檔,會警告,且無法離開。(quit)
:q! 捨棄所有修改,強迫離開。
:wq 存檔後離開。縱使檔案未曾修改也是會再存一次檔。
:x 也是存檔後離開,但如果檔案沒有修改,則不會做存檔的動作。
ZZ 和 :x 完全一樣,隨您高興用哪一個。
:w 檔名 另存他檔。不加檔名就是寫入原檔。(write)
Copyright © Linux教程網 All Rights Reserved