我正在使用argcomplete
在Bash中完成 Tab 。
argcomplete
为bash
提供了全局完成功能,但zsh
没有。
我想创建一个文件~/.zsh_completion
,以包含要完成的文件。当这些文件来自~/.zshrc
时,此文件应为这些文件生成自动完成。
我该怎么做?
答案 0 :(得分:2)
好吧有办法做到这一点,但这不是我真正想要的方式。
无论如何,这里是:
安装argcomplete
:
$ pip install argcomplete
激活argcompolete
:
$ activate-global-python-argcomplete --user
将此添加到~/.zshrc
:
autoload bashcompinit
bashcompinit
source ~/.bash_completion.d/python-argcomplete.sh
eval "$(register-python-argcomplete /path/to/the/to/be/completed/file1)"
eval "$(register-python-argcomplete /path/to/the/to/be/completed/file2)"
eval "$(register-python-argcomplete /path/to/the/to/be/completed/file3)"
可能有一个解决方案可以从另一个文件中读出要完成的文件,但我不知道该怎么做。
答案 1 :(得分:0)
与Exeleration-G相同,但是在您的〜/ .zshrc中仅放入
eval "$(cd path/to/script; register-python-argcomplete script.name)"
答案 2 :(得分:0)
我刚刚发布了一个名为pyzshcomplete
的新项目,可以在here中找到它。
它旨在为argcomplete
提供与zsh
相同的功能。