[Bash-completion-commits] [SCM] bash-completion branch, dynamic-loading, updated. 1.3-469-gfa5dbb6

Ville Skyttä ville.skytta at iki.fi
Sat Oct 22 09:50:45 UTC 2011


The following commit has been merged in the dynamic-loading branch:
commit fa5dbb6c8e724b32575a1c9e949c53f4ed145ea9
Author: Ville Skyttä <ville.skytta at iki.fi>
Date:   Sat Oct 22 12:49:31 2011 +0300

    mailman: Split completions to separate files from add_members.

diff --git a/completions/.gitignore b/completions/.gitignore
index c7e9660..944fc3a 100644
--- a/completions/.gitignore
+++ b/completions/.gitignore
@@ -4,7 +4,6 @@ alpine
 alternatives
 animate
 apropos
-arch
 asciidoc.py
 autoheader
 automake-1.11
@@ -15,18 +14,14 @@ btdownloadgui.py
 c++
 cc
 cdrecord
-change_pw
-check_db
 ci
 ciptool
 civclient
 civserver
-clone_member
 co
 compare
 compgen
 composite
-config_list
 conjure
 cowthink
 createdb
@@ -39,7 +34,6 @@ dpkg-reconfigure
 dropdb
 edquota
 filebucket
-find_member
 freeciv-sdl
 freeciv-xaw
 g++
@@ -60,7 +54,6 @@ identify
 ifdown
 ifstatus
 import
-inject
 javac
 javadoc
 kplayer
@@ -74,9 +67,6 @@ ldapmodrdn
 ldappasswd
 ldapwhoami
 lintian-info
-list_admins
-list_members
-list_owners
 lvchange
 lvcreate
 lvdisplay
@@ -100,7 +90,6 @@ mplayer2
 msgsnarf
 muttng
 ncal
-newlist
 pbzip2
 pccardctl
 perldoc
@@ -138,11 +127,9 @@ quotaon
 ralsh
 rcsdiff
 rdict
-remove_members
 repquota
 rfcomm
 rlog
-rmlist
 rpm2targz
 rpm2txz
 rpmbuild
@@ -161,7 +148,6 @@ smbtar
 smbtree
 spovray
 stream
-sync_members
 tightvncviewer
 tracepath6
 typeset
@@ -185,7 +171,6 @@ vgscan
 vgsplit
 vigr
 whatis
-withlist
 xpovray
 xvnc4viewer
 ypcat
diff --git a/completions/Makefile.am b/completions/Makefile.am
index e0887d5..3f8b3fc 100644
--- a/completions/Makefile.am
+++ b/completions/Makefile.am
@@ -9,6 +9,7 @@ bashcomp_DATA = abook \
 		apt-cache \
 		apt-get \
 		aptitude \
+		arch \
 		arping \
 		arpspoof \
 		asciidoc \
@@ -29,6 +30,8 @@ bashcomp_DATA = abook \
 		cfagent \
 		cfrun \
 		chage \
+		change_pw \
+		check_db \
 		check_perms \
 		chgrp \
 		chkconfig \
@@ -39,7 +42,9 @@ bashcomp_DATA = abook \
 		cksfv \
 		cleanarch \
 		clisp \
+		clone_member \
 		complete \
+		config_list \
 		configure \
 		convert \
 		cowsay \
@@ -76,6 +81,7 @@ bashcomp_DATA = abook \
 		filefrag \
 		filesnarf \
 		find \
+		find_member \
 		freeciv-gtk2 \
 		freeciv-server \
 		function \
@@ -111,6 +117,7 @@ bashcomp_DATA = abook \
 		iftop \
 		ifup \
 		info \
+		inject \
 		insmod \
 		installpkg \
 		invoke-rc.d \
@@ -148,7 +155,10 @@ bashcomp_DATA = abook \
 		links \
 		lintian \
 		lisp \
+		list_admins \
 		list_lists \
+		list_members \
+		list_owners \
 		look \
 		lpq \
 		lpr \
