zshでサブストリングファイル名の完成を無効にする

zshでサブストリングファイル名の完成を無効にする

zshファイル名の先頭を入力し、タブオートコンプリートを使用すると、次のようになります。

$ ls gs<tab>

で始まる一致がない場合は、次のようになりますgs

$ ls logs

私はこの機能が役に立たないだけでなく有害であることを知りました。現在のディレクトリに一致するものがないかどうか疑問に思います。 (誤って誤ったディレクトリを入力した可能性があります。)

仮説として、オートコンプリート/自動修正ファイル名も存在しません(ファイルはありますがbootlogsファイルはありませんlogs)。

この「機能」を無効にするにはどうすればよいですか? .zshrcに次のオプションを追加しようとしましたが、役に立ちませんでした。

unsetopt correct
unsetopt correct_all

また、完成者から合計を削除しました_correct_approximate

zstyle ':completion:*' completer _expand _complete

matcher-list次の行は次のとおりです。

zstyle ':completion:*' matcher-list '' 'm:{a-z}={A-Z}' 'm:{a-zA-Z}={A-Za-z}' 'r:|[._-]=* r:|=* l:|=*'

私はzsh 4.3.17含まれているフレームワーク(例えば、oh-my-zsh)なしでを使用しています。

関連情報