summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhugues <hugues@a0e5b806-a6f9-0310-978d-cbce73f8a913>2007-07-25 10:42:42 +0000
committerHugues Hiegel <hugues@hiegel.fr>2008-03-07 14:15:15 +0100
commit5efc79402925115905b82e18fedf59d763f08a03 (patch)
tree4ce841b944ebecad0988d0dd53c679c0a767828f
parent3404a0365568df2d290145a674762174002b88a5 (diff)
Couleurs branche git / révision zsh changeante selon statut
git-svn-id: svn+ssh://hugues@maison/opt/svn/private/hugues@504 a0e5b806-a6f9-0310-978d-cbce73f8a913
-rw-r--r--11_Prompts.zsh5
1 files changed, 3 insertions, 2 deletions
diff --git a/11_Prompts.zsh b/11_Prompts.zsh
index 4835412..3a58059 100644
--- a/11_Prompts.zsh
+++ b/11_Prompts.zsh
@@ -89,8 +89,9 @@ precmd ()
DATE=$(date "+%H:%M:%S-%d/%m/%Y")
ERROR=%(? "---" "%3<<"$C_$COLOR_BAR$_C"--"$C_$COLOR_ERRR$_C"%?%<<")
- GITBRANCH=${$(git branch 2>&-):+$C_$COLOR_DOUBLEDOT$_C:$C_$COLOR_BRANCH$_C$(git branch | grep '^\* ' | cut -c3-)}
- if [ $(svn status | grep '^M' | wc -l) -gt 0 ] ; then COLOR_STATUS=$COLOR_BRANCH\;$UNDERLINE ; else COLOR_STATUS=$COLOR_BRANCH ; fi
+ if [ $(git status 2>&- | grep -E '^# ([[:alpha:]]+ )+but not( [[:alpha:]]+)+:$' | wc -l) -gt 0 ] ; then COLOR_STATUS=$COLOR_BRANCH\;$YELLOW ; else COLOR_STATUS=$COLOR_BRANCH ; fi
+ GITBRANCH=${$(git branch 2>&-):+$C_$COLOR_DOUBLEDOT$_C:$C_$COLOR_STATUS$_C$(git branch | grep '^\* ' | cut -c3-)}
+ if [ $(svn status 2>&- | grep -v '^?' | wc -l) -gt 0 ] ; then COLOR_STATUS=$COLOR_BRANCH\;$YELLOW ; else COLOR_STATUS=$COLOR_BRANCH ; fi
SVNREV=${$(svn info 2>&-):+$C_$COLOR_DOUBLEDOT$_C:$C_$COLOR_STATUS$_C"r$(svn info | tail -n+5 | head -n1 | cut -d' ' -f3)"}
CURDIR=$C_$COLOR_PATH$_C"%(!.%d.%(5~:.../:)%4~)"$C_$VOID$_C"$GITBRANCH$SVNREV"
unset HBAR