@@ -187,6 +197,7 @@ bashcomp_DATA = abook \
 		mysqladmin \
 		ncftp \
 		newgrp \
+		newlist \
 		newusers \
 		nmap \
 		nslookup \
@@ -228,6 +239,7 @@ bashcomp_DATA = abook \
 		quota \
 		rcs \
 		rdesktop \
+		remove_members \
 		removepkg \
 		renice \
 		reptyr \
@@ -235,6 +247,7 @@ bashcomp_DATA = abook \
 		resolvconf \
 		rfkill \
 		ri \
+		rmlist \
 		rmmod \
 		route \
 		rpcdebug \
@@ -264,6 +277,7 @@ bashcomp_DATA = abook \
 		sshow \
 		strace \
 		svk \
+		sync_members \
 		sysbench \
 		sysctl \
 		tar \
@@ -288,6 +302,7 @@ bashcomp_DATA = abook \
 		vpnc \
 		watch \
 		webmitm \
+		withlist \
 		wodim \
 		wol \
 		wtf \
@@ -318,7 +333,6 @@ CLEANFILES = \
 	alternatives \
 	animate \
 	apropos \
-	arch \
 	asciidoc.py \
 	autoheader \
 	automake-1.11 \
@@ -329,18 +343,14 @@ CLEANFILES = \
 	c++ \
 	cc \
 	cdrecord \
-	change_pw \
-	check_db \
 	ci \
 	ciptool \
 	civclient \
 	civserver \
-	clone_member \
 	co \
 	compare \
 	compgen \
 	composite \
-	config_list \
 	conjure \
 	cowthink \
 	createdb \
@@ -353,7 +363,6 @@ CLEANFILES = \
 	dropdb \
 	edquota \
 	filebucket \
-	find_member \
 	freeciv-sdl \
 	freeciv-xaw \
 	g++ \
@@ -374,7 +383,6 @@ CLEANFILES = \
 	ifdown \
 	ifstatus \
 	import \
-	inject \
 	javac \
 	javadoc \
 	kplayer \
@@ -388,9 +396,6 @@ CLEANFILES = \
 	ldappasswd \
 	ldapwhoami \
 	lintian-info \
-	list_admins \
-	list_members \
-	list_owners \
 	lvchange \
 	lvcreate \
 	lvdisplay \
@@ -414,7 +419,6 @@ CLEANFILES = \
 	msgsnarf \
 	muttng \
 	ncal \
-	newlist \
 	pbzip2 \
 	pccardctl \
 	perldoc \
@@ -452,11 +456,9 @@ CLEANFILES = \
 	ralsh \
 	rcsdiff \
 	rdict \
-	remove_members \
 	repquota \
 	rfcomm \
 	rlog \
-	rmlist \
 	rpm2targz \
 	rpm2txz \
 	rpmbuild \
@@ -475,7 +477,6 @@ CLEANFILES = \
 	smbtree \
 	spovray \
 	stream \
-	sync_members \
 	tightvncviewer \
 	tracepath6 \
 	typeset \
@@ -499,7 +500,6 @@ CLEANFILES = \
 	vgsplit \
 	vigr \
 	whatis \
-	withlist \
 	xpovray \
 	xvnc4viewer \
 	ypcat
@@ -509,12 +509,6 @@ symlinks:
 		rm -f $(targetdir)/$$file && \
 			$(LN_S) aclocal $(targetdir)/$$file ; \
 	done
-	for file in remove_members find_member clone_member sync_members \
-		list_admins list_owners list_members change_pw withlist \
-		newlist rmlist config_list arch inject check_db ; do \
-		rm -f $(targetdir)/$$file && \
-			$(LN_S) add_members $(targetdir)/$$file ; \
-	done
 	for file in phing ; do \
 		rm -f $(targetdir)/$$file && \
 			$(LN_S) ant $(targetdir)/$$file ; \
