Git zsh 中的制表符补全抛出错误
Git tab completion in zsh throwing errors
在 osx 上为 git 设置努力完成制表符完成后,我遇到了一些奇怪的错误,我也找不到源代码。
zsh:12: command not found: ___main
_default:compcall:12: can only be called from completion function
我不确定是什么导致了错误,因为一切都已正确设置。
zstyle ':completion:*:*:git:*' script ~/.git-completion.bash
autoload -U compinit && compinit
zmodload -i zsh/complist
source ~/.git-completion.zsh
有什么想法吗?
git-completion.zsh
似乎 而不是 设计为 source
ed。您可以将 git-completion.zsh
文件复制到 $fpath
中的某处并将其重命名为 _git
。
例如:(如果您决定~/.zsh/functions/_git
。)
首先,您可以将 git-completion.zsh
复制到那里并将其重命名为 _git
。
% mkdir -p ~/.zsh/functions && cp git-completion.zsh ~/.zsh/functions/_git
那么你的 ~/.zshrc
可以是这样的:
zstyle ':completion:*:*:git:*' script ~/.git-completion.bash
# `compinit` scans $fpath, so do this before calling it.
fpath=(~/.zsh/functions $fpath)
autoload -Uz compinit && compinit
如果我不确定,我会 rm ~/.zcompdump
以确保 compinit
丢弃其缓存。
在 osx 上为 git 设置努力完成制表符完成后,我遇到了一些奇怪的错误,我也找不到源代码。
zsh:12: command not found: ___main
_default:compcall:12: can only be called from completion function
我不确定是什么导致了错误,因为一切都已正确设置。
zstyle ':completion:*:*:git:*' script ~/.git-completion.bash
autoload -U compinit && compinit
zmodload -i zsh/complist
source ~/.git-completion.zsh
有什么想法吗?
git-completion.zsh
似乎 而不是 设计为 source
ed。您可以将 git-completion.zsh
文件复制到 $fpath
中的某处并将其重命名为 _git
。
例如:(如果您决定~/.zsh/functions/_git
。)
首先,您可以将 git-completion.zsh
复制到那里并将其重命名为 _git
。
% mkdir -p ~/.zsh/functions && cp git-completion.zsh ~/.zsh/functions/_git
那么你的 ~/.zshrc
可以是这样的:
zstyle ':completion:*:*:git:*' script ~/.git-completion.bash
# `compinit` scans $fpath, so do this before calling it.
fpath=(~/.zsh/functions $fpath)
autoload -Uz compinit && compinit
如果我不确定,我会 rm ~/.zcompdump
以确保 compinit
丢弃其缓存。