Browse code

Merge pull request #860 from sbfaulkner/rbenv-support-for-themes

adding rbenv support to all the rvm themes

Robby Russell authored on 26/01/2012 at 02:14:29
Showing 17 changed files
... ...
@@ -1,7 +1,14 @@
1 1
 
2 2
 local user='%{$fg[magenta]%}%n@%{$fg[magenta]%}%m%{$reset_color%}'
3 3
 local pwd='%{$fg[blue]%}%~%{$reset_color%}'
4
-local rvm='%{$fg[green]%}‹$(rvm-prompt i v g)›%{$reset_color%}'
4
+local rvm=''
5
+if which rvm-prompt &> /dev/null; then
6
+  rvm='%{$fg[green]%}‹$(rvm-prompt i v g)›%{$reset_color%}'
7
+else
8
+  if which rbenv &> /dev/null; then
9
+    rvm='%{$fg[green]%}‹$(rbenv version | sed -e "s/ (set.*$//")›%{$reset_color%}'
10
+  fi
11
+fi
5 12
 local return_code='%(?..%{$fg[red]%}%? ↵%{$reset_color%})'
6 13
 local git_branch='$(git_prompt_status)%{$reset_color%}$(git_prompt_info)%{$reset_color%}'
7 14
 
... ...
@@ -19,4 +26,3 @@ ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[cyan]%} ✭"
19 19
 
20 20
 PROMPT="${user} ${pwd}$ "
21 21
 RPROMPT="${return_code} ${git_branch} ${rvm}"
22
-
... ...
@@ -3,7 +3,14 @@ local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})"
3 3
 
4 4
 local user_host='%{$terminfo[bold]$fg[green]%}%n@%m%{$reset_color%}'
5 5
 local current_dir='%{$terminfo[bold]$fg[blue]%} %~%{$reset_color%}'
6
-local rvm_ruby='%{$fg[red]%}‹$(rvm-prompt i v g)›%{$reset_color%}'
6
+local rvm_ruby=''
7
+if which rvm-prompt &> /dev/null; then
8
+  rvm_ruby='%{$fg[red]%}‹$(rvm-prompt i v g)›%{$reset_color%}'
9
+else
10
+  if which rbenv &> /dev/null; then
11
+    rvm_ruby='%{$fg[red]%}‹$(rbenv version | sed -e "s/ (set.*$//")›%{$reset_color%}'
12
+  fi
13
+fi
7 14
 local git_branch='$(git_prompt_info)%{$reset_color%}'
8 15
 
9 16
 PROMPT="╭─${user_host} ${current_dir} ${rvm_ruby} ${git_branch}
... ...
@@ -29,7 +29,13 @@ ZSH_THEME_GIT_PROMPT_DIRTY=" $CRUNCH_GIT_DIRTY_COLOR✗"
29 29
 
30 30
 # Our elements:
31 31
 CRUNCH_TIME_="$CRUNCH_BRACKET_COLOR{$CRUNCH_TIME_COLOR%T$CRUNCH_BRACKET_COLOR}%{$reset_color%}"
32
-CRUNCH_RVM_="$CRUNCH_BRACKET_COLOR"["$CRUNCH_RVM_COLOR\${\$(~/.rvm/bin/rvm-prompt i v g)#ruby-}$CRUNCH_BRACKET_COLOR"]"%{$reset_color%}"
32
+if which rvm-prompt &> /dev/null; then
33
+  CRUNCH_RVM_="$CRUNCH_BRACKET_COLOR"["$CRUNCH_RVM_COLOR\${\$(~/.rvm/bin/rvm-prompt i v g)#ruby-}$CRUNCH_BRACKET_COLOR"]"%{$reset_color%}"
34
+else
35
+  if which rbenv &> /dev/null; then
36
+    CRUNCH_RVM_="$CRUNCH_BRACKET_COLOR"["$CRUNCH_RVM_COLOR\${\$(rbenv version | sed -e 's/ (set.*$//' -e 's/^ruby-//')}$CRUNCH_BRACKET_COLOR"]"%{$reset_color%}"
37
+  fi
38
+fi
33 39
 CRUNCH_DIR_="$CRUNCH_DIR_COLOR%~\$(git_prompt_info) "
