summaryrefslogtreecommitdiff
path: root/priv/shell-completion
diff options
context:
space:
mode:
Diffstat (limited to 'priv/shell-completion')
-rw-r--r--priv/shell-completion/bash/rebar28
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