Skip to content

Commit 02d8eff

Browse files
committed
FIX: fix solution node titles are links to exercise node
1 parent 94fa543 commit 02d8eff

File tree

7 files changed

+12
-11
lines changed

7 files changed

+12
-11
lines changed

sphinx_exercise/post_transforms.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -147,22 +147,23 @@ def resolve_solution_title(app, node, exercise_node):
147147
updated_title_text += f" {node_number}"
148148
# New Title Node
149149
updated_title = docutil_nodes.title()
150-
updated_title += build_reference_node(app, exercise_node)
151-
updated_title += docutil_nodes.Text(updated_title_text)
150+
wrap_reference = build_reference_node(app, exercise_node)
151+
wrap_reference += docutil_nodes.Text(updated_title_text)
152152
node["title"] = updated_title_text
153153
# Parse Custom Titles from Exercise
154154
if len(exercise_title.children) > 1:
155155
subtitle = exercise_title.children[1]
156156
if isinstance(subtitle, exercise_subtitle):
157-
updated_title += docutil_nodes.Text(" (")
157+
wrap_reference += docutil_nodes.Text(" (")
158158
for child in subtitle.children:
159159
if isinstance(child, docutil_nodes.math):
160160
# Ensure mathjax is loaded for pages that only contain
161161
# references to nodes that contain math
162162
domain = app.env.get_domain("math")
163163
domain.data["has_equations"][app.env.docname] = True
164-
updated_title += child
165-
updated_title += docutil_nodes.Text(")")
164+
wrap_reference += child
165+
wrap_reference += docutil_nodes.Text(")")
166+
updated_title += wrap_reference
166167
updated_title.parent = title.parent
167168
node.children[0] = updated_title
168169
node.resolved_title = True

tests/test_solution/_linked_enum.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<div class="solution admonition" id="sol-number">
2-
<p class="admonition-title"><a class="reference internal" href="#ex-number"></a>Solution to Exercise 6 (This is a title)</p>
2+
<p class="admonition-title"><a class="reference internal" href="#ex-number">Solution to Exercise 6 (This is a title)</a></p>
33
<div class="section" id="solution-content">
44
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
55
<div class="math notranslate nohighlight">

tests/test_solution/_linked_enum_class.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<div class="solution test-solution admonition" id="solution-label">
2-
<p class="admonition-title"><a class="reference internal" href="_linked_enum.html#ex-number"></a>Solution to Exercise 6 (This is a title)</p>
2+
<p class="admonition-title"><a class="reference internal" href="_linked_enum.html#ex-number">Solution to Exercise 6 (This is a title)</a></p>
33
<div class="section" id="solution-content">
44
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
55
</div>

tests/test_solution/_linked_unenum_mathtitle.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<div class="solution admonition" id="sol-nonumber-title-math">
2-
<p class="admonition-title"><a class="reference internal" href="#ex-nonumber-title-math"></a>Solution to Exercise (This is a title <span class="math notranslate nohighlight">\(\mathbb{R}\)</span>)</p>
2+
<p class="admonition-title"><a class="reference internal" href="#ex-nonumber-title-math">Solution to Exercise (This is a title <span class="math notranslate nohighlight">\(\mathbb{R}\)</span>)</a></p>
33
<div class="section" id="solution-content">
44
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
55
</div>

tests/test_solution/_linked_unenum_mathtitle2.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<div class="solution admonition" id="sol-nonumber-title-math2">
2-
<p class="admonition-title"><a class="reference internal" href="#ex-nonumber-title-math2"></a>Solution to Exercise (This is a title <span class="math notranslate nohighlight">\(P_t(x, y) = \mathbb 1\{x = y\} + t Q(x, y) + o(t)\)</span>)</p>
2+
<p class="admonition-title"><a class="reference internal" href="#ex-nonumber-title-math2">Solution to Exercise (This is a title <span class="math notranslate nohighlight">\(P_t(x, y) = \mathbb 1\{x = y\} + t Q(x, y) + o(t)\)</span>)</a></p>
33
<div class="section" id="solution-content">
44
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
55
</div>

tests/test_solution/_linked_unenum_notitle.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<div class="solution admonition" id="sol-nonumber-notitle">
2-
<p class="admonition-title"><a class="reference internal" href="#ex-nonumber-notitle"></a>Solution to Exercise</p>
2+
<p class="admonition-title"><a class="reference internal" href="#ex-nonumber-notitle">Solution to Exercise</a></p>
33
<div class="section" id="solution-content">
44
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
55
</div>

tests/test_solution/_linked_unenum_title.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<div class="solution admonition" id="sol-nonumber-title">
2-
<p class="admonition-title"><a class="reference internal" href="#ex-nonumber-title"></a>Solution to Exercise (This is a title)</p>
2+
<p class="admonition-title"><a class="reference internal" href="#ex-nonumber-title">Solution to Exercise (This is a title)</a></p>
33
<div class="section" id="solution-content">
44
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
55
</div>

0 commit comments

Comments
 (0)