prezto_config/modules/ruby/init.zsh

66 lines
1.7 KiB
Bash
Raw Normal View History

2012-02-01 05:37:51 +01:00
#
2012-06-13 03:02:14 +02:00
# Configures Ruby local gem installation, loads version managers, and defines
# aliases.
2012-02-01 05:37:51 +01:00
#
2012-06-13 03:02:14 +02:00
# Authors: Sorin Ionescu <sorin.ionescu@gmail.com>
2012-02-01 05:37:51 +01:00
#
2012-05-20 22:12:56 +02:00
# Load RVM into the shell session.
2011-08-31 05:16:15 +02:00
if [[ -s "$HOME/.rvm/scripts/rvm" ]]; then
2012-05-20 22:12:56 +02:00
# Unset AUTO_NAME_DIRS since auto adding variable-stored paths to ~ list
# conflicts with RVM.
unsetopt AUTO_NAME_DIRS
2011-08-31 05:16:15 +02:00
# Source RVM.
source "$HOME/.rvm/scripts/rvm"
2012-05-20 22:12:56 +02:00
# Load manually installed rbenv into the shell session.
elif [[ -s "$HOME/.rbenv/bin/rbenv" ]]; then
2011-08-31 05:16:15 +02:00
path=("$HOME/.rbenv/bin" $path)
eval "$(rbenv init - --no-rehash zsh)"
2012-05-20 22:12:56 +02:00
# Load package manager installed rbenv into the shell session.
elif (( $+commands[rbenv] )); then
eval "$(rbenv init - --no-rehash zsh)"
2012-05-20 22:12:56 +02:00
2014-02-02 05:37:29 +01: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"
fi
# Prepend local gems bin directories to PATH.
else
path=($HOME/.gem/ruby/*/bin(N) $path)
2011-08-31 05:16:15 +02:00
fi
# Return if requirements are not found.
if (( ! $+commands[ruby] && ! ( $+commands[rvm] || $+commands[rbenv] ) )); then
return 1
fi
2012-08-04 20:48:32 +02:00
#
# Aliases
2012-08-04 20:48:32 +02:00
#
2012-06-13 03:02:14 +02:00
2012-08-15 03:10:12 +02:00
# General
alias rb='ruby'
2012-06-13 03:02:14 +02:00
# Bundler
2012-07-23 21:00:44 +02:00
if (( $+commands[bundle] )); then
2012-08-15 03:10:12 +02:00
alias rbb='bundle'
2013-12-01 01:25:11 +01: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 03:10:12 +02:00
alias rbbI='rbbi \
2013-12-01 01:25:11 +01:00
&& bundle package \
2012-07-23 21:00:44 +02:00
&& print .bundle >>! .gitignore \
2013-11-25 22:34:11 +01:00
&& print vendor/assets >>! .gitignore \
2012-07-23 21:00:44 +02:00
&& print vendor/bundle >>! .gitignore \
&& print vendor/cache >>! .gitignore'
fi