无法在Zsh中找到Bash完成的替换命令

时间:2009-05-28 14:38:12

标签: bash zsh tab-completion complete

我把最新的git-completion.bash放到了我的.zshrc中,然后我得到了

/Users/Masi/bin/shells/git/git-completion.bash:2116: command not found: complete
/Users/Masi/bin/shells/git/git-completion.bash:2118: command not found: complete

这些行是

 complete -o bashdefault -o default -o nospace -F _git git 2>/dev/null \
     || complete -o default -o nospace -F _git git 
 complete -o bashdefault -o default -o nospace -F _gitk gitk 2>/dev/null \
     || complete -o default -o nospace -F _gitk gitk

在Zsh中哪个命令可以替代Bash完成?

3 个答案:

答案 0 :(得分:4)

我确实认为这是一个问题,因为completebuilt-in Bash command。它是Bash可编程完成功能的一部分。

答案 1 :(得分:2)

Bash和Zsh有不同的完成系统。可以使用zsh完成bash完成功能,但仅限于兼容层。我建议你阅读man zshcompsys

答案 2 :(得分:2)

Git的完成脚本已经更新,可以与ZSH一起使用。最新版本应“正常工作”。