Diff
1diff --git a/plugins/cap/cap.plugin.zsh b/plugins/cap/cap.plugin.zsh
2new file mode 100644
3index 0000000000000000000000000000000000000000..a0fa21d005e628888cf73c9f3e4abc56d1a090b1
4--- /dev/null
5+++ b/plugins/cap/cap.plugin.zsh
6@@ -0,0 +1,21 @@
7+function _cap_does_task_list_need_generating () {
8+ if [ ! -f .cap_tasks~ ]; then return 0;
9+ else
10+ accurate=$(stat -f%m .cap_tasks~)
11+ changed=$(stat -f%m config/deploy.rb)
12+ return $(expr $accurate '>=' $changed)
13+ fi
14+}
15+
16+function _cap () {
17+ if [ -f config/deploy.rb ]; then
18+ if _cap_does_task_list_need_generating; then
19+ echo "\nGenerating .cap_tasks~..." > /dev/stderr
20+ cap show_tasks -q | cut -d " " -f 1 | sed -e '/^ *$/D' -e '1,2D'
21+> .cap_tasks~
22+ fi
23+ compadd `cat .cap_tasks~`
24+ fi
25+}
26+
27+compctl -K _cap cap
28diff --git a/plugins/rails/rails.plugin.zsh b/plugins/rails/rails.plugin.zsh
29index 45bebb72246f894e7754ef72fdd2e2f62e996e78..ac8119e837611d4a19ea146a8e7c4242a8982922 100644
30--- a/plugins/rails/rails.plugin.zsh
31+++ b/plugins/rails/rails.plugin.zsh
32@@ -1,4 +1,3 @@
33-
34 alias ss='thin --stats "/thin/stats" start'
35 alias sg='ruby script/generate'
36 alias sd='ruby script/destroy'
37@@ -9,28 +8,6 @@ alias sc='ruby script/console'
38 alias sd='ruby script/server --debugger'
39 alias devlog='tail -f log/development.log'
40
41-function _cap_does_task_list_need_generating () {
42- if [ ! -f .cap_tasks~ ]; then return 0;
43- else
44- accurate=$(stat -f%m .cap_tasks~)
45- changed=$(stat -f%m config/deploy.rb)
46- return $(expr $accurate '>=' $changed)
47- fi
48-}
49-
50-function _cap () {
51- if [ -f config/deploy.rb ]; then
52- if _cap_does_task_list_need_generating; then
53- echo "\nGenerating .cap_tasks~..." > /dev/stderr
54- cap show_tasks -q | cut -d " " -f 1 | sed -e '/^ *$/D' -e '1,2D'
55-> .cap_tasks~
56- fi
57- compadd `cat .cap_tasks~`
58- fi
59-}
60-
61-compctl -K _cap cap
62-
63 function remote_console() {
64 /usr/bin/env ssh $1 "( cd $2 && ruby script/console production )"
65 }