Я попытался найти это, но не смог получить никакого ответа, который указывал бы на решение. Я полагаю, сначала позвольте мне начать с некоторой предыстории.
Моя цель:
В настоящее время я выясняю, как получить приличную автоматизированную документацию, созданную для определенного репозитория скриптов Python. Это библиотека, а не «проект» как таковой. Он также живет в своем собственном месте, поскольку он поддерживается не отдельной установкой Python, а реализацией Python 2.7, которая поставляется с Autodesk Maya. Таким образом, в библиотеке есть несколько модулей, организованных так, как это имеет смысл для нас, и все функции имеют строку документации, которая написана в соответствии с reStructuredText (: param parameterName: Description и т. Д.). Я искал что-то, что бы просматривало весь репозиторий и создавало красивую html-документацию, которая выглядела бы аккуратно и упростила бы поиск существующих функций, думая, что она должна существовать, но, увы, я не смог найти ничего, что могло бы быть это удобно для пользователя.
Что я пробовал:
Sphinx, pdoc3 - оба доказали разные уровни неидеальности.
Что я решил делать:
Последнее, что я пробовал, - это mkdocs. Это кажется довольно упрощенным не только потому, что на самом деле он ничего не делает, а создает заглушку страницы, которая заполняется на основе одного файла конфигурации .yaml и файлов .md для каждой страницы, которые пользователь должен предоставить. К вашему сведению, я новичок как в yaml, так и в md, так как мне никогда не приходилось использовать ни то, ни другое. Я решил создать себе оболочку (для функции one-button-to-make-docs), которая в основном будет работать через мою библиотеку python, создавая страницу .md для каждого модуля и заполняя ее функциями / классами и их строками документации. Мне пришлось бы самому разбирать строки документации, но это не так уж важно. Это в основном превратило бы mkdocs в довольно приличную автоматизированную документацию без необходимости ручного ввода. Теперь ... Мне нравится тема readthedocs, которую вы можете установить для своей документации в конфигурационном файле yaml, но именно здесь я застрял.
Моя проблема
Когда я использую mkdocs для обслуживания своего сайта, я хотел бы, чтобы все, что имеет иерархию в боковом меню, было сворачиваемым, как в этом примере (обратите внимание на значки свертывания / развертывания на левой боковой панели):
Но я получаю не складываемость:
Следует отметить, я полагаю, что в моем случае раздел 'attr' - это один сайт .md, который имеет просто простую структуру заголовка h3 для каждого имени функции и некоторого описания под, прежде чем иметь горизонтальное правило для разделения из следующей функции.
Кроме того, в конфигурационном файле yaml для структуры mydocs структура очень проста:
site_name: My Repo
nav:
- Home: 'index.md'
- 'Modules':
- attr: 'pageA.md'
- pageB: 'pageB.md'
- pageC: 'pageC.md'
- About: 'about.md'
theme:
name: readthedocs
include_homepage_in_sidebar: false
highlightjs: true
hijs_languages:
- python
markdown_extensions:
- toc:
permalink: True
separator: "_"
Итак, вопрос в том, как мне сделать так, чтобы на боковой панели были маленькие значки разворачивания / сворачивания? (а именно сайт attr на данный момент) Это выполнимо? Можно ли это сделать через файл конфигурации yaml или файлы .md каждой страницы?
И, возможно, есть лучшая альтернатива тому, что я делаю, которая не потребовала бы от меня написания собственного решения для создания документов с помощью одной кнопки?
Спасибо!
href="#"
для меню товары, на которые нет ссылки. Но у меня все равно возникают другие глюки. - person Maëlan   schedule 25.04.2021