Zsh完了タスクを従来の方法にする方法は?

Zsh完了タスクを従来の方法にする方法は?

私はスマート完成システムが好きではありません。ちょうど前のように動作してほしいです。 zshを以前の方法でオートコンプリートするにはどうすればよいですか?たとえば、私のPATHのすべてのコマンドと現在のディレクトリのすべてのファイル(およびディレクトリ)を自動補完します。私はいかなる種類の知能も望んでいません。

私が試したこと:

  • 私の〜/ .zshrcファイルにzleまたはzstyle設定コマンドはありません。たとえば、「cd」と入力するとディレクトリだけが完了します(たとえば、愚かなことにファイルを含むすべてを完了したい)。

  • .zshrcの設定:

      zle -C complete-file complete-word _generic
      zstyle ':completion:complete-file::::' completer _files
    

    これでファイルは完了しますが、コマンドの完了は失われます。

ドキュメントが多すぎてスマートコンプリートシステムを完全に無効にできるクイックハッキングが見つからないようです。

編集する:

zmodload -L を実行すると、次の結果が表示されます。

$ zmodload -L
zmodload zsh/complete
zmodload zsh/computil
zmodload zsh/main
zmodload zsh/parameter
zmodload zsh/stat
zmodload zsh/terminfo
zmodload zsh/zle
zmodload zsh/zutil

タスクを完了するにはzsh / completeとzsh / computilが必要ですか? ~/.zshrcf ファイルで zmodload コマンドを実行せず、grep -r zmodload /etc/zsh* は何も返しません。

私はUbuntu 18.04.2 LTSを実行しています。

ベストアンサー1

電話しないでくださいcompinit。それはあなたがしなければならないすべてです。その呼び出しがファイルにあっても.zshrc、別のドットファイルであっても、それを呼び出すプラグインを取得した可能性があります。電話がかかった場所を確認して通話を削除してください。呼び出されない場合は、compinit以前の学校完了システムを受け取ります。

compinit呼び出し先が見つからない場合は、実行を試みzsh -x 2>zsh.log(プロンプトが表示されたらすぐにシェルを終了)、次の場所compinitで呼び出しを探します。zsh.log

タスクを完了するにはzsh / completeとzsh / computilが必要ですか?

zsh/completeはい。完了したい場合は必須です。zsh/computil

おすすめ記事