7a27a1ce77bcc6c1cb7d2a08ba1943dae34d04e2

Author
Robby Russell <robby@planetargon.com>
Committer
Robby Russell <robby@planetargon.com>
Date

Message

Merge pull request #2240 from Kriechi/master

unified and improved Rails plugin -- consolidates Rails3 and Rails4 plugins into one.

Diff

  1diff --git a/plugins/rails3/_rails3 b/plugins/rails/_rails
  2rename from plugins/rails3/_rails3
  3rename to plugins/rails/_rails
  4index 97915e68b90cd84cca1ff24e3b6b175224e4eab3..96f57ce6466602d4ea74b7f4588ca0054fbad767 100644
  5--- a/plugins/rails3/_rails3
  6+++ b/plugins/rails/_rails
  7@@ -1,10 +1,6 @@
  8 #compdef rails
  9 #autoload
 10 
 11-# rails 3 zsh completion, based on homebrew completion
 12-# Extracted from https://github.com/robbyrussell/oh-my-zsh/blob/30620d463850c17f86e7a56fbf6a8b5e793a4e07/plugins/rails3/_rails3
 13-# Published by Christopher Chow
 14-
 15 local -a _1st_arguments
 16 _1st_arguments=(
 17     'generate:Generate new code (short-cut alias: "g")'
 18@@ -14,14 +10,20 @@ _1st_arguments=(
 19     'new:Create a new Rails application. "rails new my_app" creates a new application called MyApp in "./my_app"'
 20     'application:Generate the Rails application code'
 21     'destroy:Undo code generated with "generate"'
 22+
 23     'benchmarker:See how fast a piece of code runs'
 24     'profiler:Get profile information from a piece of code'
 25     'plugin:Install a plugin'
 26+
 27+    'plugin new:Generates skeleton for developing a Rails plugin'
 28+    'runner:Run a piece of code in the application environment (short-cut alias: "r")'
 29 )
 30 
 31 _rails_generate_arguments() {
 32     generate_arguments=(
 33+        assets
 34         controller
 35+        decorator
 36         generator
 37         helper
 38         integration_test
 39@@ -36,9 +38,11 @@ _rails_generate_arguments() {
 40         scaffold_controller
 41         session_migration
 42         stylesheets
 43+        task
 44     )
 45 }
 46 
 47+
 48 _arguments \
 49     '(--version)--version[show version]' \
 50     '(--help)--help[show help]' \
 51@@ -50,7 +54,10 @@ if (( CURRENT == 1 )); then
 52 fi
 53 
 54 case "$words[1]" in
 55-  generate)
 56+  g|generate)
 57+    _rails_generate_arguments
 58+    _wanted generate_arguments expl 'all generate' compadd -a generate_arguments ;;
 59+  d|destroy)
 60     _rails_generate_arguments
 61     _wanted generate_arguments expl 'all generate' compadd -a generate_arguments ;;
 62 esac
 63diff --git a/plugins/rails/rails.plugin.zsh b/plugins/rails/rails.plugin.zsh
 64index dd8b174b2b3a320046cdff854584304841951816..23d15a9a1f028086413b660fa3e72d661e2dc932 100644
 65--- a/plugins/rails/rails.plugin.zsh
 66+++ b/plugins/rails/rails.plugin.zsh
 67@@ -1,20 +1,70 @@
 68+function _rails_command () {
 69+  if [ -e "script/server" ]; then
 70+    ruby script/$@
 71+  elif [ -e "script/rails" ]; then
 72+    ruby script/rails $@
 73+  elif [ -e "bin/rails" ]; then
 74+    bin/rails $@
 75+  else
 76+    rails $@
 77+  fi
 78+}
 79+
 80+function _rake_command () {
 81+  if [ -e "bin/rake" ]; then
 82+    bin/rake $@
 83+  else
 84+    rake $@
 85+  fi
 86+}
 87+
 88+alias rails='_rails_command'
 89+compdef _rails_command=rails
 90+
 91+alias rake='_rake_command'
 92+compdef _rake_command=rake
 93+
 94+alias devlog='tail -f log/development.log'
 95+alias prodlog='tail -f log/production.log'
 96+alias testlog='tail -f log/test.log'
 97+
 98+alias -g RED='RAILS_ENV=development'
 99+alias -g REP='RAILS_ENV=production'
