Helphelp
Nvim の:help
ページは、生成されたもので、ソースを tree-sitter-vimdoc パーサーを使用して処理しています。
ヘルプファイルに関するヘルプ
help <Help> :h :help <F1> i_<F1> i_<Help> <Help>
または :h[elp] 読み取り専用モードでヘルプファイルをウィンドウに表示します。既にヘルプウィンドウが開いている場合は、それを再利用します。そうでない場合、現在のウィンドウが画面の全幅を使用しているか、少なくとも80文字以上の幅がある場合は、ヘルプウィンドウは現在のウィンドウのすぐ上に表示されます。そうでない場合は、新しいウィンドウは一番上に配置されます。
'helplang' オプションを使用して、メインのヘルプファイルが複数の言語で利用可能な場合に言語を選択します。
{subject} E149 E661 :h[elp]
{subject}
":help" と同様ですが、さらにタグ
{subject}
にジャンプします。例:
:help options
{subject}
には、「*」、「?」、「[a-z]」などのワイルドカードを含めることができます。:help z? は「z」コマンドのヘルプにジャンプします :help z. は「z.」のヘルプにジャンプします。ただし、タグが存在する場合は、文字通りに解釈されます。:help :? は「:? 」のヘルプにジャンプします。
パターンに完全一致がない場合、または一致が複数ある場合は、「最適な」一致が使用されます。どのマッチが他のマッチよりも優れているかを決定するために、高度なアルゴリズムが使用されます。計算では次の項目が考慮されます。
大文字と小文字が同じ一致は、大文字と小文字が異なる一致よりもはるかに優れています。
英数字以外の文字の後に始まる一致は、単語の途中で一致するよりも優れています。
タグの先頭または付近の一致は、さらに先の一致よりも優れています。
英数字文字が一致するほど、優れています。
一致の長さが短いほど、優れています。
{subject}
が複数の言語で利用可能な場合、
'helplang' オプションを使用して言語を選択します。特定の言語でタグを見つけるには、「@ab」(ここで「ab」は2文字の言語コード)を追加します。
help-translated を参照してください。
指定する
{subject}
が長いほど、見つかる一致が少なくなることに注意してください。コマンドライン補完を使用すると、これがどのように機能するかを理解できます(":help subject" の後に
CTRL-D
を入力します
c_CTRL-D)。一致が複数ある場合は、
CTRL-D
を押すと一覧が表示されます。例:
:help cont<Ctrl-D>
CTRL-V
のヘルプを検索するために":help
CTRL-V
"と入力する代わりに、以下のように入力できます。
:help ^V
これは他の文字とも連携して動作します。たとえば、挿入モードでの
CTRL-V
のヘルプを見つけるには:
:help i^V
":help" を実行してから、ヘルプウィンドウで ":tag
{pattern}
" を使用することもできます。その後、":tnext" コマンドを使用して他のマッチにジャンプし、"tselect" を使用してマッチを一覧表示し、1つを選択できます。
:help index
:tselect /.*mode
引数が指定されていない場合、「help」の一致が表示されます(すべての一致を一覧表示すると非常に遅くなるため)。表示される一致数は300個に制限されています。
:help
コマンドの後に '|' と別のコマンドを付けることができますが、ヘルプコマンド内の '|' をエスケープする必要はありません。そのため、どちらも機能します。
:help |
:help k| only
'|' の前のスペースは ":help" 引数の一部と見なされます。
<NL>
または
<CR>
を使用して、ヘルプコマンドと後続のコマンドを区切ることもできます。
<NL>
または
<CR>
を挿入するには、最初に
CTRL-V
を入力する必要があります。例:
:help so<C-V><CR>only
:h[elp]! [subject] ":help" と同様ですが、英語以外のヘルプファイルでは、現在のファイルと同じ言語のファイルでタグを見つけることを優先します。
help-translated を参照してください。
:helpc :helpclose :helpc[lose] ヘルプウィンドウが1つ開いている場合、それを閉じます。Vim は、ヘルプウィンドウを開く前にウィンドウレイアウト(カーソル位置を含む)を同じレイアウトに復元しようとします。これにより、いくつかのautocommandがトリガーされる可能性があります。
:helpg :helpgrep :helpg[rep]
{pattern}
[@xx] すべてのヘルプテキストファイルを検索し、
{pattern}
が一致する行のリストを作成します。最初の一致にジャンプします。オプションの [@xx] は、「xx」言語の一致のみを検索することを指定します。
quickfix コマンド(例:
:cnext を使用して次のものにジャンプする)を使用して、一致を移動できます。または、
:cwindow を使用して、quickfix ウィンドウに一致のリストを表示します。
{pattern}
はVim正規表現
パターンとして使用されます。
'ignorecase' は使用されません。大文字と小文字を区別しない場合は "\c" を追加します。大文字と小文字を区別する検索の例:
:helpgrep Uganda
大文字と小文字を区別しない検索の例:
:helpgrep uganda\c
フランス語のヘルプを検索する例:
:helpgrep backspace@fr
パターンは改行をサポートしません。1行内で一致する必要があります。
:grep を代わりに使用できますが、その場合は、複雑な方法でヘルプファイルのリストを取得する必要があります。別のコマンドに続くことはできません。すべてがパターンの部分として使用されます。ただし、必要に応じて
:executeを使用できます。圧縮されたヘルプファイルは検索されません(Fedora はヘルプファイルを圧縮します)。
:lh :lhelpgrep :lh[elpgrep]
{pattern}
[@xx] ":helpgrep" と同じですが、quickfix リストの代わりに位置リストが使用されます。ヘルプウィンドウが既に開いている場合は、そのウィンドウの位置リストが使用されます。そうでない場合は、新しいヘルプウィンドウが開かれ、そのウィンドウの位置リストが設定されます。現在のウィンドウの位置リストは変更されません。
:exu :exusage :exu[sage] Exコマンドに関するヘルプを表示します。Nviコマンドをシミュレートするために追加されました。
:viu :viusage :viu[sage] 通常モードコマンドに関するヘルプを表示します。Nviコマンドをシミュレートするために追加されました。
タグを使用して、特定の項目にジャンプできます。これには2つの方法があります。
コマンドまたはオプションの名前にカーソルを置いて "CTRL-]" コマンドを使用します。これは、タグがキーワードの場合にのみ機能します。" <C-Leftmouse>" と "g<LeftMouse>" は "CTRL-]" と同じように機能します。
":ta {subject}
" コマンドを使用します。これは、キーワード以外の文字でも機能します。
CTRL-T
またはCTRL-O
を使用して、前に戻ります。ヘルプウィンドウを閉じるには ":q" を使用します。
探している項目に複数の一致がある場合、それぞれにジャンプする方法は次のとおりです。1. ヘルプウィンドウを開きます 2. タグの前にスラッシュを付けた ":tag" コマンドを使用します。例:
:tag /min
3. ":tnext" を使用して、次の一致するタグにジャンプします。
プラグインやその他の項目のヘルプファイルを追加できます。そのため、配布されているヘルプファイルを変更する必要はありません。
add-local-help を参照してください。
ローカルヘルプファイルの見出し行は自動的に追加されることに注意してください。これは、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" は 2 文字の言語コードです。したがって、イタリア語の場合は、ファイル名は次のようになります。
help.itx howto.itx ... tags-it
'helplang' オプションを使用して、優先する言語を設定できます。デフォルトは環境に応じて設定されます。Vim は最初に、優先言語に一致するタグを見つけようとします。見つからない場合は、英語が使用されます。
特定の言語のタグを見つけるには、タグに "@ab" を追加します。"ab" は 2 文字の言語コードです。例:
:he user-manual@it
:he user-manual@en
最初の例では、
'helplang' が空であっても、イタリア語のユーザーマニュアルが見つかります。2 番目の例では、
'helplang' が "it" に設定されていても、英語のユーザーマニュアルが見つかります。
":help" コマンドでコマンドライン補完を使用する場合、複数の言語でタグが存在する場合にのみ "@en" 拡張子が表示されます。タグが英語のみの場合、"@en" は省略されます。最初の候補に "@ab" 拡張子があり、それが
'helplang' の最初の言語と一致する場合、"@ab" も省略されます。
CTRL-] または ":help!" を英語以外のヘルプファイルで使用する場合、Vim は同じ言語でタグを見つけようとします。見つからない場合は、
'helplang' を使用して言語を選択します。
ヘルプファイルは、latin1 または utf-8 エンコーディングを使用する必要があります。Vim は、最初の行に非 ASCII 文字が見つかった場合、エンコーディングが utf-8 であると仮定します。そのため、「For Vim version」でヘッダーを翻訳する必要があります。
1 つのディレクトリ内の 1 つの言語のヘルプファイルには、同じエンコーディングを使用する必要があります。異なる言語には異なるエンコーディングを使用し、同じ言語のヘルプファイルだが異なるディレクトリにあるものには異なるエンコーディングを使用できます。
翻訳者へのヒント
タグは翻訳しないでください。これにより、
'helplang' を使用して優先言語を指定できます。お使いの言語で新しいタグを追加しても構いません。
ファイルの一部を翻訳しない場合は、"tag@en" 表記を使用して、英語のバージョンにタグを追加してください。
すべてのファイルとタグファイルを含むパッケージを作成してダウンロードできるようにしてください。ユーザーはそれを "doc" ディレクトリのいずれかに配置して使用を開始できます。開発チームに報告して、www.vim.org にリンクを追加してもらってください。
:helptags コマンドを使用して、タグファイルを生成します。指定されたディレクトリ内のすべての言語が検出されます。
使いやすさのために、プラグインの Vim ヘルプファイルは、最初の行を除いて、標準の Vim ヘルプファイルの形式に従う必要があります。新しいヘルプファイルを作成する場合は、既存のファイルのいずれかをコピーしてテンプレートとして使用することをお勧めします。
ヘルプファイルの最初の行は、次の形式にする必要があります。
*plugin_name.txt* {short description of the plugin}
最初のフィールドはヘルプタグで、":help plugin_name" にジャンプします。タブ以降の行の残りの部分は、プラグインの目的を簡単に説明しています。これは、メインヘルプの "LOCAL ADDITIONS" セクションに表示されます。
バージョン番号または最終更新日を追加する場合は、2 行目に右寄せで入力します。
ヘルプファイルの一番下に、
'textwidth' オプションと
'tabstop' オプション、および
'filetype' を "help" に設定する Vim モーダルラインを配置します。このようなモーダルラインでグローバルオプションを設定しないでください。望ましくない結果になる可能性があります。
ヘルプタグを定義するには、名前をアスタリスクで囲みます (
tag-name)。タグ名は、すべての Vim ヘルプタグ名とは異なり、理想的には Vim プラグインの名前で始まる必要があります。タグ名は通常、行の右側に揃えられます。
既存のヘルプタグを参照し、ホットリンクを作成するには、名前を 2 つのバー ("|") で囲みます。例:
help-writing
Vim コマンドを参照し、ホットリンクを作成するには、名前を 2 つのバッククォートで囲みます。例: `:filetype` の内側。これは、コードブロックのようにコマンドとして強調表示されます(下記参照)。
ヘルプファイルで Vim オプションを参照するには、オプション名を 2 つの単一引用符で囲みます。例:
'statusline'
ファイル名や関数パラメーターなど、その他の技術用語を参照する場合は、バッククォートで囲みます。例: `~/.path/to/init.vim`
強調表示
列見出しを定義するには、行の末尾にスペースの前にチルダ文字 (~) を使用します。これにより、列見出しが異なる色で強調表示されます。例:
ヘルプファイルのセクションを区切るには、先頭列から始まる行に一連の "=" 文字を配置します。セクション区切り線は、異なる方法で強調表示されます。
help-codeblock ex コマンドのブロックを逐語的に引用するには、ブロックの前に行の末尾に「>」文字を配置し、ブロックの後の行の先頭の空白以外の文字として「<」文字を配置します。1 列目から始まる行も、その前の ex コマンドのブロックを暗黙的に停止します。例:
function Example_Func()
echo "Example"
endfunction
Vim ヘルプファイルでは、次のものが異なる方法で強調表示されます。
`<PageDown>` のように <> 表記で表される特殊なキー名、または `CTRL-X` のように Ctrl 文字で表されるキー名。
`{braces}` の間のもの、例: `{lhs}` と `{rhs}`
"Note"、"Notes"、および同様の単語は、自動的に独特の強調表示を受け取ります。これらも同様です: Todo something to do Error something wrong
詳細は $VIMRUNTIME/syntax/help.vim にあります。