Repository navigation
Some minor fixes how doxygen is rendered in a needs card - #17
Merged
Merged
Conversation
There was a problem hiding this comment.
🟢 Approval recommended
The focused implementation is consistent with RST parsing rules and includes appropriate regression coverage.
0 open findings
What changed in this PR
Improves Doxygen text rendering in needs cards by safely handling inline RST boundaries and keeping titles markup-free.
Changes:
- Adds boundary-aware joining for inline RST markup.
- Adds explicit plain-text extraction for need titles.
- Adds regression tests for adjacent markup and links.
| File | Description |
|---|---|
sphinx/_scripts/rst_builders.py |
Produces plain-text procedure titles. |
sphinx/_scripts/doxygen_parser.py |
Handles inline markup boundaries and plain-text extraction. |
sphinx/_extensions/_tests/test_inline_markup.py |
Tests rendering and plain-text behavior. |
🧠 Review effort: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
tobiaskaestner
force-pushed
the
tkaestner/rst-inline-markup
branch
from
October 13, 2026 19:06
35be9c5 to
8451de9
Compare
RST accepts inline markup only next to whitespace or some punctuation. Doxygen prose often puts code or a link directly against other text: "@p data_p[0..LIST_LEN-1]" gives a literal before "[", and "K_MSGQ_DEFINE()d" a link before "d". Both are valid Doxygen, but the RST showed the raw markup: in the Zephyr test specification, 93 "start-string without end-string" warnings. para_text now puts an escaped space between such markup and its neighbour. RST takes it as the boundary and removes it from the output. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tobias Kaestner <tobias.kaestner@inovex.de>
A test procedure need takes its title from the brief, and a need title is not parsed. The brief came from para_text as RST, so the title showed the markup: "drain ``fifo2`` via ISR". para_text(plain=True) gives code and references as their text. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tobias Kaestner <tobias.kaestner@inovex.de>
tobiaskaestner
force-pushed
the
tkaestner/rst-inline-markup
branch
from
October 13, 2026 19:13
8451de9 to
0416025
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Two fixes in the conversion of Doxygen prose to RST.
data_r[]ork_msgq_init()edgave``data_r``[]and showed the raw markup, with "Inline literal start-string without end-string" warnings. The converter now puts an escaped space (\) between the markup and such a neighbour. RST takes the escaped space as the boundary and removes it from the output. The comments are valid Doxygen, and Doxygen's own HTML is correct.🤖 Generated with Claude Code