Vim 常用命令快速查詢

參考內容
Learning Vim The Pragmatic Way
《鳥哥的 Linux 私房菜》

Vim 可以認爲是 Vi 的高級版本,Vim 可以用顏色或下劃線的方式來顯示一些特殊信息,您可以認爲 Vi 是一個文本處理工具,而 Vim 是一個程序開發工具,現在大部分 Linux 的發行版都以 Vim 替換 Vi 了。在 Linux 命令行模式下有很多編輯器,但是 Vi 文本編輯器是所有 Unix-like 系統都會內置的,因此學會 Vi/Vim 的使用時非常有必要的,對於 Vi 的三種模式(命令模式、編輯模式、命令行模式)這裏就不在做說明了,下面是一些比較常用的命令。

一般命令模式下

命令 說明
h、j、k、l 與鍵盤的方向鍵一一對應,分別爲左、下、上、右,在鍵盤上着幾個字母是排在一起的
Ctrl+f、Ctrl+b 分別對應鍵盤的「Page Down」、「Page Up」,我更習慣於這兩個鍵,而不是前面的組合鍵
0、$ 分別對應鍵盤的「Home」、「End」,即移動到該行的最前面/後面字符處
n<Enter> n 爲數字,光標向下移動 n 行
/word、?word 向光標之上/下尋找一個字符串名稱爲 word 的字符串
n、N 如果我們剛剛執行了上面上面的 /word 或 ?word 查找操作,那麼 n 則表示重複前一個查找操作,可以簡單理解爲向下繼續查找下一個名稱爲 word 的字符串,N 則與 n 剛好相反
:n1,n2s/word1/word2/g 在第 n1 行與 n2 行之間尋找 word1 這個字符串,並將這個字符串替換爲 word2,如果前面的 n1,n2 使用 1,$ 代替則表示從第一行到最後一行,最後的 g 後面可以加個 c,即 :1,$s/word1/word2/gc,這樣就會在替換錢顯示提示字符給用戶確認(confirm)
x、X 分別對應鍵盤的「Del」、「Backspace」鍵
dd、yy 刪除/複製光標所在的那一整行
p、P p 將已複製的數據在光標下一行粘貼,P 粘貼在光標上一行
u 恢復前一個操作,類似於 Windows 下的 Ctrl+Z
Ctrl+r 重做上一個操作
. 小數點,重複上一個操作

命令行模式下

命令 說明
:w 將編輯的數據寫入硬盤中
:w! 若文件屬性爲只讀,強制寫入該文件,不過到底能不能寫入,還是跟文件權限有關係
:q、:q! 與 w 一樣,q 爲關閉的意思
:r [filename] 在編輯的數據中讀入另一個文件的數據,即將[filename]這個文件的內容追加到光標所在行的後面
:w [filename] 將編輯的數據保存爲另一個文件
:set nu/nonu 顯示/不顯示行號

編輯模式下

組合鍵 作用
[ctrl]+x -> [ctrl]+n 通過目前正在編輯的這個文件的內容文字作爲關鍵字,予以自動補全
[ctrl]+x -> [ctrl]+f 以當前目錄內的文件名作爲關鍵字補全
[ctrl]+x -> [ctrl]+o 以擴展名作爲語法補充,以 Vim 內置的關鍵字予以補全

當我們在使用 Vim 編輯器的時候,Vim 會在與被編輯的文件目錄下再建立一個名爲.filename.swp的文件,我們對文件的操作都會記錄到這個 swp 文件中去,如果系統因爲某些原因掉線了,就可以利用這個 swp 文件來恢復內容。如果存在對應的 swp 文件,那麼 Vim 就會主動判斷當前這個文件可能有問題,會給出相應的提示。

我們也可以給 Vim 環境設置一些個性化的參數,雖然在命令行模式下可以使用:set來設置,但是這樣每次設置實在是太麻煩,因此我們可以設置一些全局的參數。Vim 的整體設置值一般放在/etc/vimrc中,我們一般通過修改~/.vimrc這個文件(默認不存在)來設置一些自己的參數,比如:

" 該文件的雙引號是註釋
set nu "在每一行的最前面顯示行號
set autoindent " 自動縮進
set ruler " 可顯示最後一行的狀態
set bg=dark " 顯示不同的底色色調
syntax on "進行語法檢驗,顏色顯示,比如 C 語言等

最後附上一張命令速查卡,此圖來源於Learning Vim The Pragmatic Way,PDF 版下載鏈接在這裏

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章