diff --git a/completions/add_members b/completions/add_members
index 930f9c6..27feb5e 100644
--- a/completions/add_members
+++ b/completions/add_members
@@ -1,9 +1,4 @@
-# mailman completion
-
-_mailman_lists()
-{
-    COMPREPLY=( $( compgen -W '$( list_lists -b 2>/dev/null )' -- "$cur" ) )
-}
+# mailman add_members completion
 
 _add_members()
 {
@@ -28,340 +23,12 @@ _add_members()
             --digest-members-file --welcome-msg \
             --admin-notify --help' -- "$cur" ) )
     else
-        _mailman_lists
+        _xfunc list_lists _mailman_lists
     fi
 
 } &&
 complete -F _add_members add_members
 
-_remove_members()
-{
-    local cur prev words cword split
-    _init_completion -s || return
-
-    case $prev in
-        -f|--file)
-            _filedir
-            return 0
-            ;;
-    esac
-
-    $split && return 0
-
-    if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '--file --all --fromall --nouserack \
-            --noadminack --help' -- "$cur" ) )
-    else
-        _mailman_lists
-    fi
-
-} &&
-complete -F _remove_members remove_members
-
-_find_member()
-{
-    local cur prev words cword split
-    _init_completion -s || return
-
-    case $prev in
-        -l|-x|--listname|--exclude)
-            _mailman_lists
-            return 0
-            ;;
-    esac
-
-    $split && return 0
-
-    if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '--listname --exclude --owners \
-            --help' -- "$cur" ) )
-    fi
-
-} &&
-complete -F _find_member find_member
-
-_clone_member()
-{
-    local cur prev words cword split
-    _init_completion -s || return
-
-    case $prev in
-        -l|--listname)
-            _mailman_lists
-            return 0
-            ;;
-    esac
-
-    $split && return 0
-
-    if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '--listname --remove --admin \
-            --quiet --nomodify --help' -- "$cur" ) )
-    fi
-
-} &&
-complete -F _clone_member clone_member
-
-_sync_members()
-{
-    local cur prev words cword split
-    _init_completion -s || return
-
-    case $prev in
-        -w|-g|-d|--welcome-msg|--goodbye-msg|--digest)
-            COMPREPLY=( $( compgen -W 'y n' -- "$cur") )
-            return 0
-            ;;
-        -d|--file)
-            _filedir
-            return 0
-            ;;
-    esac
-
-    $split && return 0
-
-    if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '--no-change --welcome-msg \
-            --goodbye-msg --digest --notifyadmin --file --help' -- "$cur" ) )
-    else
-        _mailman_lists
-    fi
-
-} &&
-complete -F _sync_members sync_members
-
-_list_admins()
-{
-    local cur prev words cword
-    _init_completion || return
-
-    if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '--all-vhost --all --help' -- "$cur" ) )
-    else
-        _mailman_lists
-    fi
-
-} &&
-complete -F _list_admins list_admins
-
-_list_owners()
-{
-    local cur prev words cword
-    _init_completion || return
-
-    if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '--with-listnames --moderators \
-            --help' -- "$cur" ) )
-    else
-        _mailman_lists
-    fi
-
-} &&
-complete -F _list_owners list_owners
-
-_list_members()
-{
-    local cur prev words cword split
-    _init_completion -s || return
-
-    case $prev in
-        -o|--output)
-            _filedir
-            return 0
-            ;;
-        -d|--digest)
-            COMPREPLY=( $( compgen -W 'mime plain' -- "$cur") )
-            return 0
-            ;;
-        -n|--nomail)
-            COMPREPLY=( $( compgen -W 'byadmin byuser bybounce unknown' \
-                -- "$cur") )
-            return 0
-            ;;
-    esac
-
-    $split && return 0
-
-    if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '--output --regular --digest \
-            --nomail --fullnames --preserve --help' -- "$cur" ) )
-    else
-        _mailman_lists
-    fi
-
-} &&
-complete -F _list_members list_members
-
-_change_pw()
-{
-    local cur prev words cword split
-    _init_completion -s || return
-
-    case $prev in
-        -l|--listname)
-            _mailman_lists
-            return 0
-            ;;
-    esac
-
-    $split && return 0
-
-    if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '--all --domain --listname \
-            --password --quiet --help' -- "$cur" ) )
-    fi
-
-} &&
-complete -F _change_pw change_pw
-
-_withlist()
-{
-    local cur prev words cword
-    _init_completion || return
-
-    if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '--lock --interactive \
-            --run --all --quiet --help' -- "$cur" ) )
-    else
-        _mailman_lists
-    fi
-
-} &&
-complete -F _withlist withlist
-
-_newlist()
-{
-    local cur prev words cword
-    _init_completion || return
-
-    if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '--language --quiet --help' -- "$cur" ) )
-    else
-        _mailman_lists
-    fi
-
-} &&
-complete -F _newlist newlist
-
-_rmlist()
-{
-    local cur prev words cword
-    _init_completion || return
-
-    if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '--archives --help' -- "$cur" ) )
-    else
-        _mailman_lists
-    fi
-
-} &&
-complete -F _rmlist rmlist
-
-_config_list()
-{
-    local cur prev words cword split
-    _init_completion -s || return
-
-    case $prev in
-        -i|-o|--inputfile|--outputfile)
-            _filedir
-            return 0
-            ;;
-    esac
-
-    $split && return 0
-
-    if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '--inputfile --outputfile \
-            --checkonly --verbose --help' -- "$cur" ) )
-    else
-        _mailman_lists
-    fi
-
-} &&
-complete -F _config_list config_list
-
-# Try to detect whether this is the mailman "arch" to avoid installing
-# it for the coreutils/util-linux-ng one.
-_have arch && _have mailmanctl &&
-_arch()
-{
-    local cur prev words cword split
-    _init_completion -s || return
-
-    case $prev in
-        -w|-g|-d|--welcome-msg|--goodbye-msg|--digest)
-            COMPREPLY=( $( compgen -W 'y n' -- "$cur") )
-            return 0
-            ;;
-        -d|--file)
-            _filedir
-            return 0
-            ;;
-    esac
-
-    $split && return 0
-
-    if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '--wipe --start --end --quiet \
-            --help' -- "$cur" ) )
-    else
-        local args=$cword
-        for (( i=1; i < cword; i++ )); do
-            if [[ "${words[i]}" == -* ]]; then
-                args=$(($args-1))
-            fi
-        done
-        case $args in
-            1)
-                _mailman_lists
-                ;;
-            2)
-                _filedir
-                ;;
-        esac
-    fi
-
-} &&
-complete -F _arch arch
-
-_inject()
-{
-    local cur prev words cword split
-    _init_completion -s || return
-
-    case $prev in
-        -l|--listname)
-            _mailman_lists
-            return 0
-            ;;
-    esac
-
-    $split && return 0
-
-    if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '--listname --queue --help' -- "$cur" ) )
-    else
-        _filedir
-    fi
-
-} &&
-complete -F _inject inject
-
-_check_db()
-{
-    local cur prev words cword
-    _init_completion || return
-
-    if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '--all --verbose --help' -- "$cur" ) )
-    else
-        _mailman_lists
-    fi
-
-} &&
-complete -F _check_db check_db
-
 # Local variables:
 # mode: shell-script
 # sh-basic-offset: 4
