Vi 極簡入門

1 閒話幾句

vi是一個古老而有名的編輯器了,儘管如今有現代的編輯器,不過彷佛仍然有學習vi的必要,一來是方便,Linux和Mac默認都會安裝。其次顯得比較專業。程序員

個人目標是簡短地介紹天天會用到東西,好了閒話很少說,進入正題。正則表達式

2 進入正題

啓動

vi play.txt編輯器

退出

強制退出::q!
保存退出::wq學習

理解兩種模式

一開始vi彷佛難以理解,也許都不知道怎麼退出。理解了兩個模式就簡單了,命令模式和編輯模式。剛啓動的時候是命令模式,i就切換到編輯模式,ESC按鍵切換到命令模式。spa

命令我理解有兩種,底行命令用:開頭,會顯示在底部。操做文本的經常使用命令就直接輸入。有的書介紹是三種模式,我這裏統一成兩種模式,都是命令。3d

下圖引自《Vim經常使用基礎命令》,參考。
code

經常使用操做

除了輸入文本外,一般是在命令模式下,適應了就很簡單了。rem

01 基本操做

i進入編輯模式,就能夠輸入了,光標按鍵也是能夠的。很簡單吧。get

刪除行:命令模式下,dd3dd就刪除3行。it

到此就能夠簡單使用vi了。

02 更多操做

快捷移動

文件頭:gg
文件尾: G

段移動:^f, ^b

行頭:0, g0
行尾: $, g_

好了,就這麼多了,幾個命令須要操做適應一下。

查找和替換

查找::/example, n繼續下一個。?example/example也能夠的。由此能夠看出:,/,?三個符號均可以開啓底行命令。

替換: :s/old/new

全文替換::%s/old/new/g, 注意末尾的g,這個實際是正則表達式。

逐個替換,這個比較麻煩點,具體的命令可按以下順序執行:

/which 查找

cwwhat[ESC] chang word

n 下一個,無需替換

n 繼續下一個,須要修改

. 點是用來重複上一次操做,即cwwhat[ESC]

複製粘貼,普通人的最愛

粘貼:p
複製:yy, yank,大概是快的意思吧。

undo

undo: u
redo: U^r

塊操做

v進入塊狀態,國標按鍵就能夠選擇塊了。d就能夠刪除塊了。
^v是列塊。

最後,塊註釋,程序員的最愛

^v選好列塊後,I, 注意是大寫,輸入#,而後兩次ESC,就能夠塊註釋了。
反註釋,一樣選好列塊,d就能夠了。

固然,這個不如現代編輯器的一鍵操做方便,不過vi的靈活性是其餘編輯器沒法比的。

3 總結

我只介紹了基本的操做,命令都是英語單詞首字母,容易記憶,多用就熟了。

更多高級的,等我有了體會再寫吧。

請拍磚或者補充。

相關文章
相關標籤/搜索