浏览代码

fix(helm): fix completion loading mechanism

Marc Cornellà 2 年之前
父节点
当前提交
dfaad779a9
共有 1 个文件被更改,包括 7 次插入7 次删除
  1. 7 7
      plugins/helm/helm.plugin.zsh

+ 7 - 7
plugins/helm/helm.plugin.zsh

@@ -11,12 +11,12 @@ command rm -f "${ZSH_CACHE_DIR}/helm_completion"
 command mkdir -p "$ZSH_CACHE_DIR/completions"
 (( ${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
-# bind it to `helm`. Otherwise, compinit will have already done that.
+# If the completion file does not exist, generate it and then source it
+# Otherwise, source it and regenerate in the background
 if [[ ! -f "$ZSH_CACHE_DIR/completions/_helm" ]]; then
-  typeset -g -A _comps
-  autoload -Uz _helm
-  _comps[helm]=_helm
+  helm completion zsh >| "$ZSH_CACHE_DIR/completions/_helm"
+  source "$ZSH_CACHE_DIR/completions/_helm"
+else
+  source "$ZSH_CACHE_DIR/completions/_helm"
+  helm completion zsh >| "$ZSH_CACHE_DIR/completions/_helm" &|
 fi
-
-helm completion zsh >| "$ZSH_CACHE_DIR/completions/_helm" &|