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

Re: [PATCH 2/5] doc: fix synopsis analysis logic

From
MÅMartin Ågren <martin.agren@gmail.com>
Date
Apr 4, 2025, 16:39 UTC
Message-ID
<CAN0heSrfQMZ8=pFNuaqn_0bpLxhMtGiO8Vg2hXTo6aqq3rF4yQ@mail.gmail.com>
In-Reply-To
<6206e65ac4d50e174ad7e3dbafaa590b632f214b.1743354964.git.gitgitgadget@gmail.com>

On Sun, 30 Mar 2025 at 19:16, Jean-Noël Avila via GitGitGadget <gitgitgadget@gmail.com> wrote:

>
> The synopsis analysis logic was not able to handle backslashes and stars
> which are used in the synopsis of the git-rm command. This patch fixes the
> issue by updating the regular expression used to match the keywords.
Show 27 quoted lines
> --- a/Documentation/asciidoctor-extensions.rb.in
> +++ b/Documentation/asciidoctor-extensions.rb.in
> @@ -50,7 +50,7 @@ module Git
>        def process parent, reader, attrs
>          outlines = reader.lines.map do |l|
>            l.gsub(/(\.\.\.?)([^\]$.])/, '`\1`\2')
> -           .gsub(%r{([\[\] |()>]|^)([-a-zA-Z0-9:+=~@,/_^\$]+)}, '\1{empty}`\2`{empty}')
> +           .gsub(%r{([\[\] |()>]|^)([-a-zA-Z0-9:+=~@,/_^\$\\\*]+)}, '\1{empty}`\2`{empty}')
>             .gsub(/(<[-a-zA-Z0-9.]+>)/, '__\\1__')
>             .gsub(']', ']{empty}')
>          end
> @@ -72,7 +72,7 @@ module Git
>            %(<inlineequation><alt><![CDATA[#{equation = node.text}]]></alt><mathphrase><![CDATA[#{equation}]]></mathphrase></inlineequation>)
>          elsif type == :monospaced
>            node.text.gsub(/(\.\.\.?)([^\]$.])/, '<literal>\1</literal>\2')
> -              .gsub(%r{([\[\s|()>.]|^|\]|&gt;)(\.?([-a-zA-Z0-9:+=~@,/_^\$]+\.{0,2})+)}, '\1<literal>\2</literal>')
> +              .gsub(%r{([\[\s|()>.]|^|\]|&gt;)(\.?([-a-zA-Z0-9:+=~@,/_^\$\\\*]+\.{0,2})+)}, '\1<literal>\2</literal>')
>                .gsub(/(&lt;[-a-zA-Z0-9.]+&gt;)/, '<emphasis>\1</emphasis>')
>          else
>            open, close, supports_phrase = QUOTE_TAGS[type]
> @@ -100,7 +100,7 @@ module Git
>        def convert_inline_quoted node
>          if node.type == :monospaced
>            node.text.gsub(/(\.\.\.?)([^\]$.])/, '<code>\1</code>\2')
> -              .gsub(%r{([\[\s|()>.]|^|\]|&gt;)(\.?([-a-zA-Z0-9:+=~@,/_^\$]+\.{0,2})+)}, '\1<code>\2</code>')
> +              .gsub(%r{([\[\s|()>.]|^|\]|&gt;)(\.?([-a-zA-Z0-9:+=~@,/_^\$\\\*]+\.{0,2})+)}, '\1<code>\2</code>')
>                .gsub(/(&lt;[-a-zA-Z0-9.]+&gt;)/, '<em>\1</em>')

This seems to introduce some extra spacing in the rendered man pages, e.g., "The bundle.* keys" or "Fileglobs (e.g. *.c)". (Asciidoctor 2.0.18.) I haven't dug into the regexes so see what might be the cause.

(I only had time to have a look at the first patch, then briefly trying out this one.)

Martin
Previous: Jean-Noël Avila via GitGitGadgetNext: Jean-Noël Avila
Message 5 of 19 in “doc: convert git-reset, git-rm and git-mv to new documentation format”
  1. 0/5 doc: convert git-reset, git-rm and git-mv to new documentation formatJean-Noël Avila via GitGitGadget, Mar 30, 2025
  2. 1/5 doc: convert git-reset to new documentation formatJean-Noël Avila via GitGitGadget, Mar 30, 2025
  3. Martin ÅgrenApr 4, 2025
  4. 2/5 doc: fix synopsis analysis logicJean-Noël Avila via GitGitGadget, Mar 30, 2025
  5. Martin ÅgrenApr 4, 2025
  6. Jean-Noël AvilaApr 12, 2025
  7. 3/5 doc: convert git-rm to new documentation formatJean-Noël Avila via GitGitGadget, Mar 30, 2025
  8. 4/5 doc: move synopsis git-mv commands in the synopsis sectionJean-Noël Avila via GitGitGadget, Mar 30, 2025
  9. Martin ÅgrenApr 5, 2025
  10. 5/5 doc: convert git-mv to new documentation formatJean-Noël Avila via GitGitGadget, Mar 30, 2025
  11. 0/7 doc: convert git-reset, git-rm and git-mv to new documentation formatJean-Noël Avila via GitGitGadget, Apr 12, 2025
  12. 1/7 doc: convert git-reset to new documentation formatJean-Noël Avila via GitGitGadget, Apr 12, 2025
  13. 2/7 doc: fix synopsis analysis logicJean-Noël Avila via GitGitGadget, Apr 12, 2025
  14. 3/7 doc: convert git-rm to new documentation formatJean-Noël Avila via GitGitGadget, Apr 12, 2025
  15. 4/7 doc: move synopsis git-mv commands in the synopsis sectionJean-Noël Avila via GitGitGadget, Apr 12, 2025
  16. 5/7 doc: convert git-mv to new documentation formatJean-Noël Avila via GitGitGadget, Apr 12, 2025
  17. 6/7 doc: fix asciidoctor synopsis processing of triple-dotsJean-Noël Avila via GitGitGadget, Apr 12, 2025
  18. 7/7 doc: add markup for characters in GuidelinesJean-Noël Avila via GitGitGadget, Apr 12, 2025
  19. Junio C HamanoApr 14, 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.