34 40
 CRUNCH_PROMPT="$CRUNCH_BRACKET_COLOR➭ "
35 41
 
... ...
@@ -3,7 +3,13 @@
3 3
 # Grab the current date (%D) and time (%T) wrapped in {}: {%D %T}
4 4
 DALLAS_CURRENT_TIME_="%{$fg[white]%}{%{$fg[yellow]%}%D %T%{$fg[white]%}}%{$reset_color%}"
5 5
 # Grab the current version of ruby in use (via RVM): [ruby-1.8.7]
6
-DALLAS_CURRENT_RUBY_="%{$fg[white]%}[%{$fg[magenta]%}\$(~/.rvm/bin/rvm-prompt i v)%{$fg[white]%}]%{$reset_color%}"
6
+if which rvm-prompt &> /dev/null; then
7
+  DALLAS_CURRENT_RUBY_="%{$fg[white]%}[%{$fg[magenta]%}\$(~/.rvm/bin/rvm-prompt i v)%{$fg[white]%}]%{$reset_color%}"
8
+else
9
+  if which rbenv &> /dev/null; then
10
+    DALLAS_CURRENT_RUBY_="%{$fg[white]%}[%{$fg[magenta]%}\$(rbenv version | sed -e 's/ (set.*$//')%{$fg[white]%}]%{$reset_color%}"
11
+  fi
12
+fi
7 13
 # Grab the current machine name: muscato
8 14
 DALLAS_CURRENT_MACH_="%{$fg[green]%}%m%{$fg[white]%}:%{$reset_color%}"
9 15
 # Grab the current filepath, use shortcuts: ~/Desktop
... ...
@@ -1,6 +1,10 @@
1 1
 #RVM settings
2 2
 if [[ -s ~/.rvm/scripts/rvm ]] ; then 
3 3
   RPS1="%{$fg[yellow]%}rvm:%{$reset_color%}%{$fg[red]%}\$(~/.rvm/bin/rvm-prompt)%{$reset_color%} $EPS1"
4
+else
5
+  if which rbenv &> /dev/null; then
6
+    RPS1="%{$fg[yellow]%}rbenv:%{$reset_color%}%{$fg[red]%}\$(rbenv version | sed -e 's/ (set.*$//')%{$reset_color%} $EPS1"
7
+  fi
4 8
 fi
5 9
 
6 10
 ZSH_THEME_GIT_PROMPT_PREFIX="%{$reset_color%}%{$fg[green]%}["
... ...
@@ -25,7 +25,14 @@ function box_name {
25 25
 }
26 26
 
27 27
 
28
-local rvm_ruby='‹$(rvm-prompt i v g)›%{$reset_color%}'
28
+local rvm_ruby=''
29
+if which rvm-prompt &> /dev/null; then
30
+  rvm_ruby='‹$(rvm-prompt i v g)›%{$reset_color%}'
31
+else
32
+  if which rbenv &> /dev/null; then
33
+    rvm_ruby='‹$(rbenv version | sed -e "s/ (set.*$//")›%{$reset_color%}'
34
+  fi
35
+fi
29 36
 local current_dir='${PWD/#$HOME/~}'
30 37
 local git_info='$(git_prompt_info)'
31 38
 
