From 015598b8a82457a03ab9d75f770bbd333599a601 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Cornell=C3=A0?= Date: Mon, 10 Oct 2016 20:33:40 +0200 Subject: [PATCH] Display suvash prompt w/o Ruby; refactor code --- themes/suvash.zsh-theme | 38 +++++++++++++++++++++----------------- 1 file changed, 21 insertions(+), 17 deletions(-) diff --git a/themes/suvash.zsh-theme b/themes/suvash.zsh-theme index c87f6455..1680973d 100644 --- a/themes/suvash.zsh-theme +++ b/themes/suvash.zsh-theme @@ -5,26 +5,30 @@ function prompt_char { } function virtualenv_info { - [ $VIRTUAL_ENV ] && echo '('`basename $VIRTUAL_ENV`') ' + [[ -n "$VIRTUAL_ENV" ]] && echo '('${VIRTUAL_ENV:t}') ' } -function collapse_pwd { - echo $(pwd | sed -e "s,^$HOME,~,") +function ruby_prompt { + if (( $+commands[rvm-prompt] )); then + print -n $ZSH_THEME_RUBY_PROMPT_PREFIX + print -n $(~/.rvm/bin/rvm-prompt) + print -n $ZSH_THEME_RUBY_PROMPT_SUFFIX + elif (( $+commands[rbenv] )); then + print -n $ZSH_THEME_RUBY_PROMPT_PREFIX + print -n $(rbenv version | sed -e "s/ (set.*$//") + print -n $ZSH_THEME_RUBY_PROMPT_SUFFIX + fi + return 0 } -if which rvm-prompt &> /dev/null; then - 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%} -$(virtualenv_info)$(prompt_char) ' -else - if which rbenv &> /dev/null; then - 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%} -$(virtualenv_info)$(prompt_char) ' - fi -fi +PROMPT='%F{magenta}%n%f at %F{yellow}%m%f in %B%F{green}%~%f%b$(git_prompt_info)$(ruby_prompt) +$(virtualenv_info) $(prompt_char) ' +ZSH_THEME_GIT_PROMPT_PREFIX=' on %F{magenta}' +ZSH_THEME_GIT_PROMPT_SUFFIX='%f' +ZSH_THEME_GIT_PROMPT_DIRTY='%F{green}!' +ZSH_THEME_GIT_PROMPT_UNTRACKED='%F{green}?' +ZSH_THEME_GIT_PROMPT_CLEAN='' -ZSH_THEME_GIT_PROMPT_PREFIX=" on %{$fg[magenta]%}" -ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" -ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[green]%}!" -ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[green]%}?" -ZSH_THEME_GIT_PROMPT_CLEAN="" +ZSH_THEME_RUBY_PROMPT_PREFIX=' using %F{red}' +ZSH_THEME_RUBY_PROMPT_SUFFIX='%f'