天天看點

一些使用Vim的小技巧(轉貼)

太簡單的就不說了,随便找手冊可以找到,這裡就說說一些小技巧吧,也是最近使用給逼出來的學習,呵呵,不過挺友善的。

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,如需轉載請自行聯系原作者