Add bash completion support for Capistrano
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