# ipv6calc completion -*- shell-script -*- _ipv6calc() { local cur prev words cword split _init_completion -s || return case "$prev" in --debug|-!(-*)d) return ;; --in|--out|--action|-!(-*)[IOA]) # With ipv6calc < 0.73.0, -m does nothing here, so use sed instead. COMPREPLY=( $(compgen -W "$($1 "$prev" -h 2>&1 | \ command sed -ne 's/^[[:space:]]\{1,\}\([^[:space:]:]\{1,\}\)[[:space:]]*:.*/\1/p')" \ -- "$cur") ) return ;; --db-geoip|--db-ip2location-ipv4|--db-ip2location-ipv6) _filedir return ;; --printstart|--printend) return ;; esac $split && return if [[ "$cur" == -* ]]; then COMPREPLY=( $(compgen -W '$("$1" -h 2>&1 | command sed -e "s/[][]//g" | _parse_help -)' -- "$cur") ) fi } && complete -F _ipv6calc ipv6calc # ex: filetype=sh