#!/usr/bin/env bash _pb() { # Get basic autocomplete commands from the function itself local helplist helplist=$(pb -x) # Combine all the lists for autocomplete local cur cur=${COMP_WORDS[COMP_CWORD]} COMPREPLY=( $( compgen -W "$helplist" -- "$cur" ) ) } # Detect if current shell is ZSH, and if so, load this file in bash # compatibility mode. if [ -n "$ZSH_VERSION" ]; then autoload bashcompinit bashcompinit fi complete -o default -o nospace -F _pb pb # The following are necessary only for Cygwin, and only are needed # when the user has tab-completed the executable name and consequently # included the '.exe' suffix. if [ Cygwin = "$(uname -o 2>/dev/null)" ]; then complete -o default -o nospace -F _pb pb.exe fi