100+alias -g RET='RAILS_ENV=test'
101+
102+# Rails aliases
103+alias rc='rails console'
104+alias rd='rails destroy'
105+alias rdb='rails dbconsole'
106+alias rg='rails generate'
107+alias rgm='rails generate migration'
108+alias rp='rails plugin'
109+alias ru='rails runner'
110+alias rs='rails server'
111+alias rsd='rails server --debugger'
112+
113+# Rake aliases
114+alias rdm='rake db:migrate'
115+alias rdr='rake db:rollback'
116+alias rdc='rake db:create'
117+alias rds='rake db:seed'
118+alias rdd='rake db:drop'
119+alias rdtc='rake db:test:clone'
120+alias rdtp='rake db:test:prepare'
121+
122+alias rlc='rake log:clear'
123+alias rn='rake notes'
124+alias rr='rake routes'
125+
126+# legacy stuff
127 alias ss='thin --stats "/thin/stats" start'
128 alias sg='ruby script/generate'
129 alias sd='ruby script/destroy'
130 alias sp='ruby script/plugin'
131 alias sr='ruby script/runner'
132 alias ssp='ruby script/spec'
133-alias rdbm='rake db:migrate'
134-alias rdbtp='rake db:test:prepare'
135-alias migrate='rake db:migrate && rake db:test:prepare'
136 alias sc='ruby script/console'
137 alias sd='ruby script/server --debugger'
138-alias devlog='tail -f log/development.log'
139-alias testlog='tail -f log/test.log'
140-alias prodlog='tail -f log/production.log'
141-alias -g RET='RAILS_ENV=test'
142-alias -g REP='RAILS_ENV=production'
143-alias -g RED='RAILS_ENV=development'
144 
145 function remote_console() {
146   /usr/bin/env ssh $1 "( cd $2 && ruby script/console production )"
147diff --git a/plugins/rails3/rails3.plugin.zsh b/plugins/rails3/rails3.plugin.zsh
148index b53d18d08f45a07538d45a7e7a841b643bc859f5..261b921087d220cefee029f6a1dce42899cfb67f 100644
149--- a/plugins/rails3/rails3.plugin.zsh
150+++ b/plugins/rails3/rails3.plugin.zsh
151@@ -1,32 +1,4 @@
152-# Rails 3 aliases, backwards-compatible with Rails 2.
153-
154-function _rails_command () {
155-  if [ -e "script/server" ]; then
156-    ruby script/$@
157-  else
158-    if [ -e "bin/rails" ]; then
159-      bin/rails $@
160-    else
161-      rails $@
162-    fi
163-  fi
164-}
165-
166-alias rc='_rails_command console'
167-alias rd='_rails_command destroy'
168-alias rdb='_rails_command dbconsole'
169-alias rdbm='rake db:migrate db:test:clone'
170-alias rg='_rails_command generate'
171-alias rgm='_rails_command generate migration'
172-alias rp='_rails_command plugin'
173-alias ru='_rails_command runner'
174-alias rs='_rails_command server'
175-alias rsd='_rails_command server --debugger'
176-alias devlog='tail -f log/development.log'
177-alias testlog='tail -f log/test.log'
178-alias prodlog='tail -f log/production.log'
179-alias rdm='rake db:migrate'
180-alias rdr='rake db:rollback'
181-alias -g RET='RAILS_ENV=test'
182-alias -g REP='RAILS_ENV=production'
183-alias -g RED='RAILS_ENV=development'
184+echo "It looks like you have been using the 'rails3' plugin,"
185+echo "which has been deprecated in favor of a newly consolidated 'rails' plugin."
186+echo "You will want to modify your ~/.zshrc configuration to begin using it."
187+echo "Learn more at https://github.com/robbyrussell/oh-my-zsh/pull/2240"
188diff --git a/plugins/rails4/rails4.plugin.zsh b/plugins/rails4/rails4.plugin.zsh
189index cb6cf816d8a8dc48ac6a803409668827bdcaa949..5452c242cab529ee8e5816717c3cd0281199d681 100644
190--- a/plugins/rails4/rails4.plugin.zsh
191+++ b/plugins/rails4/rails4.plugin.zsh
192@@ -1,32 +1,4 @@
193-# Rails 4 aliases
194-
195-function _rails_command () {
196-  if [ -e "script/server" ]; then
197-    ruby script/$@
198-  elif [ -e "script/rails" ]; then
199-    ruby script/rails $@
200-  else
201-    ruby bin/rails $@  
202-  fi
203-}
204-
205-alias rc='_rails_command console'
206-alias rd='_rails_command destroy'
207-alias rdb='_rails_command dbconsole'
208-alias rdbm='rake db:migrate db:test:clone'
209-alias rg='_rails_command generate'
210-alias rgm='_rails_command generate migration'
211-alias rp='_rails_command plugin'
212-alias ru='_rails_command runner'
213-alias rs='_rails_command server'
214-alias rsd='_rails_command server --debugger'
215-alias devlog='tail -f log/development.log'
216-alias testlog='tail -f log/test.log'
217-alias prodlog='tail -f log/production.log'
218-alias rdm='rake db:migrate'
219-alias rdc='rake db:create'
220-alias rdr='rake db:rollback'
221-alias rds='rake db:seed'
222-alias rlc='rake log:clear'
223-alias rn='rake notes'
224-alias rr='rake routes'
225+echo "It looks like you have been using the 'rails4' plugin,"
226+echo "which has been deprecated in favor of a newly consolidated 'rails' plugin."
227+echo "You will want to modify your ~/.zshrc configuration to begin using it."
228+echo "Learn more at https://github.com/robbyrussell/oh-my-zsh/pull/2240"