Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 3 additions & 10 deletions myst_parser/mdit_to_docutils/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@
from docutils.parsers.rst.directives.misc import Include
from docutils.parsers.rst.languages import get_language as get_language_rst
from docutils.statemachine import StringList
from docutils.transforms.components import Filter
from docutils.utils import Reporter, SystemMessage, new_document
from docutils.utils.code_analyzer import Lexer, LexerError, NumberLines
from markdown_it import MarkdownIt
Expand Down Expand Up @@ -1883,7 +1882,7 @@ def render_substitution(self, token: SyntaxTreeNode, inline: bool) -> None:

def html_meta_to_nodes(
data: dict[str, Any], document: nodes.document, line: int, reporter: Reporter
) -> list[nodes.pending | nodes.system_message]:
) -> list[nodes.meta | nodes.system_message]:
"""Replicate the `meta` directive,
by converting a dictionary to a list of pending meta nodes

Expand Down Expand Up @@ -1917,14 +1916,8 @@ def html_meta_to_nodes(
except ValueError as error:
msg = reporter.error(f'Error parsing meta tag attribute "{key}": {error}.')
output.append(msg)
continue

pending = nodes.pending(
Filter,
{"component": "writer", "format": "html", "nodes": [meta_node]},
)
document.note_pending(pending)
output.append(pending)
else:
output.append(meta_node)

return output

Expand Down
36 changes: 4 additions & 32 deletions tests/test_renderers/fixtures/docutil_syntax_elements.md
Original file line number Diff line number Diff line change
Expand Up @@ -672,38 +672,10 @@ myst:
---
.
<document source="notset">
<pending>
.. internal attributes:
.transform: docutils.transforms.components.Filter
.details:
component: 'writer'
format: 'html'
nodes:
<meta content="Sphinx, documentation, builder" name="keywords">
<pending>
.. internal attributes:
.transform: docutils.transforms.components.Filter
.details:
component: 'writer'
format: 'html'
nodes:
<meta content="An amusing story" lang="en" name="description">
<pending>
.. internal attributes:
.transform: docutils.transforms.components.Filter
.details:
component: 'writer'
format: 'html'
nodes:
<meta content="Un histoire amusant" lang="fr" name="description">
<pending>
.. internal attributes:
.transform: docutils.transforms.components.Filter
.details:
component: 'writer'
format: 'html'
nodes:
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type">
<meta content="Sphinx, documentation, builder" name="keywords">
<meta content="An amusing story" lang="en" name="description">
<meta content="Un histoire amusant" lang="fr" name="description">
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type">
.

Full Test:
Expand Down
36 changes: 4 additions & 32 deletions tests/test_renderers/fixtures/sphinx_syntax_elements.md
Original file line number Diff line number Diff line change
Expand Up @@ -674,38 +674,10 @@ myst:
---
.
<document source="<src>/index.md">
<pending>
.. internal attributes:
.transform: docutils.transforms.components.Filter
.details:
component: 'writer'
format: 'html'
nodes:
<meta content="Sphinx, documentation, builder" name="keywords">
<pending>
.. internal attributes:
.transform: docutils.transforms.components.Filter
.details:
component: 'writer'
format: 'html'
nodes:
<meta content="An amusing story" lang="en" name="description">
<pending>
.. internal attributes:
.transform: docutils.transforms.components.Filter
.details:
component: 'writer'
format: 'html'
nodes:
<meta content="Un histoire amusant" lang="fr" name="description">
<pending>
.. internal attributes:
.transform: docutils.transforms.components.Filter
.details:
component: 'writer'
format: 'html'
nodes:
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type">
<meta content="Sphinx, documentation, builder" name="keywords">
<meta content="An amusing story" lang="en" name="description">
<meta content="Un histoire amusant" lang="fr" name="description">
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type">
.

Full Test:
Expand Down
29 changes: 29 additions & 0 deletions tests/test_sphinx/test_sphinx_builds.py
Original file line number Diff line number Diff line change
Expand Up @@ -242,6 +242,35 @@ def test_extended_syntaxes(
)


@pytest.mark.sphinx(
buildername="text",
srcdir=os.path.join(SOURCE_DIR, "extended_syntaxes"),
freshenv=True,
)
def test_extended_syntaxes_text(
app,
status,
warning,
get_sphinx_app_output,
monkeypatch,
file_regression,
):
"""test setting addition configuration values."""
from myst_parser.mdit_to_docutils.sphinx_ import SphinxRenderer

monkeypatch.setattr(SphinxRenderer, "_random_label", lambda self: "mock-uuid")
app.build()
assert "build succeeded" in status.getvalue() # Build succeeded
warnings = warning.getvalue().strip()
assert warnings == ""
content = get_sphinx_app_output(
app,
buildername="text",
filename="index.txt",
)
file_regression.check(content)


@pytest.mark.sphinx(
buildername="html", srcdir=os.path.join(SOURCE_DIR, "includes"), freshenv=True
)
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
Test
****

*disabled*

a=1

x=5

x=5

$ a=1 $

a

c=3

b

\begin{equation} b=2 \end{equation}

c=3 d=4

Term **1**
Definition *1*

second paragraph

Term 2
Definition 2a

Definition 2b

Term 3
code block

quote

other

term
definition

other term
other definition

*other term*

[image: fun-fish][image]This is a caption in **Markdown**

[image: fishy][image]This is a caption in **Markdown**

Hallo *there*

linkify URL: www.example.com

* hallo

* there

Numbered code block:

type Result = "pass" | "fail"