[Bash-completion-commits] [SCM] bash-completion branch, master, updated. 3a6a010b8787b5aabe8560904c2e22d05763c8e6
Guillaume Rousse
guillomovitch at zarb.org
Mon May 18 21:21:01 UTC 2009
The following commit has been merged in the master branch:
commit 3fea60de8e34f29d6e5eaf2319a8512af73c7a64
Author: Guillaume Rousse <guillomovitch at zarb.org>
Date: Mon May 18 23:05:54 2009 +0200
Added vpnc completion
diff --git a/CHANGES b/CHANGES
index cb37735..b625dac 100644
--- a/CHANGES
+++ b/CHANGES
@@ -72,6 +72,7 @@ bash-completion (1.x)
* Added ldapvi completion
* Added heimdal completion
* Added vpnc completion
+ * Added rpmcheck completion
[ Raphaƫl Droz ]
* Add mount -L and -U completion.
diff --git a/to_review/bluez-utils b/contrib/bluez-utils
similarity index 100%
rename from to_review/bluez-utils
rename to contrib/bluez-utils
diff --git a/to_review/cfengine b/contrib/cfengine
similarity index 100%
rename from to_review/cfengine
rename to contrib/cfengine
diff --git a/to_review/munin-node b/contrib/munin-node
similarity index 100%
rename from to_review/munin-node
rename to contrib/munin-node
diff --git a/to_review/openssl b/contrib/openssl
similarity index 100%
rename from to_review/openssl
rename to contrib/openssl
diff --git a/to_review/repomanage b/contrib/repomanage
similarity index 100%
rename from to_review/repomanage
rename to contrib/repomanage
diff --git a/to_review/rpmcheck b/contrib/rpmcheck
similarity index 100%
rename from to_review/rpmcheck
rename to contrib/rpmcheck
diff --git a/to_review/samba b/contrib/samba
similarity index 100%
rename from to_review/samba
rename to contrib/samba
diff --git a/to_review/shadow b/contrib/shadow
similarity index 100%
rename from to_review/shadow
rename to contrib/shadow
diff --git a/to_review/xmllint b/contrib/xmllint
similarity index 100%
rename from to_review/xmllint
rename to contrib/xmllint
diff --git a/to_review/heimdal b/to_review/heimdal
deleted file mode 100644
index f22a586..0000000
--- a/to_review/heimdal
+++ /dev/null
@@ -1,158 +0,0 @@
-# -*- mode: shell-script; sh-basic-offset: 8; indent-tabs-mode: t -*-
-# ex: ts=8 sw=8 noet filetype=sh
-#
-# bash completion for heimdal
-
-have ktutil && {
-_heimdal_principals()
-{
-
- COMPREPLY=( $( kadmin -l dump 2>/dev/null | awk '{print $1}' | \
- grep "^$cur" ) )
-}
-
-_heimdal_realms()
-{
-
- COMPREPLY=( $( kadmin -l dump 2>/dev/null | awk '{print $1}' | \
- awk -F @ '{print $2}' | grep "^$cur" ) )
-}
-
-_heimdal_encodings()
-{
-
- COMPREPLY=( $( compgen -W 'des-cbc-mcrc des-cbc-md4 des-cbc-md5 \
- des3-cbc-sha1 arcfour-hmac-md5 aes128-cts-hmac-sha1-96 \
- aes256-cts-hmac-sha1-96' -- $cur ) )
-}
-
-
-_ktutil()
-{
- local cur prev command options
-
- COMPREPLY=()
- cur=`_get_cword`
- prev=${COMP_WORDS[COMP_CWORD-1]}
-
- case $prev in
- -p)
- _heimdal_principals
- return 0
- ;;
- -e)
- _heimdal_encodings
- return 0
- ;;
- -a)
- _known_hosts
- return 0
- ;;
- -r)
- _heimdal_realms
- return 0
- ;;
- -@(s|k))
- _filedir
- return 0
- ;;
- esac
-
- if [[ "$cur" == *=* ]]; then
- prev=${cur/=*/}
- cur=${cur/*=/}
- case "$prev" in
- --principal)
- _heimdal_principals
- return 0
- ;;
- --enctype)
- _heimdal_encodings
- return 0
- ;;
- --admin-server)
- _known_hosts
- return 0
- ;;
- --realm)
- _heimdal_realms
- return 0
- ;;
- --@(srv|key)tab)
- _filedir
- return 0
- ;;
- esac
- fi
-
- commands='add change copy get list remove rename purge srvconvert \
- srv2keytab srvcreate key2srvtab'
-
- for (( i=1; i < COMP_CWORD; i++ )); do
- case ${COMP_WORDS[i]} in
- -@(k|-keytab))
- i=$(($i+1))
- ;;
- -*)
- ;;
- *)
- command=${COMP_WORDS[i]}
- break
- ;;
- esac
- done
-
- if [[ "$cur" == -* ]]; then
- case $command in
- add)
- options='-p --principal= -V -e --enctype= -w \
- --password= -r --random -s --no-salt \
- -h --hex'
- ;;
- change)
- options='-r --realm= -a --admin-server -s \
- --server-port='
- ;;
- get)
- options='-p --principal= -e --enctype= -r \
- --realm= -a --admin-server= -s server \
- --server-port='
- ;;
- list)
- options='--keys --timestamp'
- ;;
- remove)
- options='-p --principal= -V --kvno -e \
- --enctype='
- ;;
- purge)
- options='--age='
- ;;
- @(srv2keytab|key2srvtab))
- options='-s --srvtab='
- ;;
- *)
- options='-k --keytab= -v --verbose --version \
- -v --help'
- ;;
- esac
- COMPREPLY=( $( compgen -W "$options" -- $cur ) )
- else
- case $command in
- copy)
- _filedir
- ;;
- get)
- _heimdal_principals
- ;;
- rename)
- _heimdal_principals
- ;;
- *)
- COMPREPLY=( $( compgen -W "$commands" -- $cur ) )
- ;;
- esac
- fi
-}
-complete -F _ktutil ktutil
-}
diff --git a/to_review/ldapvi b/to_review/ldapvi
deleted file mode 100644
index 324f548..0000000
--- a/to_review/ldapvi
+++ /dev/null
@@ -1,70 +0,0 @@
-# -*- mode: shell-script; sh-basic-offset: 8; indent-tabs-mode: t -*-
-# ex: ts=8 sw=8 noet filetype=sh
-#
-# bash completion for ldapvi
-
-have ldapvi &&
-_ldapvi()
-{
- local cur prev
-
- COMPREPLY=()
- cur=`_get_cword`
- prev=${COMP_WORDS[COMP_CWORD-1]}
-
- case "$prev" in
- -@(h|-host))
- _known_hosts
- return 0
- ;;
- -@(Y|-sasl-mech))
- COMPREPLY=( $( compgen -W 'EXTERNAL GSSAPI DIGEST-MD5 \
- CRAM-MD5 PLAIN ANONYMOUS' -- $cur ) )
- return 0
- ;;
- --bind)
- COMPREPLY=( $( compgen -W 'simple sasl' -- $cur ) )
- return 0
- ;;
- --bind-dialog)
- COMPREPLY=( $( compgen -W 'never auto always' \
- -- $cur ) )
- return 0
- ;;
- --scope)
- COMPREPLY=( $( compgen -W 'base one sub' -- $cur ) )
- return 0
- ;;
- --deref)
- COMPREPLY=( $( compgen -W 'never searching finding \
- always' -- $cur ) )
- return 0
- ;;
- --encoding)
- COMPREPLY=( $( compgen -W 'ASCII UTF-8 binary' \
- -- $cur ) )
- return 0
- ;;
- --tls)
- COMPREPLY=( $( compgen -W 'never allow try strict' \
- -- $cur ) )
- return 0
- ;;
- esac
-
- if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W '--discover --out --in --delete \
- --rename -h --host -D --user -w --password --bind \
- --bind-dialog -I --sasl-interactive --bind-dialog -O \
- --sasl-secprops -Q --sasl-quiet -R --sasl-realm -U \
- --sasl-authcid -X --sasl-authzid -Y --sasl-mech -b \
- --base -s --scope -S --sort --add -o --class --config \
- -c --continue --deleteoldrdn -a --deref -d --discover \
- -A --empty --ncoding -H --help --ldap-conf -m --may -M \
- --managedsait --noquestions -! --noninteractive -q \
- --quiet -R --read -Z --starttls --tls -v --verbose \
- --ldapsearch --ldapmodify --ldapdelete --ldapmoddn' \
- -- $cur ) )
- fi
-} &&
-complete -F _ldapvi ldapvi
diff --git a/to_review/msynctool b/to_review/msynctool
deleted file mode 100644
index 281cafd..0000000
--- a/to_review/msynctool
+++ /dev/null
@@ -1,50 +0,0 @@
-# -*- 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
diff --git a/to_review/openldap b/to_review/openldap
deleted file mode 100644
index 820c4f8..0000000
--- a/to_review/openldap
+++ /dev/null
@@ -1,272 +0,0 @@
-# -*- mode: shell-script; sh-basic-offset: 8; indent-tabs-mode: t -*-
-# ex: ts=8 sw=8 noet filetype=sh
-#
-# bash completion for openldap
-
-have ldapsearch && {
-_ldap_uris()
-{
- COMPREPLY=( $( compgen -W 'ldap:// ldaps://' -- $cur ) )
-}
-
-_ldap_protocols()
-{
- COMPREPLY=( $( compgen -W '2 3' -- $cur ) )
-}
-
-_ldapsearch()
-{
- local cur prev
-
- COMPREPLY=()
- cur=`_get_cword`
- prev=${COMP_WORDS[COMP_CWORD-1]}
-
- case "$prev" in
- -h)
- _known_hosts
- return 0
- ;;
- -H)
- _ldap_uris
- return 0
- ;;
- -T)
- _filedir -d
- return 0
- ;;
- -@(f|y))
- _filedir
- return 0
- ;;
- -s)
- COMPREPLY=( $( compgen -W 'base one sub children' \
- -- $cur ) )
- return 0
- ;;
- -a)
- COMPREPLY=( $( compgen -W 'never always search find' \
- -- $cur ) )
- return 0
- ;;
- -P)
- _ldap_protocols
- return 0
- ;;
- esac
-
- if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W '-n -u -v -t -tt -T -F -A -C -L -LL \
- -LLL -M -MM -S -d -f -x -D -W -w -y -H -h -p -b -s -a \
- -P -e -E -l -z -O -I -Q -U -R -X -Y -Z -ZZ' -- $cur ) )
- fi
-}
-complete -F _ldapsearch ldapsearch
-
-_ldapaddmodify()
-{
- local cur prev options
-
- COMPREPLY=()
- cur=`_get_cword`
- prev=${COMP_WORDS[COMP_CWORD-1]}
-
- case "$prev" in
- -h)
- _known_hosts
- return 0
- ;;
- -H)
- _ldap_uris
- return 0
- ;;
- -@(S|f|y))
- _filedir
- return 0
- ;;
- -P)
- _ldap_protocols
- return 0
- ;;
- esac
-
- if [[ "$cur" == -* ]]; then
- options='-c -S -n -v -M -MM -d -D -W -w -y -h -H -p -P -O -I \
- -Q -U -R -x -X -Y -Z -ZZ -f'
- if [[ ${COMP_WORDS[0]} == ldapmodify ]]; then
- options="$options -a"
- fi
- COMPREPLY=( $( compgen -W "$options" -- $cur ) )
- fi
-}
-complete -F _ldapaddmodify ldapadd ldapmodify
-
-_ldapdelete()
-{
- local cur prev
-
- COMPREPLY=()
- cur=`_get_cword`
- prev=${COMP_WORDS[COMP_CWORD-1]}
-
- case "$prev" in
- -h)
- _known_hosts
- return 0
- ;;
- -H)
- _ldap_uris
- return 0
- ;;
- -@(f|y))
- _filedir
- return 0
- ;;
- -P)
- _ldap_protocols
- return 0
- ;;
- esac
-
- if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W '-n -v -c -M -MM -d -f -D -W -w -y \
- -H -h -P -p -O -U -R -r -x -I -Q -X -Y -Z -ZZ' \
- -- $cur ) )
- fi
-}
-complete -F _ldapdelete ldapdelete
-
-_ldapcompare()
-{
- local cur prev
-
- COMPREPLY=()
- cur=`_get_cword`
- prev=${COMP_WORDS[COMP_CWORD-1]}
-
- case "$prev" in
- -h)
- _known_hosts
- return 0
- ;;
- -H)
- _ldap_uris
- return 0
- ;;
- -y)
- _filedir
- return 0
- ;;
- -P)
- _ldap_protocols
- return 0
- ;;
- esac
-
- if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W '-n -v -z -M -MM -d -D -W -w -y \
- -H -h -P -p -O -I -Q -U -R -x -X -Y -Z -ZZ' \
- -- $cur ) )
- fi
-}
-complete -F _ldapcompare ldapcompare
-
-_ldapmodrdn()
-{
- local cur prev
-
- COMPREPLY=()
- cur=`_get_cword`
- prev=${COMP_WORDS[COMP_CWORD-1]}
-
- case "$prev" in
- -h)
- _known_hosts
- return 0
- ;;
- -H)
- _ldap_uris
- return 0
- ;;
- -@(f|y))
- _filedir
- return 0
- ;;
- -P)
- _ldap_protocols
- return 0
- ;;
- esac
-
- if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W '-r -s -n -v -c -M -MM -d -D -W -w \
- -y -H -h -P -p -O -I -Q -U -R -x -X -Y -Z -ZZ -f' \
- -- $cur ) )
- fi
-}
-complete -F _ldapmodrdn ldapmodrdn
-
-_ldapwhoami()
-{
- local cur prev
-
- COMPREPLY=()
- cur=`_get_cword`
- prev=${COMP_WORDS[COMP_CWORD-1]}
-
- case "$prev" in
- -h)
- _known_hosts
- return 0
- ;;
- -H)
- _ldap_uris
- return 0
- ;;
- -@(f|y))
- _filedir
- return 0
- ;;
- -P)
- _ldap_protocols
- return 0
- ;;
- esac
-
- if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W '-n -v -z -d -D -W -w -y -H -h -p -P \
- -O -I -Q -U -R -x -X -Y -Z -ZZ' -- $cur ) )
- fi
-}
-complete -F _ldapwhoami ldapwhoami
-
-_ldappasswd()
-{
- local cur prev
-
- COMPREPLY=()
- cur=`_get_cword`
- prev=${COMP_WORDS[COMP_CWORD-1]}
-
- case "$prev" in
- -h)
- _known_hosts
- return 0
- ;;
- -H)
- _ldap_uris
- return 0
- ;;
- -@(t|T|y))
- _filedir
- return 0
- ;;
- esac
-
- if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W '-A -a -t -d -D -H -h -n -p -S -s -T \
- -v -W -w -y -O -I -Q -U -R -x -X -Y -Z -ZZ' -- $cur ) )
- fi
-}
-complete -F _ldappasswd ldappasswd
-}
diff --git a/to_review/rpcdebug b/to_review/rpcdebug
deleted file mode 100644
index 6c2dd53..0000000
--- a/to_review/rpcdebug
+++ /dev/null
@@ -1,53 +0,0 @@
-# -*- mode: shell-script; sh-basic-offset: 8; indent-tabs-mode: t -*-
-# ex: ts=8 sw=8 noet filetype=sh
-#
-# bash completion for rpcdebug
-
-have rpcdebug && {
-_rpcdebug_flags()
-{
-
- local i module
-
- for (( i=0; i < ${#COMP_WORDS[@]}; i++ )); do
- if [[ ${COMP_WORDS[i]} == -m ]]; then
- module=${COMP_WORDS[i+1]}
- fi
- done
-
- if [ -n "$module" ]; then
- COMPREPLY=( $( compgen -W "$(rpcdebug -vh 2>&1 \
- | grep '^'$module' '\
- | awk '{$1 = ""; print $0}')" -- $cur ) )
- fi
-}
-
-_rpcdebug()
-{
- local cur prev
-
- COMPREPLY=()
- cur=`_get_cword`
- prev=${COMP_WORDS[COMP_CWORD-1]}
-
- case $prev in
- -s)
- _rpcdebug_flags
- return 0
- ;;
- -c)
- _rpcdebug_flags
- return 0
- ;;
- -m)
- COMPREPLY=( $( compgen -W 'rpc nfs nfsd nlm' -- $cur ) )
- return 0
- ;;
- esac
-
- if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W '-v -h -m -s -c' -- $cur ) )
- fi
-}
-complete -F _rpcdebug rpcdebug
-}
diff --git a/to_review/strace b/to_review/strace
deleted file mode 100644
index bf9878f..0000000
--- a/to_review/strace
+++ /dev/null
@@ -1,99 +0,0 @@
-# -*- mode: shell-script; sh-basic-offset: 8; indent-tabs-mode: t -*-
-# ex: ts=8 sw=8 noet filetype=sh
-#
-# bash completion for strace
-
-have strace &&
-_strace()
-{
- local cur prev offset i syscalls arch unistd
-
- # check if we're still completing strace
- offset=0
- for (( i=1; i <= COMP_CWORD; i++ )); do
- case ${COMP_WORDS[$i]} in
- -@(o|e|p))
- i=$((i+1))
- continue
- ;;
- -*)
- continue
- ;;
- esac
- offset=$i
- break
- done
-
- if [ $offset -gt 0 ]; then
- # FAIL: _command_offset is not defined anywhere. Guillame?
- _command_offset $offset
- else
-
- COMPREPLY=()
- cur=`_get_cword`
- prev=${COMP_WORDS[COMP_CWORD-1]}
-
- case $prev in
- -e)
- if [[ "$cur" == *=* ]]; then
- prev=${cur/=*/}
- cur=${cur/*=/}
-
- # Import arch-specific syscalls -- not foolproof IMHO
- #+ --David Paleino
- arch=$(command uname -m)
- syscalls=$(awk '/^#define __NR/ {print $2}' \
- /usr/include/asm/unistd.h | sed -e \
- 's/__NR_//')
- if [ -z "$syscalls" ]; then
- if [[ "$arch" =~ 86$ ]]; then
- unistd=/usr/include/asm/unistd_32.h
- else
- unistd=/usr/include/asm/unistd_64.h
- fi
- syscalls=$(awk '/^#define __NR/ {print $2}' \
- $unistd | sed -e 's/__NR_//')
- fi
-
- case $prev in
- trace)
- COMPREPLY=( $( compgen -W "$syscalls file process \
- network signal ipc desc all none" -- $cur) )
- return 0
- ;;
- esac
- else
- COMPREPLY=( $( compgen -S"=" -W 'trace abbrev \
- verbose raw signal read write' \
- -- $cur ) )
- fi
- return 0
- ;;
- -o)
- _filedir
- return 0
- ;;
- -p)
- _pids
- return 0
- ;;
- -S)
- COMPREPLY=( $( compgen -W 'time calls name nothing' -- $cur ) )
- return 0
- ;;
- -u)
- COMPREPLY=( $( compgen -u -- $cur ) )
- return 0
- ;;
- esac
-
- if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W '-c -d -f -ff -F -h --help -i -q \
- -r -t -tt -ttt -T -v -V -x -xx -a -e -o -O -p \
- -s -S -u -E' -- $cur ) )
- else
- COMPREPLY=( $( compgen -c -- $cur ) )
- fi
- fi
-} &&
-complete -F _strace $default strace
diff --git a/to_review/vpnc b/to_review/vpnc
deleted file mode 100644
index 9d05620..0000000
--- a/to_review/vpnc
+++ /dev/null
@@ -1,46 +0,0 @@
-# -*- mode: shell-script; sh-basic-offset: 8; indent-tabs-mode: t -*-
-# ex: ts=8 sw=8 noet filetype=sh
-#
-# bash completion for vpnc
-
-have vpnc &&
-_vpnc()
-{
- local cur prev
-
- COMPREPLY=()
- cur=`_get_cword`
- prev=${COMP_WORDS[COMP_CWORD-1]}
-
- case $prev in
- --pfs)
- COMPREPLY=( $( compgen -W 'nopfs dh1 dh2 dh5 server' \
- -- $cur ) )
- return 0
- ;;
- --pfs)
- COMPREPLY=( $( compgen -W 'dh1 dh2 dh5' -- $cur ) )
- return 0
- ;;
- --@(pid-file|script))
- _filedir
- return 0
- ;;
- --gateway)
- _known_hosts
- return 0
- ;;
- esac
-
- if [[ "$cur" == -* ]]; then
- COMPREPLY=( $( compgen -W '--version --print-config --help \
- --long-help --gateway --id --username --udp --domain \
- --xauth-inter --script --dh --pfs --enable-1des \
- --application-version --ifname --debug --no-detach \
- --pid-file --local-port --udp-port --disable-natt \
- --non-inter' -- $cur ) )
- else
- COMPREPLY=( $( command ls /etc/vpnc | grep "^$cur" ) )
- fi
-} &&
-complete -F _vpnc vpnc
diff --git a/to_review/xm b/to_review/xm
deleted file mode 100644
index ebf67e9..0000000
--- a/to_review/xm
+++ /dev/null
@@ -1,216 +0,0 @@
-# -*- mode: shell-script; sh-basic-offset: 8; indent-tabs-mode: t -*-
-# ex: ts=8 sw=8 noet filetype=sh
-#
-# bash completion for xm
-
-have xm && {
-_xen_domain_names()
-{
- COMPREPLY=( $(compgen -W "$( xm list 2>/dev/null | awk '!/Name|Domain-0/ { print $1 }' )" -- $cur) )
-}
-
-_xen_domain_ids()
-{
- COMPREPLY=( $(compgen -W "$( xm list 2>/dev/null | awk '!/Name|Domain-0/ { print $2 }' )" -- $cur) )
-}
-
-_xm()
-{
- local cur prev command options
-
- COMPREPLY=()
- cur=`_get_cword`
-
- commands='console create new delete destroy domid domname dump-core \
- list mem-max mem-set migrate pause reboot rename restore \
- resume save shutdown start suspend sysrq trigger top unpause \
- uptime vcpu-list vcpu-pin vcpu-set debug-keys dmesg info log \
- serve sched-credit sched-sedf block-attach block-detach \
- block-list network-attach network-detach network-list \
- vtpm-list vnet-list vnet-create vnet-delete labels addlabel \
- rmlabel getlabel dry-run resources makepolicy loadpolicy \
- cfgbootpolicy dumppolicy help'
-
- if [[ $COMP_CWORD -eq 1 ]] ; then
- COMPREPLY=( $( compgen -W "$commands" -- $cur ) )
- else
- prev=${COMP_WORDS[COMP_CWORD-1]}
- if [[ "$cur" == *=* ]]; then
- prev=${cur/=*/}
- cur=${cur/*=/}
- fi
-
- command=${COMP_WORDS[1]}
- if [[ "$cur" == -* ]]; then
- # possible options for the command
- case $command in
- create)
- options='-c'
- ;;
- dmesg)
- options='--clear'
- ;;
- list)
- options='--long'
- ;;
- reboot)
- options='-w -a'
- ;;
- shutdown)
- options='-w -a -R -H'
- ;;
- sched-credit)
- options='-d -w -c'
- ;;
- @(block|network|vtpm|vnet)-list)
- options='-l --long'
- ;;
- getpolicy)
- options='--dumpxml'
- ;;
- new)
- options='-h --help --help_config -q \
- --quiet --path= -f= \
- --defconfig= -F= --config= \
- -b --dryrun -x --xmldryrun \
- -s --skipdtd -p --paused -c \
- --console_autoconnect'
- ;;
- esac
- COMPREPLY=( $( compgen -W "$options" -- $cur ) )
- else
- case $command in
- @(console|destroy|domname|domid|list|mem-@(set|max)|pause|reboot|rename|shutdown|unpause|vcpu-@(list|pin|set)|block-list|network-list|vtpm-list))
- _count_args
- case $args in
- 2)
- _xen_domain_names
- ;;
- esac
- ;;
- migrate)
- _count_args
- case $args in
- 2)
- _xen_domain_names
- ;;
- 3)
- _known_hosts
- ;;
- esac
- ;;
- @(restore|dry-run|vnet-create))
- _filedir
- ;;
- save)
- _count_args
- case $args in
- 2)
- _xen_domain_names
- ;;
- 3)
- _filedir
- ;;
- esac
- ;;
- sysrq)
- _count_args
- case $args in
- 2)
- _xen_domain_names
- ;;
- 3)
- COMPREPLY=( $(compgen -W "r s e i u b" -- $cur) )
- ;;
- esac
- ;;
- block-attach)
- _count_args
- case $args in
- 2)
- _xen_domain_names
- ;;
- 3)
- COMPREPLY=( $(compgen -W "phy: file:" -- $cur) )
- ;;
- 5)
- COMPREPLY=( $(compgen -W "w r" -- $cur) )
- ;;
- 6)
- _xen_domain_names
- ;;
- esac
- ;;
- block-detach)
- _count_args
- case $args in
- 2)
- _xen_domain_names
- ;;
- 3)
- COMPREPLY=( $(compgen -W "$( xm block-list $prev 2>/dev/null | awk '!/Vdev/ { print $1 }' )" -- $cur) )
- ;;
- esac
- ;;
- network-attach)
- _count_args
- case $args in
- 2)
- _xen_domain_names
- ;;
- *)
- COMPREPLY=( $(compgen -W "script= ip= mac= bridge= backend=" -- $cur) )
- ;;
- esac
- ;;
- network-detach)
- _count_args
- case $args in
- 2)
- _xen_domain_names
- ;;
- 3)
- COMPREPLY=( $(compgen -W "$( xm network-list $prev 2>/dev/null | awk '!/Idx/ { print $1 }' )" -- $cur) )
- ;;
- esac
- ;;
- sched-credit)
- case $prev in
- -d)
- _xen_domain_names
- return 0
- ;;
- esac
- ;;
- create)
- _filedir
- COMPREPLY=( ${COMPREPLY[@]:-} \
- $( command ls /etc/xen | grep "^$cur" ) )
- ;;
- new)
- case $prev in
- -@(f|F|-defconfig|-config))
- _filedir
- return 0
- ;;
- --path)
- _filedir -d
- return 0
- ;;
- esac
-
- _count_args
- case $args in
- 2)
- _xen_domain_names
- ;;
- esac
- ;;
- esac
- fi
- fi
-
- return 0
-}
-complete -F _xm xm
-}
--
bash-completion
More information about the Bash-completion-commits
mailing list