fix(datasheet): markdown headings break the datasheet

close #23
This commit is contained in:
Uri Shaked
2023-07-30 22:21:00 +03:00
parent 6034820170
commit 7842384b6a
3 changed files with 22 additions and 0 deletions
+17
View File
@@ -0,0 +1,17 @@
import mistune
from mistune.renderers.markdown import MarkdownRenderer
class HeadingsRenderer(MarkdownRenderer):
def __init__(self, min_level: int):
super().__init__()
self.min_level = min_level
def heading(self, token, state):
token["attrs"]["level"] += self.min_level - 1
return super().heading(token, state)
def limit_markdown_headings(source: str, min_level: int) -> str:
markdown = mistune.create_markdown(renderer=HeadingsRenderer(min_level))
return markdown(source)
+4
View File
@@ -11,6 +11,7 @@ import json
import git_utils
import git
import shutil
from markdown_utils import limit_markdown_headings
CELL_URL = 'https://skywater-pdk.readthedocs.io/en/main/contents/libraries/sky130_fd_sc_hd/cells/'
@@ -192,6 +193,9 @@ class Project():
docs = self.yaml['documentation']
docs['project_type'] = self.get_project_type_string()
docs['git_url'] = self.git_url
# "How it works" and "How to test" may include markdown headings - make sure they don't break the ToC
docs['how_it_works'] = limit_markdown_headings(docs['how_it_works'], min_level=4)
docs['how_to_test'] = limit_markdown_headings(docs['how_to_test'], min_level=4)
return docs
def get_wokwi_url(self):
+1
View File
@@ -12,6 +12,7 @@ gitdb==4.0.10
GitPython==3.1.31
idna==3.4
importlib-resources==5.12.0
mistune==3.0.1
numpy==1.24.3
Pillow==9.5.0
pycparser==2.21