Nvim 的 :help
頁面,使用 tree-sitter-vimdoc 解析器,從 原始碼 產生。
CTRL-Z
來暫停。這會停止 Vim 並將您帶回啟動它的 Shell。然後,您可以執行任何其他命令,直到您感到厭倦為止。然後使用 "fg" 命令將 Vim 帶回前台。CTRL-Z {any sequence of shell commands} fg您會回到您離開 Vim 的地方,沒有任何改變。如果按下
CTRL-Z
無效,您也可以使用 ":suspend"。別忘了將 Vim 帶回前台,否則您所做的任何變更都將遺失!CTRL-Z
會改為最小化 Vim 視窗。:!ls :!dir第一個用於 Unix,第二個用於 MS-Windows。Vim 將執行程式。當它結束時,您會收到一個提示,要求您按下
<Enter>
。這允許您在返回您正在編輯的文字之前查看命令的輸出。"!" 也用於執行程式的其他地方。讓我們看看一個概述{program}
:r !{program} 執行 {program}
並讀取其輸出 :w !{program} 執行 {program}
並將文字發送到其輸入 :[range]!{program} 通過 {program}
過濾文字CTRL-Z
來暫停 Vim。不同之處在於會啟動一個新的 Shell。:set shada=string字串指定要儲存的內容。此字串的語法是一個選項字元,後跟一個引數。選項/引數對用逗號分隔。看看如何建立自己的 shada 字串。首先,' 選項用於指定您儲存標記(a-z)的檔案數量。為此選項選擇一個好的偶數(例如 1000)。您的命令現在看起來像這樣
:set shada='1000f 選項控制是否儲存全域標記 (A-Z 和 0-9)。如果此選項為 0,則不會儲存任何標記。如果此選項為 1 或您未指定 f 選項,則會儲存標記。您需要此功能,因此現在您有這個
:set shada='1000,f1< 選項控制為每個暫存器儲存多少行。預設情況下,會儲存所有行。如果為 0,則不會儲存任何內容。為避免向您的 ShaDa 檔案新增數千行(可能永遠不會使用並使 Vim 啟動速度變慢),您最多使用 500 行
:set shada='1000,f1,<500
'0您會回到您離開 Vim 的地方。因此,您可以繼續工作。每次您退出 Vim 時,Vim 都會建立一個標記。最後一個是 '0。'0 指向的位置會變成 '1。'1 會變成 '2,依此類推。標記 '9 會遺失。:marks 命令對於找出 '0 到 '9 將帶您前往的位置很有用。
:oldfiles
:e #<2您可以使用的任何具有檔案名稱引數的命令,而不是 ":e","#<2" 項目在與 "%"(目前檔案名稱)和 "#"(備用檔案名稱)相同的位置工作。因此,您也可以分割視窗來編輯第三個檔案
:split #<3當您只想編輯檔案時,那個 #<123 玩意有點複雜。幸運的是,有一種更簡單的方法
:browse oldfiles
<Enter>
(空白取消)<Enter>
以編輯第二個檔案。:wshada! ~/tmp/shada在第二個 Vim 中執行
:rshada! ~/tmp/shada顯然,"w" 代表 "write"(寫入),"r" 代表 "read"(讀取)。"! " 字元用於 ":wshada" 強制覆寫現有檔案。當省略它且檔案存在時,資訊會合併到檔案中。用於 ":rshada" 的 ! 字元表示 ShaDa 檔案中的所有資訊優先於現有資訊,這可能會覆寫它。如果沒有 !,則只會使用未設定的資訊。這些命令也可以用於儲存資訊並稍後再次使用。您可以建立一個充滿 ShaDa 檔案的目錄,每個檔案都包含用於不同目的的資訊。
:mksession vimbook.vim稍後,如果您想還原此工作階段,可以使用此命令
:source vimbook.vim如果您想啟動 Vim 並還原特定的工作階段,可以使用以下命令
vim -S vimbook.vim這會告訴 Vim 在啟動時讀取特定的檔案。'S' 代表工作階段(實際上,您可以使用 -S 來源任何 Vim 指令碼,因此它也可能代表「來源」)。
:set sessionoptions+=resize此處的工作階段、彼處的工作階段
:wall :mksession! ~/.config/nvim/secret.vim :source ~/.config/nvim/boring.vim首先使用「:wall」寫入所有已修改的檔案。然後,使用「:mksession!」儲存目前的會話。這會覆寫先前的會話。下次您載入秘密會話時,可以從這個時間點繼續。最後,您載入新的「無聊」會話。
:source ~/.config/nvim/boring.vim因此,您可以完全控制是否要透過將目前的設定儲存在會話中,來在下次從現在的位置繼續,或者將會話檔案保留為起點。使用會話的另一種方式是建立您喜歡使用的視窗佈局,並將其儲存在會話中。然後,您可以隨時回到此佈局。例如,這是一個不錯的佈局可以使用:
+----------------------------------------+ | VIM - main help file | | | |Move around: Use the cursor keys, or "h| |help.txt================================| |explorer | | |dir |~ | |dir |~ | |file |~ | |file |~ | |file |~ | |file |~ | |~/=========|[No File]===================| | | +----------------------------------------+
:help CTRL-W w :vertical split ~/您可以稍微調整視窗大小以符合您的喜好。然後使用以下命令儲存會話:
:mksession ~/.config/nvim/mine.vim現在,您可以使用此佈局啟動 Vim:
vim -S ~/.config/nvim/mine.vim提示:若要開啟您在檔案總管視窗中看到的檔案,請將游標移至檔案名稱並按下「O」。使用滑鼠雙擊也會執行此操作。
:mksession! ~/.config/nvim/secret.vim :wshada! ~/.local/state/nvim/shada/secret.shada再次還原:
:source ~/.config/nvim/secret.vim :rshada! ~/.local/state/nvim/shada/secret.shada
:mkviewVim 會決定將檢視儲存在哪裡。當您稍後編輯同一個檔案時,您可以使用此命令取回檢視:
:loadview這很簡單,不是嗎?現在,您想在不啟用 'number' 選項或開啟所有折疊的情況下檢視檔案,您可以設定選項使視窗看起來像那樣。然後使用以下命令儲存此檢視:
:mkview 1顯然,您可以使用以下命令取回檢視:
:loadview 1現在,您可以使用帶有或不帶有「1」引數的「:loadview」在檔案的兩個檢視之間切換。您可以使用這種方式為同一個檔案儲存最多十個檢視,一個未編號,九個編號為 1 到 9。
:mkview ~/.config/nvim/main.vim您可以使用以下命令還原它:
:source ~/.config/nvim/main.vim
/* vim:set shiftwidth=4: */ ~將此行放在檔案開頭或結尾的頭五行之一。編輯檔案時,您會注意到 'shiftwidth' 會被設定為 4。編輯另一個檔案時,它會被設定回預設值 8。對於某些檔案,模式行非常適合放在標頭中,因此可以放在檔案頂部。對於文字檔和其他模式行會妨礙正常內容的檔案,請將其放在檔案結尾。
:set modelines=10可以使用 'modeline' 選項關閉此功能。當您以 Unix 上的 root 或 MS-Windows 上的管理員身分工作時,或當您不信任您正在編輯的檔案時,請執行此操作:
:set nomodeline使用此格式設定模式行:
any-text vim:set {option}={value} ... : any-text「any-text」表示您可以在 Vim 將使用的部分之前和之後放置任何文字。這允許使其看起來像註解,就像上面的「/*」和「*/」一樣。「 vim:」部分是讓 Vim 識別此行的部分。「vim」之前必須有空白,或者「vim」必須位於行的開頭。因此,使用「gvim:」之類的內容將不起作用。冒號之間的部分是「:set」命令。它的運作方式與輸入「:set」命令相同,但您需要在冒號之前插入反斜線(否則它會被視為模式行的結尾)。
// vim:set textwidth=72 dir=c\:\tmp: use c:\tmp here第一個冒號之前有一個額外的反斜線,以便它包含在「:set」命令中。第二個冒號之後的文字會被忽略,因此可以在那裡放置註解。