zshのタブ補完と大文字と小文字の区別なし

zshのタブ補完と大文字と小文字の区別なし

大文字と小文字を区別しないタブ補完を使用するようにzsh 5.0.7を構成しました。

zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}'

私が経験している問題は、これらの大文字と小文字の区別が不足しており、しばしば追加のTab時間を引き起こす必要があるということです。たとえば、私のホームディレクトリには、「デスクトップ」、「ドキュメント」、および「ダウンロード」フォルダが含まれています。ホームフォルダに入ると

cd D

次に、を押すとTab3つの可能性が一覧表示されます。一方、私が入力した場合

cd d

その後、「d」を押すとTab「D」になりますが、完了メニューは表示されません。Tabこれを達成するにはもう一度押す必要があります。 「d」が「D」になっている間に完成メニューを得る方法はありますか?

答え1

このオプションを有効にすると、編集内容はスキップされ、最初に一致する可能性のあるMENU_COMPLETE項目がすぐに挿入されます。

答え2

別の便利な設定は次のとおりです。

setopt no_list_ambiguous

「c」を「C」に変更します。そして完了メニューが表示されます。

答え3

OPと答えは私には適していません。最高の答えここうまく動作します:


zsh設定ファイルに次の行を入力します~/.zshrc。通常は次のようになります。

autoload -Uz compinit && compinit
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}'

関連情報