# wtf completion -*- shell-script -*- # Raphael Droz, 25/09/2009 _wtf() { local cur prev words cword addf _init_completion || return [[ $prev == -f ]] && _filedir && return [[ "${words[*]}" == *\ -f* ]] && addf= || addf=-f if [[ $cur == -* ]]; then COMPREPLY=( $addf ) return fi local db set -- "${words[@]}" while [[ $# -gt 0 ]]; do if [[ $1 == -f ]]; then shift ; db=$1 ; break fi shift done if [[ -z "$db" ]]; then local f for f in "$ACRONYMDB" /usr/share/misc/acronyms \ /usr/share/games/bsdgames/acronyms; do [[ -f "$f" ]] && db="$f" && break done [[ -z "$db" ]] && return fi COMPREPLY=( $(compgen -W "$(cut -f 1 -s $db* 2>/dev/null) $addf" \ -- "${cur^^}") ) } && complete -F _wtf wtf # ex: filetype=sh