group-name
zshコマンドラインでTabキーを押して完成を要求したときにスタイルが空の文字列に設定されている限り、一致はラベルに従ってグループ化できます。
autoload -Uz compinit
compinit
zstyle ':completion:*' menu select
zstyle ':completion:*' group-name ''
zstyle ':completion:*:descriptions' format '%d'
コマンドの場合、$ man
ラベルスタイルを次のように設定すると、一致をさらに分割できます。separate-sections
true
manuals
autoload -Uz compinit
compinit
zstyle ':completion:*' menu select
zstyle ':completion:*' group-name ''
zstyle ':completion:*:descriptions' format '%d'
zstyle ':completion:*:manuals' separate-sections true
したがって、次にTabを押すと、$ man write
完成システムは次の一致を提案します。
$ man write
manual page, section 1 (general commands)
write
manual page, section 2 (system calls)
write writev
write
最初のリストから一致するものを選択すると、マニュアルの最初の部分にあるページが$ man
開きます。write
write
ただし、2 番目のリストから一致する項目を選択すると、最初のセクションのページがまだ開かれ、リストの説明はマニュアルの$ man
2 番目のセクションを参照します。write
separate-sections
スタイルを設定するときにzshに関連するマニュアルセクションをmanコマンドに渡すことはできますか?
私はそれを使用していますzsh 5.6.2-dev-0 (x86_64-pc-linux-gnu)
。
答え1
以下を追加するだけです。
zstyle ':completion:*' insert-sections true
残念ながら、これは文書化されていませんが、コードで見ることができます。https://github.com/zsh-users/zsh/blob/8becb893579af0ca41617a15d3afcbea588fe621/Completion/Unix/Command/_man#L448
私はそれをテストし、動作します。