[Bf-docboard-svn] bf-manual: [8012] trunk/blender_docs/tools_maintenance/blender_help_extract.py: Generate heading reference targets for command line headings

Campbell Barton noreply at blender.org
Mon May 10 05:28:56 CEST 2021


Revision: 8012
          https://developer.blender.org/rBM8012
Author:   campbellbarton
Date:     2021-05-10 05:28:56 +0200 (Mon, 10 May 2021)
Log Message:
-----------
Generate heading reference targets for command line headings

Also use relative path to Blender source tree in the command line example.

Modified Paths:
--------------
    trunk/blender_docs/tools_maintenance/blender_help_extract.py

Modified: trunk/blender_docs/tools_maintenance/blender_help_extract.py
===================================================================
--- trunk/blender_docs/tools_maintenance/blender_help_extract.py	2021-05-08 13:01:27 UTC (rev 8011)
+++ trunk/blender_docs/tools_maintenance/blender_help_extract.py	2021-05-10 03:28:56 UTC (rev 8012)
@@ -9,7 +9,7 @@
 # using primitive regex parsing.
 #
 # e.g:
-# python tools_maintenance/blender_help_extract.py /src/blender/source/creator/creator_args.c manual/advanced/command_line/arguments.rst
+# python tools_maintenance/blender_help_extract.py ../blender/source/creator/creator_args.c manual/advanced/command_line/arguments.rst
 
 
 def text_remove_comments(text):
@@ -226,9 +226,24 @@
                 # Run the C-style string format.
                 l = l[0] % l[1:]
             if l.lstrip() == l and l.strip("\n").endswith(":"):
-                # create rst heading
+                # Create RST heading & unique reference target.
                 l = l.strip(":\n")
-                l = "\n\n" + l + "\n" + len(l) * "=" + "\n\n"
+                l = (
+                    "\n"
+                    "\n"
+                    ".. _command-line-args-%s:\n"
+                    "\n"
+                    "%s\n"
+                    "%s\n"
+                    "\n"
+                ) % (
+                    # Create reference so each heading can be linked to.
+                    "".join([(c if c.isalpha() else "-") for c in l.lower()]),
+                    # The heading.
+                    l,
+                    # Heading underline.
+                    len(l) * "=",
+                )
                 ind_re = None
             else:
                 # unindent to the previous min indent



More information about the Bf-docboard-svn mailing list