很多強者同學都說vim好用或是資工系(所)不會用vim很丟臉,顆顆,老實說用了不少IDE,感覺只要用的習慣就好啦!
雖然說很多IDE很厲害,不過很多時候還是避免不了要用到vim,話說我的vim基本功實在很差,每次用vim編輯的時候都很像智障,該是來筆記的時候惹!!
1. vim一開始最需要學習的就是怎麼去移動游標,之前只會用方向鍵實在有點丟臉!
常用游標移動方式 |
h |
在一般模式下,游標往左邊的方向移動一格,如果在前面加上數字(ex:5h)的話,就會往左5格 |
j |
在一般模式下,游標往下邊的方向移動一格,如果在前面加上數字(ex:5h)的話,就會往下5格 |
k |
在一般模式下,游標往上邊的方向移動一格,如果在前面加上數字(ex:5h)的話,就會往上5格 |
l |
在一般模式下,游標往右邊的方向移動一格,如果在前面加上數字(ex:5h)的話,就會往右5格 |
gg |
把游標一到第一行 |
G |
把游標一到最後一行 |
0 or Home |
把游標移到這一行的最前面的字元 |
$ or End |
把游標移到這一行的最後面的字元 |
[Ctrl]+f |
等同於Page down |
[Ctrl]+b |
等同於Page up |
2. 在IDE中常會用到搜尋的功能,在vim中搜尋我覺得比IDE還要方便(不用離開鍵盤)
常用的搜尋方法 |
/word |
向游標之下尋找一個名稱為 word 的字串 |
?word |
向游標之上尋找一個名稱為 word 的字串 |
n |
小n代表/word或?word搜尋完後,繼續往下搜尋 |
N |
大N代表/word或?word搜尋完後,繼續往上搜尋 |
:set hlsearch |
hlsearch(high light search)搜尋前先set好後,/word或?word會把所有關鍵字high light |
3. 最讓我驚訝的部份,就是vim可以用指令把所有的word1變成word2
常用的取代指令 |
:n1,n2s/word1/word2/g |
從n1行到n2行間把找到的word1取代成word2(ex::100,200s/word1/word2/g) |
:1,$s/word1/word2/g |
從第1行到最後一行間把找到的word1取代成word2(ex::1,$s/word1/word2/g) |
:1,$s/word1/word2/gc |
功能同上(ex::1,$s/word1/word2/gc),但是取代前會給使用者確認是否取代 |
4. 刪除,複製,貼上應該是除了怎麼移動游標之外最重要的部份吧!畢竟code總是貼來貼去
常用的刪除,複製,貼上 |
x |
向後刪除一個字元 |
X |
向前刪除一個字元 |
dd |
刪除一整行(超好用) |
ndd |
n代表數字(ex:5dd),代表刪除游標後n整行 |
yy |
複製游標所在的那一行(超好用) |
nyy |
n代表數字(ex:5yy),代表複製游標厚n行 |
p |
用yy或nyy複製後,從游標下一行貼上 |
P |
用yy或nyy複製後,從游標上一行貼上 |
u |
復原前一次動作 |
[Ctrl]+r |
重作上一個動作 |
5. 從一般模式進入編輯模式,不能只會用i
常用的插入模式 |
i |
從目前所在的游標處開始插入 |
I |
從目前所在行的第一個非空白字元開始插入(從所在行的頭開始插入) |
a |
從目前游標所在的下一個字元開始插入 |
A |
從目前游標所在的行最後一個字元開使插入 |
o |
在該行的下一行開始插入 |
O |
在該行的上一行開始插入 |
6. 區塊地選擇,搭配區塊複製,自動排版,多行註解使用
常用的區塊選擇 |
v |
以字元為單位,游標走到哪裡,區塊就選到哪裡 |
V |
以行為單位,游標走到哪裡,行區塊就選到哪裡 |
[Ctrl]+v |
長方形區塊選擇,常用在多行註解 |
y |
把反白選取的區塊給複製起來 |
d |
把反白選取的區塊給刪除掉 |
7. 一些小技巧
常用的小技巧 |
多行註解 |
[Ctrl]+v(長方形區塊選擇)+選擇區塊+I+註解字元(ex://)+Esc |
多行註解消除 |
[Ctrl]+v(長方形區塊選擇)+選擇區塊+l+x |
程式碼整頁排版 |
gg+v+G+= |
:!command |
暫時離開vim到指令列模式下執行 command 的顯示結果(ex::!ls) |
基本上上表都是參考鳥哥來的,濃縮整理了一下我需要的一些vim指令XD!!
沒有留言:
張貼留言