高效使用Vim編輯器--Vim編輯器常用命令學習筆記
熟練掌握Vim編輯器的常用命令能大大提高我們文字編輯的效率。
基本操作
我們最初接觸Vim編輯器時,首先學到的不乏以下一些操作:
剛進入Vim編輯器時,我們處於普通模式,在鍵盤上按下i,我們便進入插入模式。在插入模式下,如果按下Esc,則又回到普通模式。
在插入模式下,我們可以鍵入文字。
在普通模式下,我們則可以利用一些命令來快捷操作我們的文字,如:
x : 刪除當前游標所在的一個字元
:wq : 儲存並退出 (:w 儲存,:q 退出,且以:開始的命令需要輸入回車)
dd : 刪除當前行,並把刪除的行儲存到剪貼簿裡
p : 貼上剪貼簿裡的內容
h(向左)、j(向下)、k(向上)、l(向右)移動游標,當然,我們還可以利用↑、↓、←、→來移動
更進一步
在瞭解了Vim編輯器的基本操作後,我們需要學習更多的命令來更進一步。
1.不同的插入模式
i : 在游標所在位置插入
a : 在游標所在位置後插入
o : 在當前行後插入一行新行
O : 在當前行前插入一行新行
cw : 把游標所在位置到下一個單詞之前的內容刪掉,並進入插入模式
示例:cw命令
游標當前位置
使用cw命令後
2.快速移動游標
想要快速移動游標提高效率,我們移動游標的操作應不僅限於h、j、k、l / ↑、↓、←、→。
0(數字零) : 移動到行頭
^ : 移動到本行第一個不是blank字元的位置
$ : 移動到本行行尾
g_ : 移動到本行最後一個不是blank字元的位置。
/要查詢的字串 : 查詢字串(如果搜尋出多個匹配,可按n鍵移動到下一個)
示例:查詢字串
在開啟的文字中查詢 Thread 字串,命令為 /Thread
查詢到的結果會高亮顯示,我們可以按n鍵移動到下一個匹配(:nohl命令取消高亮顯示)
3.複製/貼上
p/P : 貼上(p與P的區別在於,p是貼上到當前位置之後,P是貼上到當前位置之前)
yy : 複製當前行的內容
4.撤銷/恢復
u : undo,撤銷之前的操作
Ctrl+r : redo,恢復之前的操作
5.檔案的開啟/儲存/退出
:e filename : 在 Vim 編輯器裡開啟一個檔案
:saveas filename : 另存為
:x,ZZ 或 :wq : 儲存並退出 (ZZ不需要輸入冒號並回車)
:x和:wq的區別在於:wq會強制性寫入檔案並退出,即使檔案沒有被修改也強制寫入,並更新檔案的修改時間
:q! : 退出不儲存
:qa! : 強行退出所有的正在編輯的檔案,就算別的檔案有更改
:bn 和:bp : 當Vim同時開啟很多檔案時,可以使用這兩個命令來切換到下一個或上一個檔案
示例:開啟多個檔案
首先在命令列使用命令 vim Thread.cc 在Vim編輯器開啟檔案Thread.cc
在Vim普通模式下,輸入:e ./Atomic.h,就開啟了當前目錄下的檔案Atomic.h
提高效率
1.重複操作
有些情況下,我們需要對某一操作重複執行多次,譬如刪除多行、多次輸入同一文字行……那麼Vim是怎樣重複操作的呢?
一種方式是按下.
,就會重複上次的命令;
另一種方式是 n+command ,在執行某命令之前輸入想執行的次數n,該命令便會執行n次。
示例:
2dd : 刪除2行
4p : 貼上文字4次
10ilove<Esc> : 會寫入“lovelovelovelovelovelovelovelovelovelove”(命令中的i是指切換到插入模式)
這時按下 . ,會再寫入10次“love”
2.更快地移動游標
除了上面我們介紹的一些快速移動游標的命令外,還有一些更快速、移動範圍更大的游標移動命令值得我們瞭解。
gg : 移動到文字開頭
G : 移動到文字末尾
n+G 或 :n :移動到第n行
w : 按單詞移動,移動到下一個單詞的開頭
e : 按單詞移動,移動到下一個單詞的末尾
我們要著重介紹的是下面兩個游標移動命令:
% : 匹配括號移動,包括 (, {, [. (使用前你需要把游標先移到括號上)
* 和 # : 匹配游標當前所在的單詞,移動游標到下一個(或上一個)匹配的位置(*是下一個,#是上一個)
示例:使用 % 來匹配括號移動
首先將游標移動到某一括號上
按下 % ,可以看到游標移動到該括號匹配的括號處
示例:使用 * 來匹配單詞並在單詞間移動
使用前,我們需要將游標移動到某一單詞上,我們移動到 Thread 上
然後按下 * ,可以看到 Thread 所有的匹配都高亮顯示了,我們可以繼續按下 * 移動到下一個匹配
3.命令的組合使用
我們可以利用學到的游標移動命令,與其他命令組合使用,從而實現高效的編輯,例如下面游標移動與複製命令的組合使用:
(1)0y$ 命令意味著:
0 → 先到行頭
y → 從這裡開始拷貝
$ → 拷貝到本行最後一個字元
(2)ye 命令則意味著從當前位置拷貝到本單詞的最後一個字元
(3)還可以輸入 y2/foo 來拷貝2個 “foo” 之間的字串
示例:在開啟的文字里使用命令 y2/Thread
紅框標識了游標的當前位置和鄰近的兩個“Thread”字串的位置
執行命令 y2/Thread
將游標移到空白行,按下貼上操作 p ,看看複製了什麼內容
4.自動補全
例如:我們想輸入 Thread ,當我們鍵入單詞的開頭,再按下Ctrl+p或者Ctrl+n,就能進入自動補全的選擇了。
5.視覺化選擇
普通模式下按下 v、V或者Ctrl+v會進入可視模式。在可視模式下,隨著游標的移動,可以選中行、塊、區域。
一旦選好了,我們就可以執行一些操作了,例如之前介紹的y複製、d刪除,另外還有下面介紹的一些操作
J : 把所有選中的行連線起來(變成一行)
< 或 > : 向左或右縮排
= : 自動縮排
gu : 變小寫
gU : 變大寫
示例:選中幾行內容,將其都變為大寫
進入可視行,選中內容
執行命令 gU
參考資料:
酷殼-簡明 Vim 練級攻略:http://coolshell.cn/articles/5426.html
相關文章
- vim編輯器
- Vim 編輯器常用命令
- Vim編輯器常用命令
- Linux學習筆記(九)Vim文字編輯器的使用Linux筆記
- 『學了就忘』vim編輯器基礎 — 94、vim編輯器介紹
- RHCE7認證學習筆記4——Vim編輯器的使用筆記
- LINUX VIM編輯器Linux
- 03_vim編輯器的使用
- Linux 筆記分享五:VIM 文字編輯器Linux筆記
- 『學了就忘』vim編輯器基礎 — 97、vim使用技巧
- VIM編輯器的巨集操作
- Vim 編輯器的相容模式模式
- vim編輯器常用的命令
- 使用 Vi/Vim 編輯器:基礎篇
- Linux編輯器Vim常用命令講解Linux
- Linux編輯器Vim簡介Linux
- Git清空VIM編輯器內容Git
- Linux精講——vim編輯器Linux
- 編輯器之神:VIM 的基本操作
- vim學習筆記——多檔案、多視窗編輯筆記
- centos7安裝vim編輯器CentOS
- vim編輯器有哪些模式?學習linux需要學什麼模式Linux
- vim 列編輯模式模式
- 如何安裝和使用純文字編輯器 vi/vim
- Linux– 檔案編輯器 vi/vim(1)Linux
- 編輯器之神VIM 總結 基礎部分
- Linux編輯器vim鍵盤詳解Linux
- Linux系統中的Vim編輯器Linux
- Linux系列開坑記(二)-神的編輯器VimLinux
- 火爆Github的這個編輯器能超越Vim麼?Github
- 3 個可以替代 Emacs 和 Vim 的文字編輯器Mac
- vi和vim的編輯模式模式
- go 學習筆記之走進Goland編輯器筆記GoLand
- deepin linux 學習筆記(二)——文字編輯器Linux筆記
- 在 Linux 上把 Vim 配置為預設編輯器Linux
- Linux下Vim編輯器訪問系統剪下板Linux
- Linux-Vim編輯器之查詢與替換Linux
- 設定Vim編輯器裡Tab的長度,行號