0

just work当我升级到 Catalina 时,我切换到 zsh 并且总体上非常高兴,尤其是在我没有任何工作的情况下完成了多少次。但在过去一周左右的某个时候,完成工作停止了。它一直在为我喜欢co的别名工作(再次,我没有工作),checkout以便我可以做

% git co mybr<tab>       # becomes git co mybranch

但是现在即使是像子命令这样的 BASIC 补全也不起作用

% git checko<tab>        # nothing.  doh!

所以我做了一些基本的调查。下面我的 fpath 显示了唯一的自定义似乎是一些 brew 卡在 /usr/local/share 中的东西

pristineuser ~ % echo $fpath
/usr/local/share/zsh/site-functions /usr/share/zsh/site-functions /usr/share/zsh/5.7.1/functions

pristineuser ~ % ls /usr/local/share/zsh/site-functions /usr/share/zsh/site-functions 
/usr/local/share/zsh/site-functions:
_brew       _brew_cask

/usr/share/zsh/site-functions:

pristineuser ~ % ls -1 /usr/share/zsh/5.7.1/functions | grep git
VCS_INFO_detect_git
VCS_INFO_get_data_git
_git
_git-buildpackage
_stgit
_topgit
run-help-git

任何人都知道为什么我的gitzsh 完成不起作用(甚至是简单的子命令)或者我如何调试正在发生的事情?

4

1 回答 1

0

所以,我不确定发生了什么。但是,仅仅遵循第一原则并阅读有关 zsh 完成的文档,我就添加了:

autoload -Uz compinit && compinit

对我来说.zprofile,一切都按预期工作。

我不清楚这以前是如何工作的(通过更新更改为 OSX 默认值?更有可能是我对其他事情进行了一些任意编辑?)

于 2020-09-24T13:07:36.223 回答