_git_annex() { local cmdline local IFS=$' ' CMDLINE=(--bash-completion-index $COMP_CWORD) if [[ "${COMP_WORDS[@]:0:2}" == "git annex" ]]; then unset COMP_WORDS[0] COMP_WORDS[1]="git-annex" fi for arg in ${COMP_WORDS[@]}; do CMDLINE=(${CMDLINE[@]} --bash-completion-word $arg) done COMPREPLY=( $(/usr/bin/git-annex "${CMDLINE[@]}") ) } complete -o filenames -F _git_annex git-annex