diff --git a/src/zona/config.py b/src/zona/config.py index b735c85..2a18f91 100644 --- a/src/zona/config.py +++ b/src/zona/config.py @@ -38,6 +38,7 @@ class HighlightingConfig: @dataclass class MarkdownConfig: image_labels: bool = True + tab_length: int = 2 syntax_highlighting: HighlightingConfig = field( default_factory=HighlightingConfig ) diff --git a/src/zona/markdown.py b/src/zona/markdown.py index 1a72804..956db70 100644 --- a/src/zona/markdown.py +++ b/src/zona/markdown.py @@ -144,15 +144,20 @@ def md_to_html( MarkdownInHtmlExtension(), EscapeAllExtension(hardbreak=True), ] + kwargs: dict[str, Any] = { + "extensions": extensions, + "tab_length": 2, + } if config: - extensions.append( + kwargs["extensions"].append( CodeHiliteExtension( linenums=False, noclasses=False, pygments_style=config.markdown.syntax_highlighting.theme, ) ) - md = Markdown(extensions=extensions) + kwargs["tab_length"] = config.markdown.tab_length + md = Markdown(**kwargs) if resolve_links: if source is None or layout is None or item_map is None: raise TypeError(