diff options
author | Roman Kamyk <roman.kamyk@gmail.com> | 2010-10-15 14:49:23 +0200 |
---|---|---|
committer | Roman Kamyk <roman.kamyk@gmail.com> | 2010-10-15 14:49:23 +0200 |
commit | fb6fddda37b7693c0b6f49345e25f8cac66ba9e4 (patch) | |
tree | 3bc1257f4d5403e787c6e6cacb008b49a4d9a38b /lib/git.zsh | |
parent | f294eeb57175f5ef86f903d41c84ecacd96fe00c (diff) | |
parent | dc12853b0c3e5af9e42f44cb9efdf57d44d20711 (diff) | |
download | zsh-fb6fddda37b7693c0b6f49345e25f8cac66ba9e4.tar.gz zsh-fb6fddda37b7693c0b6f49345e25f8cac66ba9e4.tar.bz2 zsh-fb6fddda37b7693c0b6f49345e25f8cac66ba9e4.zip |
Merge branch 'master' of http://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 +} |