# 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 && _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 # ex: ts=4 sw=4 et filetype=sh