web-dev-qa-db-ja.com

oh myzshを使用しないディレクトリ/ファイルパスのoh-my-zshスタイルの補完

しばらくの間oh-my-zshをインストールしていましたが、1文字だけを使用してフルパスを入力し、Tabキーを押して、大文字と小文字を区別せずにすべてをオートコンプリートできました。たとえば、~/Documents/sites/great-site/great-file.txtにファイルがある場合、vim ~/d/s/g/gと入力してタブを押すと、パスが正しいパスに展開されます。複数の可能なパスがある場合は、同じくらい展開されます。可能な限り、競合があった場所にジャンプします。

起動が遅く、煩わしい更新を繰り返したくて、oh-my-zshをアンインストールしました。 oh-my-zshを使用せずに、ファイルパスでこれと同じ大文字と小文字を区別しない補完と部分的なWord/1文字スタイルの補完を取得する方法はありますか?

7
Josh Sherick

システムの.zshrc/etc/zshrcを調べました。実験から、/v/L/S/c/var/log/squid/cache.logに展開するには、次の3つの設定が必要でした。

# These two initialize the completion system,
# providing the case-sensitive expansion
autoload -U compinit
compinit
# This sets the case insensitivity
zstyle ':completion:*' matcher-list '' 'm:{[:lower:][:upper:]}={[:upper:][:lower:]}'

その最後の行は、compinstallを実行することによって追加されたいくつかの設定の一部でした。あなたもそれを実行することをお勧めします。 compinstallは多くの設定を追加しないので、膨張について心配する必要はありません。

6
muru