我应该如何安装 zsh 完成脚本以便它适用于所有 platforms/frameworks?

How should I install a zsh completion script so that it works on all platforms/frameworks?

我写了一个脚本供我的工作内部使用(它对我工作之外的任何人都没有多大用处)。我现在有一个不错的 zsh 完成脚本,效果很好。

我想在脚本上创建一个 --install-zsh-completions 选项,它会自动设置完成。

我看到有多种不同的方式可以设置 zsh,具体取决于您是使用 oh-my-zsh、prezto 还是您自己的配置。例如,在 oh-my-zsh 中,您可以将完成脚本放在 ~/.oh-my-zsh/completions 中并加载它们。

zsh 中是否有标准的位置或方式来安装 zsh 自定义完成脚本?例如,我是否应该只修改 .zshrc 并添加到 fpath?

Is there a standard place or way in zsh to install zsh custom completion scripts?

是的,有:只需在 /usr/local/share/zsh/site-functions 中创建一个指向您的完成函数的符号链接。仅此而已。

默认情况下,此目录在每个用户的 $fpath 中。因此,当他们(或他们使用的任何框架)调用 compinit 时,它将被自动拾取。