docs: Update mdBook theme and improve maintainability #7524
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.
Previously, theming Helix's documentation involved making edits to files copied from the default mdBook theme, which would fully override the upstream theme files. This made it difficult to see which theme changes were specific to Helix and prevented any upstream theme fixes from being applied when mdBook updated.
This PR addresses the issue by extracting all of Helix's custom CSS into a dedicated file and removing as many theme files as possible, as recommended by the mdBook docs:
The
index.hbs
file could not be removed since Helix adds a custom theme; once rust-lang/mdBook#2059 is merged it may be possible. Upstream changes were manually merged instead.Tested by running
mdbook serve
underbook/
— pages should be pixel-identical to the current docs except for some upstream changes and a fix for layout differences between themes.