... ...
@@ -15,7 +15,11 @@ git_custom_status() {
15 15
 if [[ -s ~/.rvm/scripts/rvm ]] ; then 
16 16
   RPS1='$(git_custom_status)%{$fg[red]%}[`~/.rvm/bin/rvm-prompt`]%{$reset_color%} $EPS1'
17 17
 else
18
-  RPS1='$(git_custom_status) $EPS1'
18
+  if which rbenv &> /dev/null; then
19
+    RPS1='$(git_custom_status)%{$fg[red]%}[`rbenv version | sed -e "s/ (set.*$//"`]%{$reset_color%} $EPS1'
20
+  else
21
+    RPS1='$(git_custom_status) $EPS1'
22
+  fi
19 23
 fi
20 24
 
21 25
 PROMPT='%{$fg[cyan]%}[%~% ]%(?.%{$fg[green]%}.%{$fg[red]%})%B$%b '
... ...
@@ -10,7 +10,7 @@ function theme_precmd {
10 10
     PR_PWDLEN=""
11 11
 
12 12
     local promptsize=${#${(%):---(%n@%m:%l)---()--}}
13
-    local rubyprompt=`rvm_prompt_info`
13
+    local rubyprompt=`rvm_prompt_info || rbenv_prompt_info`
14 14
     local rubypromptsize=${#${rubyprompt}}
15 15
     local pwdsize=${#${(%):-%~}}
16 16
 
... ...
@@ -113,7 +113,7 @@ setprompt () {
113 113
     PROMPT='$PR_SET_CHARSET$PR_STITLE${(e)PR_TITLEBAR}\
114 114
 $PR_CYAN$PR_SHIFT_IN$PR_ULCORNER$PR_HBAR$PR_SHIFT_OUT$PR_GREY(\
115 115
 $PR_GREEN%$PR_PWDLEN<...<%~%<<\
116
-$PR_GREY)`rvm_prompt_info`$PR_CYAN$PR_SHIFT_IN$PR_HBAR$PR_HBAR${(e)PR_FILLBAR}$PR_HBAR$PR_SHIFT_OUT$PR_GREY(\
116
+$PR_GREY)`rvm_prompt_info || rbenv_prompt_info`$PR_CYAN$PR_SHIFT_IN$PR_HBAR$PR_HBAR${(e)PR_FILLBAR}$PR_HBAR$PR_SHIFT_OUT$PR_GREY(\
117 117
 $PR_CYAN%(!.%SROOT%s.%n)$PR_GREY@$PR_GREEN%m:%l\
118 118
 $PR_GREY)$PR_CYAN$PR_SHIFT_IN$PR_HBAR$PR_URCORNER$PR_SHIFT_OUT\
119 119
 
... ...
@@ -10,7 +10,7 @@ function josh_prompt {
10 10
   prompt=" "
11 11
 
12 12
   branch=$(current_branch)
13
-  ruby_version=$(rvm_prompt_info)
13
+  ruby_version=$(rvm_prompt_info || rbenv_prompt_info)
14 14
   path_size=${#PWD}
15 15
   branch_size=${#branch}
16 16
   ruby_size=${#ruby_version}
... ...
@@ -31,7 +31,7 @@ function josh_prompt {
31 31
     prompt=" $prompt"
32 32
   done
33 33
   
34
-  prompt="%{%F{green}%}$PWD$prompt%{%F{red}%}$(rvm_prompt_info)%{$reset_color%} $(git_prompt_info)"
34
+  prompt="%{%F{green}%}$PWD$prompt%{%F{red}%}$(rvm_prompt_info || rbenv_prompt_info)%{$reset_color%} $(git_prompt_info)"
35 35
   
36 36
   echo $prompt
37 37
 }
... ...
@@ -1,7 +1,14 @@
1 1
 # ZSH Theme - Preview: http://gyazo.com/8becc8a7ed5ab54a0262a470555c3eed.png
2 2
 local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})"
3 3
 
4
-PROMPT='%{$fg[green]%}%~%{$reset_color%} %{$fg[red]%}‹$(~/.rvm/bin/rvm-prompt i v)› %{$reset_color%} $(git_prompt_info)%{$reset_color%}%B$%b '
4
+if which rvm-prompt &> /dev/null; then
5
+  PROMPT='%{$fg[green]%}%~%{$reset_color%} %{$fg[red]%}‹$(~/.rvm/bin/rvm-prompt i v)› %{$reset_color%} $(git_prompt_info)%{$reset_color%}%B$%b '
6
+else
7
+  if which rbenv &> /dev/null; then
8
+    PROMPT='%{$fg[green]%}%~%{$reset_color%} %{$fg[red]%}‹$(rbenv version | sed -e "s/ (set.*$//")› %{$reset_color%} $(git_prompt_info)%{$reset_color%}%B$%b '
9
+  fi
10
+fi
11
+
5 12
 RPS1="${return_code}"
6 13
 
7 14
 ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[yellow]%}‹"
... ...
@@ -1,7 +1,13 @@
1 1
 # ZSH Theme - Preview: http://gyazo.com/8becc8a7ed5ab54a0262a470555c3eed.png
2 2
 local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})"
3 3
 
4
-PROMPT='%{$fg[green]%}%~%{$reset_color%} %{$fg[red]%}‹$(~/.rvm/bin/rvm-prompt i v)› %{$reset_color%} $(git_prompt_info)%{$reset_color%}%B$%b '
4
+if which rvm-prompt &> /dev/null; then
5
+  PROMPT='%{$fg[green]%}%~%{$reset_color%} %{$fg[red]%}‹$(~/.rvm/bin/rvm-prompt i v)› %{$reset_color%} $(git_prompt_info)%{$reset_color%}%B$%b '
6
+else
7
+  if which rbenv &> /dev/null; then
8
+    PROMPT='%{$fg[green]%}%~%{$reset_color%} %{$fg[red]%}‹$(rbenv version | sed -e "s/ (set.*$//")› %{$reset_color%} $(git_prompt_info)%{$reset_color%}%B$%b '
9
+  fi
10
+fi
5 11
 RPS1="${return_code}"
6 12
 
7 13
 ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[yellow]%}‹"
... ...
@@ -1,7 +1,7 @@
1 1
 local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})"
2 2
 local user_host='%{$terminfo[bold]$fg[green]%}%n@%m%{$reset_color%}'
3 3
 local current_dir='%{$terminfo[bold]$fg[blue]%}%~%{$reset_color%}'
4
-local rvm_ruby='%{$fg[red]%}$(rvm_prompt_info)%{$reset_color%}'
4
+local rvm_ruby='%{$fg[red]%}$(rvm_prompt_info || rbenv_prompt_info)%{$reset_color%}'
5 5
 local git_branch='%{$fg[blue]%}$(git_prompt_info)%{$reset_color%}'
6 6
 
7 7
 PROMPT="${user_host}:${current_dir} ${rvm_ruby}
... ...
@@ -4,6 +4,10 @@
4 4
 # Get the current ruby version in use with RVM:
5 5
 if [ -e ~/.rvm/bin/rvm-prompt ]; then
6 6
     RUBY_PROMPT_="%{$fg_bold[blue]%}rvm:(%{$fg[green]%}\$(~/.rvm/bin/rvm-prompt s i v g)%{$fg_bold[blue]%})%{$reset_color%} "
7
+else
8
+  if which rbenv &> /dev/null; then
9
+    RUBY_PROMPT_="%{$fg_bold[blue]%}rvm:(%{$fg[green]%}\$(rbenv version | sed -e 's/ (set.*$//')%{$fg_bold[blue]%})%{$reset_color%} "
10
+  fi
7 11
 fi
8 12
 
9 13
 # Get the host name (first 4 chars)
... ...
@@ -1,5 +1,11 @@
1 1
 # Grab the current version of ruby in use (via RVM): [ruby-1.8.7]
2
-JARIN_CURRENT_RUBY_="%{$fg[white]%}[%{$fg[red]%}\$(~/.rvm/bin/rvm-prompt i v)%{$fg[white]%}]%{$reset_color%}"
2
+if which rvm-prompt &> /dev/null; then
3
+  JARIN_CURRENT_RUBY_="%{$fg[white]%}[%{$fg[red]%}\$(~/.rvm/bin/rvm-prompt i v)%{$fg[white]%}]%{$reset_color%}"
4
+else
5
+  if which rbenv &> /dev/null; then
6
+    JARIN_CURRENT_RUBY_="%{$fg[white]%}[%{$fg[red]%}\$(rbenv version | sed -e 's/ (set.*$//')%{$fg[white]%}]%{$reset_color%}"
7
+  fi
8
+fi
3 9
 
4 10
 # Grab the current filepath, use shortcuts: ~/Desktop
5 11
 # Append the current git branch, if in a git repository
... ...
@@ -12,8 +12,15 @@ function collapse_pwd {
12 12
     echo $(pwd | sed -e "s,^$HOME,~,")
13 13
 }
14 14
 
15
-PROMPT='%{$fg[magenta]%}%n%{$reset_color%} at %{$fg[yellow]%}%m%{$reset_color%} in %{$fg_bold[green]%}${PWD/#$HOME/~}%{$reset_color%}$(git_prompt_info) using %{$reset_color%}%{$fg[red]%}$(~/.rvm/bin/rvm-prompt)%{$reset_color%} 
15
+if which rvm-prompt &> /dev/null; then
16
+  PROMPT='%{$fg[magenta]%}%n%{$reset_color%} at %{$fg[yellow]%}%m%{$reset_color%} in %{$fg_bold[green]%}${PWD/#$HOME/~}%{$reset_color%}$(git_prompt_info) using %{$reset_color%}%{$fg[red]%}$(~/.rvm/bin/rvm-prompt)%{$reset_color%} 
16 17
 $(virtualenv_info)$(prompt_char) '
18
+else
19
+  if which rbenv &> /dev/null; then
20
+    PROMPT='%{$fg[magenta]%}%n%{$reset_color%} at %{$fg[yellow]%}%m%{$reset_color%} in %{$fg_bold[green]%}${PWD/#$HOME/~}%{$reset_color%}$(git_prompt_info) using %{$reset_color%}%{$fg[red]%}$(rbenv version | sed -e "s/ (set.*$//")%{$reset_color%} 
21
+$(virtualenv_info)$(prompt_char) '
22
+  fi
23
+fi
17 24
 
18 25
 
19 26
 ZSH_THEME_GIT_PROMPT_PREFIX=" on %{$fg[magenta]%}"
... ...
@@ -2,4 +2,4 @@ ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[blue]%}["
2 2
 ZSH_THEME_GIT_PROMPT_SUFFIX="]%{$reset_color%} "
3 3
 ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg_bold[red]%} x%{$fg_bold[blue]%}"
4 4
 
5
-PROMPT='%{$(git_prompt_info)%}%{$fg_bold[green]%}{%{$(rvm current)%}}%{$reset_color%} %{$fg[cyan]%}%c%{$reset_color%} '
5
+PROMPT='%{$(git_prompt_info)%}%{$fg_bold[green]%}{%{$(rvm current 2>/dev/null || rbenv version-name 2>/dev/null)%}}%{$reset_color%} %{$fg[cyan]%}%c%{$reset_color%} '
... ...
@@ -1,5 +1,13 @@
1 1
 PROMPT='%{$fg_bold[green]%}%p %{$fg[cyan]%}%c%{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}'
2
-RPROMPT='%{$reset_color%} %{$fg[red]%}$(~/.rvm/bin/rvm-prompt i v g) %{$reset_color%}'
2
+
3
+if which rvm-prompt &> /dev/null; then
4
+  RPROMPT='%{$reset_color%} %{$fg[red]%}$(~/.rvm/bin/rvm-prompt i v g) %{$reset_color%}'
5
+else
6
+  if which rbenv &> /dev/null; then
7
+    RPROMPT='%{$reset_color%} %{$fg[red]%}$(rbenv version | sed -e "s/ (set.*$//") %{$reset_color%}'
8
+  fi
9
+fi
10
+
3 11
 
4 12
 ZSH_THEME_GIT_PROMPT_PREFIX=" (%{$fg[red]%}"
5 13
 ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"