From cd4714eb7e148622dd5f80d3d82d03b0ffe13049 Mon Sep 17 00:00:00 2001 From: Peter Hoeg Date: Thu, 29 Sep 2011 12:21:56 +0800 Subject: [PATCH] add: rbenv plugin --- plugins/rbenv/rbenv.plugin.zsh | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 plugins/rbenv/rbenv.plugin.zsh diff --git a/plugins/rbenv/rbenv.plugin.zsh b/plugins/rbenv/rbenv.plugin.zsh new file mode 100644 index 000000000..af2c3706a --- /dev/null +++ b/plugins/rbenv/rbenv.plugin.zsh @@ -0,0 +1,24 @@ +alias rubies='rbenv versions' +alias gemsets='rbenv gemset list' + +# TODO: Make this usable w/o rbenv. +function gems { + local current_ruby=`rbenv active | cut -f1 -d ' '` + local current_gemset=`rbenv gemset active | grep -v 'no active gemsets'` + + 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" +} + +function rbenv_prompt_info() { + ruby_version=$(rbenv version | cut -f1 -d ' ') || return + gemset=$(rbenv gemset active 2&>/dev/null | grep -v 'no active gemsets') + if [[ -n $gemset ]] ; then + echo "${ruby_version}@${gemset}" + else + echo "${ruby_version}" + fi +}