Re: [PATCH 2/5] doc: fix synopsis analysis logic
- From
- 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|()>.]|^|\]|>)(\.?([-a-zA-Z0-9:+=~@,/_^\$]+\.{0,2})+)}, '\1<literal>\2</literal>')
> + .gsub(%r{([\[\s|()>.]|^|\]|>)(\.?([-a-zA-Z0-9:+=~@,/_^\$\\\*]+\.{0,2})+)}, '\1<literal>\2</literal>')
> .gsub(/(<[-a-zA-Z0-9.]+>)/, '<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|()>.]|^|\]|>)(\.?([-a-zA-Z0-9:+=~@,/_^\$]+\.{0,2})+)}, '\1<code>\2</code>')
> + .gsub(%r{([\[\s|()>.]|^|\]|>)(\.?([-a-zA-Z0-9:+=~@,/_^\$\\\*]+\.{0,2})+)}, '\1<code>\2</code>')
> .gsub(/(<[-a-zA-Z0-9.]+>)/, '<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