diff --git a/completions/arch b/completions/arch
new file mode 100644
index 0000000..80f1fc3
--- /dev/null
+++ b/completions/arch
@@ -0,0 +1,53 @@
+# mailman arch completion
+
+# Try to detect whether this is the mailman "arch" to avoid installing
+# it for the coreutils/util-linux-ng one.
+_have mailmanctl &&
+_arch()
+{
+    local cur prev words cword split
+    _init_completion -s || return
+
+    case $prev in
+        -w|-g|-d|--welcome-msg|--goodbye-msg|--digest)
+            COMPREPLY=( $( compgen -W 'y n' -- "$cur") )
+            return 0
+            ;;
+        -d|--file)
+            _filedir
+            return 0
+            ;;
+    esac
+
+    $split && return 0
+
+    if [[ "$cur" == -* ]]; then
+        COMPREPLY=( $( compgen -W '--wipe --start --end --quiet \
+            --help' -- "$cur" ) )
+    else
+        local args=$cword
+        for (( i=1; i < cword; i++ )); do
+            if [[ "${words[i]}" == -* ]]; then
+                args=$(($args-1))
+            fi
+        done
+        case $args in
+            1)
+                _xfunc list_lists _mailman_lists
+                ;;
+            2)
+                _filedir
+                ;;
+        esac
+    fi
+
+} &&
+complete -F _arch arch
+
+# Local variables:
+# mode: shell-script
+# sh-basic-offset: 4
+# sh-indent-comment: t
+# indent-tabs-mode: nil
+# End:
+# ex: ts=4 sw=4 et filetype=sh
diff --git a/completions/chage b/completions/change_pw
similarity index 54%
copy from completions/chage
copy to completions/change_pw
index 3bd1816..aa4507d 100644
--- a/completions/chage
+++ b/completions/change_pw
@@ -1,13 +1,13 @@
-# chage(1) completion
+# mailman change_pw completion
 
