Eu tenho a conclusão zsh para script personalizado, onde um parâmetro deve ser URL (ou seja, string) e existem vários parâmetros opcionais: --AAA --BBB --CCC:
_arguments -S : \
'--AAA' \
'--BBB' \
'--CCC' \
'1: :'
no entanto, a conclusão só funciona após o parâmetro URL ter sido fornecido, ou seja:
myscript URL --A<TAB>
isso será preenchido automaticamente--AAA
Mas quando eu tenho:
myscript --A<TAB>
então ele listará a única opção correspondente --AAA, mas não irá preenchê-la automaticamente, mesmo que eu o faça --AA<TAB>
. Eu tenho que digitar manualmente.
Quando altero meu script de conclusão para:
_arguments -S : \
'--AAA' \
'--BBB' \
'--CCC'
o preenchimento automático de parâmetros funciona, mas assim que eu forneço o URL, nenhuma outra opção será concluída.
Então, como posso dizer à conclusão do zsh que meu script espera um URL (ou seja, um argumento de string - não quero que o zsh comece a completar os nomes de arquivos no local atual) e os parâmetros opcionais podem ser concluídos antes ou depois deste URL?
Observação: não estou tentando preencher automaticamente o URL. Estou apenas tentando fazer com que a conclusão funcione antes e depois dessa string de URL.