Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to edit Sidebar under Sphinx Alabaster theme

I have the following index.rst file.

Know the cell population of your data
=====================================
Some content

.. toctree::
   :maxdepth: 2

Installation
~~~~~~~~~~~~
.. toctree::
   :maxdepth: 2

   installation

Scripts
~~~~~~~
.. toctree::
   :maxdepth: 2

   scripts

API documentation
~~~~~~~~~~~~~~~~~
.. toctree::
   :maxdepth: 2

   apidoc

Roadmap
~~~~~~~
.. toctree::
   :maxdepth: 2

   roadmap

Indices and Tables
==================
* :ref: `genindex`

Now the sidebar looks like this:

enter image description here

As described in that image. I'd like to do couple of things.

  1. remove the title only in the sidebar but maintaining it in the main page.
  2. add new URL link, but not showing it in the main page like "Indices and Tables"

How can I do that?

like image 895
neversaint Avatar asked Oct 09 '15 02:10

neversaint


2 Answers

I finally fixed it the following way

In the Sphinx's _template directory create a file called foo.html.

The content may look something like this:

<hr />
<p>
<h2 class='logo'>
<a href="https://foo.bar.com/">Web Version</a>
</h2>
</p>

Finally in conf.py add this:

html_sidebars = {
        '**': [
                 'localtoc.html',
                 'relations.html',
                 'searchbox.html',
                 # located at _templates/
                 'foo.html',
            ]

        }

At the end it looks like this:

enter image description here

like image 125
neversaint Avatar answered Oct 16 '22 13:10

neversaint


I can propose something for the first question. I'm in no way an expert in CSS so my solution isn't probably the more elegant one, but it works ! Put in your 'source/_static/custom.css' file :

.sphinxsidebar a.reference.internal[href='#'] {
  display: none;
}

Maybe a CSS expert should give a better selector …

like image 43
aflp91 Avatar answered Oct 16 '22 14:10

aflp91