私は多くの人がこれをしているのを見てきましたが
、他の人がこれをしているのを見てき
ました。違いを知りたいです。どちらを使うべきですか?
autoload -Uz compinit
compinit
autoload -U compinit
compinit -i
1 に答える
autoload
、からman zshbuiltins
:
フラグ
-z
とマークは、オプションが設定されていないか設定さ-k
れているかのように、ネイティブまたはkshエミュレーションで自動ロードされる関数をそれぞれマークします。KSH_AUTOLOAD
フラグは-U
さかのぼることができます:はとautoload
同等でfunction -u
あり、これはと同等typeset -f
です。typeset
、一言で言えば、次の目的で使用されます。
シェルパラメータの属性と値を設定または表示します。
-f
と組み合わせて使用する場合-U
:
[-fフラグの原因]名前はパラメーターではなく関数を参照しています。... -uフラグと-Uフラグを使用すると、関数に自動読み込みのマークが付けられます。-Uを使用すると、関数のロード時にエイリアスの展開も抑制されます。
compinit
compsys
は、「新しい」Zシェル完了システムで使用される完了初期化関数です。詳細man zshcompsys
はをご覧ください。
-i
フラグは次の目的で使用されます。
compinitが安全でないすべてのファイルとディレクトリをサイレントに無視するようにするには、オプション-iを使用します。
一般的に、この興味深い読み物autoload -Uz
によれば、を使用する必要があります。