mirror of
https://github.com/clap-rs/clap
synced 2025-01-10 03:38:50 +00:00
e40168c2fd
That is for a ValueHint of Unknown. This is consistent with bash where compgen -f is used in such cases. In long experience with completions distributed with zsh, the worst thing you can do is break filename completion as that's the minimum most user's expect.
34 lines
724 B
Bash
34 lines
724 B
Bash
#compdef my-app
|
|
|
|
autoload -U is-at-least
|
|
|
|
_my-app() {
|
|
typeset -A opt_args
|
|
typeset -a _arguments_options
|
|
local ret=1
|
|
|
|
if is-at-least 5.2; then
|
|
_arguments_options=(-s -S -C)
|
|
else
|
|
_arguments_options=(-s -C)
|
|
fi
|
|
|
|
local context curcontext="$curcontext" state line
|
|
_arguments "${_arguments_options[@]}" : \
|
|
'-h[Print help]' \
|
|
'--help[Print help]' \
|
|
'*;::arguments -- multi-valued argument with a value terminator:_default' \
|
|
&& ret=0
|
|
}
|
|
|
|
(( $+functions[_my-app_commands] )) ||
|
|
_my-app_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'my-app commands' commands "$@"
|
|
}
|
|
|
|
if [ "$funcstack[1]" = "_my-app" ]; then
|
|
_my-app "$@"
|
|
else
|
|
compdef _my-app my-app
|
|
fi
|