# 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 match $prev { with -w|-g|-d|--welcome-msg|--goodbye-msg|--digest setglobal COMPREPLY = ''( $( compgen -W 'y n' -- "$cur" ) ) return 0 with -d|--file _filedir return 0 } $split && return 0 if [[ "$cur" == -* ]] { setglobal 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 match $args { with 1 _xfunc list_lists _mailman_lists with 2 _filedir } } } && complete -F _arch arch # ex: ts=4 sw=4 et filetype=sh