-_chage()
+_change_pw()
 {
     local cur prev words cword split
     _init_completion -s || return
 
     case $prev in
-        -d|--lastday|-E|--expiredate|-h|--help|-I|--inactive|-m|--mindays|\
-        -M|--maxdays|-W|--warndays)
+        -l|--listname)
+            _xfunc list_lists _mailman_lists
             return 0
             ;;
     esac
@@ -15,13 +15,12 @@ _chage()
     $split && return 0
 
     if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$cur" ) )
-        return 0
+        COMPREPLY=( $( compgen -W '--all --domain --listname \
+            --password --quiet --help' -- "$cur" ) )
     fi
 
-    COMPREPLY=( $( compgen -u -- "$cur" ) )
 } &&
-complete -F _chage chage
+complete -F _change_pw change_pw
 
 # Local variables:
 # mode: shell-script
diff --git a/completions/sshmitm b/completions/check_db
similarity index 60%
copy from completions/sshmitm
copy to completions/check_db
index 2260982..5a6cd06 100644
--- a/completions/sshmitm
+++ b/completions/check_db
@@ -1,18 +1,18 @@
-# sshmitm completion
+# mailman check_db completion
 
-_sshmitm()
+_check_db()
 {
     local cur prev words cword
     _init_completion || return
 
     if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '$( _parse_usage "$1" )' -- "$cur" ) )
+        COMPREPLY=( $( compgen -W '--all --verbose --help' -- "$cur" ) )
     else
-        _known_hosts_real "$cur"
+        _xfunc list_lists _mailman_lists
     fi
 
 } &&
-complete -F _sshmitm sshmitm
+complete -F _check_db check_db
 
 # Local variables:
 # mode: shell-script
diff --git a/completions/chage b/completions/clone_member
similarity index 54%
copy from completions/chage
copy to completions/clone_member
index 3bd1816..11067e7 100644
--- a/completions/chage
+++ b/completions/clone_member
@@ -1,13 +1,13 @@
-# chage(1) completion
+# mailman clone_member completion
 
-_chage()
+_clone_member()
 {
     local cur prev words cword split
     _init_completion -s || return
 
     case $prev in
-        -d|--lastday|-E|--expiredate|-h|--help|-I|--inactive|-m|--mindays|\
-        -M|--maxdays|-W|--warndays)
+        -l|--listname)
+            _xfunc list_lists _mailman_lists
             return 0
             ;;
     esac
@@ -15,13 +15,12 @@ _chage()
     $split && return 0
 
     if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$cur" ) )
-        return 0
+        COMPREPLY=( $( compgen -W '--listname --remove --admin \
+            --quiet --nomodify --help' -- "$cur" ) )
     fi
 
-    COMPREPLY=( $( compgen -u -- "$cur" ) )
 } &&
-complete -F _chage chage
+complete -F _clone_member clone_member
 
 # Local variables:
 # mode: shell-script
