Ich versuche eine Completion zu erstellen, bei der eine meiner Komplettierungen abhängig von den Werten der anderen Flags dynamisch generiert wird. Zum BeispielZSH Completion basierend auf dem vorherigen Flag
local state
_arguments \
'-f[fabric]:fabric:->fabrics' \
'-c[containers/application where log resides]:container:->containers' \
'-l[name of log file]:log:->logs'
case "$state" in
(fabrics)
_values 'fabrics' \
'fab1' \
'fab2'
;;
(containers)
_values 'containers' \
'container1' \
'container2'
;;
(logs)
# show A B C if "-c container1" was entered
# show D E F if "-c container2" was entered
# show G if "-c" was not provided yet
esac
Ich habe Probleme, die "-l" -Flag zu dynamisch generiert werden.
Das ist großartig! Ich habe es funktioniert, aber ich verstehe den ersten Indexteil nicht ganz. Kannst du erklären, was (I) und -c ist? – peter1234
Aktualisiert; Ich habe ein Beispiel/eine Verwendung hinzugefügt, um Arrays mit Index-Flags zu untersuchen. – hchbaw