Показать все записи в боковой панели Read The Docs

Насколько я понимаю, новая тема Read The Docs генерирует боковую панель из toctree с глубиной 2. Моя документация относительно глубока, а глубина 2 недостаточна для того, чтобы она была полезной. Как я могу увеличить этот лимит или, желательно, полностью его убрать?

Если это невозможно, как я могу использовать локальные ToC вместо глобального toctree?

2 ответа

Решение

Примечание: предыдущий ответ был устаревшим. Как отмечает @Ariel в комментарии, maxdepth теперь настраивается настройкой navigation_depth в html_theme_options, Согласно README, измените это в conf.py вашего проекта:

html_theme_options = {
    'navigation_depth': 4,
}

Глядя на источник для темы на Github, кажется, что глубина ToC жестко задана в строке 93 в sphinx_rtd_theme / layout.html. Таким образом, нет никакой конфигурации, которую вы можете сделать для темы, чтобы переопределить ее.

Так как строка жестко запрограммирована, вы всегда получите глобальное имя домена, возвращаемое toctree вместо локального "поддерживается" следующими строками.

Вы можете, конечно, разветвить тему и изменить эту строку для своего локального использования (и вы можете использовать пользовательские темы в RTD, так что там тоже должно работать). Я пытался сделать это с демо-темой. Похоже, это с maxdepth=3, поэтому может потребоваться дополнительный CSS. Документация для toctree Функция шаблона указывает, что для неограниченной глубины, просто передать maxdepth=-1, Обратите внимание, что это не добавляет коллапс / расширение к подуровням оглавления.

Может быть хорошей целью для запроса на извлечение?

Демо тема с tocdepth = 3

Нет способа настроить это поведение, по крайней мере в ReadTheDocs. Тем не менее, вы все равно можете прочитать дополнительные слои деталей на страницах - они просто не отображаются в навигации.

Другие вопросы по тегам