summaryrefslogtreecommitdiff
path: root/plugins/rails/rails.plugin.zsh
diff options
context:
space:
mode:
authorRobby Russell <robby@planetargon.com>2013-12-01 13:33:00 -0800
committerRobby Russell <robby@planetargon.com>2013-12-01 13:33:00 -0800
commit7a27a1ce77bcc6c1cb7d2a08ba1943dae34d04e2 (patch)
tree5de8ae224a6bbfd9dc984cbaadf8e5cf855329f2 /plugins/rails/rails.plugin.zsh
parent14005be4452814f9a5896f614fc48a6403b174e6 (diff)
parent1493d88e3f92c7034da5c1b1638ba19544aa3ccb (diff)
downloadzsh-7a27a1ce77bcc6c1cb7d2a08ba1943dae34d04e2.tar.gz
zsh-7a27a1ce77bcc6c1cb7d2a08ba1943dae34d04e2.tar.bz2
zsh-7a27a1ce77bcc6c1cb7d2a08ba1943dae34d04e2.zip
Merge pull request #2240 from Kriechi/master
unified and improved Rails plugin -- consolidates Rails3 and Rails4 plugins into one.
Diffstat (limited to 'plugins/rails/rails.plugin.zsh')
-rw-r--r--plugins/rails/rails.plugin.zsh68
1 files changed, 59 insertions, 9 deletions
diff --git a/plugins/rails/rails.plugin.zsh b/plugins/rails/rails.plugin.zsh
index dd8b174b2..23d15a9a1 100644
--- a/plugins/rails/rails.plugin.zsh
+++ b/plugins/rails/rails.plugin.zsh
@@ -1,20 +1,70 @@
+function _rails_command () {
+ if [ -e "script/server" ]; then
+ ruby script/$@
+ elif [ -e "script/rails" ]; then
+ ruby script/rails $@
+ elif [ -e "bin/rails" ]; then
+ bin/rails $@
+ else
+ rails $@
+ fi
+}
+
+function _rake_command () {
+ if [ -e "bin/rake" ]; then
+ bin/rake $@
+ else
+ rake $@
+ fi
+}
+
+alias rails='_rails_command'
+compdef _rails_command=rails
+
+alias rake='_rake_command'
+compdef _rake_command=rake
+
+alias devlog='tail -f log/development.log'
+alias prodlog='tail -f log/production.log'
+alias testlog='tail -f log/test.log'
+
+alias -g RED='RAILS_ENV=development'
+alias -g REP='RAILS_ENV=production'
+alias -g RET='RAILS_ENV=test'
+
+# Rails aliases
+alias rc='rails console'
+alias rd='rails destroy'
+alias rdb='rails dbconsole'
+alias rg='rails generate'
+alias rgm='rails generate migration'
+alias rp='rails plugin'
+alias ru='rails runner'
+alias rs='rails server'
+alias rsd='rails server --debugger'
+
+# Rake aliases
+alias rdm='rake db:migrate'
+alias rdr='rake db:rollback'
+alias rdc='rake db:create'
+alias rds='rake db:seed'
+alias rdd='rake db:drop'
+alias rdtc='rake db:test:clone'
+alias rdtp='rake db:test:prepare'
+
+alias rlc='rake log:clear'
+alias rn='rake notes'
+alias rr='rake routes'
+
+# legacy stuff
alias ss='thin --stats "/thin/stats" start'
alias sg='ruby script/generate'
alias sd='ruby script/destroy'
alias sp='ruby script/plugin'
alias sr='ruby script/runner'
alias ssp='ruby script/spec'
-alias rdbm='rake db:migrate'
-alias rdbtp='rake db:test:prepare'
-alias migrate='rake db:migrate && rake db:test:prepare'
alias sc='ruby script/console'
alias sd='ruby script/server --debugger'
-alias devlog='tail -f log/development.log'
-alias testlog='tail -f log/test.log'
-alias prodlog='tail -f log/production.log'
-alias -g RET='RAILS_ENV=test'
-alias -g REP='RAILS_ENV=production'
-alias -g RED='RAILS_ENV=development'
function remote_console() {
/usr/bin/env ssh $1 "( cd $2 && ruby script/console production )"