git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] prompt: fix tracked files for zsh

From
Junio C Hamano <gitster@pobox.com>
Date
Apr 21, 2013, 22:00 UTC
Message-ID
<7vehe3sfwv.fsf@alter.siamese.dyndns.org>
In-Reply-To
<CAMP44s36TO6DQ_3j7rSOoOM6QS-Y0DW_z6WX_GF3ODFfupb6jg@mail.gmail.com>
Felipe Contreras <felipe.contreras@gmail.com> writes:
Show 21 quoted lines
> On Sun, Apr 21, 2013 at 2:02 PM, Andreas Schwab <schwab@linux-m68k.org> wrote:
>> Junio C Hamano <gitster@pobox.com> writes:
>>
>>> Andreas Schwab <schwab@linux-m68k.org> writes:
>>>
>>>> Felipe Contreras <felipe.contreras@gmail.com> writes:
>>>>
>>>>> +                           if [ -n "${ZSH_VERSION-}" ]; then
>>>>> +                                   u="%%"
>>>>> +                           else
>>>>> +                                   u="%"
>>>>> +                           fi
>>>>
>>>> aka u="%${ZSH_VERSION:+%}"
>>>
>>> Do you need/want a colon there?  Even if it is empty, as long as it
>>> is defined we would want this, no?
>>
>> The original wouldn't.
>
> I thought you were trying to improve the original ;)

OK, so I _think_ everybody is in agreement that the patch should look like this. OK?

-- >8 --
From: Felipe Contreras <felipe.contreras@gmail.com>
Subject: [PATCH] prompt: fix untracked files for zsh

With "bash.showUntrackedFiles" option, presense of untracked files is signalled by adding a per-cent sign '%' to the prompt. But because '%' is used as an escape character to introduce prompt customization in zsh (just like bash prompt uses '\' to escape \u, \h, etc.), we need to say '%%' to get a literal per-cent.

Helped-by: Andreas Schwab <schwab@linux-m68k.org>
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
---
 contrib/completion/git-prompt.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/contrib/completion/git-prompt.sh b/contrib/completion/git-prompt.sh
index 756a951..054c52e 100644
--- a/contrib/completion/git-prompt.sh
+++ b/contrib/completion/git-prompt.sh
@@ -340,7 +340,7 @@ __git_ps1 ()
 			   [ "$(git config --bool bash.showUntrackedFiles)" != "false" ] &&
 			   [ -n "$(git ls-files --others --exclude-standard)" ]
 			then
-				u="%"
+				u="%${ZSH_VERSION+%}"
 			fi
 
 			if [ -n "${GIT_PS1_SHOWUPSTREAM-}" ]; then
Previous: Felipe ContrerasNext: Felipe Contreras
Message 6 of 10 in “prompt: fix tracked files for zsh”
  1. prompt: fix tracked files for zshFelipe Contreras, Apr 21, 2013
  2. Andreas SchwabApr 21, 2013
  3. Junio C HamanoApr 21, 2013
  4. Andreas SchwabApr 21, 2013
  5. Felipe ContrerasApr 21, 2013
  6. Junio C HamanoApr 21, 2013
  7. Felipe ContrerasApr 21, 2013
  8. Junio C HamanoApr 21, 2013
  9. Eric SunshineApr 21, 2013
  10. Junio C HamanoApr 21, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.