diff options
Diffstat (limited to '')
-rw-r--r-- | completions/sitecopy | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/completions/sitecopy b/completions/sitecopy new file mode 100644 index 0000000..8515687 --- /dev/null +++ b/completions/sitecopy @@ -0,0 +1,50 @@ +# sitecopy(1) completion -*- shell-script -*- +# Copyright 2003 Eelco Lempsink <eelcolempsink@gmx.net> +# 2011 Raphaƫl Droz <raphael.droz+floss@gmail.com> +# License: GNU GPL v2 or later + +_sitecopy() +{ + local cur prev words cword split + _init_completion -s || return + + case $prev in + --debug | -!(-*)d) + COMPREPLY=($(compgen -W "socket files rcfile ftp http httpbody + rsh sftp xml xmlparse cleartext" -- "$cur")) + compopt -o nospace + return + ;; + --logfile | --rcfile | -!(-*)[gr]) + _filedir + return + ;; + --storepath | -!(-*)p) + _filedir -d + return + ;; + esac + + case $cur in + --*) + COMPREPLY=($(compgen -W "$(_parse_help $1)" -- "$cur")) + [[ ${COMPREPLY-} == *= ]] && compopt -o nospace + return + ;; + + # only complete long options + -) + compopt -o nospace + COMPREPLY=(--) + return + ;; + esac + + if [[ -r ~/.sitecopyrc ]]; then + COMPREPLY=($(compgen -W "$($1 -v | + command sed -n '/^Site:/s/Site: //p')" -- "$cur")) + fi +} && + complete -F _sitecopy -o default sitecopy + +# ex: filetype=sh |