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

Re: General output formatting

From
Junio C Hamano <gitster@pobox.com>
Date
Feb 27, 2025, 17:06 UTC
Message-ID
<xmqq34fz9v1n.fsf@gitster.g>
In-Reply-To
<3a58720f-a572-4e3a-bed1-cc7e8f46e3c7@xiplink.com>
Marc Branchaud <marcnarc@xiplink.com> writes:
Show 11 quoted lines
>> I wonder if isatty(1) is a good way to say "ah, we are not captured
>> in 'foo=$(git blah)' and not feeding somebody in 'git blah |
>> somebody', so we do not have to worry about being machine readable".
>> If that is a reliable way to tell that we could butcher our output
>> for the sake of keeping the terminal state sane, we then can always
>> do the C-quote escaping, or even information losing '?' redaction.
>
> Modern practice seems to be moving towards explicit format options to
> let code that's parsing output directly specify how it wants to see
> the data.  Such options eliminate the need for isatty() heuristics and
> other guesswork.

I am not opposed to an explicit "please avoid raw binary output" or even "please make it even more machine-processable by formatting in yaml" options. What I was hinting at was what the default should be for interactive use when the output goes directly to the eyes of end-users, which is pretty much orthogonal.

Thanks.
Previous: Marc BranchaudNext: Marc Branchaud
Message 12 of 15 in “\b character escapes in CLI usage”
  1. Yaakov SmithFeb 25, 2025
  2. Jeff KingFeb 26, 2025
  3. Jeff KingFeb 26, 2025
  4. Junio C HamanoFeb 26, 2025
  5. Kyle LippincottFeb 26, 2025
  6. Jeff KingFeb 26, 2025
  7. Junio C HamanoFeb 26, 2025
  8. brian m. carlsonFeb 26, 2025
  9. Junio C HamanoFeb 26, 2025
  10. Junio C HamanoFeb 27, 2025
  11. General output formatting (was: Re: \b character escapes in CLI usage)Marc Branchaud, Feb 27, 2025
  12. Junio C HamanoFeb 27, 2025
  13. Marc BranchaudFeb 27, 2025
  14. Junio C HamanoFeb 27, 2025
  15. Phillip WoodFeb 27, 2025

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.