標籤:檔案 for io re line c
一。從命令到編輯模式
a :當前單詞後面插入Append
i :當前位置插入Insert
o :當前行下新開一行插入Open new line
A :當前行尾插入Append
I :當前行首插入Insert
O :當前行上新開一行插入Open new line
比較常用就是i,a,o,I,A,O了,將來多試幾次就好了,就很熟悉了。
二。從編輯到命令
ESC :
ctrl+[ :能起到一樣的效果,手指短的同學可以用它代替esc。
三。命令模式中的其他命令
在命令模式中的按鍵就很多了,這些介紹參加高速編程基本要用到的,需要練熟。
在vi命令模式裡面,有的按鍵按完後他還是在命令模式,有的改個字元或copy/paste後
又回到命令模式,有的就一去不回頭變成文字編輯模式了。
有些按鍵會把你原本想改的內容做特殊的定位,例如要改個word,也會把你帶離命令模式
檔案
:q 離開vi Quit
:e xxxx 編輯xxxx Edit
:w 存檔 Write
:w xxxx 另存檔案xxxx
:q! 不存檔強迫離開
:w! 強迫存檔(對於唯讀檔案不加驚嘆號是不能寫入的)
:wq 存檔與離開 Write ‘n Quit
:bd 關閉當前視窗
遊標移動
h,j,k,l 往左,往下,往上,往右 這四個不是英文單詞的縮寫,而是為了讓手指能夠更快的控制游標的移動
0 到行首
$ 到行尾
^ 到這行的第一個非空白單詞
w,W 到下個單詞, 到下個非空白的單詞forWord
b,B 回上個單詞, 到上個非空白的單詞Backword
e,E 到這個單詞尾, 到下個非空白的單詞尾End
Ctrl-F ,Ctrl-B 往後一頁,往前一頁
G 到檔案尾
:n 到第n行 (所以到檔案頭就是:1)
Ctrl-G 顯示當前在第幾行
J 將下面行加到當前行Join
搜尋與取代
/
/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 改變整行Change
dd 剪下整行Delet
yy 複製整行Yank
p,P 粘貼(paste) 你最近剪下或複製的Put
cw 改變一個字Change Word
d$ 砍到行尾Delete $
ye 拷貝到這個字尾Yank e
r,R 取代一個字元, 取代整行Replace
u,U 撤銷最後修改,撤銷整行Undo
x,X 砍一個字元, 往回砍個字元(等於按backspace)
重複的處理
. 重複剛剛的命令或輸入
以上命令很多是可以自己組合的,
有個普遍的規律是單個命令重複兩次就是針對整行,後加w就是針對一個單詞,中間夾一個數字就是重複的次數
比如c5w改變5個單詞,d3d刪除三行
這些試試看
ce, 3x, 5dd, 10w, d0, y$, 5G
indentation
>> 往右一個indent
<< 往左一個indent
== 自動縮排當前行
=G 將當前行及後面所有行都自動縮排
gg=G 先移到檔案首,然後。。。嘿嘿,全文縮排
C-w j k h l 移到下 上 左 右 窗去