Vim 內建 window (視窗) 管理工具,如果另外有安裝 nerdtree 其實不太需要 Ctrl+Z 切回 shell,但這是使用習慣,挑自己順手的方法即可。
這邊介紹一下如何使用 Vim 同時開啟多個檔案做對照。
Vim Window 操作基礎
先進入 vim 的指令模式,然後輸入 :split
,vim 就會自動建立垂直的 window:
既然有垂直分割當然也就有水平分割,在 split
前加入 vertical
即可水平分割 (vertical
也可使用縮寫 vert
):
有注意到的話,會發現 vim 游標仍然停留在第一個 windows,所以接下來就是 vim 可以在多個 windows 中切換 focus。
在命令模式中鍵入 Ctrl+W 就會進入 windows 管理模式,再按第二次 Ctrl+W
即可將 focus 移動到下一個 windows (注意綠色游標),有多個視窗就多切換幾次,以此類推
另外要注意:你如果是在瀏覽器的 web console 中,請不要使用視窗模式,因為 ctrl+W
會被瀏覽器先 catch 到,瀏覽器就把你目前正在用的視窗關閉 …. _Drz。
快速切換 windows
還記得如何快速複製多行的指令嗎?3yy
往下複製 3 行的內容;2dd
往下剪下二行的內容。
這些快速切換指令,也適用在 windows 操作上。下面直接用圖片介紹操作方法:
有沒有發現 Vim 的操作其實基礎都差不多?同樣一個邏輯適用於類似了情況,依照自己的需求,適當得使用 J
、K
、H
、L
即可。
另外也有朋友覺得 tmux 的視窗操作較為順手,所以先用 tmux 開多個視窗,然後每個視窗個別開一個 Vim。到底哪個方式比較順手,就讓讀者自行決定。
其他 windows 相關操作
- 二個視窗對調:
Ctrl+W
→X
- 分割 windows,新的在右邊:
vert bo split
- 調整 windows 大小:
:resize 10
、:resize +5
、:vertical resize +3
,其他請參考 vim resize 說明。
其他與 windows 相關的操作,可以透過在 vim 中使用指令 :h windows
來了解。
若有相關指令在本文中未提及,歡迎在文章下方留言,與其他人分享!
感謝網友 arizvisa 補充說明,想了解 vim cursor 相關的操作邏輯,可以參考以下幾份文件:
:help CTRL-O
:help CTRL-I
:help g;
:help g,