diff options
Diffstat (limited to 'python/mach/bash-completion.sh')
-rw-r--r-- | python/mach/bash-completion.sh | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/python/mach/bash-completion.sh b/python/mach/bash-completion.sh new file mode 100644 index 0000000000..e4b151f24c --- /dev/null +++ b/python/mach/bash-completion.sh @@ -0,0 +1,29 @@ +function _mach() +{ + local cur cmds c subcommand + COMPREPLY=() + + # Load the list of commands + cmds=`"${COMP_WORDS[0]}" mach-commands` + + # Look for the subcommand. + cur="${COMP_WORDS[COMP_CWORD]}" + subcommand="" + c=1 + while [ $c -lt $COMP_CWORD ]; do + word="${COMP_WORDS[c]}" + for cmd in $cmds; do + if [ "$cmd" = "$word" ]; then + subcommand="$word" + fi + done + c=$((++c)) + done + + if [[ "$subcommand" == "help" || -z "$subcommand" ]]; then + COMPREPLY=( $(compgen -W "$cmds" -- ${cur}) ) + fi + + return 0 +} +complete -o default -F _mach mach |