-
Notifications
You must be signed in to change notification settings - Fork 2.7k
Fix mdman to not incorrectly strip <p> tags
#16158
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
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
This test illustrates that the HTML is generated incorrectly with a `</p>` tag.
The logic for stripping the `<p>` tag in the option description was not considering that the description may contain other block elements. This changes it so that it no longer strips the `<p>` tag. This was done due to some spacing issues which are better resolved with CSS (and is resolved in mdbook 0.5).
This rebuilds all the man pages with the fixed mdman `<p>` tag handling to address the broken HTML. This includes a small CSS change to keep the intended rendering.
Collaborator
weihanglo
approved these changes
Oct 27, 2025
Member
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks! Confirmed that the generated pages look the same as before.
Would you mind sharing which mdbook change will fix this?
Contributor
Author
|
The change is rust-lang/mdBook#2844 where it now parses HTML tags. |
bors
added a commit
to rust-lang/rust
that referenced
this pull request
Oct 29, 2025
Update cargo submodule 11 commits in 344c4567c634a25837e3c3476aac08af84cf9203..6c1b6100343691341b9e76c5acc594e78220f963 2025-10-15 15:01:32 +0000 to 2025-10-28 16:27:52 +0000 - feat(build-analysis): JSONL-based logging infra (rust-lang/cargo#16150) - feat: support array of any types in Cargo config (rust-lang/cargo#16103) - test(git): add more fetch-index backend interop (rust-lang/cargo#16162) - feat(git): support shallow fetch for Git CLI backend (rust-lang/cargo#16156) - Fix mdman to not incorrectly strip `<p>` tags (rust-lang/cargo#16158) - chore(triagebot): enable range-diff and review-changes-since (rust-lang/cargo#16152) - Avoid specifying which version will change behavior (rust-lang/cargo#16153) - Make shell completion variables private. (rust-lang/cargo#16144) - More warning conversions (rust-lang/cargo#16143) - Bump openssl-src to 300.3.5.4+3.5.4 (rust-lang/cargo#16140) - build: remove duplicate dependency, consolidate over unicode-ident (rust-lang/cargo#16137)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
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.
This fixes an issue with how mdman was generating HTML for command-line options. It was incorrectly stripping the
<p>tag in the description of the flag when the description had multiple blocks. The code was assuming the description was just a single paragraph, but that isn't correct when there are multiple paragraphs or other block-level elements like lists. This resulted in broken HTML tags.The solution here is to stop stripping the
<p>tags from the description, and instead to just use CSS to fix the spacing that it creates. (The specific CSS here will be part of mdbook 0.5.)This will be required for mdbook 0.5 because it is stricter about having properly balanced HTML tags.