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

Re: [PATCH] pretty.c: add %z specifier.

From
GSGovind Salinas <govind@sophiasuchtig.com>
Date
Mar 21, 2008, 05:42 UTC
Message-ID
<5d46db230803202242j60b0e9f6q798afd6c5f468207@mail.gmail.com>
In-Reply-To
<7vtzj0slx4.fsf@gitster.siamese.dyndns.org>
On Fri, Mar 21, 2008 at 12:09 AM, Junio C Hamano <gitster@pobox.com> wrote:
Show 44 quoted lines
>
> Jeff King <peff@peff.net> writes:
>
>  > On Thu, Mar 20, 2008 at 09:48:16PM -0700, Junio C Hamano wrote:
>  >
>  >> > +  case 'z':               /* null */
>  >> > +          strbuf_addch(sb, '\0');
>  >> > +          return 1;
>  >> >    }
>  >> >
>  >> >    /* these depend on the commit */
>  >>
>  >> I do not like this at all.  Why aren't we doing %XX (2 hexadecimal digits
>  >> for an octet)?
>  >
>  > Because %ad is already taken? :)
>  >
>  > %x* is still available, though, so maybe %x00?
>
>  Perhaps, but before I forget.
>
>  My much bigger niggle about the "--pretty=format:<>" code I have is that
>  the "log" machinery does not change the usual record "delimiter" to record
>  "terminator" when --pretty=format:<> is in effect.
>
>  The "log" family generally treats LF/NUL as record delimiter, not
>  terminator, and it is by a very good conscious design.  When you are
>  looking at the output from "git log -2", you would want to have a
>  delimiting LF between the first commit and the second commit, but you do
>  not want an extra LF after the second commit.
>
>  However, when "--pretty=format:<>" is in effect, it is inconvenient that
>  the machinery inserts a LF between each record but not at the end.
>
>     $ git log -2 --pretty=format:%s
>
>  may look sane when the pager immediately returns the control to you, but
>  it is not really.  To view it:
>
>     $ git log -2 --pretty=format:%s | cat
>
>  This would show that there is no LF after the final output, which is quite
>  bad.
>

Sorry, I'm a bit confused. Should I alter the patch to use a different code for null, that would be fine by me? The above seems to be an unrelated issue.

Thanks, Govind.

Previous: Junio C HamanoNext: David Symonds
Message 6 of 8 in “pretty.c: add %z specifier.”
  1. pretty.c: add %z specifier.Govind Salinas, Mar 21, 2008
  2. Jeff KingMar 21, 2008
  3. Junio C HamanoMar 21, 2008
  4. Jeff KingMar 21, 2008
  5. Junio C HamanoMar 21, 2008
  6. Govind SalinasMar 21, 2008
  7. David SymondsMar 21, 2008
  8. Junio C HamanoMar 21, 2008

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.