上一篇博客,講了“新手”如何“入門”vi,解決了“兩眼一抹黑”的情況。知道在vi下如何進行基本的操作,如部署在Linux下的項目,修改配置文件等。
傳送門: 史上最簡約的vi教程,10分鍾包教會
本篇,我們繼續vi的學習之旅,主要包括復制和粘貼操作。
1.移動光標
對於用慣了可視化開發工具的讀者,初次接觸vi學習門檻還是有一些的。雖然上篇文章說明了,可以通過小鍵盤的“上下左右”箭頭移動光標,但,這個是一個“騷操作”。
vi推薦的做法是:在Normal模式下,通過h j k l來移動光標。
這個無需多言,打開vi,多操作幾次就上手了。
當然還有高級的移動光標,暫且不表。
2.復制一行和粘貼
剛接觸vi,我嘗試過不止一次,ctrl + c和ctrl + v來“想當然”進行復制和粘貼,結果你懂的!
[注] 下面談的所有操作,均在Normal模式下。
-
復制
復制當前行是最基本的操作,
yy這個大家基本上都熟悉。 -
粘貼
粘貼通過
p(小寫p)或者P(大寫P,通過shift + p輸入)來實現的。其中
p是在光標所在行的下一行粘貼;P是在光標所在行的上一行粘貼。 -
交換當前行和下(下)一行
我們可以組合“刪除”和“粘貼”操作,實現交換上下行的操作。
ddp,可以實現交換當前行和下一行。請思考一下為什么?easy,dd是刪除當前行,並復制到緩沖區,p是在當前行的下一行粘貼。
ddP,可以實現交換當前行和上一行。請思考一下為什么?
3.個性化復制
第2部分介紹了復制和粘貼,基本上可以滿足大部分的操作。“個性化”復制,怎么辦?如復制一個單詞,選定后復制...
-
復制一個單詞
可以通過
yw來說實現,這個前提是先將光標定位到單詞的開頭。 -
復制到下一句的開始
可以通過
y)來說實現 -
復制到下一段的開始
可以通過
y}來說實現 -
快選擇實現復制
可以通過
v、shift + v和ctrl + v來進行區塊選擇,然后通過y進行復制。這基本上可以實現你想要的所有情況的復制。
v操作: 先輸入v,然后“通過hjkl或者上下箭頭移動光標”會自動選擇一個區域。如果需要復制這個區域,則按y即可,如果要刪除則輸入d即可。shift + v是在v的操作基礎上,不過其操作是行級別的。ctrl + v這個就是列選擇,用過ultraedit或者editplus的列操作,你會愛不釋手的。操作方法同v!
4.總結
本篇博客是上篇博客的進階,主要內容就是復制和粘貼。你需要知道的就是:
行操作: yy復制當前行,p粘貼到下一行;
塊操作: 先輸入v,然后“通過hjkl或者上下箭頭移動光標”會選擇一個區域。如果需要復制這個區域,則按 y 即可。移動光標到需要粘貼的目標處,p粘貼到光標所在處。
再次推薦vi教程:
- Learn Vim Progressively 個人認為這個是有史以來最好的vi教程,沒有之一。
掌握vi並不難,方法就是,“用”起來就會了。雖然我用的是windows 10系統,我開發中,vs code和IntelliJ IDEA、visual studio都啟用了vi的。
