diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 79e90c23add5e340b95048e7a5292201398ee56e..8e83d4aa996c23ecf34433e907893f8a01a6ea44 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -27,6 +27,7 @@ Build pythonForPandocFilter docker image: - generateChangemarks/pandocFilter.py - generateChangemarks/changemarks.py - generateChangemarks/addTrackedChanges.py + - generateChangemarks/generateTOC.py Upgrade index for pages: stage: upgrade diff --git a/generateTOC/README.md b/generateChangemarks/README.md similarity index 100% rename from generateTOC/README.md rename to generateChangemarks/README.md diff --git a/generateTOC/generateTOC.py b/generateChangemarks/generateTOC.py similarity index 98% rename from generateTOC/generateTOC.py rename to generateChangemarks/generateTOC.py index ad08b438981f823d2abcaa2b44bd17cdb3a64b10..deada950edab3e199c975489a300523088896b32 100644 --- a/generateTOC/generateTOC.py +++ b/generateChangemarks/generateTOC.py @@ -9,7 +9,7 @@ from __future__ import annotations from typing import Tuple -import argparse, os, re +import argparse, os, re, sys from rich import print @@ -82,7 +82,8 @@ def processDocument(args:argparse.Namespace) -> None: for h in headers: toc += ' ' * (h[1] * args.indent) + f'[{h[0]}](#{prepareTOClink(h[0])}) \n' toc = re.sub('<[^<]+?>', '', toc) - + toc += '\n' + # Write the TOC to the console print(toc) @@ -117,7 +118,7 @@ def processDocument(args:argparse.Namespace) -> None: -if __name__ == '__main__': +def main(args=None): def nonNegativeInt(value:str) -> int: """Check if a value is a non-negative integer. @@ -150,3 +151,5 @@ if __name__ == '__main__': processDocument(args) +if __name__ == '__main__': + sys.exit(main()) diff --git a/generateChangemarks/setup.py b/generateChangemarks/setup.py index aa23d04aa3d59b6fc04e502dc1a19ed98bdb3944..7353e00df3b56daac61aeaff67a4ac6641ab30ca 100644 --- a/generateChangemarks/setup.py +++ b/generateChangemarks/setup.py @@ -13,8 +13,9 @@ setup( ], entry_points= { 'console_scripts' : ['pandocFilter=pandocFilter:main', - 'changemarks=changemarks:main', - 'addTrackedChanges=addTrackedChanges:main', + 'changemarks=changemarks:main', + 'addTrackedChanges=addTrackedChanges:main', + 'generateTOC=generateTOC:main', ] } diff --git a/publish_spec.sh b/publish_spec.sh index 168427bf5cd72719fc233c2d2fe904dad0679129..624f4420f97afc8b7f8a41e2acd6727edb5c0872 100755 --- a/publish_spec.sh +++ b/publish_spec.sh @@ -28,6 +28,8 @@ if [ ! $specs ] ; then fi for i in *.md ; do + echo "\n------ Adding TOC to spec --------" + docker run --rm -v $(pwd):/tmp/ -u $(id -u):$(id -g) "$TOOLS_DOCKER_IMAGE" generateTOC --add-content "/tmp/$i" echo "\n------ Preparaing spec --------" docker run --rm -v $(pwd):/tmp/ -u $(id -u):$(id -g) "$TOOLS_DOCKER_IMAGE" pandocFilter -o "/tmp/" "/tmp/$i" echo "\n------ Publishing spec --------"