From ff3c47ed432919123d68b370736c22bd6be5ef86 Mon Sep 17 00:00:00 2001 From: Timo Webler Date: Wed, 4 Dec 2013 13:42:58 +0100 Subject: [PATCH] Add bash completion support for Capistrano --- completion/available/capistrano.completion.bash | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 completion/available/capistrano.completion.bash diff --git a/completion/available/capistrano.completion.bash b/completion/available/capistrano.completion.bash new file mode 100644 index 0000000..a48bd4d --- /dev/null +++ b/completion/available/capistrano.completion.bash @@ -0,0 +1,17 @@ +#!/usr/bin/env bash +# Bash completion support for Capistrano. + +export COMP_WORDBREAKS=${COMP_WORDBREAKS/\:/} + +_capcomplete() { + if [ -f Capfile ]; then + recent=`ls -t .cap_tasks~ Capfile **/*.cap 2> /dev/null | head -n 1` + if [[ $recent != '.cap_tasks~' ]]; then + cap --tool --tasks | cut -d " " -f 2 > .cap_tasks~ + fi + COMPREPLY=($(compgen -W "`cat .cap_tasks~`" -- ${COMP_WORDS[COMP_CWORD]})) + return 0 + fi +} + +complete -o default -o nospace -F _capcomplete cap -- 2.17.1