Documentation/index.rst | 8 ++++++++ Documentation/sphinx-static/custom.css | 11 +++++++++++ 2 files changed, 19 insertions(+)
The current sidebar in the HTML version of the documentation does not
display the section titles because the toctree directives in the
top-level index.rst document do not contain ":caption:" properties.
Replacing the current section titles by ":caption:" properties would not
allow having text between those and the table of contents.
To workaround this issue, add the ":caption:" properties in the toctree
calls which makes them show up in the sidenbar, but hide them from the
index page with a custom CSS addition.
Additionally, make the section titles in the sidebar bold to make them
stand-out.
This makes the overall structure of the documentation clearer from the
sidebar directly.
PS: This is how I've implemented this in the Yocto Project
documentation[1] where I faced the same issue. See also the index.rst
file[2] (which was by the way inspired by the kernel's own index.rst)
and CSS addition[3].
[1]: https://docs.yoctoproject.org/dev/
[2]: https://git.yoctoproject.org/yocto-docs/tree/documentation/index.rst
[3]: https://git.yoctoproject.org/yocto-docs/tree/documentation/sphinx-static/theme_overrides.css#n106
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
---
Antonin Godard (2):
Documentation: html: show sections in the sidebar
Documentation: html: make sidebar section titles bold
Documentation/index.rst | 8 ++++++++
Documentation/sphinx-static/custom.css | 11 +++++++++++
2 files changed, 19 insertions(+)
---
base-commit: 075b74841bd0065a3bda3440873c747938e69b68
change-id: 20260723-show-sections-in-sidebar-b7f9aadf540e
Antonin Godard <antonin.godard@bootlin.com> writes: > The current sidebar in the HTML version of the documentation does not > display the section titles because the toctree directives in the > top-level index.rst document do not contain ":caption:" properties. > Replacing the current section titles by ":caption:" properties would not > allow having text between those and the table of contents. > > To workaround this issue, add the ":caption:" properties in the toctree > calls which makes them show up in the sidenbar, but hide them from the > index page with a custom CSS addition. > > Additionally, make the section titles in the sidebar bold to make them > stand-out. > > This makes the overall structure of the documentation clearer from the > sidebar directly. > > PS: This is how I've implemented this in the Yocto Project > documentation[1] where I faced the same issue. See also the index.rst > file[2] (which was by the way inspired by the kernel's own index.rst) > and CSS addition[3]. > > [1]: https://docs.yoctoproject.org/dev/ > [2]: https://git.yoctoproject.org/yocto-docs/tree/documentation/index.rst > [3]: https://git.yoctoproject.org/yocto-docs/tree/documentation/sphinx-static/theme_overrides.css#n106 > > Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> > --- > Antonin Godard (2): > Documentation: html: show sections in the sidebar > Documentation: html: make sidebar section titles bold > > Documentation/index.rst | 8 ++++++++ > Documentation/sphinx-static/custom.css | 11 +++++++++++ > 2 files changed, 19 insertions(+) This looks like it could be a nice improvement, but I have a couple of thoughts... - Did you check the PDF build to be sure that the captions don't intrude in some sort of obnoxious ways? - I'd tweak the CSS to remove the white space below the section headings, just to bind them to their subsections properly. Thanks, jon
Hi Jonathan, On Mon Aug 3, 2026 at 9:13 PM CEST, Jonathan Corbet wrote: [...] > This looks like it could be a nice improvement, but I have a couple of > thoughts... > > - Did you check the PDF build to be sure that the captions don't intrude > in some sort of obnoxious ways? It isn't a problem for the Yocto Project documentation PDF. You can have a look at the current PDF for it (with the ":caption:" properties): https://docs.yoctoproject.org/dev/_static/theyoctoproject.pdf And here would be the equivalent PDF with the ":caption:" properties _removed_: https://lufi.bootlin.com/r/JbwZLTrHzJ#s/bmg9ZecGftbwZjvfJzaeh/ustGIzT1mKYJf5Yayu8= I can't spot any differences. I'm struggling to get things right to build the PDF for the kernel docs, so I wasn't able to test it :-/ If you have some container image that I could use, it might help as it seems to be related to my host packages versions. For ePUBs, as Randy mentioned, TOC is handled differently and the captions are not seen in odd places. > - I'd tweak the CSS to remove the white space below the section > headings, just to bind them to their subsections properly. Got it, I added that for the next version. Thanks! Antonin
On 8/3/26 12:13 PM, Jonathan Corbet wrote: > Antonin Godard <antonin.godard@bootlin.com> writes: > >> The current sidebar in the HTML version of the documentation does not >> display the section titles because the toctree directives in the >> top-level index.rst document do not contain ":caption:" properties. >> Replacing the current section titles by ":caption:" properties would not >> allow having text between those and the table of contents. >> >> To workaround this issue, add the ":caption:" properties in the toctree >> calls which makes them show up in the sidenbar, but hide them from the >> index page with a custom CSS addition. >> >> Additionally, make the section titles in the sidebar bold to make them >> stand-out. >> >> This makes the overall structure of the documentation clearer from the >> sidebar directly. >> >> PS: This is how I've implemented this in the Yocto Project >> documentation[1] where I faced the same issue. See also the index.rst >> file[2] (which was by the way inspired by the kernel's own index.rst) >> and CSS addition[3]. >> >> [1]: https://docs.yoctoproject.org/dev/ >> [2]: https://git.yoctoproject.org/yocto-docs/tree/documentation/index.rst >> [3]: https://git.yoctoproject.org/yocto-docs/tree/documentation/sphinx-static/theme_overrides.css#n106 >> >> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> >> --- >> Antonin Godard (2): >> Documentation: html: show sections in the sidebar >> Documentation: html: make sidebar section titles bold >> >> Documentation/index.rst | 8 ++++++++ >> Documentation/sphinx-static/custom.css | 11 +++++++++++ >> 2 files changed, 19 insertions(+) > > This looks like it could be a nice improvement, but I have a couple of > thoughts... > > - Did you check the PDF build to be sure that the captions don't intrude > in some sort of obnoxious ways? > I only checked html and epub output. I can't see that epub is affected. On another note, it would be good to have the kernel version listed in the epub book (output). > - I'd tweak the CSS to remove the white space below the section > headings, just to bind them to their subsections properly. -- ~Randy
Randy Dunlap <rdunlap@infradead.org> writes: >> - Did you check the PDF build to be sure that the captions don't intrude >> in some sort of obnoxious ways? >> > > I only checked html and epub output. I can't see that epub is affected. EPUB is HTML+CSS underneath, though, so I would expect to behave similarly. PDF, though, will lack the CSS trick used to disappear the captions in the normal text. Thanks, jon
© 2016 - 2026 Red Hat, Inc.