diff --git a/completions/chage b/completions/config_list
similarity index 53%
copy from completions/chage
copy to completions/config_list
index 3bd1816..a695b03 100644
--- a/completions/chage
+++ b/completions/config_list
@@ -1,13 +1,13 @@
-# chage(1) completion
+# mailman config_list completion
 
-_chage()
+_config_list()
 {
     local cur prev words cword split
     _init_completion -s || return
 
     case $prev in
-        -d|--lastday|-E|--expiredate|-h|--help|-I|--inactive|-m|--mindays|\
-        -M|--maxdays|-W|--warndays)
+        -i|-o|--inputfile|--outputfile)
+            _filedir
             return 0
             ;;
     esac
@@ -15,13 +15,14 @@ _chage()
     $split && return 0
 
     if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$cur" ) )
-        return 0
+        COMPREPLY=( $( compgen -W '--inputfile --outputfile \
+            --checkonly --verbose --help' -- "$cur" ) )
+    else
+        _xfunc list_lists _mailman_lists
     fi
 
-    COMPREPLY=( $( compgen -u -- "$cur" ) )
 } &&
-complete -F _chage chage
+complete -F _config_list config_list
 
 # Local variables:
 # mode: shell-script
diff --git a/completions/chage b/completions/find_member
similarity index 54%
copy from completions/chage
copy to completions/find_member
index 3bd1816..e1ea650 100644
--- a/completions/chage
+++ b/completions/find_member
@@ -1,13 +1,13 @@
-# chage(1) completion
+# mailman find_member completion
 
-_chage()
+_find_member()
 {
     local cur prev words cword split
     _init_completion -s || return
 
     case $prev in
-        -d|--lastday|-E|--expiredate|-h|--help|-I|--inactive|-m|--mindays|\
-        -M|--maxdays|-W|--warndays)
+        -l|-x|--listname|--exclude)
+            _xfunc list_lists _mailman_lists
             return 0
             ;;
     esac
@@ -15,13 +15,12 @@ _chage()
     $split && return 0
 
     if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$cur" ) )
-        return 0
+        COMPREPLY=( $( compgen -W '--listname --exclude --owners \
+            --help' -- "$cur" ) )
     fi
 
-    COMPREPLY=( $( compgen -u -- "$cur" ) )
 } &&
-complete -F _chage chage
+complete -F _find_member find_member
 
 # Local variables:
 # mode: shell-script
diff --git a/completions/chage b/completions/inject
similarity index 54%
copy from completions/chage
copy to completions/inject
index 3bd1816..1e4d9d4 100644
--- a/completions/chage
+++ b/completions/inject
@@ -1,13 +1,13 @@
-# chage(1) completion
+# mailman inject completion
 
-_chage()
+_inject()
 {
     local cur prev words cword split
     _init_completion -s || return
 
     case $prev in
-        -d|--lastday|-E|--expiredate|-h|--help|-I|--inactive|-m|--mindays|\
-        -M|--maxdays|-W|--warndays)
+        -l|--listname)
+            _xfunc list_lists _mailman_lists
             return 0
             ;;
     esac
@@ -15,13 +15,13 @@ _chage()
     $split && return 0
 
     if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$cur" ) )
-        return 0
+        COMPREPLY=( $( compgen -W '--listname --queue --help' -- "$cur" ) )
+    else
+        _filedir
     fi
 
-    COMPREPLY=( $( compgen -u -- "$cur" ) )
 } &&
-complete -F _chage chage
+complete -F _inject inject
 
 # Local variables:
 # mode: shell-script
diff --git a/completions/sshmitm b/completions/list_admins
similarity index 57%
copy from completions/sshmitm
copy to completions/list_admins
index 2260982..6ffeafe 100644
--- a/completions/sshmitm
+++ b/completions/list_admins
@@ -1,18 +1,18 @@
-# sshmitm completion
+# mailman list_admins completion
 
-_sshmitm()
+_list_admins()
 {
     local cur prev words cword
     _init_completion || return
 
     if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '$( _parse_usage "$1" )' -- "$cur" ) )
+        COMPREPLY=( $( compgen -W '--all-vhost --all --help' -- "$cur" ) )
     else
