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

Re: [PATCH 3/3] Add proof-of-concept %[w(width,in1,in2)<<any-string>>%] implementation

From
Junio C Hamano <gitster@pobox.com>
Date
Oct 16, 2009, 17:25 UTC
Message-ID
<7vk4yvuu79.fsf@alter.siamese.dyndns.org>
In-Reply-To
<alpine.DEB.1.00.0910161331350.4985@pacific.mpi-cbg.de>
Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
> maybe "rewrap" would be a better name than "w"?

Perhaps, but I do not know if wrap() is even better. The only reason I said w() here is because I saw you used w() and this is meant to be a superset replacement for it, as this can re-wrap anything, not just one particular field from the commit object.

Show 10 quoted lines
> On Fri, 16 Oct 2009, Junio C Hamano wrote:
>
>>   #1 "%[" introduces the nested string function.
>> 
>>   #2 After that, a name identifies what function to call.
>> 
>>   #3 The function parses its parameters ("(72,4,8)" in the above example),
>>      and makes a nested expansion on the remainder of the format string.
>
> Can't we parse it once, i.e. the first time?

I may be missing the issue you are raising here, but it parses the string only once; it stuffs the expansion of the enclosed string into a separate buffer (while noting where it ends), applies the function to the result obtained in the separate buffer and appends the result of the function application to the main buffer, and the main expansion resumes where the nested one finished.

Previous: Johannes SchindelinNext: Jakub Narebski
Message 9 of 22 in “Generalized "string function" syntax”
  1. 0/3 Generalized "string function" syntaxJunio C Hamano, Oct 16, 2009
  2. 1/3 format_commit_message(): fix function signatureJunio C Hamano, Oct 16, 2009
  3. René ScharfeOct 17, 2009
  4. 2/3 strbuf_nested_expand(): allow expansion to interrupt in the middleJunio C Hamano, Oct 16, 2009
  5. Johannes SchindelinOct 16, 2009
  6. Junio C HamanoOct 16, 2009
  7. 3/3 Add proof-of-concept %[w(width,in1,in2)<<any-string>>%] implementationJunio C Hamano, Oct 16, 2009
  8. Johannes SchindelinOct 16, 2009
  9. Junio C HamanoOct 16, 2009
  10. Jakub NarebskiOct 16, 2009
  11. Junio C HamanoOct 16, 2009
  12. Jakub NarebskiOct 16, 2009
  13. Junio C HamanoOct 16, 2009
  14. Jakub NarebskiOct 17, 2009
  15. Junio C HamanoOct 17, 2009
  16. René ScharfeOct 17, 2009
  17. Junio C HamanoOct 18, 2009
  18. René ScharfeOct 18, 2009
  19. Junio C HamanoOct 18, 2009
  20. René ScharfeOct 19, 2009
  21. Junio C HamanoOct 19, 2009
  22. René ScharfeNov 8, 2009

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.