Added more color support for git themeing

pull/3/head
Robert R Evans 2010-10-03 09:41:36 -07:00
parent 149c18fd58
commit 1f923a90ad
3 changed files with 23 additions and 6 deletions

View File

@ -8,13 +8,21 @@ export PATH=$PATH:~/.gem/ruby/1.8/bin:/opt/nginx/sbin
# Path to the bash it configuration # Path to the bash it configuration
export BASH=$HOME/.bash_it export BASH=$HOME/.bash_it
export LOAD_COLORS=$BASH/themes/base.theme.bash
# Lock and Load a custom theme file # Lock and Load a custom theme file
# location /.bash_it/themes/ # location /.bash_it/themes/
export BASH_THEME='bobby' export BASH_THEME='bobby'
# Load the color configuration file, if you want to add colors to the GIT THEME PROMPTs
source $LOAD_COLORS
# Your place for hosting Git repos. I use this for private repos. # Your place for hosting Git repos. I use this for private repos.
export GIT_HOSTING='git@git.domain.com' export GIT_HOSTING='git@git.domain.com'
export GIT_THEME_PROMPT_DIRTY=' ${RED}✗${LIGHT_GREEN}' # This shows how to use sample the colors
export GIT_THEME_PROMPT_CLEAN=' ✓'
export GIT_THEME_PROMPT_PREFIX='('
export GIT_THEME_PROMPT_SUFFIX=')'
# Set my editor and git editor # Set my editor and git editor
export EDITOR="/usr/bin/mate -w" export EDITOR="/usr/bin/mate -w"

View File

@ -17,15 +17,19 @@ ORANGE=$'\e[33;40m'
NORMAL=$'\e[00m' NORMAL=$'\e[00m'
# LIGHT COLORS # LIGHT COLORS
LIGHT_BLUE=$'\e[1;34m'
LIGHT_GREEN=$'\e[1;32m' LIGHT_GREEN=$'\e[1;32m'
LIGHT_CYAN=$'\e[1;36m'
LIGHT_RED=$'\e[1;31m' LIGHT_RED=$'\e[1;31m'
LIGHT_PURPLE=$'\e[1;35m' LIGHT_BLUE=$'\e[1;34m'
LIGHT_YELLOW=$'\e[1;33m' LIGHT_YELLOW=$'\e[1;33m'
LIGHT_PURPLE=$'\e[1;35m'
LIGHT_CYAN=$'\e[1;36m'
LIGHT_GRAY=$'\e[0;37m' LIGHT_GRAY=$'\e[0;37m'
# Stolen from Steve Losh # Stolen from Steve Losh
function prompt_char { function prompt_char {
git branch >/dev/null 2>/dev/null && echo '±' && return git branch >/dev/null 2>/dev/null && echo '±' && return
@ -34,9 +38,14 @@ function prompt_char {
} }
function parse_git_dirty { function parse_git_dirty {
[[ $(git status 2> /dev/null | tail -n1) != "nothing to commit (working directory clean)" ]] && echo "*" if [[ -n $(git status -s 2> /dev/null) ]]; then
echo "$GIT_THEME_PROMPT_DIRTY"
else
echo "$GIT_THEME_PROMPT_CLEAN"
fi
} }
function parse_git_branch { function parse_git_branch {
git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e "s/* \(.*\)/[\1$(parse_git_dirty)]/" ref=$(git symbolic-ref HEAD 2> /dev/null) || return
echo "$GIT_THEME_PROMPT_PREFIX${ref#refs/heads/}$(parse_git_dirty)$GIT_THEME_PROMPT_SUFFIX"
} }