Using Sphinx, how can I remove the title appearing in the side-bar's table of context?
-
18-01-2021 - |
سؤال
Say my some.rst
file looks like this:
============
My Title
============
1. Section
================
2. Section
=================
After compiling, in the resulting some.html
there will be a table of contents in the side bar that appears as:
My Title
- Section
- Section
Is there a simple way to remove 'My Title' from the table of contents in some.html
?
المحلول
The easy way is to use an object type that's ignored by the TOC directive:
.. rubric:: My Title
This creates text that looks somewhat like a heading, but is excluded from the TOC. You can update your CSS file with whatever style you want for the .rubric
class, even mimicking h1 style if you like.
See "Non-TOC headings within a Restructuredtext page" for how to define rubric styled classes.
نصائح أخرى
I was able to solve this by using the .. raw:: html
method as described above, with a slight tweak (that avoided breaking the auto-generated TOC). as described earlier, if your file only contains .. raw:: html
headings, it will break the Sphinx auto-generated TOC. however, if you use .. raw:: html
and add ---------------------
below it, it won't show on the left-hand nav, and won't break the TOC.
e.g.
so i finally accidentally figured out how to get headings to not be displayed in the left-hand TOC. if your file only contains .. raw:: html
h2 headings, it will break the sphinx auto-generated TOC (as mentioned in the stackoverflow article). however, if you use .. raw:: html
and ---------------------
below it, it won't show on the left-hand nav, and won't break the TOC :star2:
e.g.
.. raw:: html
<h2>What Can I Do With KSQL?</h2>
---------------------
If you are trying to remove it from all of your documents, try customizing the default template. Otherwise you will need to modify the HTML builder by creating a subclass.
Very late to this party, I know. I just had this issue, needed to mimic h2 and was not able to edit the style sheet.
My solution ended up being adding raw html in the some.rst
:
:raw-html:`<h1>My Title</h1>`
1. Section
================
2. Section
=================