Helphelp
Nvim :help
頁面,由 產生 自 原始碼,使用 tree-sitter-vimdoc 解析器。
關於說明檔案的說明
{subject}
可以包含萬用字元,例如 "*"、"?" 和 "[a-z]": :help z? 跳到任何 "z" 命令的說明 :help z. 跳到 "z." 的說明。但是當標籤存在時,會按字面意思採用::help :? 跳到 ":?" 的說明
如果沒有完全符合模式的項目,或者有多個符合的項目,將會使用「最佳」符合的項目。會使用複雜的演算法來決定哪個符合的項目比另一個好。計算時會考慮以下項目
大小寫相同的符合項目比大小寫不同的符合項目好得多。
在非字母數字字元之後開始的符合項目比在單字中間的符合項目好。
在標籤開頭或附近符合的項目比在更遠處符合的項目好。
符合的字母數字字元越多,越好。
符合的長度越短,越好。
請注意,您提供的
{subject}
越長,找到的符合項目就會越少。您可以透過使用命令列完成功能(在 ":help subject" 後輸入
CTRL-D
c_CTRL-D)來瞭解這一切是如何運作的。如果有多個符合的項目,您可以透過按下
CTRL-D
來列出它們。範例
:help cont<Ctrl-D>
不必輸入 ":help
CTRL-V
" 來搜尋
CTRL-V
的說明,您可以輸入
:help ^V
這也適用於其他字元,例如,若要尋找插入模式中
CTRL-V
的說明
:help i^V
也可以先執行 ":help",然後在說明視窗中使用 ":tag
{pattern}
"。接著可以使用 ":tnext" 指令來跳到其他符合的項目,"tselect" 則可列出符合的項目並選擇一個。
:help index
:tselect /.*mode
當沒有引數時,您將會看到 "help" 的符合項目,以避免列出所有可能的符合項目(這樣會非常慢)。顯示的符合項目數限制為 300。
:help
指令後面可以接 '|' 和另一個指令,但您不需要在 help 指令內跳脫 '|'。因此,這兩種方式都有效
:help |
:help k| only
請注意,'|' 前面的空格會被視為 ":help" 引數的一部分。您也可以使用
<NL>
或
<CR>
來將 help 指令與後續指令分開。您需要先輸入
CTRL-V
來插入
<NL>
或
<CR>
。範例
:help so<C-V><CR>only
:h[elp]! [subject] 類似 ":help",但在非英文說明檔案中,會優先尋找與目前檔案語言相同的檔案中的標籤。請參閱
help-translated。
:helpc :helpclose :helpc[lose] 關閉一個說明視窗(如果有的話)。Vim 將會嘗試將視窗版面配置(包括游標位置)還原到最初開啟說明視窗之前的相同版面配置。這可能會觸發多個自動指令。
:helpg :helpgrep :helpg[rep]
{pattern}
[@xx] 搜尋所有說明文字檔,並建立一個清單,其中包含
{pattern}
符合的行。跳到第一個符合的項目。選擇性的 [@xx] 指定只尋找 "xx" 語言中的符合項目。您可以使用
快速修正 指令來瀏覽符合的項目,例如
:cnext 跳到下一個。或者使用
:cwindow 在快速修正視窗中取得符合項目的清單。
{pattern}
會當作 Vim 正規表達式
pattern 使用。
'ignorecase' 不會使用,請新增 "\c" 來忽略大小寫。大小寫敏感搜尋範例
:helpgrep Uganda
忽略大小寫搜尋範例
:helpgrep uganda\c
在法文說明中搜尋範例
:helpgrep backspace@fr
此模式不支援換行符號,它必須在同一行中符合。您可以使用
:grep 來代替,但這樣您需要以複雜的方式取得說明檔案的清單。後面不能接另一個指令,所有內容都會當作模式的一部分。但是您可以在需要時使用
:execute。不會搜尋壓縮的說明檔案(Fedora 會壓縮說明檔案)。
:lh :lhelpgrep :lh[elpgrep]
{pattern}
[@xx] 與 ":helpgrep" 相同,只是會使用位置清單,而不是快速修正清單。如果說明視窗已開啟,則會使用該視窗的位置清單。否則,會開啟新的說明視窗並設定該視窗的位置清單。目前視窗的位置清單不會變更。
使用標籤跳到特定主題。這可以用兩種方式完成
當游標停留在指令或選項的名稱上時,使用 "CTRL-]" 指令。這僅在標籤是關鍵字時有效。"<C-Leftmouse>" 和 "g<LeftMouse>" 的作用與 "CTRL-]" 相同。
使用 ":ta {subject}
" 指令。這也適用於非關鍵字字元。
使用 CTRL-T
或 CTRL-O
跳回。使用 ":q" 關閉說明視窗。
如果有多個符合您要尋找的項目,以下是您跳到每個項目的方式:1. 開啟說明視窗 2. 使用在標籤前面加上斜線的 ":tag" 指令。例如
:tag /min
3. 使用 ":tnext" 跳到下一個符合的標籤。
請注意,本機說明檔案中的標題行會自動新增至。這是透過在 Vim 中檢視檔案時完成的,檔案本身不會變更。這是透過瀏覽所有說明檔案並取得每個檔案的第一行來完成的。會跳過 $VIMRUNTIME/doc 中的檔案。
會掃描目錄和子目錄中的所有 "*.txt" 和 "*.??x" 檔案,以尋找星號之間的說明標籤定義。"*.??x" 檔案用於翻譯的說明,它們會產生 "tags-??" 檔案,請參閱
help-translated。產生的標籤檔案會排序。當有重複項目時,會給予錯誤訊息。現有的標籤檔案會無訊息地覆寫。
選擇性的 "++t" 引數會強制新增 "help-tags" 標籤。當 {dir}
等於 $VIMRUNTIME/doc 時也會執行此操作。
若要重建執行時間目錄中的說明標籤(需要該處的寫入權限)
:helptags $VIMRUNTIME/doc
可以在原始英文說明檔案旁邊新增翻譯的說明檔案。Vim 會在
'runtimepath' 中所有的 "doc" 目錄中搜尋所有說明。
目前,翻譯版本適用於: 中文 - 多位作者 法文 - 由 David Blanchet 翻譯 義大利文 - 由 Antonio Colombo 翻譯 日文 - 多位作者 波蘭文 - 由 Mikolaj Machowski 翻譯 俄文 - 由 Vassily Ragosin 翻譯 請參閱 Vim 網站尋找它們:
https://www.vim.org/translations.php
一組翻譯的說明檔案包含這些檔案
help.abx howto.abx ... tags-ab
"ab" 是兩個字母的語言代碼。因此,對於義大利文,名稱為
help.itx howto.itx ... tags-it
可以使用
'helplang' 選項來設定偏好的語言。預設值會根據環境設定。Vim 會先嘗試在偏好的語言中尋找符合的標籤。如果找不到,則會使用英文。
若要尋找特定語言的標籤,請在標籤後附加 "@ab",其中 "ab" 是雙字母語言代碼。例如:
:he user-manual@it
:he user-manual@en
第一個範例會尋找義大利語使用者手冊,即使
'helplang' 是空的。第二個範例會尋找英文使用者手冊,即使
'helplang' 設定為 "it"。
當使用命令列自動完成功能輸入 ":help" 命令時,只有在標籤存在多種語言版本時才會顯示 "@en" 擴展名。如果標籤只有英文版本,則會省略 "@en"。當第一個候選字有 "@ab" 擴展名,且它與
'helplang' 中的第一個語言相符時,也會省略 "@ab"。
說明檔必須使用 latin1 或 utf-8 編碼。當在第一行中找到非 ASCII 字元時,Vim 會假設編碼為 utf-8。因此,您必須翻譯包含 "For Vim version" 的標頭。
同一語言在同一個目錄下的說明檔必須使用相同的編碼。您可以為不同的語言使用不同的編碼,也可以為同一語言但在不同目錄下的說明檔使用不同的編碼。
給翻譯者的提示
當您不翻譯檔案的某部分時,請使用 "tag@en" 標記法將標籤新增到英文版本中。
請建立包含所有檔案和標籤檔的套件,供使用者下載。使用者可以將其放入 "doc" 目錄之一並開始使用。請回報給開發團隊,以便他們可以在 www.vim.org 上新增連結。
為了方便使用,外掛的 Vim 說明檔應該遵循標準 Vim 說明檔的格式,第一行除外。如果您要編寫新的說明檔,最好複製現有的檔案之一並將其用作範本。
說明檔的第一行應該具有以下格式
*plugin_name.txt* {short description of the plugin}
第一個欄位是說明標籤,":help plugin_name" 會跳到該標籤。該行剩餘部分(在 Tab 鍵之後)簡短描述外掛用途。這將顯示在主要說明的 "LOCAL ADDITIONS" 部分中。
如果您想新增版本號碼或上次修改日期,請將其放在第二行,靠右對齊。
若要定義說明標籤,請將名稱放在星號之間(
tag-name)。標籤名稱應與所有 Vim 說明標籤名稱不同,並且最好以 Vim 外掛的名稱開頭。標籤名稱通常在行上靠右對齊。
當參考 Vim 命令並建立熱連結時,請將名稱放在兩個反引號之間,例如在 :filetype
內部。您會看到它會像程式碼區塊一樣以命令形式反白顯示(請參閱下文)。
當參考任何其他技術術語時,例如檔案名稱或函式參數,請用反引號將其括起來,例如 ~/.path/to/init.vim
。
反白
若要定義欄標題,請在行的結尾使用波浪符號,前面加上一個空格。這將以不同的顏色反白顯示欄標題。例如:
若要分隔說明檔中的章節,請在從第一欄開始的行中放置一系列 "=" 字元。章節分隔線會以不同的方式反白顯示。
help-codeblock 若要逐字引用 ex 命令區塊,請在區塊前的行的結尾放置一個大於符號 (>),並在區塊後面的行的第一個非空白字元放置一個小於符號 (<)。任何從第 1 欄開始的行也會隱含地停止其之前的 ex 命令區塊。例如:
function Example_Func()
echo "Example"
endfunction
以下項目會在 Vim 說明檔中以不同方式反白顯示
特殊按鍵名稱,以 <> 標記法表示,例如 <PageDown>
,或以 Ctrl 字元表示,例如 CTRL-X
任何在 {大括號}
之間的東西,例如 {lhs}
和 {rhs}
單字 "Note"、"Notes" 和類似的單字會自動獲得獨特的反白顯示。以下也是如此:Todo 待辦事項 Error 錯誤
您可以在 $VIMRUNTIME/syntax/help.vim 中找到詳細資訊