yunohost/data/bash-completion.d/yunohost_completion
Christophe Vuillot 3550be63f2 Added a python script (yunohost_completion.py) which generates a bash completion file for the yunohost command based on yunohost.yml, in data/actionsmap
Added the output of the script in data/bash-completion.d/yunohost_completion

This is probably not the correct place for the script and the generation should
be done at some other time and place also.
2019-03-11 14:53:40 +01:00

77 lines
No EOL
2.1 KiB
Text

#
# completion for yunohost
# automatically generated from the actionsmap
#
_yunohost_completion()
{
local cur prev opts narg
COMPREPLY=()
# the number of words already typed
narg=${#COMP_WORDS[@]}
# the current word being typed
cur="${COMP_WORDS[COMP_CWORD]}"
# the last typed word
prev="${COMP_WORDS[COMP_CWORD-1]}"
# If one is currently typing a domain,
# match with domains
if [[ $narg == 2 ]]; then
opts="user domain log service settings firewall backup app hook dyndns tools monitor"
fi
# If one already typed a domain,
# match the actions of that domain
if [[ $narg == 3 ]]; then
if [[ $prev == "user" ]]; then
opts="info create list update delete"
fi
if [[ $prev == "domain" ]]; then
opts="cert-install cert-status list remove url-available add dns-conf cert-renew"
fi
if [[ $prev == "log" ]]; then
opts="list display"
fi
if [[ $prev == "service" ]]; then
opts="status enable reload_or_restart log start stop remove reload add disable regen-conf restart"
fi
if [[ $prev == "settings" ]]; then
opts="reset set list reset-all get"
fi
if [[ $prev == "firewall" ]]; then
opts="reload allow stop list upnp disallow"
fi
if [[ $prev == "backup" ]]; then
opts="info restore create list delete"
fi
if [[ $prev == "app" ]]; then
opts="map checkurl install makedefault checkport listlists change-url removelist info change-label upgrade fetchlist clearaccess ssowatconf list remove register-url removeaccess setting initdb debug addaccess"
fi
if [[ $prev == "hook" ]]; then
opts="info callback add exec list remove"
fi
if [[ $prev == "dyndns" ]]; then
opts="subscribe update installcron removecron"
fi
if [[ $prev == "tools" ]]; then
opts="upgrade ldapinit postinstall maindomain update reboot shell adminpw shutdown diagnosis port-available"
fi
if [[ $prev == "monitor" ]]; then
opts="enable network show-stats update-stats disk system disable"
fi
fi
# If no options were found propose --help
if [ -z "$opts" ]; then
if [[ $prev != "--help" ]]; then
opts=( --help )
fi
fi
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
}
complete -F _yunohost_completion yunohost