-        _known_hosts_real "$cur"
+        _xfunc list_lists _mailman_lists
     fi
 
 } &&
-complete -F _sshmitm sshmitm
+complete -F _list_admins list_admins
 
 # Local variables:
 # mode: shell-script
diff --git a/completions/list_lists b/completions/list_lists
index 4ffbdb9..7209ea7 100644
--- a/completions/list_lists
+++ b/completions/list_lists
@@ -1,5 +1,10 @@
 # mailman list_lists completion
 
+_mailman_lists()
+{
+    COMPREPLY=( $( compgen -W '$( list_lists -b 2>/dev/null )' -- "$cur" ) )
+}
+
 _list_lists()
 {
     local cur prev words cword
diff --git a/completions/list_members b/completions/list_members
new file mode 100644
index 0000000..7b49b20
--- /dev/null
+++ b/completions/list_members
@@ -0,0 +1,42 @@
+# mailman list_members completion
+
+_list_members()
+{
+    local cur prev words cword split
+    _init_completion -s || return
+
+    case $prev in
+        -o|--output)
+            _filedir
+            return 0
+            ;;
+        -d|--digest)
+            COMPREPLY=( $( compgen -W 'mime plain' -- "$cur") )
+            return 0
+            ;;
+        -n|--nomail)
+            COMPREPLY=( $( compgen -W 'byadmin byuser bybounce unknown' \
+                -- "$cur") )
+            return 0
+            ;;
+    esac
+
+    $split && return 0
+
+    if [[ "$cur" == -* ]]; then
+        COMPREPLY=( $( compgen -W '--output --regular --digest \
+            --nomail --fullnames --preserve --help' -- "$cur" ) )
+    else
+        _xfunc list_lists _mailman_lists
+    fi
+
+} &&
+complete -F _list_members list_members
+
+# Local variables:
+# mode: shell-script
+# sh-basic-offset: 4
+# sh-indent-comment: t
+# indent-tabs-mode: nil
+# End:
+# ex: ts=4 sw=4 et filetype=sh
diff --git a/completions/dumpdb b/completions/list_owners
similarity index 60%
copy from completions/dumpdb
copy to completions/list_owners
index 4f093c6..eb88cba 100644
--- a/completions/dumpdb
+++ b/completions/list_owners
@@ -1,19 +1,19 @@
-# mailman dumpdb completion
+# mailman list_owners completion
 
-_dumpdb()
+_list_owners()
 {
     local cur prev words cword
     _init_completion || return
 
     if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '--marshal --pickle --noprint \
+        COMPREPLY=( $( compgen -W '--with-listnames --moderators \
             --help' -- "$cur" ) )
     else
-        _filedir
+        _xfunc list_lists _mailman_lists
     fi
 
 } &&
-complete -F _dumpdb dumpdb
+complete -F _list_owners list_owners
 
 # Local variables:
 # mode: shell-script
diff --git a/completions/sshmitm b/completions/newlist
similarity index 58%
copy from completions/sshmitm
copy to completions/newlist
index 2260982..e5da0cf 100644
--- a/completions/sshmitm
+++ b/completions/newlist
@@ -1,18 +1,18 @@
-# sshmitm completion
+# mailman newlist completion
 
-_sshmitm()
+_newlist()
 {
     local cur prev words cword
     _init_completion || return
 
     if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '$( _parse_usage "$1" )' -- "$cur" ) )
+        COMPREPLY=( $( compgen -W '--language --quiet --help' -- "$cur" ) )
     else
-        _known_hosts_real "$cur"
+        _xfunc list_lists _mailman_lists
     fi
 
 } &&
-complete -F _sshmitm sshmitm
+complete -F _newlist newlist
 
 # Local variables:
 # mode: shell-script
diff --git a/completions/chage b/completions/remove_members
similarity index 53%
copy from completions/chage
copy to completions/remove_members
index 3bd1816..f062205 100644
--- a/completions/chage
+++ b/completions/remove_members
@@ -1,13 +1,13 @@
-# chage(1) completion
+# mailman remove_members completion
 
