如何使zsh完成显示所有args?

问题描述

我的系统:macOS Catalina 10.15.6

zsh版本:zsh 5.7.1(x86_64-apple-darwin19.0)

git版本:2.26.2


zsh完成代码

#compdef logs
args="`git branch -a | grep ${!#} | sed 's/\*//g' | sed 's/remotes\///g'`"
args="$args `git tag -l | grep "${!#}"`"
_arguments "*: :($args)"

当我在git路径中使用logs

> logs <tab>
zsh: do you wish to see all 150 possibilities (50 lines)?

当我在同一路径中使用git branch -a | wc -lgit tag -l | wc -l

> git branch -a | wc -l
109
> git tag -l | wc -l
288

我有release/v3.5.4-abcrelease/v3.5.3-xxx之类的分支名称

当我使用logs 3.5.4<tab>时命令行不会显示任何内容

但是当我使用release/v3.5.3-xxx时,它会给我logs 3.5.3<tab>

似乎有些候选人被扔掉了。

我如何获得所有候选人?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...