kubectl 插件选项卡自动完成功能不适用于 zsh

Ram*_*ams 1 zsh-completion oh-my-zsh kubectl

在使用 zsh 的 Mac 中通过 homebrew 安装 kubernetes-cli 后,kubernetes 自动完成功能无法完全或完全运行。只有第一个选项卡有效,第二个选项卡之后的选项卡无效。例如,如果我输入kubectl [TAB],它会显示 的子命令kubectl,现在如果我选择一个子命令并按 [TAB],例如kubectl get [TAB],它会冻结很长时间,之后什么也不会发生。

我尝试了以下方法

  1. 通过 homebrew 安装 kubectl-cli
  2. 启用 zsh 插件
  3. 还添加了以下代码
    source <(kubectl completion zsh)
    autoload -Uz compinit
    compinit
    
    Run Code Online (Sandbox Code Playgroud)

Ram*_*ams 8

最后在参考https://kubernetes.io/docs/reference/kubectl/cheatsheet/#zsh后这才起作用

echo '[[ $commands[kubectl] ]] && source <(kubectl completion zsh)' >> ~/.zshrc # add autocomplete permanently to your zsh shell
Run Code Online (Sandbox Code Playgroud)

下面的没有工作

https://kubernetes.io/docs/tasks/tools/included/optional-kubectl-configs-zsh/