将当前命令行传递给zsh autocomplete函数

将当前命令行传递给zsh autocomplete函数,zsh,zsh-completion,Zsh,Zsh Completion,我跟踪我的计费时间。每个项目都有一个描述,以及不同客户、项目等的多个标签 最近,我为这些标签添加了zsh completion。这是我现在在zsh自动完成文件中的内容: _arguments "*:tags:( $(cat timetrackingdata | extract_tags.py ) )" python脚本extract_tags.py提取我的timetrackingdata文件中的所有标记,并将它们返回给zsh 我希望能够限制已在命令行上的标记返回的标记 因此,如果我已经将标签c

我跟踪我的计费时间。每个项目都有一个描述,以及不同客户、项目等的多个标签

最近,我为这些标签添加了zsh completion。这是我现在在zsh自动完成文件中的内容:

_arguments "*:tags:( $(cat timetrackingdata | extract_tags.py ) )"
python脚本
extract_tags.py
提取我的timetrackingdata文件中的所有标记,并将它们返回给zsh

我希望能够限制已在命令行上的标记返回的标记


因此,如果我已经将标签
client1
放在命令行上,我想将这个标签传递给
extract\u tags.py
,这样它就可以过滤它的输出,并且只返回出现在同样有标签
client1
的项目上的标签,我想您要寻找的是
$words
变量。这是命令行上指定的所有单词的数组,神奇地存在于完成函数中

记录在哪里?在
man zshcompsys
中有一些传递的引用,如果我不是专门寻找它们,我可能会错过这些引用。然而,我发现它更清楚地突出了