web-dev-qa-db-ja.com

Zshの `autoload`と` autoload -U`の違いは何ですか?

違いは何ですか autoload -Uおよびプレーンautoload

たとえば、 ここ 次のコマンドを実行することをお勧めします。

autoload -U run-help
autoload run-help-git
autoload run-help-svn
autoload run-help-svk
unalias run-help
alias help=run-help

なぜ-U最初の行だけ?

6
shadowtalker

はい、-Uの推奨事項がよく見られますが、通常は-zとペアになっています。 autoloadrun-helpには記載されていませんが、zshmiscのマンページに「AUTOLOADING FUNCTIONS」というタイトルのセクションがあります。

そこでそれは述べています:

組み込みのautoloadまたは同等のオプションに-Uオプションが指定されている場合、読み取り中の通常のエイリアス展開は抑制されます。これは、zshディストリビューションで提供される関数を使用する場合に推奨されます。 zcompile組み込みコマンドでプリコンパイルされた関数の場合、対応する情報が後者にコンパイルされるため、.zwcファイルの作成時にフラグ-Uを指定する必要があることに注意してください。

私はそれを「エイリアスを無視する」と読みました。 -zはKsh-ismsを回避するためのようです。 -Uzを覚えて、通常はオートロードに追加します。多分価値のあるエイリアス:alias al=’autoload -Uz’

参照: https://stackoverflow.com/questions/12570749/zsh-completion-difference

8
Micah Elliott