前言
Vim是一個超牛的編輯器,命令功能十分強大 。而且這些命令大都可以進行組合 ,比如,9yy命令表示復制9行內容,9表示要復制的行數,同樣100dd表示刪除100行,當數字和命令合作的時候,就比單純的命令更強大,同樣,c命令表示擦除,w表示word即單詞,那麼cw就表示擦除一個單詞,c5w就表示刪除5個單詞等等。將這些簡單命令合成在一起,就可以發揮出難以想象的強大功能。
宏命令(Macros)
高級一些的編輯器,都會包含宏功能,vim當然不能缺少了,在vim中使用宏是非常方便的:
:qx
開始記錄宏,並將結果存入寄存器x
q
退出記錄模式
@x
播放記錄在x寄存器中的宏命令
稍微解釋一下,當在normal模式下輸入:qx後,你對文本的所有編輯動作將會被記錄下來,再次輸入q即退出了記錄模式,然後輸入@x對剛才記錄下來的命令進行重復,此命令後可跟數字,表示要重復多少次,比如@x20,可以重復20次。這個在文本的批處理中是非常有用的。
同時編輯多個文件
在vim眾多的插件中,有一個叫minibuffer的插件,就是下面所說的標簽頁功能了,可以支持同時編輯多個文件。
標簽命令
:tabe fn
在一個新的標簽頁中編輯文件fn
gt
切換到下一個標簽頁
gT
切換到上一個標簽頁
:tabr
切換到第一個標簽頁
:tabl
切換到最後一個標簽頁
:tabm [N]
把當前tab移動到第N個tab之後
對,正如你所想象的那樣,跟eclipse, ue等的標簽頁是一個意思!
窗口命令
ctrl+w s
水平分割窗口
ctrl+w w
切換窗口
ctrl+w q
退出當前窗口(由於同時有多個文件,此命令不會影響其他窗口)
ctrl+w v
垂直分割窗口
其他
vim在保存之前不會對文件做實際的修改,只是加載到緩沖區中,對文件的編輯其實是對緩沖區的編輯,直到:w時才會存入物理文件。
:e file
把file加載到新的緩沖區中
:bn
跳轉到下一個緩沖區
:bd
刪除緩沖區(關閉文件)
:sp fn
分割窗口,並將fn加載到新的窗口中
退出編輯器
:w
將緩沖區寫入文件,即保存修改
:wq
保存修改並退出
:x
保存修改並退出
:q
退出,如果對緩沖區進行過修改,則會提示
:q!
強制退出,放棄修改