summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/theme-and-appearance.zsh4
-rw-r--r--plugins/rails/_rails (renamed from plugins/rails3/_rails3)17
-rw-r--r--plugins/rails/rails.plugin.zsh68
-rw-r--r--plugins/rails3/rails3.plugin.zsh36
-rw-r--r--plugins/rails4/rails4.plugin.zsh36
-rwxr-xr-xplugins/sublime/sublime.plugin.zsh38
-rw-r--r--plugins/terminalapp/terminalapp.plugin.zsh2
-rw-r--r--themes/amuse.zsh-theme21
8 files changed, 125 insertions, 97 deletions
diff --git a/lib/theme-and-appearance.zsh b/lib/theme-and-appearance.zsh
index 2677615c0..0353f9db4 100644
--- a/lib/theme-and-appearance.zsh
+++ b/lib/theme-and-appearance.zsh
@@ -11,6 +11,10 @@ then
# On NetBSD, test if "gls" (GNU ls) is installed (this one supports colors);
# otherwise, leave ls as is, because NetBSD's ls doesn't support -G
gls --color -d . &>/dev/null 2>&1 && alias ls='gls --color=tty'
+ elif [[ "$(uname -s)" == "OpenBSD" ]]; then
+ # On OpenBSD, test if "colorls" is installed (this one supports colors);
+ # otherwise, leave ls as is, because OpenBSD's ls doesn't support -G
+ colorls -G -d . &>/dev/null 2>&1 && alias ls='colorls -G'
else
ls --color -d . &>/dev/null 2>&1 && alias ls='ls --color=tty' || alias ls='ls -G'
fi
diff --git a/plugins/rails3/_rails3 b/plugins/rails/_rails
index 97915e68b..96f57ce64 100644
--- a/plugins/rails3/_rails3
+++ b/plugins/rails/_rails
@@ -1,10 +1,6 @@
#compdef rails
#autoload
-# rails 3 zsh completion, based on homebrew completion
-# Extracted from https://github.com/robbyrussell/oh-my-zsh/blob/30620d463850c17f86e7a56fbf6a8b5e793a4e07/plugins/rails3/_rails3
-# Published by Christopher Chow
-
local -a _1st_arguments
_1st_arguments=(
'generate:Generate new code (short-cut alias: "g")'
@@ -14,14 +10,20 @@ _1st_arguments=(
'new:Create a new Rails application. "rails new my_app" creates a new application called MyApp in "./my_app"'
'application:Generate the Rails application code'
'destroy:Undo code generated with "generate"'
+
'benchmarker:See how fast a piece of code runs'
'profiler:Get profile information from a piece of code'
'plugin:Install a plugin'
+
+ 'plugin new:Generates skeleton for developing a Rails plugin'
+ 'runner:Run a piece of code in the application environment (short-cut alias: "r")'
)
_rails_generate_arguments() {
generate_arguments=(
+ assets
controller
+ decorator
generator
helper
integration_test
@@ -36,9 +38,11 @@ _rails_generate_arguments() {
scaffold_controller
session_migration
stylesheets
+ task
)
}
+
_arguments \
'(--version)--version[show version]' \
'(--help)--help[show help]' \
@@ -50,7 +54,10 @@ if (( CURRENT == 1 )); then
fi
case "$words[1]" in
- generate)
+ g|generate)
+ _rails_generate_arguments
+ _wanted generate_arguments expl 'all generate' compadd -a generate_arguments ;;
+ d|destroy)
_rails_generate_arguments
_wanted generate_arguments expl 'all generate' compadd -a generate_arguments ;;
esac
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 )"
diff --git a/plugins/rails3/rails3.plugin.zsh b/plugins/rails3/rails3.plugin.zsh
index b53d18d08..261b92108 100644
--- a/plugins/rails3/rails3.plugin.zsh
+++ b/plugins/rails3/rails3.plugin.zsh
@@ -1,32 +1,4 @@
-# Rails 3 aliases, backwards-compatible with Rails 2.
-
-function _rails_command () {
- if [ -e "script/server" ]; then
- ruby script/$@
- else
- if [ -e "bin/rails" ]; then
- bin/rails $@
- else
- rails $@
- fi
- fi
-}
-
-alias rc='_rails_command console'
-alias rd='_rails_command destroy'
-alias rdb='_rails_command dbconsole'
-alias rdbm='rake db:migrate db:test:clone'
-alias rg='_rails_command generate'
-alias rgm='_rails_command generate migration'
-alias rp='_rails_command plugin'
-alias ru='_rails_command runner'
-alias rs='_rails_command server'
-alias rsd='_rails_command server --debugger'
-alias devlog='tail -f log/development.log'
-alias testlog='tail -f log/test.log'
-alias prodlog='tail -f log/production.log'
-alias rdm='rake db:migrate'
-alias rdr='rake db:rollback'
-alias -g RET='RAILS_ENV=test'
-alias -g REP='RAILS_ENV=production'
-alias -g RED='RAILS_ENV=development'
+echo "It looks like you have been using the 'rails3' plugin,"
+echo "which has been deprecated in favor of a newly consolidated 'rails' plugin."
+echo "You will want to modify your ~/.zshrc configuration to begin using it."
+echo "Learn more at https://github.com/robbyrussell/oh-my-zsh/pull/2240"
diff --git a/plugins/rails4/rails4.plugin.zsh b/plugins/rails4/rails4.plugin.zsh
index cb6cf816d..5452c242c 100644
--- a/plugins/rails4/rails4.plugin.zsh
+++ b/plugins/rails4/rails4.plugin.zsh
@@ -1,32 +1,4 @@
-# Rails 4 aliases
-
-function _rails_command () {
- if [ -e "script/server" ]; then
- ruby script/$@
- elif [ -e "script/rails" ]; then
- ruby script/rails $@
- else
- ruby bin/rails $@
- fi
-}
-
-alias rc='_rails_command console'
-alias rd='_rails_command destroy'
-alias rdb='_rails_command dbconsole'
-alias rdbm='rake db:migrate db:test:clone'
-alias rg='_rails_command generate'
-alias rgm='_rails_command generate migration'
-alias rp='_rails_command plugin'
-alias ru='_rails_command runner'
-alias rs='_rails_command server'
-alias rsd='_rails_command server --debugger'
-alias devlog='tail -f log/development.log'
-alias testlog='tail -f log/test.log'
-alias prodlog='tail -f log/production.log'
-alias rdm='rake db:migrate'
-alias rdc='rake db:create'
-alias rdr='rake db:rollback'
-alias rds='rake db:seed'
-alias rlc='rake log:clear'
-alias rn='rake notes'
-alias rr='rake routes'
+echo "It looks like you have been using the 'rails4' plugin,"
+echo "which has been deprecated in favor of a newly consolidated 'rails' plugin."
+echo "You will want to modify your ~/.zshrc configuration to begin using it."
+echo "Learn more at https://github.com/robbyrussell/oh-my-zsh/pull/2240"
diff --git a/plugins/sublime/sublime.plugin.zsh b/plugins/sublime/sublime.plugin.zsh
index 72f56754c..566279183 100755
--- a/plugins/sublime/sublime.plugin.zsh
+++ b/plugins/sublime/sublime.plugin.zsh
@@ -2,30 +2,32 @@
local _sublime_darwin_paths > /dev/null 2>&1
_sublime_darwin_paths=(
- "/usr/local/bin/subl"
- "$HOME/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl"
- "$HOME/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl"
- "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl"
- "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl"
+ "/usr/local/bin/subl"
+ "$HOME/Applications/Sublime Text 3.app/Contents/SharedSupport/bin/subl"
+ "$HOME/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl"
+ "$HOME/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl"
+ "/Applications/Sublime Text 3.app/Contents/SharedSupport/bin/subl"
+ "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl"
+ "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl"
)
if [[ $('uname') == 'Linux' ]]; then
- if [ -f '/usr/bin/sublime_text' ]; then
- st_run() { nohup /usr/bin/sublime_text $@ > /dev/null & }
- else
- st_run() { nohup /usr/bin/sublime-text $@ > /dev/null & }
- fi
- alias st=st_run
+ if [ -f '/usr/bin/sublime_text' ]; then
+ st_run() { nohup /usr/bin/sublime_text $@ > /dev/null & }
+ else
+ st_run() { nohup /usr/bin/sublime-text $@ > /dev/null & }
+ fi
+ alias st=st_run
elif [[ $('uname') == 'Darwin' ]]; then
- for _sublime_path in $_sublime_darwin_paths; do
- if [[ -a $_sublime_path ]]; then
- alias subl="'$_sublime_path'"
- alias st=subl
- break
- fi
- done
+ for _sublime_path in $_sublime_darwin_paths; do
+ if [[ -a $_sublime_path ]]; then
+ alias subl="'$_sublime_path'"
+ alias st=subl
+ break
+ fi
+ done
fi
alias stt='st .'
diff --git a/plugins/terminalapp/terminalapp.plugin.zsh b/plugins/terminalapp/terminalapp.plugin.zsh
index 2249b1e2f..6e47ee188 100644
--- a/plugins/terminalapp/terminalapp.plugin.zsh
+++ b/plugins/terminalapp/terminalapp.plugin.zsh
@@ -32,7 +32,7 @@ if [[ "$TERM_PROGRAM" == "Apple_Terminal" ]] && [[ -z "$INSIDE_EMACS" ]]; then
# Register the function so it is called whenever the working
# directory changes.
autoload add-zsh-hook
- add-zsh-hook chpwd update_terminal_cwd
+ add-zsh-hook precmd update_terminal_cwd
# Tell the terminal about the initial directory.
update_terminal_cwd
diff --git a/themes/amuse.zsh-theme b/themes/amuse.zsh-theme
new file mode 100644
index 000000000..548f6d39d
--- /dev/null
+++ b/themes/amuse.zsh-theme
@@ -0,0 +1,21 @@
+# vim:ft=zsh ts=2 sw=2 sts=2
+
+rvm_current() {
+ rvm current 2>/dev/null
+}
+
+rbenv_version() {
+ rbenv version 2>/dev/null | awk '{print $1}'
+}
+
+PROMPT='
+%{$fg_bold[green]%}${PWD/#$HOME/~}%{$reset_color%}$(git_prompt_info) ⌚ %{$fg_bold[red]%}%*%{$reset_color%}
+$ '
+
+ZSH_THEME_GIT_PROMPT_PREFIX=" on %{$fg[magenta]%}⭠ "
+ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"
+ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}!"
+ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[green]%}?"
+ZSH_THEME_GIT_PROMPT_CLEAN=""
+
+RPROMPT='%{$fg_bold[red]%}$(rbenv_version)%{$reset_color%}'