最近、Gitステータスなどのシェルプロンプトの統合サポートの一部としてZshを使い始めました。
入力すると:
Ruby -v
Ruby実行中のバージョンを確認するために、Zshはコマンドを_Rubyに変更するかどうかを尋ねます。まあ、プロンプトでnoと言った後、コマンドが期待どおりに完了すると、引き続きコマンドが正しいことを確認した後、プロンプトで質問します。
私は補完ファイルまたはある種のものがあると仮定しています。
ありがとう
更新:
シェルは_Rubyを完了しようとするのではなく、いくつかの方法でシェルを数回閉じた後に応答を停止しました。
ファイルを数回クリーンアップしようとしましたが、50行以上の「opts」変数があり、行がすべて一緒に実行され、一部の行は150文字を超えています。まだ見たい場合は、添付ファイルをメールで送るかもしれません。ご迷惑をおかけして申し訳ございません。
これは、correct
オプションによってアクティブ化されるコマンドの自動修正です。それは完成とは何の関係もありません。 _Ruby
が表示されているのは、zshがRuby
コマンドがないと判断し、既存の最も近い一致として_Ruby
を提供するためです。
Ruby
をインストールしたばかりの場合、zsh
が使用可能なコマンドのリストを以前に記憶している可能性があり、その間にコマンドが出現したかどうかを常に確認しようとするわけではありません。その場合は、hash -rf
を実行します。 Ruby
コマンドは開始時にすでに存在していたため、将来のzshセッションではこの問題は発生しません。
場合によっては、PATH
を変更すると、zshがハッシュされたコマンドを忘れてしまうことがあります。オプションhash_listall
はこれに役立ちます。上記のように、zshにhash -rf
を使用してコマンドキャッシュを更新させることができる場合。
あなたはエイリアスを作ることができます:
alias Ruby='nocorrect Ruby'
Zshが私に.meteor
meteor
と入力したとき。自動修正はまだ有用な場合があるためです。
オートコレクト機能が時々迷惑になることがあると思います。だから私は私の〜/ .zshrcで、
DISABLE_CORRECTION="true"
しばらく前に更新した後、不要なcommand auto-correctionが有効になりました。同じことがあなたに起こり、それを元に戻したい場合は、〜/ .zshrcファイルでそれを作成する必要があります:# Uncomment the following line to enable command auto-correction.
ENABLE_CORRECTION="false"
または以下のようにコメントしてください:# Uncomment the following line to enable command auto-correction.
# ENABLE_CORRECTION="true"