diff options
author | Guillaume Rousse <guillomovitch@zarb.org> | 2009-02-05 19:23:23 +0100 |
---|---|---|
committer | Guillaume Rousse <guillomovitch@zarb.org> | 2009-02-05 19:23:23 +0100 |
commit | 9b596cbb6b810104c5716c67d3c6477497e22eab (patch) | |
tree | 279d2cda3a2da64b7d9af7a6e2c2938e2ae09f8f | |
parent | 71a1d60d5a33d17d5831e0cc6f72d380465f924f (diff) | |
download | bash-completion-9b596cbb6b810104c5716c67d3c6477497e22eab.tar.gz |
initial import
-rw-r--r-- | to_review/msynctool | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/to_review/msynctool b/to_review/msynctool new file mode 100644 index 00000000..281cafdc --- /dev/null +++ b/to_review/msynctool @@ -0,0 +1,50 @@ +# -*- mode: shell-script; sh-basic-offset: 8; indent-tabs-mode: t -*- +# ex: ts=8 sw=8 noet filetype=sh +# +# bash completion for msynctool + +have msynctool && +_msynctool() +{ + local cur prev anteprev + + COMPREPLY=() + cur=`_get_cword` + prev=${COMP_WORDS[COMP_CWORD-1]} + if [ $COMP_CWORD -ge 2 ]; then + anteprev=${COMP_WORDS[COMP_CWORD-2]} + fi + + case $anteprev in + --configure) + COMPREPLY=( $( compgen -W "$(msynctool --showgroup \ + $prev | awk '/^Member/ {print $2}' | sed \ + -e 's/:$//' )" -- $cur ) ) + return 0 + ;; + --addmember) + COMPREPLY=( $( compgen -W '$(msynctool --listplugins \ + | sed -e '1d' )' -- $cur ) ) + return 0 + ;; + esac + + case $prev in + --@(configure|@(add|del|show)group|sync|addmember)) + COMPREPLY=( $( compgen -W '$(msynctool --listgroups \ + | sed -e '1d' )' -- $cur ) ) + return 0 + ;; + --@(showformats|filter-objtype|slow-sync)) + COMPREPLY=( $( compgen -W '$(msynctool --listobjects \ + | sed -e '1d' )' -- $cur ) ) + return 0 + ;; + esac + + COMPREPLY=( $( compgen -W '--listgroups --listplugins --listobjects \ + --showformats --showgroup --sync --filter-objtype --slow-sync \ + --wait --multi --addgroup --delgroup --addmember --configure \ + --manual --configdir --conflict' -- $cur ) ) +} && +complete -F _msynctool msynctool |