#!/bin/bash SCM_THEME_PROMPT_DIRTY='' SCM_THEME_PROMPT_CLEAN='' SCM_GIT_CHAR='${bold_cyan}±${normal}' SCM_SVN_CHAR='${bold_cyan}⑆${normal}' SCM_HG_CHAR='${bold_red}☿${normal}' SCM_THEME_PROMPT_PREFIX="" SCM_THEME_PROMPT_SUFFIX="" RVM_THEME_PROMPT_PREFIX=" (" RVM_THEME_PROMPT_SUFFIX=")" doubletime_scm_prompt() { CHAR=$(scm_char) if [ $CHAR = $SCM_NONE_CHAR ] then return else echo "$(git_prompt_status)" fi } prompt_setter() { # Save history history -a history -c history -r PS1=" \t $(scm_char) [\[$blue\]\u@local\[$reset_color\]] \w $(doubletime_scm_prompt)\[$reset_color\] $ " PS2='> ' PS4='+ ' } PROMPT_COMMAND=prompt_setter git_prompt_status() { if [ -n "$(git status | grep 'Changes not staged' 2> /dev/null)" ]; then git_status="${bold_red}$(scm_prompt_info) ✗" elif [ -n "$(git status | grep 'Changes to be committed' 2> /dev/null)" ]; then git_status="${bold_yellow}$(scm_prompt_info) ^" elif [ -n "$(git status | grep 'Untracked files' 2> /dev/null)" ]; then git_status="${bold_cyan}$(scm_prompt_info) +" elif [ -n "$(git status | grep 'nothing to commit' 2> /dev/null)" ]; then git_status="${bold_green}$(scm_prompt_info) ${green}✓" else git_status="$(scm_prompt_info)" fi echo "[$git_status${normal}]" } # git_prompt_color() { # # if [ -n "$(git status | grep 'Changes not staged' 2> /dev/null)" ]; then # git_status='${bold_red} ✗' # elif [ -n "$(git status | grep 'Changes to be committed' 2> /dev/null)" ]; then # git_status='${bold_yellow} ^' # elif [ -n "$(git status | grep 'Untracked files' 2> /dev/null)" ]; then # git_status='${bold_cyan} +' # else # git_status='${bold_green} ✓' # fi # echo $git_status # # }