summaryrefslogtreecommitdiff
path: root/plugins/rvm
diff options
context:
space:
mode:
authorAndrew Hodges <betawaffle@gmail.com>2011-05-28 13:14:42 -0400
committerAndrew Hodges <betawaffle@gmail.com>2011-05-28 13:14:42 -0400
commit6b86636413c3b9b98d723ea77058db6c283325e4 (patch)
tree3b16502031dbdc4f5751ffd77c206be1b1944508 /plugins/rvm
parentab2a7b51a8c3ead55a272fba58232d0823e519a2 (diff)
parent18bfb14a2f774b115c8634cdaa3864cbdee91a94 (diff)
downloadzsh-6b86636413c3b9b98d723ea77058db6c283325e4.tar.gz
zsh-6b86636413c3b9b98d723ea77058db6c283325e4.tar.bz2
zsh-6b86636413c3b9b98d723ea77058db6c283325e4.zip
Merge branch 'plugins'
Diffstat (limited to 'plugins/rvm')
-rw-r--r--plugins/rvm/rvm.plugin.zsh49
1 files changed, 49 insertions, 0 deletions
diff --git a/plugins/rvm/rvm.plugin.zsh b/plugins/rvm/rvm.plugin.zsh
index ef934d547..8a3ec788a 100644
--- a/plugins/rvm/rvm.plugin.zsh
+++ b/plugins/rvm/rvm.plugin.zsh
@@ -1,3 +1,52 @@
fpath=($ZSH/plugins/rvm $fpath)
autoload -U compinit
compinit -i
+
+alias rubies='rvm list rubies'
+alias gemsets='rvm gemset list'
+
+local ruby18='ruby-1.8.7-p334'
+local ruby19='ruby-1.9.2-p180'
+
+function rb18 {
+ if [ -z "$1" ]; then
+ rvm use "$ruby18"
+ else
+ rvm use "$ruby18@$1"
+ fi
+}
+
+_rb18() {compadd `ls -1 $rvm_path/gems | grep "^$ruby18@" | sed -e "s/^$ruby18@//" | awk '{print $1}'`}
+compdef _rb18 rb18
+
+function rb19 {
+ if [ -z "$1" ]; then
+ rvm use "$ruby19"
+ else
+ rvm use "$ruby19@$1"
+ fi
+}
+
+_rb19() {compadd `ls -1 $rvm_path/gems | grep "^$ruby19@" | sed -e "s/^$ruby19@//" | awk '{print $1}'`}
+compdef _rb19 rb19
+
+function rvm-update {
+ rvm get head
+ rvm reload # TODO: Reload rvm completion?
+}
+
+function rvm-link-completion {
+ ln -s "$rvm_path/scripts/zsh/Completion/_rvm" "$ZSH/plugins/rvm/_rvm.official"
+}
+
+# TODO: Make this usable w/o rvm.
+function gems {
+ local current_ruby=`rvm-prompt i v p`
+ local current_gemset=`rvm-prompt g`
+
+ gem list $@ | sed \
+ -Ee "s/\([0-9\.]+( .+)?\)/$fg[blue]&$reset_color/g" \
+ -Ee "s|$(echo $rvm_path)|$fg[magenta]\$rvm_path$reset_color|g" \
+ -Ee "s/$current_ruby@global/$fg[yellow]&$reset_color/g" \
+ -Ee "s/$current_ruby$current_gemset$/$fg[green]&$reset_color/g"
+}