【发布时间】:2021-02-08 07:02:20
【问题描述】:
我有一个 Git 存储库,omni。
omni 在~/omni 签出。
~/omni/completions/_omni 有一个完成脚本。
我通过~/.zprofile 设置了fpath=( ~/omni/completions $fpath ),所以完成脚本应该被拾取但不是。这已被简单证明:
$ for dir in "$fpath[@]"; do if [ -f "$dir/_omni" ]; then echo $dir; fi; done
/Users/myusername/omni/completions
我也运行了compinit -i 来初始化完成,但是脚本没有被拾取。
$ compinit -i
$ which _omni
_omni not found
但是,如果我重新初始化完成,一切正常
$ which _omni
_omni not found
$ compinit -i
$ which _omni
_omni not found
$ compinit -u
$ which _omni
_omni () {
# undefined
builtin autoload -XUz
}
现在完成脚本被拾取。
当compinit -i 运行时,我需要做什么才能在 shell 启动时自动获取完成脚本?
【问题讨论】:
标签: autocomplete zsh zsh-completion prezto