#-*- mode: shell-script;-*- tracker_cmds() { local cur prev words cword _init_completion -s || return cur=${COMP_WORDS[COMP_CWORD]} if [[ $cword == 1 ]]; then possible=`tracker | egrep " [a-z].* " | awk '{ print ($1) }'` COMPREPLY=( $(compgen -W "$possible" -- $cur) ) return 0; fi case $prev in -h|--help) return 0; ;; extract|info|-f|--file) if [[ $cur != -* ]]; then _filedir return 0; fi ;; *) ;; esac if [[ $cword -lt 2 ]]; then return 0; fi if [[ -z $cur ]] || [[ $cur == -* ]]; then possible=`${words[0]} ${words[1]} -h | egrep "^ *-" | sed "s/^ *//" | sed "s/ [^-].*//" | sed "s/,/\n/g" | sed "s/=.*//"` COMPREPLY=( $(compgen -W "$possible" -- $cur) ) fi } complete -F tracker_cmds tracker