我使用_values
向自定义zsh命令添加完成,但不幸的是,zsh忽略了我传递值的顺序,并按照与我相反的顺序排序(我想要{{ 1}},基本上)。
无论如何,强迫它尊重我已经通过的顺序,或者如果没有,以某种方式修改用于该特定命令的的排序机制(即,我没有'我想改变所有完成的顺序,只是这个特定的顺序。
示例:
sort -rn
在_values 'my completions' foo bar
之前显示bar
,但我希望在foo
之前foo
。
答案 0 :(得分:2)
通常,Zsh完成匹配可以添加到已排序或未排序的组中。但是,_values
不包含指定此选项的选项。所以你可以这样做:
_wanted -V values expl 'my completions' compadd foo bar
您想要_values
的哪些功能?如果您想要一个没有重复的分隔列表,_sequence
可以包含上述内容。如果您想要按匹配说明,_describe
可以提供帮助。但是,如果您想要_values
的一些更复杂的功能,您可能会遇到排序问题,或者您需要手动执行更多功能。