2012-02-01 12:37:51 +08:00
|
|
|
#
|
2012-06-13 09:02:14 +08:00
|
|
|
# Configures Ruby local gem installation, loads version managers, and defines
|
|
|
|
# aliases.
|
2012-02-01 12:37:51 +08:00
|
|
|
#
|
2012-06-13 09:02:14 +08:00
|
|
|
# Authors: Sorin Ionescu <sorin.ionescu@gmail.com>
|
2012-02-01 12:37:51 +08:00
|
|
|
#
|
|
|
|
|
2012-05-21 04:12:56 +08:00
|
|
|
# Load RVM into the shell session.
|
2011-08-31 11:16:15 +08:00
|
|
|
if [[ -s "$HOME/.rvm/scripts/rvm" ]]; then
|
2012-05-21 04:12:56 +08:00
|
|
|
# Unset AUTO_NAME_DIRS since auto adding variable-stored paths to ~ list
|
|
|
|
# conflicts with RVM.
|
2011-10-11 10:16:06 +08:00
|
|
|
unsetopt AUTO_NAME_DIRS
|
2011-08-31 11:16:15 +08:00
|
|
|
|
|
|
|
# Source RVM.
|
|
|
|
source "$HOME/.rvm/scripts/rvm"
|
2012-05-21 04:12:56 +08:00
|
|
|
|
|
|
|
# Load manually installed rbenv into the shell session.
|
2012-02-10 03:17:53 +08:00
|
|
|
elif [[ -s "$HOME/.rbenv/bin/rbenv" ]]; then
|
2011-08-31 11:16:15 +08:00
|
|
|
path=("$HOME/.rbenv/bin" $path)
|
2012-12-09 04:06:19 +08:00
|
|
|
eval "$(rbenv init - --no-rehash zsh)"
|
2012-05-21 04:12:56 +08:00
|
|
|
|
|
|
|
# Load package manager installed rbenv into the shell session.
|
2012-02-10 11:31:04 +08:00
|
|
|
elif (( $+commands[rbenv] )); then
|
2012-12-09 04:06:19 +08:00
|
|
|
eval "$(rbenv init - --no-rehash zsh)"
|
2012-05-21 04:12:56 +08:00
|
|
|
|
2014-02-02 12:37:29 +08:00
|
|
|
# Load package manager installed chruby into the shell session.
|
|
|
|
elif (( $+commands[chruby-exec] )); then
|
|
|
|
source "${commands[chruby-exec]:h:h}/share/chruby/chruby.sh"
|
|
|
|
if zstyle -t ':prezto:module:ruby:chruby' auto-switch; then
|
|
|
|
source "${commands[chruby-exec]:h:h}/share/chruby/auto.sh"
|
2014-06-04 22:41:11 +08:00
|
|
|
|
|
|
|
# If a default Ruby is set, switch to it.
|
|
|
|
chruby_auto
|
2014-02-02 12:37:29 +08:00
|
|
|
fi
|
|
|
|
|
2013-08-21 19:31:38 +08:00
|
|
|
# Prepend local gems bin directories to PATH.
|
2012-02-10 03:17:53 +08:00
|
|
|
else
|
2013-08-21 19:31:38 +08:00
|
|
|
path=($HOME/.gem/ruby/*/bin(N) $path)
|
2011-08-31 11:16:15 +08:00
|
|
|
fi
|
|
|
|
|
2012-09-26 00:33:23 +08:00
|
|
|
# Return if requirements are not found.
|
|
|
|
if (( ! $+commands[ruby] && ! ( $+commands[rvm] || $+commands[rbenv] ) )); then
|
|
|
|
return 1
|
|
|
|
fi
|
|
|
|
|
2012-08-05 02:48:32 +08:00
|
|
|
#
|
2012-02-10 03:28:47 +08:00
|
|
|
# Aliases
|
2012-08-05 02:48:32 +08:00
|
|
|
#
|
2012-06-13 09:02:14 +08:00
|
|
|
|
2012-08-15 09:10:12 +08:00
|
|
|
# General
|
|
|
|
alias rb='ruby'
|
|
|
|
|
2012-06-13 09:02:14 +08:00
|
|
|
# Bundler
|
2012-07-24 03:00:44 +08:00
|
|
|
if (( $+commands[bundle] )); then
|
2012-08-15 09:10:12 +08:00
|
|
|
alias rbb='bundle'
|
2013-12-01 08:25:11 +08:00
|
|
|
alias rbbe='bundle exec'
|
|
|
|
alias rbbi='bundle install --path vendor/bundle'
|
|
|
|
alias rbbl='bundle list'
|
|
|
|
alias rbbo='bundle open'
|
|
|
|
alias rbbp='bundle package'
|
|
|
|
alias rbbu='bundle update'
|
2012-08-15 09:10:12 +08:00
|
|
|
alias rbbI='rbbi \
|
2013-12-01 08:25:11 +08:00
|
|
|
&& bundle package \
|
2012-07-24 03:00:44 +08:00
|
|
|
&& print .bundle >>! .gitignore \
|
2013-11-26 05:34:11 +08:00
|
|
|
&& print vendor/assets >>! .gitignore \
|
2012-07-24 03:00:44 +08:00
|
|
|
&& print vendor/bundle >>! .gitignore \
|
|
|
|
&& print vendor/cache >>! .gitignore'
|
|
|
|
fi
|