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

[PATCH 07/11] doc: add man pages workaround for asciidoctor

From
Felipe Contreras <felipe.contreras@gmail.com>
Date
May 14, 2021, 12:14 UTC
Message-ID
<20210514121435.504423-8-felipe.contreras@gmail.com>
In-Reply-To
<20210514121435.504423-1-felipe.contreras@gmail.com>

Currently asciidoctor doesn't convert number character references (&#xx;) correctly for man pages.

This hack fixes the issue with minimum changes elsewhere so it's easy to remove when fixed.

Fixes doc-diffs like:
            so line count cannot be shown) and there is no difference between
            indexed copy and the working tree version (if the working tree
            version were also different, binary would have been shown in place
-           of nothing). The other file, git-add--interactive.perl, has 403
-           lines added and 35 lines deleted if you commit what is in the
-           index, but working tree file has further modifications (one
+           of nothing). The other file, git-add&#x2d;&#x2d;interactive.perl,
+           has 403 lines added and 35 lines deleted if you commit what is in
+           the index, but working tree file has further modifications (one
            addition and one deletion).
https://github.com/asciidoctor/asciidoctor/issues/4059
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
---
 Documentation/asciidoctor-extensions.rb | 11 +++++++++++
 1 file changed, 11 insertions(+)
diff --git a/Documentation/asciidoctor-extensions.rb b/Documentation/asciidoctor-extensions.rb
index ad68f7b0bb..11937c2c1d 100644
--- a/Documentation/asciidoctor-extensions.rb
+++ b/Documentation/asciidoctor-extensions.rb
@@ -45,6 +45,17 @@ module Git
 end
 
 Asciidoctor::Extensions.register do
+  # Override attributes for man pages.
+  # https://github.com/asciidoctor/asciidoctor/issues/4059
+  tree_processor do
+    process do |document|
+      if document.backend == 'manpage'
+        document.attributes.merge!({ 'litdd' => '\--', 'plus' => '+' })
+      end
+      document
+    end
+  end
+
   inline_macro Git::Documentation::LinkGitProcessor, :linkgit
   postprocessor Git::Documentation::DocumentPostProcessor
 end
-- 
2.31.1
Previous: Felipe ContrerasNext: Felipe Contreras
Message 21 of 25 in “doc: asciidoctor: direct man page creation and fixes”
  1. 00/11 doc: asciidoctor: direct man page creation and fixesFelipe Contreras, May 14, 2021
  2. 01/11 doc: allow the user to provide ASCIIDOC_EXTRAFelipe Contreras, May 14, 2021
  3. Jeff KingMay 15, 2021
  4. Jeff KingMay 15, 2021
  5. Felipe ContrerasMay 15, 2021
  6. Jeff KingMay 17, 2021
  7. Felipe ContrerasMay 17, 2021
  8. Jeff KingMay 17, 2021
  9. Felipe ContrerasMay 17, 2021
  10. 02/11 doc: doc-diff: allow more than one flagFelipe Contreras, May 14, 2021
  11. Jeff KingMay 15, 2021
  12. Felipe ContrerasMay 15, 2021
  13. 03/11 doc: doc-diff: set docdate manuallyFelipe Contreras, May 14, 2021
  14. Martin ÅgrenMay 14, 2021
  15. Felipe ContrerasMay 14, 2021
  16. 04/11 doc: use asciidoctor to build man pages directlyFelipe Contreras, May 14, 2021
  17. Martin ÅgrenMay 14, 2021
  18. Felipe ContrerasMay 14, 2021
  19. 05/11 doc: asciidoctor: add linkgit macros in man pagesFelipe Contreras, May 14, 2021
  20. 06/11 doc: join mansource and manversionFelipe Contreras, May 14, 2021
  21. 07/11 doc: add man pages workaround for asciidoctorFelipe Contreras, May 14, 2021
  22. 08/11 doc: asciidoctor: add hack for xrefsFelipe Contreras, May 14, 2021
  23. 09/11 doc: asciidoctor: add hack to improve linksFelipe Contreras, May 14, 2021
  24. 10/11 doc: asciidoctor: add support for baseurlFelipe Contreras, May 14, 2021
  25. 11/11 doc: asciidoctor: cleanup man page hackFelipe Contreras, May 14, 2021

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.