-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Add Sphinx collapsible and tab plugins #4225
Conversation
Caution Review failedThe pull request is closed. WalkthroughThe changes involve modifications to the Changes
Possibly related PRs
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
✅ Deploy Preview for esphome ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
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.
Actionable comments posted: 1
🧹 Outside diff range and nitpick comments (4)
conf.py (1)
44-45
: LGTM! Great addition to enhance documentation capabilities.The addition of "sphinx_tabs.tabs" and "sphinx_toolbox.collapse" extensions aligns perfectly with the PR objectives. These new plugins will enable the use of collapsible sections and tabs in the documentation, which can significantly improve the readability and organization of the HTML output for esphome.io.
Consider documenting the usage of these new extensions in your project's documentation guidelines to ensure consistent application across the documentation.
index.rst (3)
17-23
: New section added for demonstration purposes.This section is clearly marked as "REMOVE BEFORE MERGE" and contains examples of new Sphinx extensions. It's appropriate for testing and documentation but should not be included in the final merge.
Remember to remove this entire section, including the "REMOVE BEFORE MERGE" comments, before finalizing the PR.
60-212
: Tabbed content examples added successfully.The tabbed content examples have been implemented correctly using the Sphinx tabs extension. They showcase:
- Basic tabs
- Nested tabs
- Grouped tabs
- Code tabs with syntax highlighting
The syntax is correct and the examples are well-structured, providing a good demonstration of the feature's capabilities.
Consider adding a brief explanation or comment above each tabbed example to clarify its purpose or use case. This would enhance the documentation's educational value.
213-220
: Reminder to remove example section.This is another clear marker to remove the entire example section before merging.
Ensure that this section, along with all the examples between the "REMOVE BEFORE MERGE" comments, is deleted before the final merge.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
📒 Files selected for processing (2)
- conf.py (1 hunks)
- index.rst (1 hunks)
🧰 Additional context used
📓 Path-based instructions (2)
conf.py (1)
Pattern
**
: - Do not generate or add any sequence diagramsindex.rst (1)
Pattern
**
: - Do not generate or add any sequence diagrams
🔇 Additional comments (1)
index.rst (1)
24-59
: Collapsible sections added successfully.The collapsible sections have been implemented correctly using the Sphinx collapse extension. They demonstrate various use cases including:
- Basic collapsible sections
- Custom labels and classes
- Nested collapsible sections
- Sections open by default
The syntax is correct and consistent throughout the examples.
Description:
Add sphinx plugins to make writing better documentation possible.
I'm actually doing this PR to help out shvm who wants to use collapsibles in his documentation RST, but it's a feature I'd like to use in the near future as well. Thus, there's no actual documentation updates in this PR, it's just a build system configuration update to allow use of new Sphinx plugins with support for collapsibles, tabs, and some other features that allow generation of better documentation html for esphome.io. An "infrastructure" PR basically.
Figuring out the dependency / version web was quite tedious, but versions continue to be hard-coded so nothing will break in the future.
Related issue (if applicable): fixes
Pull request in esphome with YAML changes (if applicable): esphome/esphome#
Checklist:
I am merging into
next
because this is new documentation that has a matching pull-request in esphome as linked above.or
I am merging into
current
because this is a fix, change and/or adjustment in the current documentation and is not for a new component or feature.Link added in
/index.rst
when creating new documents for new components or cookbook.