diff options
author | NanoTech <nanotech008@gmail.com> | 2010-10-19 15:39:27 -0600 |
---|---|---|
committer | NanoTech <nanotech008@gmail.com> | 2010-10-19 15:39:27 -0600 |
commit | 68f893cbe05e5a84adf7f26a0ed7492af6e03def (patch) | |
tree | 81b436518d3552f47a02f44963e84700627d1bec /lib/git.zsh | |
parent | 02c5fd5bdd0d37bb0e1cb19ad058154f5b7d96a7 (diff) | |
parent | dc12853b0c3e5af9e42f44cb9efdf57d44d20711 (diff) | |
download | zsh-68f893cbe05e5a84adf7f26a0ed7492af6e03def.tar.gz zsh-68f893cbe05e5a84adf7f26a0ed7492af6e03def.tar.bz2 zsh-68f893cbe05e5a84adf7f26a0ed7492af6e03def.zip |
Merge branch 'master' of git://github.com/robbyrussell/oh-my-zsh
Diffstat (limited to 'lib/git.zsh')
-rw-r--r-- | lib/git.zsh | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/lib/git.zsh b/lib/git.zsh index 889dd98df..75fdc1f9c 100644 --- a/lib/git.zsh +++ b/lib/git.zsh @@ -11,3 +11,30 @@ parse_git_dirty () { echo "$ZSH_THEME_GIT_PROMPT_CLEAN" fi } + +# get the status of the working tree +git_prompt_status() { + INDEX=$(git status --porcelain 2> /dev/null) + STATUS="" + if $(echo "$INDEX" | grep '^?? ' &> /dev/null); then + STATUS="$ZSH_THEME_GIT_PROMPT_UNTRACKED$STATUS" + fi + if $(echo "$INDEX" | grep '^A ' &> /dev/null); then + STATUS="$ZSH_THEME_GIT_PROMPT_ADDED$STATUS" + elif $(echo "$INDEX" | grep '^M ' &> /dev/null); then + STATUS="$ZSH_THEME_GIT_PROMPT_ADDED$STATUS" + fi + if $(echo "$INDEX" | grep '^ M ' &> /dev/null); then + STATUS="$ZSH_THEME_GIT_PROMPT_MODIFIED$STATUS" + fi + if $(echo "$INDEX" | grep '^R ' &> /dev/null); then + STATUS="$ZSH_THEME_GIT_PROMPT_RENAMED$STATUS" + fi + if $(echo "$INDEX" | grep '^ D ' &> /dev/null); then + STATUS="$ZSH_THEME_GIT_PROMPT_DELETED$STATUS" + fi + if $(echo "$INDEX" | grep '^UU ' &> /dev/null); then + STATUS="$ZSH_THEME_GIT_PROMPT_UNMERGED$STATUS" + fi + echo $STATUS +} |