2.1 多文件編輯
2.1.1 使用vim編輯多個文件
編輯多個文件有兩種形式,一種是在進入vim前使用的參數就是多個文件。另一種就是進入vim后再編輯其他的文件。
同時創建兩個新文件並編輯
$ vim 1.txt 2.txt
默認進入1.txt文件的編輯界面
- 命令行模式下輸入
:n編輯2.txt文件,可以加!即:n!強制切換,之前一個文件的輸入沒有保存,僅僅切換到另一個文件 - 命令行模式下輸入
:N編輯1.txt文件,可以加!即:N!強制切換,之前文件內的輸入沒有保存,僅僅是切換到另一個文件
2.1.2 進入vim后打開新文件
- 命令行模式下輸入
:e 3.txt打開新文件3.txt - 命令行模式下輸入
:e#回到前一個文件 - 命令行模式下輸入
:ls可以列出以前編輯過的文檔 - 命令行模式下輸入
:b 2.txt(或者編號)可以直接進入文件2.txt編輯 - 命令行模式下輸入
:bd 2.txt(或者編號)可以刪除以前編輯過的列表中的文件項目 - 命令行模式下輸入
:e! 4.txt,新打開文件4.txt,放棄正在編輯的文件 - 命令行模式下輸入
:f顯示正在編輯的文件名 - 命令行模式下輸入
:f new.txt,改變正在編輯的文件名字為new.txt
2.1.3 恢復文件
如果因為斷電等原因造成文檔沒有保存,可以采用恢復方式,vim -r進入文檔后,輸入:ewcover 1.txt來恢復
$ vim -r 1.txt
2.2 可視模式
2.2.1 可視模式命令簡介
- 在普通模式下輸入
v(小寫),進入字符選擇模式,就可以移動光標,光標走過的地方就會選取。再次按下v會后就會取消選取。 - 在普通模式下輸入
Shift+v(小寫),進入行選擇模式,按下V之后就會把整行選取,您可以上下移動光標選更多的行,同樣,再按一次Shift+v就可以取消選取。 - 在普通模式下輸入
Ctrl+v(小寫),這是區域選擇模式,可以進行矩形區域選擇,再按一次Ctrl+v取消選取。 - 在可視模式下輸入
d刪除選取區域內容 - 在可視模式下輸入
y復制選取區域內容
2.2.2 可視模式命令練習
拷貝練習文件到當前目錄
$ cp /etc/protocols .
打開練習文件
$ vim protocols
- 在普通模式下
9G跳轉到第9行,輸入Shift+v(小寫V),進入可視模式進行行選擇,選中5行,按下>>縮進,將5行整體縮進一個shiftwidth - 在普通模式下輸入
Ctrl+v(小寫V),進入可視模式進行矩形區域選擇,選中第一列字符然后x刪除整列

2.3 視窗操作
2.3.1 視窗操作簡介
vim可以在一個界面里打開多個窗口進行編輯,這些編輯窗口稱為vim的視窗。
打開方法有很多種,例如可以使用在命令行模式下輸入:new 打開一個新的vim視窗,並進入視窗編輯一個新文件(普通模式下輸入Ctrl+w也可以,但是Ctrl+w在chrome下會與chrome關閉標簽頁的快捷鍵沖突,所以使用該快捷鍵你可以在IE或其它瀏覽器進行練習),除了:new命令,下述列舉的多種方法也可以在命令模式或普通模式下打開新的視窗:
- 命令行模式下輸入
:sp 1.txt打開新的水平分屏視窗來編輯1.txt - 命令行模式下輸入
:vsp 2.txt打開新的垂直分屏視窗來編輯2.txt - 普通模式下
Ctrl-w s將當前窗口分割成兩個水平的窗口 - 普通模式下
Ctrl-w v將當前窗口分割成兩個垂直的窗口 - 普通模式下
Ctrl-w q即 :q 結束分割出來的視窗。如果在新視窗中有輸入需要使用強制符!即:q! - 普通模式下
Ctrl-w o打開一個視窗並且隱藏之前的所有視窗 - 普通模式下
Ctrl-w j移至下面視窗 - 普通模式下
Ctrl-w k移至上面視窗 - 普通模式下
Ctrl-w h移至左邊視窗 - 普通模式下
Ctrl-w l移至右邊視窗 - 普通模式下
Ctrl-w J將當前視窗移至下面 - 普通模式下
Ctrl-w K將當前視窗移至上面 - 普通模式下
Ctrl-w H將當前視窗移至左邊 - 普通模式下
Ctrl-w L將當前視窗移至右邊 - 普通模式下
Ctrl-w -減小視窗的高度 - 普通模式下
Ctrl-w +增加視窗的高度
2.3.2 視窗操作練習
打開練習文件
$ vim 1.txt
- 命令行模式下輸入
:new打開一個新的vim視窗 - 命令行模式下輸入
:vsp 2.txt打開新的橫向視窗來編輯2.txt - 命令行模式下輸入
:vsp 3.txt打開新的橫向視窗來編輯3.txt - 如果使用非chrome瀏覽器可以使用
Ctrl+w進行視窗間的跳轉 - 分別在不同視窗的命令行模式下輸入
:q!退出多視窗編輯

2.4 文檔加密
2.4.1 創建加密文檔
$ vim -x file1
輸入您的密碼
確認密碼
這樣在下一次打開時,vim就會要求你輸入密碼
2.5 在vim執行外部命令
在命令行模式中輸入!可以執行外部的shell命令
:!ls用於顯示當前目錄的內容:!rm FILENAME用於刪除名為 FILENAME 的文件:w FILENAME可將當前 VIM 中正在編輯的文件另存為 FILENAME 文件
2.6 幫助系統
2.6.1 vim中的查看幫助
- 普通模式下按
F1打開vim自己預設的幫助文檔 - 命令行模式下輸入
:h shiftwidth打開名為shiftwidth的幫助文件 - 命令行模式下輸入
:ver顯示版本及參數
2.7 功能設定
2.7.1 vim的功能設定
可以在編輯文件的時候進行功能設定,如命令行模式下輸入:set nu(顯示行數),設定值退出vim后不會保存。要永久保存配置需要修改vim配置文件。
vim的配置文件~/.vimrc(實驗樓環境中配置文件在/etc/vim/vimrc),可以打開文件進行修改,不過務必小心不要影響vim正常使用
2.7.2 獲取目前的設定
- 命令行模式下輸入
:set或者:se顯示所有修改過的配置 - 命令行模式下輸入
:set all顯示所有的設定值 - 命令行模式下輸入
:set option?顯示option的設定值 - 命令行模式下輸入
:set nooption取消當期設定值
2.7.3 set功能的說明
- 命令行模式下輸入
:set autoindent(ai)設置自動縮進 - 命令行模式下輸入
:set autowrite(aw)設置自動存檔,默認未打開 - 命令行模式下輸入
:set background=dark或light,設置背景風格 - 命令行模式下輸入
:set backup(bk)設置自動備份,默認未打開 - 命令行模式下輸入
: set cindent(cin)設置C語言風格縮進
