fix(kubectl): source completion instead of autoloading it

This commit is contained in:
Marc Cornellà 2022-01-17 12:46:20 +01:00
parent dfaad779a9
commit 4f2d8b4d4c

View file

@ -8,15 +8,15 @@ if (( $+commands[kubectl] )); then
command mkdir -p "$ZSH_CACHE_DIR/completions" command mkdir -p "$ZSH_CACHE_DIR/completions"
(( ${fpath[(Ie)"$ZSH_CACHE_DIR/completions"]} )) || fpath=("$ZSH_CACHE_DIR/completions" $fpath) (( ${fpath[(Ie)"$ZSH_CACHE_DIR/completions"]} )) || fpath=("$ZSH_CACHE_DIR/completions" $fpath)
# If the completion file doesn't exist yet, we need to autoload it and # If the completion file does not exist, generate it and then source it
# bind it to `kubectl`. Otherwise, compinit will have already done that. # Otherwise, source it and regenerate in the background
if [[ ! -f "$ZSH_CACHE_DIR/completions/_kubectl" ]]; then if [[ ! -f "$ZSH_CACHE_DIR/completions/_kubectl" ]]; then
typeset -g -A _comps kubectl completion zsh >| "$ZSH_CACHE_DIR/completions/_kubectl"
autoload -Uz _kubectl source "$ZSH_CACHE_DIR/completions/_kubectl"
_comps[kubectl]=_kubectl else
source "$ZSH_CACHE_DIR/completions/_kubectl"
kubectl completion zsh >| "$ZSH_CACHE_DIR/completions/_kubectl" &|
fi fi
kubectl completion zsh >! "$ZSH_CACHE_DIR/completions/_kubectl" &|
fi fi
# This command is used a LOT both below and in daily life # This command is used a LOT both below and in daily life