vim編輯器命令小記(一)

1、vim編輯器的模式正則表達式

vim 分爲命令模式和輸入模式,任什麼時候候vim老是處於這兩種模式之一。命令模式是vim默認的工做模式,只要按ESCvim無論處於何種模式老是進入命令模式。從命令模式進入編輯模式有6個命令,表示有6種打開方式。vim

他們分別是i,I a,A o,Oi是在光標當前位子以前插入數據,a是在當前光標以後插入數據。看似差異不大,可是若是你沒有方向鍵,只能經過命令模式來移動光標位子的時候,你就會發現若是弄不明白這2個之間的差異根本沒有辦法使用,只好在一次進入命令模式移動一個位子從新來一次。雖然如今最編輯器

流行Linux操做系統Ubuntu都能在編輯模式下使用方向鍵。可是若是可以記下來不是更好嗎?下面來一個例子,但願能幫助你記憶。ui

如今有一句話:我是SB。如今光標在''這個字上,而且vim在命令模式下,咱們要進入編輯模式,如今能夠輸入命令ia來插入不字。我固然不能認可本身是SB。因此我要說明這是incorrect,因此我要輸入i在’是’的前面插入‘不’。若是你要輸入aaccept接受我也沒有辦好,畢竟「我是不SB」這句話聽起來總感受沒有什麼說服力啊。spa

固然這個例子提及來仍是比較抽象的,只有親自檢查一下本身是否是才能記得更加深入,畢竟誰是SB誰知道對吧?若是這使你更加的困惑,也沒有關係。只要你之後想起這個例子,就應該能記起來ia的區別了,而後在實際操做中多實踐幾回就熟悉了。操作系統

至於i,I的區別就是i是在當前光標以前插入,I是在當前行以前插入數據。a,A的區別是a是在當前光標位子以後插入數據,A是在當前行的尾插入數據。還有一個雖然可能不多提到,可是用的多啊,就是o,Oo 是在當前光標所在行的下一行插入數據,O 是在當前光標說在行的前一行插入數據,想一想也是哦,小的排在後面,就在後面一行插入數據,大的是前輩排在前面,就在前面一行插入數據。it


2、光標移動的命令:io

^0:移動到當前行行首。脫字符^在正則表達式中通常是表示匹配行首,0是這一行的第0個位子嘛,在vim中這2個命令都是把光標移動到行首。ast


$:移動到行尾,$符號在正則表達式中通常表示匹配行尾的意思,在vim$命令表示把光標移動到行尾。file

eE:移動到末尾,這個移動到末尾是怎麼拆分的呢?e是按符號好比逗號、問號,英語單詞和漢字的邊界做爲邊界來拆分的,E是按空格拆分的。

[n]G :移動到n行的行首。

j:想下移動,能夠想想jump

k:向上移動,king 國王在上

l:想右移動,在k的右邊,因此向右移動

h:想有移動,在k的左邊,因此光標想左移動

其實這幾個移動光標的鍵就是多練習纔是最有效的方法。習慣了也就行了。

3、編輯命令

uU :撤銷,U是撤銷最近一次。

[n]x:刪除光標所在位子的字符,n是可選項,表示刪除n

[n]X:刪除光標以前所在位子以前的字符,n是可選項,表示刪除n


[n]dd:刪除光標所在行,n是可選項表示刪除n

dw:刪除光標所在的單詞

D:刪除光標以及光標之後位子的字符


[n]yy:複製光標所在的行,n是可選項,表示複製n

[n]YY命令和yy命令是同樣的


p(p):把粘貼版內的內容粘貼到光標所在行的下一行

P(P):吧粘貼版的內容粘貼到光標所在行的前一行

p是粘貼paste,大小的區別和o同樣,大的是前輩排在前面,P表示把粘貼版的內容粘貼到光標所在行的前一行,p是後輩排在後面,小p表示把粘貼版的內容粘貼到光標所在行的後一行。

4、退出與保存

命令:w就是保存。w 就是write的意思,就算把緩衝區的內容寫入本地磁盤文件。

q:就是quit 退出的意思。

!就是強制的意思,好比:w!就是強制寫入的意思。

:!q就是不保存強制退出。

:!w就是強制保存,若是文件已經存在這覆蓋。

:w filename 把編輯以後的文件寫入文件名爲filename的文件。

相關文章
相關標籤/搜索