Allow bash-completion to work with full-path executable

This commit is contained in:
Anthony Fok 2016-02-08 02:29:17 +08:00 committed by Steve Francia
parent 1ef0913976
commit 65a708cee0
1 changed files with 7 additions and 1 deletions

View File

@ -183,7 +183,11 @@ __handle_command()
if [[ -n ${last_command} ]]; then if [[ -n ${last_command} ]]; then
next_command="_${last_command}_${words[c]//:/__}" next_command="_${last_command}_${words[c]//:/__}"
else else
next_command="_${words[c]//:/__}" if [[ $c -eq 0 ]]; then
next_command="_$(basename ${words[c]//:/__})"
else
next_command="_${words[c]//:/__}"
fi
fi fi
c=$((c+1)) c=$((c+1))
__debug "${FUNCNAME}: looking for ${next_command}" __debug "${FUNCNAME}: looking for ${next_command}"
@ -201,6 +205,8 @@ __handle_word()
__handle_flag __handle_flag
elif __contains_word "${words[c]}" "${commands[@]}"; then elif __contains_word "${words[c]}" "${commands[@]}"; then
__handle_command __handle_command
elif [[ $c -eq 0 ]] && __contains_word "$(basename ${words[c]})" "${commands[@]}"; then
__handle_command
else else
__handle_noun __handle_noun
fi fi