From: Junio C Hamano Date: Wed, 30 Dec 2009 19:27:25 GMT Subject: Re: [PATCH] bash completion: add space between branch name and status flags Message-ID: <7veimc1cv6.fsf@alter.siamese.dyndns.org> In-Reply-To: <20091230145751.GE6914@spearce.org> "Shawn O. Pearce" writes: > Nanako Shiraishi wrote: >> Junio, could you tell us what happened to this thread? >> >> In response to a patch from Roman Fietze to outline a better way >> to do it. Nothing happened. > > Junio responded with a suggestion on how to improve the patch when > GIT_PS1_SHOWDIRTYSTATE was not set, but Roman Fietze didn't send > a revised patch, so it got dropped. > > Here is the revised patch, Junio, still think its a good idea? Thanks for following up. As I don't use $[wisu] myself, I don't have a very strong opinion either way, but the user has spent cycles to compute them, so we'd better present them in a way that is easier to read, I guess. > diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash > index fbfa5f2..3c8b6df 100755 > --- a/contrib/completion/git-completion.bash > +++ b/contrib/completion/git-completion.bash > @@ -163,10 +163,12 @@ __git_ps1 () > fi > fi > > + local f="$w$i$s$u" > + f="${f:+ $f}$r" > if [ -n "${1-}" ]; then > - printf "$1" "$c${b##refs/heads/}$w$i$s$u$r" > + printf "$1" "$c${b##refs/heads/}$f" > else > - printf " (%s)" "$c${b##refs/heads/}$w$i$s$u$r" > + printf " (%s)" "$c${b##refs/heads/}$f" > fi I notice that printf argument look very similar. Maybe we want to do something like printf "${1:-" (%s)"}" ... to avoid duplication?