diff options
author | Tuncer Ayaz <tuncer.ayaz@gmail.com> | 2010-01-09 18:24:08 +0100 |
---|---|---|
committer | Tuncer Ayaz <tuncer.ayaz@gmail.com> | 2010-01-09 18:24:08 +0100 |
commit | 59bfc5044f4dd7b826899a8caae0a3ee4168c0f5 (patch) | |
tree | 0efc27eb5d68828da9283135a0ceb96b4e976152 | |
parent | 2e5b035c3e86a6a9deb5c5badd6c4bdaeb343328 (diff) |
Fixed trailing space issue for options ending with an equal sign
-rw-r--r-- | priv/shell-completion/bash/rebar | 28 |
1 files changed, 22 insertions, 6 deletions
diff --git a/priv/shell-completion/bash/rebar b/priv/shell-completion/bash/rebar index 42edb51..f57ac0e 100644 --- a/priv/shell-completion/bash/rebar +++ b/priv/shell-completion/bash/rebar @@ -2,29 +2,45 @@ _rebar() { - local cur prev opts + local cur prev sopts lopts cmdsnvars COMPREPLY=() cur="${COMP_WORDS[COMP_CWORD]}" prev="${COMP_WORDS[COMP_CWORD-1]}" sopts="-h -v -f -j" - lopts=" --help --verbose --force --jobs" + lopts=" --help --verbose --force --jobs=" cmdsnvars="analyze build_plt check_plt clean compile \ - create-app create-node eunit generate \ - int_test perf_test test \ - case= force=1 jobs= suite= verbose=1" + create-app create-node eunit generate \ + int_test perf_test test \ + case= force=1 jobs= suite= verbose=1" if [[ ${cur} == --* ]] ; then COMPREPLY=( $(compgen -W "${lopts}" -- ${cur}) ) + if [ -n "$COMPREPLY" ] ; then + # append space if matched + COMPREPLY="${COMPREPLY} " + # remove trailing space if --lopt=value option + COMPREPLY=${COMPREPLY/%= /=} + fi return 0 elif [[ ${cur} == -* ]] ; then COMPREPLY=( $(compgen -W "${sopts}" -- ${cur}) ) + if [ -n "$COMPREPLY" ] ; then + # append space if matched + COMPREPLY="${COMPREPLY} " + fi return 0 else COMPREPLY=( $(compgen -W "${cmdsnvars}" -- ${cur}) ) + if [ -n "$COMPREPLY" ] ; then + # append space if matched + COMPREPLY="${COMPREPLY} " + # remove trailing space if var= option + COMPREPLY=${COMPREPLY/%= /=} + fi return 0 fi } -complete -F _rebar rebar +complete -o nospace -F _rebar rebar # Local variables: # mode: shell-script |