Nvim :help
頁面,由 產生,來源為 原始碼,使用 tree-sitter-vimdoc 解析器。
:split此指令將螢幕分割成兩個視窗,並將游標留在頂部視窗中
+----------------------------------+ |/* file one.c */ | |~ | |~ | |one.c=============================| |/* file one.c */ | |~ | |one.c=============================| | | +----------------------------------+
CTRL-W
w 指令在視窗之間跳轉。如果您在頂部視窗中,CTRL-W
w 會跳到下方的視窗。如果您在底部視窗中,它會跳到第一個視窗。(CTRL-W
CTRL-W
的作用相同,以防您稍微晚放開 CTRL 鍵。):close實際上,任何可以退出編輯檔案的指令都有效,例如「:quit」和「ZZ」。但是「:close」可防止您在關閉最後一個視窗時意外退出 Vim。
:only這會關閉所有視窗,除了目前的視窗。如果任何其他視窗有變更,您將會收到錯誤訊息,且該視窗不會被關閉。
:split two.c如果您正在編輯 one.c,則結果如下
+----------------------------------+ |/* file two.c */ | |~ | |~ | |two.c=============================| |/* file one.c */ | |~ | |one.c=============================| | | +----------------------------------+
:new您可以重複使用「:split」和「:new」指令來建立任意數量的視窗。
:3split alpha.c對於現有的視窗,您可以透過多種方式變更其大小。當您有可用的滑鼠時,這很容易:將滑鼠指標移動到分隔兩個視窗的狀態列,然後向上或向下拖曳。
CTRL-W +要減小視窗的大小
CTRL-W -這兩個指令都接受一個計數,並將視窗大小增加或減少指定的行數。因此,「4
CTRL-W
+」會使視窗高四行。{height}CTRL-W _那就是:數字
{height}
、CTRL-W
,然後是底線(在英文-美國鍵盤上使用 Shift 的 - 鍵)。要使視窗盡可能地高,請使用不帶計數的 CTRL-W
_ 指令。:vsplit或
:vsplit two.c結果看起來像這樣
+--------------------------------------+ |/* file two.c */ |/* file one.c */ | |~ |~ | |~ |~ | |~ |~ | |two.c===============one.c=============| | | +--------------------------------------+
:vertical new可以在分割視窗的其他指令之前插入「:vertical」指令。這會導致該指令垂直分割視窗,而不是水平分割。(如果該指令沒有分割視窗,則其作用不會改變。)
CTRL-W
h 移動到左側的視窗 CTRL-W
j 移動到下方的視窗 CTRL-W
k 移動到上方的視窗 CTRL-W
l 移動到右側的視窗CTRL-W
t 移動到頂部視窗 CTRL-W
b 移動到底部視窗+----------------------------------+ |/* file two.c */ | |~ | |~ | |two.c=============================| |/* file three.c */ | |~ | |~ | |three.c===========================| |/* file one.c */ | |~ | |one.c=============================| | | +----------------------------------+
CTRL-W
w),然後輸入此指令CTRL-W K這使用大寫字母 K。發生的是,視窗會被移動到最頂部。您會注意到 K 再次用於向上移動。當您有垂直分割時,
CTRL-W
K 會將目前視窗移動到頂部,並使其佔用整個 Vim 視窗的寬度。如果您的佈局是這樣+-------------------------------------------+ |/* two.c */ |/* three.c */ |/* one.c */ | |~ |~ |~ | |~ |~ |~ | |~ |~ |~ | |~ |~ |~ | |~ |~ |~ | |two.c=========three.c=========one.c========| | | +-------------------------------------------+
CTRL-W
K 將導致+-------------------------------------------+ |/* three.c */ | |~ | |~ | |three.c====================================| |/* two.c */ |/* one.c */ | |~ |~ | |two.c==================one.c===============| | | +-------------------------------------------+
CTRL-W
H 將視窗移動到最左側 CTRL-W
J 將視窗移動到底部 CTRL-W
L 將視窗移動到最右側:qall這代表「全部退出」。如果任何視窗包含變更,Vim 將不會退出。游標會自動定位到具有變更的視窗中。然後,您可以使用「:write」來儲存變更,或使用「:quit!」來丟棄變更。
:wall這代表「全部寫入」。但實際上,它只會寫入有變更的檔案。Vim 知道寫入未變更的檔案沒有意義。然後,還有「:qall」和「:wall」的組合:「寫入並全部退出」指令
:wqall這會寫入所有已修改的檔案並退出 Vim。最後,有一個指令可以退出 Vim 並丟棄所有變更
:qall!請小心,沒有辦法復原此指令!
vim -o one.txt two.txt three.txt這會導致
+-------------------------------+ |file one.txt | |~ | |one.txt========================| |file two.txt | |~ | |two.txt========================| |file three.txt | |~ | |three.txt======================| | | +-------------------------------+
nvim -d main.c~ main.cVim 會啟動,兩個視窗並排顯示。您只會看到您在其中新增字元的行,以及其上方和下方的一些行。
VV VV +-----------------------------------------+ |+ +--123 lines: /* a|+ +--123 lines: /* a| <- fold | text | text | | text | text | | text | text | | text | changed text | <- changed line | text | text | | text | ------------------| <- deleted line | text | text | | text | text | | text | text | |+ +--432 lines: text|+ +--432 lines: text| <- fold | ~ | ~ | | ~ | ~ | |main.c~==============main.c==============| | | +-----------------------------------------+
:edit main.c :vertical diffsplit main.c~「:vertical」指令用於使視窗垂直分割。如果您省略此指令,則會得到水平分割。
:edit main.c :vertical diffpatch main.c.diff警告: 補丁檔案必須只包含一個針對您正在編輯的檔案的補丁。否則,您會收到大量的錯誤訊息,並且某些檔案可能會被意外地修補。修補只會在 Vim 中檔案的複本上進行。您硬碟上的檔案將保持未修改(直到您決定寫入檔案為止)。
:set noscrollbind
]c要反向移動,請使用
[c在前面加上計數可以跳得更遠。
:diffupdate要移除差異,您可以將高亮區塊中的文字從一個視窗移動到另一個視窗。以上述的「main.c」和「main.c~」範例為例。將游標移動到左側視窗,移到在另一個視窗中被刪除的行。現在輸入此命令
dp變更將會被移除,方法是將目前視窗的文字放入另一個視窗。「dp」代表「diff put」。您也可以反向操作。將游標移動到右側視窗,移到插入「changed」的行。現在輸入此命令
do現在變更將會被移除,方法是從另一個視窗取得文字。由於現在沒有剩餘的變更,Vim 會將所有文字放入一個關閉的折疊中。「do」代表「diff obtain」。「dg」會更好,但它已經有不同的含義(「dgg」會從游標刪除到第一行)。
CTRL-W
。CTRL-^
跳到備用檔案,CTRL-W
CTRL-^
分割視窗並編輯備用檔案。{cmd}
在目前視窗的左側或上方 :aboveleft {cmd}
同上 :rightbelow {cmd}
在目前視窗的右側或下方 :belowright {cmd}
同上 :topleft {cmd}
在 Vim 視窗的頂部或左側 :botright {cmd}
在 Vim 視窗的底部或右側:tabedit thatfile這將在佔用整個 Vim 視窗的視窗中編輯檔案「thatfile」。您會注意到頂部有一個包含兩個檔案名稱的橫條
+----------------------------------+ | thisfile | /thatfile/ __________X| (thatfile is bold) |/* thatfile */ | |that | |that | |~ | |~ | |~ | | | +----------------------------------+
+----------------------------------+ | /thisfile/ | thatfile __________X| (thisfile is bold) |/* thisfile */ | |this | |this | |~ | |~ | |~ | | | +----------------------------------+
:tab split這會建立一個新的分頁標籤,其中有一個視窗正在編輯與我們所在視窗相同的緩衝區
+-------------------------------------+ | thisfile | /thisfile/ | thatfile __X| (thisfile is bold) |/* thisfile */ | |this | |this | |~ | |~ | |~ | | | +-------------------------------------+
:tab help gt將在新分頁標籤中顯示「gt」的說明文字。