diff options
Diffstat (limited to 'plugins/rvm/rvm.plugin.zsh')
-rw-r--r-- | plugins/rvm/rvm.plugin.zsh | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/plugins/rvm/rvm.plugin.zsh b/plugins/rvm/rvm.plugin.zsh index 24621fe0b..3bde154df 100644 --- a/plugins/rvm/rvm.plugin.zsh +++ b/plugins/rvm/rvm.plugin.zsh @@ -1,8 +1,11 @@ +fpath=($rvm_path/scripts/zsh/Completion $fpath) + alias rubies='rvm list rubies' alias gemsets='rvm gemset list' -local ruby18='ruby-1.8.7-p334' -local ruby19='ruby-1.9.2-p180' +local ruby18='ruby-1.8.7' +local ruby19='ruby-1.9.3' +local ruby20='ruby-2.0.0' function rb18 { if [ -z "$1" ]; then @@ -26,9 +29,19 @@ function rb19 { _rb19() {compadd `ls -1 $rvm_path/gems | grep "^$ruby19@" | sed -e "s/^$ruby19@//" | awk '{print $1}'`} compdef _rb19 rb19 +function rb20 { + if [ -z "$1" ]; then + rvm use "$ruby20" + else + rvm use "$ruby20@$1" + fi +} + +_rb20() {compadd `ls -1 $rvm_path/gems | grep "^$ruby20@" | sed -e "s/^$ruby20@//" | awk '{print $1}'`} +compdef _rb20 rb20 + function rvm-update { rvm get head - rvm reload # TODO: Reload rvm completion? } # TODO: Make this usable w/o rvm. @@ -37,8 +50,13 @@ function gems { local current_gemset=`rvm-prompt g` gem list $@ | sed \ - -Ee "s/\([0-9\.]+( .+)?\)/$fg[blue]&$reset_color/g" \ + -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 _rvm_completion { + source $rvm_path"/scripts/zsh/Completion/_rvm" +} +compdef _rvm_completion rvm |