From fa5dbb6c8e724b32575a1c9e949c53f4ed145ea9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Sat, 22 Oct 2011 12:49:31 +0300 Subject: mailman: Split completions to separate files from add_members. --- completions/.gitignore | 15 -- completions/Makefile.am | 36 ++--- completions/add_members | 337 +-------------------------------------------- completions/arch | 53 +++++++ completions/change_pw | 31 +++++ completions/check_db | 23 ++++ completions/clone_member | 31 +++++ completions/config_list | 33 +++++ completions/find_member | 31 +++++ completions/inject | 32 +++++ completions/list_admins | 23 ++++ completions/list_lists | 5 + completions/list_members | 42 ++++++ completions/list_owners | 24 ++++ completions/newlist | 23 ++++ completions/remove_members | 33 +++++ completions/rmlist | 23 ++++ completions/sync_members | 37 +++++ completions/withlist | 24 ++++ 19 files changed, 485 insertions(+), 371 deletions(-) create mode 100644 completions/arch create mode 100644 completions/change_pw create mode 100644 completions/check_db create mode 100644 completions/clone_member create mode 100644 completions/config_list create mode 100644 completions/find_member create mode 100644 completions/inject create mode 100644 completions/list_admins create mode 100644 completions/list_members create mode 100644 completions/list_owners create mode 100644 completions/newlist create mode 100644 completions/remove_members create mode 100644 completions/rmlist create mode 100644 completions/sync_members create mode 100644 completions/withlist diff --git a/completions/.gitignore b/completions/.gitignore index c7e9660d..944fc3ae 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 e0887d50..3f8b3fcd 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 930f9c61..27feb5e0 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 00000000..80f1fc3b --- /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/change_pw b/completions/change_pw new file mode 100644 index 00000000..aa4507d8 --- /dev/null +++ b/completions/change_pw @@ -0,0 +1,31 @@ +# mailman change_pw completion + +_change_pw() +{ + local cur prev words cword split + _init_completion -s || return + + case $prev in + -l|--listname) + _xfunc list_lists _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 + +# 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/check_db b/completions/check_db new file mode 100644 index 00000000..5a6cd063 --- /dev/null +++ b/completions/check_db @@ -0,0 +1,23 @@ +# mailman check_db completion + +_check_db() +{ + local cur prev words cword + _init_completion || return + + if [[ "$cur" == -* ]]; then + COMPREPLY=( $( compgen -W '--all --verbose --help' -- "$cur" ) ) + else + _xfunc list_lists _mailman_lists + fi + +} && +complete -F _check_db check_db + +# 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/clone_member b/completions/clone_member new file mode 100644 index 00000000..11067e7c --- /dev/null +++ b/completions/clone_member @@ -0,0 +1,31 @@ +# mailman clone_member completion + +_clone_member() +{ + local cur prev words cword split + _init_completion -s || return + + case $prev in + -l|--listname) + _xfunc list_lists _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 + +# 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/config_list b/completions/config_list new file mode 100644 index 00000000..a695b038 --- /dev/null +++ b/completions/config_list @@ -0,0 +1,33 @@ +# mailman config_list completion + +_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 + _xfunc list_lists _mailman_lists + fi + +} && +complete -F _config_list config_list + +# 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/find_member b/completions/find_member new file mode 100644 index 00000000..e1ea650e --- /dev/null +++ b/completions/find_member @@ -0,0 +1,31 @@ +# mailman find_member completion + +_find_member() +{ + local cur prev words cword split + _init_completion -s || return + + case $prev in + -l|-x|--listname|--exclude) + _xfunc list_lists _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 + +# 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/inject b/completions/inject new file mode 100644 index 00000000..1e4d9d4c --- /dev/null +++ b/completions/inject @@ -0,0 +1,32 @@ +# mailman inject completion + +_inject() +{ + local cur prev words cword split + _init_completion -s || return + + case $prev in + -l|--listname) + _xfunc list_lists _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 + +# 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/list_admins b/completions/list_admins new file mode 100644 index 00000000..6ffeafe1 --- /dev/null +++ b/completions/list_admins @@ -0,0 +1,23 @@ +# mailman list_admins completion + +_list_admins() +{ + local cur prev words cword + _init_completion || return + + if [[ "$cur" == -* ]]; then + COMPREPLY=( $( compgen -W '--all-vhost --all --help' -- "$cur" ) ) + else + _xfunc list_lists _mailman_lists + fi + +} && +complete -F _list_admins list_admins + +# 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/list_lists b/completions/list_lists index 4ffbdb98..7209ea76 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 00000000..7b49b20f --- /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/list_owners b/completions/list_owners new file mode 100644 index 00000000..eb88cba5 --- /dev/null +++ b/completions/list_owners @@ -0,0 +1,24 @@ +# mailman list_owners completion + +_list_owners() +{ + local cur prev words cword + _init_completion || return + + if [[ "$cur" == -* ]]; then + COMPREPLY=( $( compgen -W '--with-listnames --moderators \ + --help' -- "$cur" ) ) + else + _xfunc list_lists _mailman_lists + fi + +} && +complete -F _list_owners list_owners + +# 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/newlist b/completions/newlist new file mode 100644 index 00000000..e5da0cfe --- /dev/null +++ b/completions/newlist @@ -0,0 +1,23 @@ +# mailman newlist completion + +_newlist() +{ + local cur prev words cword + _init_completion || return + + if [[ "$cur" == -* ]]; then + COMPREPLY=( $( compgen -W '--language --quiet --help' -- "$cur" ) ) + else + _xfunc list_lists _mailman_lists + fi + +} && +complete -F _newlist newlist + +# 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/remove_members b/completions/remove_members new file mode 100644 index 00000000..f0622058 --- /dev/null +++ b/completions/remove_members @@ -0,0 +1,33 @@ +# mailman remove_members completion + +_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 + _xfunc list_lists _mailman_lists + fi + +} && +complete -F _remove_members remove_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/rmlist b/completions/rmlist new file mode 100644 index 00000000..5f77092d --- /dev/null +++ b/completions/rmlist @@ -0,0 +1,23 @@ +# mailman rmlist completion + +_rmlist() +{ + local cur prev words cword + _init_completion || return + + if [[ "$cur" == -* ]]; then + COMPREPLY=( $( compgen -W '--archives --help' -- "$cur" ) ) + else + _xfunc list_lists _mailman_lists + fi + +} && +complete -F _rmlist rmlist + +# 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/sync_members b/completions/sync_members new file mode 100644 index 00000000..ba23267a --- /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/withlist b/completions/withlist new file mode 100644 index 00000000..167d6533 --- /dev/null +++ b/completions/withlist @@ -0,0 +1,24 @@ +# mailman withlist completion + +_withlist() +{ + local cur prev words cword + _init_completion || return + + if [[ "$cur" == -* ]]; then + COMPREPLY=( $( compgen -W '--lock --interactive \ + --run --all --quiet --help' -- "$cur" ) ) + else + _xfunc list_lists _mailman_lists + fi + +} && +complete -F _withlist withlist + +# 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 -- cgit v1.2.1