ZSHオートコンプリート:入力された提案プレフィックスを強調表示

ZSHオートコンプリート:入力された提案プレフィックスを強調表示

Bashのようなオートコンプリート機能を持つようにZSHを設定しました。

setopt noautomenu
setopt nomenucomplete

したがって、Tabを押すとすべての提案の中で一意のプレフィックスのみが完成し、Tabを2回押すとこのプレフィックスと一緒に可能なすべての完成リストが表示されます。すでに入力された提案部分を強調表示する方法はありますか?

たとえば、「do」と入力して Tab キーを 2 回押して提案を表示すると、次のような内容が表示されます。

するコメント

するダウンロード

するカー

答え1

zshに付属する最も近いものshow-ambiguityスタイル。まだ入力されていない最初の文字を強調表示します。

zstyle ':completion:*' show-ambiguity true

デフォルトのハイライトには下線が付いています。太字、太字の赤、太字、赤の背景などtrueに置き換えることができます。1'1;31'1;41

正確に望むものではないだけでなく、大きな欠点が1つあります。ファイルの種類に応じてファイル名の色を抑制します。。与えられた方法内部深く処理されています。_main_complete、zshコードをパッチせずに動作を調整するのは本当に難しいようです。

関連情報