# mailman arch completion -*- shell-script -*- # Try to detect whether this is the mailman "arch" to avoid installing # it for the coreutils/util-linux-ng one. _have mailmanctl && proc _arch { local cur prev words cword split _init_completion -s || return case (prev) { -w|-g|-d|--welcome-msg|--goodbye-msg|--digest { setvar COMPREPLY = ''( $( compgen -W 'y n' -- "$cur" ) ) return 0 } -d|--file { _filedir return 0 } } $split && return 0 if [[ "$cur" == -* ]] { setvar 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) { 1 { _xfunc list_lists _mailman_lists } 2 { _filedir } } } } && complete -F _arch arch # ex: ts=4 sw=4 et filetype=sh