-_chage()
+_remove_members()
 {
     local cur prev words cword split
     _init_completion -s || return
 
     case $prev in
-        -d|--lastday|-E|--expiredate|-h|--help|-I|--inactive|-m|--mindays|\
-        -M|--maxdays|-W|--warndays)
+        -f|--file)
+            _filedir
             return 0
             ;;
     esac
@@ -15,13 +15,14 @@ _chage()
     $split && return 0
 
     if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$cur" ) )
-        return 0
+        COMPREPLY=( $( compgen -W '--file --all --fromall --nouserack \
+            --noadminack --help' -- "$cur" ) )
+    else
+        _xfunc list_lists _mailman_lists
     fi
 
-    COMPREPLY=( $( compgen -u -- "$cur" ) )
 } &&
-complete -F _chage chage
+complete -F _remove_members remove_members
 
 # Local variables:
 # mode: shell-script
diff --git a/completions/sshmitm b/completions/rmlist
similarity index 60%
copy from completions/sshmitm
copy to completions/rmlist
index 2260982..5f77092 100644
--- a/completions/sshmitm
+++ b/completions/rmlist
@@ -1,18 +1,18 @@
-# sshmitm completion
+# mailman rmlist completion
 
-_sshmitm()
+_rmlist()
 {
     local cur prev words cword
     _init_completion || return
 
     if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '$( _parse_usage "$1" )' -- "$cur" ) )
+        COMPREPLY=( $( compgen -W '--archives --help' -- "$cur" ) )
     else
-        _known_hosts_real "$cur"
+        _xfunc list_lists _mailman_lists
     fi
 
 } &&
-complete -F _sshmitm sshmitm
+complete -F _rmlist rmlist
 
 # Local variables:
 # mode: shell-script
diff --git a/completions/sync_members b/completions/sync_members
new file mode 100644
index 0000000..ba23267
--- /dev/null
+++ b/completions/sync_members
@@ -0,0 +1,37 @@
+# mailman sync_members completion
+
+_sync_members()
+{
+    local cur prev words cword split
+    _init_completion -s || return
+
+    case $prev in
+        -w|-g|-d|--welcome-msg|--goodbye-msg|--digest)
+            COMPREPLY=( $( compgen -W 'y n' -- "$cur") )
+            return 0
+            ;;
+        -d|--file)
+            _filedir
+            return 0
+            ;;
+    esac
+
+    $split && return 0
+
+    if [[ "$cur" == -* ]]; then
+        COMPREPLY=( $( compgen -W '--no-change --welcome-msg \
+            --goodbye-msg --digest --notifyadmin --file --help' -- "$cur" ) )
+    else
+        _xfunc list_lists _mailman_lists
+    fi
+
+} &&
+complete -F _sync_members sync_members
+
+# Local variables:
+# mode: shell-script
+# sh-basic-offset: 4
+# sh-indent-comment: t
+# indent-tabs-mode: nil
+# End:
+# ex: ts=4 sw=4 et filetype=sh
diff --git a/completions/webmitm b/completions/withlist
similarity index 54%
copy from completions/webmitm
copy to completions/withlist
index cf181f8..167d653 100644
--- a/completions/webmitm
+++ b/completions/withlist
@@ -1,18 +1,19 @@
-# webmitm completion
+# mailman withlist completion
 
-_webmitm()
+_withlist()
 {
     local cur prev words cword
     _init_completion || return
 
     if [[ "$cur" == -* ]]; then
-        COMPREPLY=( $( compgen -W '$( _parse_usage "$1" )' -- "$cur" ) )
+        COMPREPLY=( $( compgen -W '--lock --interactive \
+            --run --all --quiet --help' -- "$cur" ) )
     else
-        _known_hosts_real "$cur"
+        _xfunc list_lists _mailman_lists
     fi
 
 } &&
-complete -F _webmitm webmitm
+complete -F _withlist withlist
 
 # Local variables:
 # mode: shell-script

-- 
bash-completion



More information about the Bash-completion-commits mailing list