Merge branch 'ma/user-manual-markup-update'
authorJunio C Hamano <gitster@pobox.com>
Sun, 6 Oct 2019 03:25:16 +0000 (12:25 +0900)
committerJunio C Hamano <gitster@pobox.com>
Sun, 6 Oct 2019 03:25:16 +0000 (12:25 +0900)
The markup used in user-manual has been updated to work better with
asciidoctor.

* ma/user-manual-markup-update:
  user-manual.txt: render ASCII art correctly under Asciidoctor
  asciidoctor-extensions.rb: handle "book" doctype in linkgit
  user-manual.txt: change header notation
  user-manual.txt: add missing section label

1  2 
Documentation/asciidoctor-extensions.rb

@@@ -9,8 -9,11 +9,11 @@@ module Gi
        named :chrome
  
        def process(parent, target, attrs)
-         if parent.document.basebackend? 'html'
-           prefix = parent.document.attr('git-relative-html-prefix')
+         prefix = parent.document.attr('git-relative-html-prefix')
+         if parent.document.doctype == 'book'
+           "<ulink url=\"#{prefix}#{target}.html\">" \
+           "#{target}(#{attrs[1]})</ulink>"
+         elsif parent.document.basebackend? 'html'
            %(<a href="#{prefix}#{target}.html">#{target}(#{attrs[1]})</a>)
          elsif parent.document.basebackend? 'docbook'
            "<citerefentry>\n" \
          end
        end
      end
 +
 +    class DocumentPostProcessor < Asciidoctor::Extensions::Postprocessor
 +      def process document, output
 +        if document.basebackend? 'docbook'
 +          mansource = document.attributes['mansource']
 +          manversion = document.attributes['manversion']
 +          manmanual = document.attributes['manmanual']
 +          new_tags = "" \
 +            "<refmiscinfo class=\"source\">#{mansource}</refmiscinfo>\n" \
 +            "<refmiscinfo class=\"version\">#{manversion}</refmiscinfo>\n" \
 +            "<refmiscinfo class=\"manual\">#{manmanual}</refmiscinfo>\n"
 +          output = output.sub(/<\/refmeta>/, new_tags + "</refmeta>")
 +        end
 +        output
 +      end
 +    end
    end
  end
  
  Asciidoctor::Extensions.register do
    inline_macro Git::Documentation::LinkGitProcessor, :linkgit
 +  postprocessor Git::Documentation::DocumentPostProcessor
  end