VI的使用重點

下面很多可以看,但是助益最大的一句話是!

「ESC :沒事多按逃脫鍵,有益身體健康。」

自從看到這句話之後我的vi速度變快了...



一。從命令到編輯模式
a :將游標放到目前游標後一個字元,開始文字編輯模式。insert
i :將游標放在目前游標位置,開始文字編輯模式。append
o :將游標放到下一行起始位置,開始文字編輯模式。open new line
比較常用就是i,a,o,I,A,O了,將來多試幾次就好了,就很熟悉了。

二從編輯到命令
ESC :沒事多按逃脫鍵,有益身體健康。

三命令模式中的其他命令
在命令模式中的按鍵就很多了,這些需要好好熟練一下了。
在vi命令模式裡面,有的按鍵按完後他還是在命令模式,有的改個字元或copy/paste後
又回到命令模式,有的就一去不回頭變成文字編輯模式了。
有些按鍵會把你原本想改的內容做特殊的定位,例如要改個word,也會把你帶離命令模式

檔案
:q 離開vi
:e xxxx 編輯xxxx
:w 存檔
:w xxxx 另存檔案xxxx
:q! 不存檔強迫離開
:w! 強迫存檔
:wq 存檔與離開

游標移動
h,j,k,l 往左,往下,往上,往右
0 到行首
$ 到行尾
^ 到這行的第一個非空白字元

w,W 到下個字, 到下個非空白的字
b,B 回上個字, 到上個非空白的字
e,E 到這個字的字尾, 到下個非空白的字字尾

Ctrl-F ,Ctrl-B 往後一頁,往前一頁
G 到檔尾
:n 到第n行 (所以到檔頭就是:1)
Ctrl-G 顯示第幾行
J 合併兩行

搜尋與取代
/
/pattern 尋找pattern
?pattern 往上尋找pattern
n 再往下尋找
N 再往上尋找
:s/patrn/str/cgi搜尋patrn取代str
其中:跟s間必需指定範圍(range)沒設範圍就是游標這行
1,10 表示 1-10行
% 表示整篇
最後cgi
c 表示confirm尋問
g 表示global全部
i 表示ignore不分大小寫

常用字元字串處理
cc 改變整行
dd 砍掉整行
yy 拷貝整行(yank whole line)
p,P 貼上(paste) 你最近砍掉或拷貝的

cw 改變一個字
d$ 砍到行尾
ye 拷貝到這個字尾

r,R 取代一個字元, 取代整行
u,U undo 最後修改,UNCHANGE整行
x,X 砍一個字元, 往回砍個字元(等於按backspace)

重複的處理
. 重複剛剛的命令或輸入

這些試試看
ce, 3x, 5dd, 10w, d0, y$, 5G

indentation
>> 往右一個indent
<< 往左一個indent

vim的多檔與多窗
:e xxx 編輯xxx
:buffers 列出所有編輯檔
:bn n是數 b1 b2 b3....表是開第n個buffer
:bdn n是數:bd1 :bd2 表示殺掉第n個buffer

:new 一個水平新窗
:vnew 開個垂直新窗
:only 只留一個窗窗

C-w j k h l 移到下 上 左 右 窗去


轉自
http://www.study-area.org/cyril/opentools/opentools/x62.html

沒有留言: