Vim使用介紹

?vim是什么?

Vim是一個類似于Vi的著名的功能強大、高度可定制的文本編輯器,在Vi的基礎(chǔ)上改進(jìn)和增加了很多特性。Vim是自由軟件。

為什么使用Vim?

在我們剛接觸Vim的時候,各位小伙伴肯定都發(fā)現(xiàn)了,Vim的操作相當(dāng)?shù)姆爆?,光記住基本的操作就要好久好久,入門難度相當(dāng)?shù)母?,那么,為什么那么多程序員還要使用Vim呢,在我看來,下面幾點點算是Vim受廣大程序員歡迎的原因了吧:

1.Vim通用性強,學(xué)習(xí)vim你無需擔(dān)心到了其他平臺需要學(xué)習(xí)新編輯器。

2.可擴(kuò)展性強。你可以只用它來編輯配置文件,也可以將它當(dāng)做你的開發(fā)平臺。

3.功能強大。它的工作方式與自然語言類似。即使一開始你對vim一無所知,經(jīng)過一段時間的使用學(xué)習(xí),很快也會成為牛人。

4.占資源少,我家那個老筆記本開Vim簡直就是秒開。。開Atom什么的就悲劇了。。

不過在這里我還是奉勸各位像我一樣的前端新手同學(xué)們,對于Vim的學(xué)習(xí)我們還是量力而行,剛開始記住簡單的操作,能讓我們在linux系統(tǒng)下用他完成基本操作即可。畢竟這個小東西上手難度還是挺高的,我們還是先花時間在學(xué)前端技術(shù)上吧,Vim以后等我們?nèi)肓饲岸说拈T,有興趣了再研究吧!

Vim模式介紹

Vim不同意我們常用的編輯器,他的操作方式是在不同模式間切換并配合快捷鍵達(dá)到快速編輯的效果,那么,首先在介紹Vim常用操作前,我們先介紹一點關(guān)于Vim操作模式的知識

Vim具有6種基本模式和5種派生模式,我們只簡單介紹下6種基本模式:

普通模式(Normal mode)

在普通模式中,我們可以進(jìn)行很多操作,比如碼農(nóng)四大神技:增、刪、查、改。這也是Vim啟動后的默認(rèn)模式。

Vim強大的編輯能來自于其普通模式命令。普通模式命令往往需要一個操作符結(jié)尾。例如普通模式命令dd刪除當(dāng)前行,但是第一個"d"的后面可以跟另外的移動命令來代替第二個d,比如用移動到下一行的"j"鍵就可以刪除當(dāng)前行和下一行。另外還可以指定命令重復(fù)次數(shù),2dd(重復(fù)dd兩次),和dj的效果是一樣的。小伙伴們學(xué)習(xí)了各種各樣的文本間移動/跳轉(zhuǎn)的命令和其他的普通模式的編輯命令,并且能夠靈活組合使用的話,能夠比那些沒有模式的編輯器更加高效的進(jìn)行文本編輯。

插入模式(Insert mode)

在普通模式中,有很多方法可以進(jìn)入插入模式。比較普通的方式是按a(append/追加)鍵或者i(insert/插入)鍵。

在這個模式中,大多數(shù)按鍵都會向文本緩沖中插入文本。這個模式其實就像我們平時用的文本編輯器一樣,用來打字、寫代碼什么的。

在插入模式中,可以按ESC鍵回到普通模式。

可視模式(Visual mode)

這個模式與普通模式比較相似。但是移動命令會擴(kuò)大高亮的文本區(qū)域。高亮區(qū)域可以是字符、行或者是一塊文本。當(dāng)執(zhí)行一個非移動命令時,命令會被執(zhí)行到這塊高亮的區(qū)域上。Vim的"文本對象"也能和移動命令一樣用在這個模式中。

選擇模式(Select mode)

這個模式和windows下的編輯器的行為比較相似。這個模式中,可以用鼠標(biāo)或者光標(biāo)鍵可以高亮選擇文本,不過輸入任何字符的話,Vim會用這個字符替換選擇的高亮文本塊,并且自動進(jìn)入插入模式。

命令行模式(Command line mode)

在命令行模式中可以輸入會被解釋成并執(zhí)行的文本。例如執(zhí)行命令(:鍵),搜索(/和?鍵)或者過濾命令(!鍵)。在命令執(zhí)行之后,Vim返回到命令行模式之前的模式,通常是普通模式。

Ex模式(Ex mode)

