diff --git a/plugins/kubectl/kubectl.plugin.zsh b/plugins/kubectl/kubectl.plugin.zsh index ec1321d8..c4e30dac 100644 --- a/plugins/kubectl/kubectl.plugin.zsh +++ b/plugins/kubectl/kubectl.plugin.zsh @@ -1,9 +1,13 @@ -# Autocompletion for kubectl, the command line interface for Kubernetes -# -# Author: https://github.com/pstadler +if (( $+commands[kubectl] )); then + __KUBECTL_COMPLETION_FILE="${ZSH_CACHE_DIR}/kubectl_completion" -if [ $commands[kubectl] ]; then - source <(kubectl completion zsh) + if [[ ! -f $__KUBECTL_COMPLETION_FILE ]]; then + kubectl completion zsh >! $__KUBECTL_COMPLETION_FILE + fi + + [[ -f $__KUBECTL_COMPLETION_FILE ]] && source $__KUBECTL_COMPLETION_FILE + + unset __KUBECTL_COMPLETION_FILE fi # This command is used ALOT both below and in daily life