太簡單的就不說了,随便找手冊可以找到,這裡就說說一些小技巧吧,也是最近使用給逼出來的學習,呵呵,不過挺友善的。
1.
全局替換
(1) v + G + $ 標明全部,然後輸入 :s/原始字元串/目标字元串/
(2) :%s/原始字元串/目标字元串/
2.
清除頁面中所有行尾的空白符:
:%s/\s\+$//
3. 清除所有空白
:%s/\(\s*\n\)\+/\r/
4.
去掉所有的//注釋
:%s!\s*//.*!!
5. 去掉所有的/* */注釋
:%s!\s*/\*\_.\{-}\*/\s*! !
6.
做某些内部資料重複替換
有些時候我們需要組織一些批量的資料進行指令行的執行,比如我們需要利用前面的資料生成後面的資料,例如這樣的資料:
/var/database/aaa.txt
/var/database/bbb.txt
/var/database/ccc.txt
我想變成一個個的指令,比如變成一個個複制指令,複制到但前目錄,那麼可以執行:
:%s/\(.*base\/\)\(.*\.txt\)/cp
\1\2 \.\/\2/
變成了:
cp /var/database/aaa.txt ./aaa.txt
cp /var/database/bbb.txt ./bbb.txt
cp
/var/database/ccc.txt ./ccc.txt
這裡關鍵是子模式的使用: () 中間的,\1
代表第一個找到的子模式,\2代表第二個,以此類推,vim裡面的()必須轉義,跟其他語言不一樣
7.
增加注釋(一個操作應用在多行)
比如需要增加#或者是//這種注釋:
Ctrl + v 定位到開始行,然後標明需要的行,然後執行 I
指令,然後輸入 # 或 //,然後按 Esc鍵兩次,即可把注釋操作應用到所有標明的行,記住標明不能使用v指令,而應該使用Ctrl + v
(清除注釋請參考上面的方法)(v是按行標明,Ctrl + v 是按照列標明)
8. 對齊行
v 標明需要整齊的行,輸入 =
進行歸整
9. 打開多視窗
在vim中使用 :sp 檔案名 打開行視窗(橫),使用 :vsp 檔案名 打開列視窗(豎),使用 :q
關閉目前視窗,使用 :qa 關閉所有視窗,使用 Ctrl + w 在各個視窗中進行切換。
最大化視窗:Ctrl + w 激活某個視窗,然後 Shitf
+ - 進行最大化
改變視窗到指定行高度:Ctrl + w 激活視窗,10(需要變成的行大小數字),Shift +
-,執行改變
增加若幹行高度:Ctrl + w 激活視窗,10(需要增加的行大小數字),Shift + +,執行改變
10.
字元串/變量提示
在輸入内容狀态,按 Ctrl + P 則顯示所有本頁中定義的字元串,如果輸入字元串部分内容,然後按 Ctrl + p
則把所有你輸入字元串開頭的内容顯示出來。在輸入狀态下按 Ctrl + x 能過檢視所有有效的其他方式
本文轉自葉金榮51CTO部落格,原文連結:http://blog.51cto.com/imysql/308301,如需轉載請自行聯系原作者