這和命令行模式比較相似,在使用:visual命令離開Ex模式前,可以一次執(zhí)行多條命令。

這其中我們常用到就是普通模式、插入模式和命令行模式。

Vim常用命令

Vim有很多很多的快捷鍵,那么在我們學(xué)習(xí)Vim初期,哪些是需要我們掌握的呢,下面我總結(jié)了一些Vim常用命令。

1.模式切換

vim啟動時進(jìn)入到普通模式,普通模式中按i或a可以進(jìn)入插入模式,普通模式中按:進(jìn)入命令行模式。處于插入模式或命令行模式時按Esc即可進(jìn)入普通模式。命令行模式中輸入wq回車后保存并退出vim。

2.光標(biāo)移動(普通模式下)

h? ? ? ? 左

l? ? ? ? ?右? ? ??

j? ? ? ? ?下

k? ? ? ? 上

w? ? ? ? 移動到下一個單詞

b? ? ? ? 移動到上一個單詞


3.進(jìn)入插入模式

i? ? ? ? ? 在當(dāng)前光標(biāo)處進(jìn)行編輯

I? ? ? ? ? 在行首插入

A? ? ? ? 在行末插入

a? ? ? ? ?在光標(biāo)后插入編輯

o? ? ? ? ?在當(dāng)前行后插入一個新行

O? ? ? ? 在當(dāng)前行前插入一個新行

cw? ? ? ?替換從光標(biāo)所在位置后到一個單詞結(jié)尾的字符


4.命令行模式下保存文檔

從普通模式輸入:進(jìn)入命令行模式,輸入w回車,保存文檔。輸入:w 文件名? 可以將文檔另存為其他文件名或存到其它路徑下


5.命令行模式下退出vim

從普通模式輸入:進(jìn)入命令行模式,輸入wq回車,保存并退出編輯,其他命令如下

:q!? ? ? ? ? ? ? ? ? ? ? ? ?強制退出,不保存

:q? ? ? ? ? ? ? ? ? ? ? ? ? 退出

:wq!? ? ? ? ? ? ? ? ? ? ? 強制保存并退出

:w <文件路徑>? ? ?另存為

:saveas? ? ? ? ? ? ? ? 文件路徑另存為

:x? ? ? ? ? ? ? ? ? ? ? ? ? 保存并退出

:wq? ? ? ? ? ? ? ? ? ? ? ? 保存并退出

普通模式下輸入Shift+zz即可保存退出vim


6.刪除文本

x或Delete鍵? ? ? ? ? ? ? 刪除游標(biāo)所在的字符

X? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?刪除游標(biāo)所在前一個字符

dd? ? ? ? ? ? ? ? ? ? ? ? ? ? ?刪除整行

dw? ? ? ? ? ? ? ? ? ? ? ? ? ? ?刪除一個單詞

d$或D? ? ? ? ? ? ? ? ? ? ? ? 刪除至行尾

d^? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?刪除至行首

dG? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 刪除到文檔結(jié)尾處

d1G? ? ? ? ? ? ? ? ? ? ? ? ? ? 刪至文檔首部

還可以在命令之前加上數(shù)字,表示一次刪除多行,如:

2dd表示一次刪除2行

.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Vim是從vi發(fā)展出來的一個文本編輯器。代碼補完、編譯及錯誤跳轉(zhuǎn)等方便編程的功能特別豐富,在程序員中被廣泛使用。和...
    饑人谷_流水閱讀 297評論 0 1
  • ·概念及其學(xué)習(xí)原因 Vi是Unix世界里極為普遍的全屏幕文本編輯器,VIM是它的改進(jìn)版本Vi IMproved...
    Taaaaaaaurus閱讀 438評論 0 0
  • Vim是一個類似于Vi的著名的功能強大、高度可定制的文本編輯器,在Vi的基礎(chǔ)上改進(jìn)和增加了很多特性。Vim普遍被推...
  • 轉(zhuǎn)載原地址vi/vim 基本使用方法i/vim的區(qū)別簡單點來說,它們都是多模式編輯器,不同的是vim 是vi的升級...
    鹿啦啦zz閱讀 395評論 0 0
  • 文/夢萃 七月的京城正要慢慢進(jìn)入它最熱的時候,已經(jīng)臨近中午太陽高高掛起路上的行人越來越少,路邊的商販也有氣無...
    夢萃閱讀 368評論 0 1

友情鏈接更多精彩內(nèi)容