【问题标题】:How can I debug ZSH completion for git on macos如何在 macos 上调试 git 的 ZSH 完成
【发布时间】:2020-09-20 17:16:09
【问题描述】:

当我升级到 Catalina 时,我切换到 zsh 并且总体上非常高兴,特别是在我没有任何工作的情况下完成了多少 just work。但在过去一周左右的某个时候,完成工作停止了。它一直在为co for 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

任何人都知道为什么我的git zsh 完成无法正常工作(甚至是简单的子命令)或者我如何调试正在发生的事情?

【问题讨论】:

    标签: zsh-completion git-completion


    【解决方案1】:

    所以,我不确定发生了什么。但是,只是进入第一原则并阅读有关 zsh 完成的文档导致我添加:

    autoload -Uz compinit && compinit
    

    到我的.zprofile,一切正常。

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

    【讨论】:

      猜你喜欢
      • 2021-04-26
      • 2019-09-23
      • 1970-01-01
      • 2014-08-22
      • 2020-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-11
      相关资源
      最近更新 更多