51 lines
1.4 KiB
Bash
51 lines
1.4 KiB
Bash
#!/usr/bin/env bash
|
|
SCM_GIT_CHAR=""
|
|
SCM_HG_CHAR=""
|
|
SCM_SVN_CHAR=""
|
|
SCM_NONE_CHAR=""
|
|
SCM_THEME_PROMPT_DIRTY=" ${red}â"
|
|
SCM_THEME_PROMPT_CLEAN=" ${bold_green}â"
|
|
SCM_THEME_PROMPT_PREFIX="("
|
|
SCM_THEME_PROMPT_SUFFIX="${green}) "
|
|
SCM_GIT_AHEAD_CHAR="${green}â²"
|
|
SCM_GIT_BEHIND_CHAR="${red}â¼"
|
|
|
|
GIT_THEME_PROMPT_DIRTY=" ${bold_red}â"
|
|
GIT_THEME_PROMPT_CLEAN=" ${bold_green}â"
|
|
GIT_THEME_PROMPT_PREFIX="${white}("
|
|
GIT_THEME_PROMPT_SUFFIX="${white}) "
|
|
|
|
RVM_THEME_PROMPT_PREFIX="("
|
|
RVM_THEME_PROMPT_SUFFIX=") "
|
|
|
|
VIRTUALENV_THEME_PROMPT_PREFIX="("
|
|
VIRTUALENV_THEME_PROMPT_SUFFIX=") "
|
|
|
|
RBENV_THEME_PROMPT_PREFIX="("
|
|
RBENV_THEME_PROMPT_SUFFIX=") "
|
|
|
|
RBFU_THEME_PROMPT_PREFIX="("
|
|
RBFU_THEME_PROMPT_SUFFIX=") "
|
|
|
|
function rvm_version_prompt {
|
|
if which rvm &> /dev/null; then
|
|
rvm_current=$(rvm tools identifier) || return
|
|
rvm_default=$(rvm strings default) || return
|
|
[ "$rvm_current" != "$rvm_default" ] && ( echo -e "$RVM_THEME_PROMPT_PREFIX$rvm_current$RVM_THEME_PROMPT_SUFFIX" )
|
|
fi
|
|
}
|
|
|
|
function git_prompt_info {
|
|
git_prompt_vars
|
|
echo -e "$SCM_PREFIX${yellow}$SCM_BRANCH$SCM_STATE$SCM_GIT_AHEAD$SCM_GIT_BEHIND$SCM_GIT_STASH$SCM_SUFFIX"
|
|
}
|
|
|
|
LAST_PROMPT=""
|
|
function prompt_command() {
|
|
local prompt="${green}%"
|
|
local new_PS1="${white}>$(scm_char) $(scm_prompt_info)$(ruby_version_prompt)${bold_cyan}${green}\w"
|
|
local wrap_char="\n"
|
|
PS1="${new_PS1}${wrap_char}${prompt}${reset_color} "
|
|
}
|
|
|
|
safe_append_prompt_command prompt_command |