在zsh中使用bash complete -C
发布时间:2020-12-14 01:39:58 所属栏目:Linux 来源:网络整理
导读:zsh bash完成是否支持完成-C’自定义命令完成’命令? 我以前在脚本中编写了一个bash完成函数,我启用了它 complete -C 'tu --get-bash-completion' tu 我希望使用zsh的同事能够使用完成,所以我尝试使用这样的.zshrc文件测试bash完成兼容性: autoload compin
zsh bash完成是否支持完成-C’自定义命令完成’命令?
我以前在脚本中编写了一个bash完成函数,我启用了它 complete -C 'tu --get-bash-completion' tu 我希望使用zsh的同事能够使用完成,所以我尝试使用这样的.zshrc文件测试bash完成兼容性: autoload compinit compinit autoload bashcompinit bashcompinit complete -C 'tu --get-bash-completion' tu 当我尝试使用此完成时,看起来zsh正在调用完成脚本而没有bash调用它的参数(firstword,current_word,previous_word). tom-mba:~ tomb$zsh tom-mba% tu Traceback (most recent call last): File "/usr/local/bin/tu",line 7,in <module> execfile(__file__) File "/Users/tomb/Dropbox/code/TrelloCardUpdate/bin/tu",line 3,in <module> cli.CLI() File "/Users/tomb/Dropbox/code/TrelloCardUpdate/trellocardupdate/cli.py",line 156,in CLI getcompletion(sys.argv[i+1:i+4]) File "/Users/tomb/Dropbox/code/TrelloCardUpdate/trellocardupdate/cli.py",line 86,in getcompletion assert len(args) == 3,[args,sys.argv] AssertionError: [[],['/usr/local/bin/tu','--get-bash-completion']] 我在mac上使用自制软件安装的zsh: tom-mba:~ tomb$zsh --version zsh 5.0.2 (x86_64-apple-darwin11.4.2) tom-mba:~ tomb$which zsh /usr/local/bin/zsh 解决方法
截至2013年11月10日,zsh的bashcompinit并没有完成这样的完整工作.显然compadd -U是一种zsh方式,可以对完成进行细粒度控制,其中脚本确切地确定了要建议的匹配项.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |