Skip to content

Commit 500edf8

Browse files
author
Evan Smith
committed
Dedent math block if nonzero indent_width found in context
1 parent 7a40415 commit 500edf8

2 files changed

Lines changed: 35 additions & 1 deletion

File tree

mdformat_myst/plugin.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
from __future__ import annotations
22

33
import re
4+
import textwrap
45

56
from markdown_it import MarkdownIt
67
import mdformat.plugins
@@ -78,11 +79,14 @@ def _math_inline_renderer(node: RenderTreeNode, context: RenderContext) -> str:
7879

7980

8081
def _math_block_renderer(node: RenderTreeNode, context: RenderContext) -> str:
82+
indent_width = context.env.get("indent_width", 0)
83+
if indent_width > 0:
84+
return f"$${textwrap.dedent(node.content)}$$"
8185
return f"$${node.content}$$"
8286

8387

8488
def _math_block_label_renderer(node: RenderTreeNode, context: RenderContext) -> str:
85-
return f"$${node.content}$$ ({node.info})"
89+
return f"{_math_block_renderer(node, context)} ({node.info})"
8690

8791

8892
def _render_children(node: RenderTreeNode, context: RenderContext) -> str:

tests/data/fixtures.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -192,6 +192,36 @@ a=1
192192
$$ (eq1)
193193
.
194194
195+
Indented dollarmath block
196+
.
197+
1. Indented math block
198+
199+
$$
200+
a=1
201+
$$
202+
.
203+
1. Indented math block
204+
205+
$$
206+
a=1
207+
$$
208+
.
209+
210+
Indented dollarmath block labeled
211+
.
212+
1. Indented labeled math block
213+
214+
$$
215+
a=1
216+
$$ (eq1)
217+
.
218+
1. Indented labeled math block
219+
220+
$$
221+
a=1
222+
$$ (eq1)
223+
.
224+
195225
Frontmatter
196226
.
197227
---

0 commit comments

Comments
 (0)