From 67cae0a971b8734c46f50814435b66170cf69526 Mon Sep 17 00:00:00 2001 From: Chris Sewell Date: Fri, 31 Dec 2021 00:59:38 +0100 Subject: [PATCH 1/2] =?UTF-8?q?=F0=9F=90=9B=20FIX:=20Ordered=20list=20star?= =?UTF-8?q?ting=20number?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Propagate the starting number of ordered lists to the docutils AST. fixes #482 --- myst_parser/docutils_renderer.py | 6 +++--- .../fixtures/docutil_syntax_elements.md | 20 ++++++++++++++++--- .../fixtures/sphinx_syntax_elements.md | 20 ++++++++++++++++--- .../test_gettext_html.resolved.sphinx3.xml | 2 +- .../test_gettext_html.resolved.sphinx4.xml | 2 +- .../test_gettext_html.sphinx3.xml | 2 +- .../test_gettext_html.sphinx4.xml | 2 +- 7 files changed, 41 insertions(+), 13 deletions(-) diff --git a/myst_parser/docutils_renderer.py b/myst_parser/docutils_renderer.py index 10e8da0c..3ddb3d94 100644 --- a/myst_parser/docutils_renderer.py +++ b/myst_parser/docutils_renderer.py @@ -377,9 +377,9 @@ def render_bullet_list(self, token: SyntaxTreeNode) -> None: self.render_children(token) def render_ordered_list(self, token: SyntaxTreeNode) -> None: - list_node = nodes.enumerated_list() - list_node["enumtype"] = "arabic" - list_node["suffix"] = "." + list_node = nodes.enumerated_list(enumtype="arabic", prefix="", suffix=".") + if "start" in token.attrs: # starting number + list_node["start"] = token.attrs["start"] self.add_line_and_source_path(list_node, token) with self.current_node_context(list_node, append=True): self.render_children(token) diff --git a/tests/test_renderers/fixtures/docutil_syntax_elements.md b/tests/test_renderers/fixtures/docutil_syntax_elements.md index 2af1cdc2..6e75a8ba 100644 --- a/tests/test_renderers/fixtures/docutil_syntax_elements.md +++ b/tests/test_renderers/fixtures/docutil_syntax_elements.md @@ -257,13 +257,27 @@ Nested Bullets Enumerated List: . 1. *foo* + +para + +10. starting +11. enumerator . - + foo + + para + + + + starting + + + enumerator . -------------------------- @@ -274,14 +288,14 @@ Nested Enumrated List: 1. c . - + a b - + c diff --git a/tests/test_renderers/fixtures/sphinx_syntax_elements.md b/tests/test_renderers/fixtures/sphinx_syntax_elements.md index 95d6193c..080913dd 100644 --- a/tests/test_renderers/fixtures/sphinx_syntax_elements.md +++ b/tests/test_renderers/fixtures/sphinx_syntax_elements.md @@ -257,13 +257,27 @@ Nested Bullets Enumerated List: . 1. *foo* + +para + +10. starting +11. enumerator . - + foo + + para + + + + starting + + + enumerator . -------------------------- @@ -274,14 +288,14 @@ Nested Enumrated List: 1. c . - + a b - + c diff --git a/tests/test_sphinx/test_sphinx_builds/test_gettext_html.resolved.sphinx3.xml b/tests/test_sphinx/test_sphinx_builds/test_gettext_html.resolved.sphinx3.xml index 839b3131..9a742cce 100644 --- a/tests/test_sphinx/test_sphinx_builds/test_gettext_html.resolved.sphinx3.xml +++ b/tests/test_sphinx/test_sphinx_builds/test_gettext_html.resolved.sphinx3.xml @@ -24,7 +24,7 @@ texte 5 en gras - + texte 6 en diff --git a/tests/test_sphinx/test_sphinx_builds/test_gettext_html.resolved.sphinx4.xml b/tests/test_sphinx/test_sphinx_builds/test_gettext_html.resolved.sphinx4.xml index 30673bcf..636a2e86 100644 --- a/tests/test_sphinx/test_sphinx_builds/test_gettext_html.resolved.sphinx4.xml +++ b/tests/test_sphinx/test_sphinx_builds/test_gettext_html.resolved.sphinx4.xml @@ -24,7 +24,7 @@ texte 5 en gras - + texte 6 en diff --git a/tests/test_sphinx/test_sphinx_builds/test_gettext_html.sphinx3.xml b/tests/test_sphinx/test_sphinx_builds/test_gettext_html.sphinx3.xml index b53783f5..a39fabee 100644 --- a/tests/test_sphinx/test_sphinx_builds/test_gettext_html.sphinx3.xml +++ b/tests/test_sphinx/test_sphinx_builds/test_gettext_html.sphinx3.xml @@ -24,7 +24,7 @@ texte 5 en gras - + texte 6 en diff --git a/tests/test_sphinx/test_sphinx_builds/test_gettext_html.sphinx4.xml b/tests/test_sphinx/test_sphinx_builds/test_gettext_html.sphinx4.xml index e357351a..9fddb487 100644 --- a/tests/test_sphinx/test_sphinx_builds/test_gettext_html.sphinx4.xml +++ b/tests/test_sphinx/test_sphinx_builds/test_gettext_html.sphinx4.xml @@ -24,7 +24,7 @@ texte 5 en gras - + texte 6 en From 3a2502ff4e356bbad5ea18fdc7a1442c6ffdc65a Mon Sep 17 00:00:00 2001 From: Chris Sewell Date: Fri, 31 Dec 2021 01:30:35 +0100 Subject: [PATCH 2/2] Update conftest.py --- tests/test_sphinx/conftest.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/test_sphinx/conftest.py b/tests/test_sphinx/conftest.py index fcb88558..7930b651 100644 --- a/tests/test_sphinx/conftest.py +++ b/tests/test_sphinx/conftest.py @@ -78,6 +78,9 @@ def read( # only regress the inner body, since other sections are non-deterministic soup = BeautifulSoup(content, "html.parser") doc_div = soup.findAll("div", {"class": "documentwrapper"})[0] + # pygments 2.11.0 introduces a whitespace tag + for pygment_whitespace in doc_div.select("pre > span.w"): + pygment_whitespace.replace_with(pygment_whitespace.text) text = doc_div.prettify() for find, rep in (replace or {}).items(): text = text.replace(find, rep)