8059c0727a09257dc387aa9ba17dc99d1842aa19

Author
Irakli Gozalishvili <rfobic@gmail.com>
Committer
Irakli Gozalishvili <rfobic@gmail.com>
Date

Message

Improving git plugin so it can display much more data. 

Diff

 1diff --git a/lib/git.zsh b/lib/git.zsh
 2index 889dd98dff0f76d07c2ccd7adcbec5bf66c66cff..57a78e27fb07fd9e4bf99fe115beb656e3bed062 100644
 3--- a/lib/git.zsh
 4+++ b/lib/git.zsh
 5@@ -11,3 +11,31 @@ parse_git_dirty () {
 6     echo "$ZSH_THEME_GIT_PROMPT_CLEAN"
 7   fi
 8 }
 9+
10+# get the status of the working tree
11+git_prompt_status() {
12+  INDEX=$(git status --porcelain 2> /dev/null)
13+  STATUS=""
14+  if $(echo "$INDEX" | grep '^?? ' &> /dev/null); then
15+    STATUS="$ZSH_THEME_GIT_PROMPT_UNTRACKED$STATUS"
16+  fi
17+  if $(echo "$INDEX" | grep '^A  ' &> /dev/null); then
18+    STATUS="$ZSH_THEME_GIT_PROMPT_ADDED$STATUS"
19+  elif $(echo "$INDEX" | grep '^M  ' &> /dev/null); then
20+    STATUS="$ZSH_THEME_GIT_PROMPT_ADDED$STATUS"
21+  fi
22+  if $(echo "$INDEX" | grep '^ M ' &> /dev/null); then
23+    STATUS="$ZSH_THEME_GIT_PROMPT_MODIFIED$STATUS"
24+  fi
25+  if $(echo "$INDEX" | grep '^R  ' &> /dev/null); then
26+    STATUS="$ZSH_THEME_GIT_PROMPT_RENAMED$STATUS"
27+  fi
28+  if $(echo "$INDEX" | grep '^ D ' &> /dev/null); then
29+    STATUS="$ZSH_THEME_GIT_PROMPT_DELETED$STATUS"
30+  fi
31+  if $(echo "$INDEX" | grep '^UU ' &> /dev/null); then
32+    STATUS="$ZSH_THEME_GIT_PROMPT_UNMERGED$STATUS"
33+  fi
34+  echo $STATUS
35+}
36+