summaryrefslogtreecommitdiff
path: root/plugins/svn
diff options
context:
space:
mode:
authorDrarok Ithaqua <github@catchall.drarok.com>2012-11-27 12:08:18 +0000
committerDrarok Ithaqua <github@catchall.drarok.com>2012-11-27 12:08:18 +0000
commit120db35b2dd7792b981401f66323e8886668c909 (patch)
treecd3172f893ae42888d57766272be2b71336a068a /plugins/svn
parent79e620c392393f254d9614b18963af1c9ac234e7 (diff)
downloadzsh-120db35b2dd7792b981401f66323e8886668c909.tar.gz
zsh-120db35b2dd7792b981401f66323e8886668c909.tar.bz2
zsh-120db35b2dd7792b981401f66323e8886668c909.zip
Fix the backwards svn status, and add comments explaining which way grep does things.
Diffstat (limited to 'plugins/svn')
-rw-r--r--plugins/svn/svn.plugin.zsh5
1 files changed, 4 insertions, 1 deletions
diff --git a/plugins/svn/svn.plugin.zsh b/plugins/svn/svn.plugin.zsh
index 142ac3bd3..79c8bdcdf 100644
--- a/plugins/svn/svn.plugin.zsh
+++ b/plugins/svn/svn.plugin.zsh
@@ -1,3 +1,4 @@
+
function svn_prompt_info {
if [ $(in_svn) ]; then
echo "$ZSH_PROMPT_BASE_COLOR$ZSH_THEME_SVN_PROMPT_PREFIX\
@@ -29,9 +30,11 @@ function svn_get_rev_nr {
function svn_dirty_choose {
if [ $(in_svn) ]; then
svn status 2> /dev/null | grep -Eq '^\s*[ACDIM!?L]'
- if [ $pipestatus[-1] -ne 0 ]; then
+ if [ $pipestatus[-1] -eq 0 ]; then
+ # Grep exits with 0 when "One or more lines were selected", return "dirty".
echo $1
else
+ # Otherwise, no lines were found, or an error occurred. Return clean.
echo $2
fi
fi