VIM學用10分鐘極速入門

VIM是我在linux上最常用的編輯器了。啓動它只需要vim 文件名就可以進入或者新建一個文件並進入編輯狀態。

現在寫篇極速入門來幫助新手入門。往往編輯器的教程都是:功能1234,分類1234,過於考驗人的記憶力。這裏用一個案例教學法以及助記詞來幫助記憶。

一、生成文件並編輯。

1、打開一個文件,剛纔說了,比如輸入你的文件名hello,vim hello,進入編輯。

2、如果這是一個新文件,一般你是要編輯了,那麼i:插入,或者a:在當前光標之後輸入。i=insert a=append

3、隨便輸入點什麼,我們先保存一下:按esc鍵,退出當前的編輯模式,就進入命令模式。vim和vi一樣都分編輯模式和命令模式,這一點和所見即所得的word有點不一樣。因爲沒有按鈕和菜單嘛,你不進入一個命令模式怎麼操作各類指令……OK,保存的話,先要輸入英文冒號:   告訴vim我要輸入點什麼指令了,然後輸入w (w=write),回車,就保存了。冒號和w都會在文件的最下邊顯示出來。

q是quit的縮寫。

一個問題:怎麼另存爲?:w filename,比如要存爲hello2,就   :w hello2  回車,那麼就存爲了hello2文件,並且開始編輯hello2了。

4、退出:編輯完了,退出。還是在命令模式下(如果不確定自己是不是就多按兩次ESC),輸入:q,就退出了。如果放棄最近的保存,那麼需要用一個歎號告訴vim你是強行退出的。   :q!    如果先保存再退出,   :wq   還有一個強行保存:w!  這是爲了牛用戶root,即使文件是隻讀的,用歎號也能保存,但是小心啊,有風險啊。所以vim前經常的一個操作是:cp hello hello.bak  先做個備份比較保險,不然ip地址profile什麼的萬一搞錯了可是沒人幫你找回來的。

作爲編輯一個文件的最後一步,vim還支持一個非常快的操作,命令模式下輸入ZZ,就寫入退出了。more一下看看?more !$,看剛纔編輯的文件。

好,一個新文件就完成了。那麼我們編輯一箇舊文件。就先複製一個profile文件,cp /etc/profile /home/user1/profiletest.bak 解解悶。

二、編輯已有文件。

1、打開vim profiletest.bak。

2、上下滾動。最常用的滾動是單行下翻,是j鍵。那麼,上下左右分別對應的是kjhl,就是科技含量的開頭4個字母,很有科技感……好的,其實也很好記憶,H和L,分別在左右,但是用得少一點,所以離最常用的手指遠,而次常用的光標向上移動一行,就是右手中指。

3、查找單詞。這麼多行,一定有個單詞是PATH,我們快速跳轉到PATH吧。命令模式中輸入  /PATH  回車   就開始尋找PATH了。/+要搜索的單詞 是查找單詞命令。查到一個,找下一個的命令是n  shift+n是找上一個。

4、找到之後,跳到這個行的末尾……是不是有點按L鍵太多了?命令模式 輸入$,就跳到末尾了。助記法:拿錢($)就結束。

5、翻頁。當然你也可以憑藉良好視力,自己找,上下翻頁就行了,下翻一頁是ctrl+f 上翻是ctrl+b。助記法:出手(ctrl)相助,翻(f)不(b)翻?還有個方式是上下翻半頁,下翻是ctrl+d,上翻是ctrl+u,助記法:出手(ctrl)相助,上(up)下(down)各半。

6、輸入一些東西在行尾,我想複製這一行,加一個註釋。複製一行簡單,命令模式yy   就複製了。到下一行行首,命令模式p,就OK了。助記法:易於(yy)貼(y)

7、其實我輸入錯了,想刪除一行,怎麼辦?命令模式dd  快速delete。這個命令太好記了……如果你不停的輸入d,就會發現文件刷刷的消失。

8、回退/撤銷操作。剛纔的刪除又錯了,多刪除一行,怎麼回退?命令模式u  u=undo

9、我不想刪除這麼多,刪除一個字符,命令模式x

x會刪除光標之後的字符,X會刪除光標前面的。

x$,會刪除當前光標到行末的字符。如何刪除到行首的?跳到行首,命令模式^,^$分別是正則表達式中,代表行首和行尾的匹配字符,由於它們各自在6和4的上檔鍵,可以聯想到一句俗語:四六不分 或 四六不懂。形容什麼都不懂、言語粗魯。

10、快速跳轉。按照剛纔操作,還有一些命令也比較簡單可以學習:w b:w是移動到下一個單詞最前面(word),b是移動到上一個單詞最前面(backward a word),e是移動到本單詞末尾(end)。

11、複製粘貼。最後來學習一下任意段落的複製就差不多啦,我想從當前行復制一部分,然後到另外一個地方粘貼,操作序列如下:

進入命令模式, ctrl+v 移動光標或者使用命令讓光標跳轉到單詞末、行末、下一行末,這時光標走過的地方就會反向顯示,選好了之後,按y,現在複製過的東西就已經到了剪貼板。

移動光標到要粘貼的地方,按p,或者P,就把內容粘貼到光標後,或者光標前了。

12、組合命令。如果要移動多行,多個單詞,多個半頁(這個很怪),就先輸入數字,然後帶上操作字符。比如向下移動3行,3j;向前移動4個單詞到單詞前面,4b;同理刪除多行:4dd。小心操作這個刪除命令啊,錯了就u恢復。

作爲一個程序員,往往要看行號的,那麼命令模式:set number,切換到顯示行號模式。:set nonumber切換到不顯示行號模式。

這就有一個新問題,我能跳轉到某一行嗎?可以。命令模式下輸入冒號行號。:3,就是跳轉到第3行。命令模式gg 或者:1  跳轉到第一行。命令模式shift+g  或 :$ 跳轉到最後一行。g就是goto/go啊,好快。

一篇極速入門就完成了,如果你覺得有幫助,麻煩點個贊哦。:)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章