1. Sphinx и прочитайте документы
1.1 Sphinx
Sphinx — мощный генератор документации со множеством мощных функций для написания технической документации, в том числе:
- Поддерживайте исходный документ, создавайте веб-страницы, PDF-файлы для печати, документы для электронных читателей (ePub) и т. д.
- Поддержка reStructuredText или Markdown для написания документов
- Широко используемая система документирования кода
- Подсветка синтаксиса примера кода
- Активная официальная и сторонняя экосистема расширений
1.2 Read the Docs
«Read the Docs» предоставляет автоматизированные сборки, контроль версий и онлайн-хостинг, чтобы упростить публикацию документации по программному обеспечению и управление ею. Он использует Sphinx для генерации статических html-страниц, авторизуется через учетную запись github и автоматически завершает генерацию и онлайн-обновление документов, когда локальный проект отправляется в репозиторий github.
1.3 Отношения между ними
Вы можете просто думать о Sphinx как об автономном инструменте для создания документации, который поддерживает различные темы, а Read the Docs — это бесплатная онлайн-платформа для размещения документации, которая использует Sphinx в качестве инструмента для создания документации и предоставляет свои собственные темы. Отношения между ними аналогичны jekyll и GitHub Pages.
2. Установка
2.1 Установка Сфинкса
pip install sphinx
2.2 Установите тему Read the Docs
pip install sphinx_rtd_theme
* 2.3 Установите расширение Sphinx Markdown
По умолчанию для написания документов используется reStructuredText (.rst), для поддержки Markdown (.md) необходимо установить это расширение.
pip install recommonmark
3. Добавьте документацию в существующий проект
Реальный проект автора размещен на GitHubimgkernel
Например. Читатели модифицируют соответствующие части своими реальными проектами, которые не будут описаны отдельно ниже.
3.1 Создайте каталог документов в корневом каталоге проекта
Клонируйте проект:
git clone https://github.com/kenblikylee/imgkernel.git
cd imgkernel
Создайте и переключитесь наdocs
Филиал:
git checkout -b docs
Создать подкаталогиdocs
:
mkdir docs
3.2 Использованиеsphinx-quickstart
Инициализировать документ
Входитьdocs
каталог, запустите командуsphinx-quickstart
:
cd docs
sphinx-quickstart
Справочник по конфигурации опции:
> Separate source and build directories (y/n) [n]: y
> Name prefix for templates and static dir [_]:
> Project name: imgkernel
> Author name(s): ken
> Project release []: 0.1.0
> Project language [en]: zh_CN
> Source file suffix [.rst]:
> Name of your master document (without suffix) [index]:
> autodoc: automatically insert docstrings from modules (y/n) [n]: y
> doctest: automatically test code snippets in doctest blocks (y/n) [n]:
> intersphinx: link between Sphinx documentation of different projects (y/n) [n]:
> todo: write "todo" entries that can be shown or hidden on build (y/n) [n]:
> coverage: checks for documentation coverage (y/n) [n]:
> imgmath: include math, rendered as PNG or SVG images (y/n) [n]:
> mathjax: include math, rendered in the browser by MathJax (y/n) [n]: y
> ifconfig: conditional inclusion of content based on config values (y/n) [n]:
> viewcode: include links to the source code of documented Python objects (y/n) [n]:
> githubpages: create .nojekyll file to publish the document on GitHub pages (y/n) [n]:
> Create Makefile? (y/n) [y]:
> Create Windows command file? (y/n) [y]:
Инициализация завершена, просмотрите структуру каталогов следующим образом:
$ tree --dirsfirst
.
├── build
├── source
│ ├── _static
│ ├── _templates
│ ├── conf.py
│ └── index.rst
├── Makefile
└── make.bat
3.3 Изменить конфигурацию темы
Редактировать файл конфигурации документаdocs/source/conf.py
. Тема по умолчаниюalabaster
(Ссылка на другие встроенные темы Sphinx [6]), измените его наsphinx_rtd_theme
.
html_theme = 'sphinx_rtd_theme'
Дополнение: для поддержки уценки добавьтеrecommonmark
Расширить доextensions
В списке конфигурации:
extensions = [
'otherextension',
'...' ,
'recommonmark',
]
3.4 Генерация html
make html
html генерируется вbuild
В каталоге просмотрите структуру каталогов следующим образом:
$ tree --dirsfirst -L 2 -I doctrees build
build
└── html
├── _sources
├── _static
├── genindex.html
├── index.html
├── objects.inv
├── search.html
└── searchindex.js
Локальный предварительный просмотр:
open build/html/index.html
4. Отправьте проект и отправьте на github
cd ..
git add docs
git commit -m "add docs."
git push origin docs:docs
5. Опубликуйте, чтобы прочитать документы
5.1 Разрешение на импорт проектов
Браузер открывает веб-сайт «Читать документы».readthedocs.org. Войдите с авторизацией учетной записи GitHub. «Читать документы» автоматически синхронизирует все проекты GitHub и отображает их в списке, выберите проектimgkernel
, нажмите кнопку ➕ справа, чтобы импортировать проект.
5.2 Изменить конфигурацию проекта
Заходим на страницу проекта - управление - дополнительные настройки.
- Выберите [Ветвь по умолчанию] как
docs
- Измените [Файл конфигурации Python] на
docs/source/conf.py
Нажмите кнопку [Сохранить] внизу, чтобы сохранить изменения. «Читать документы» повторно потянет веткуdocs
, сборка генерирует html . Сборка занимает немного времени.После завершения сборки нажмите зеленую кнопку в правой части главной страницы страницы [Читать документацию], чтобы открыть финальную онлайн-страницу, которая нам нужна.адрес документа.
Его нужно настроить только один раз, и каждый раз, когда вы отправляете документ вdocs
Branches, веб-сайт "Read the Docs" автоматически создаст и выпустит, не правда ли, это очень удобно. ^^
6. Документация
Sphinx использует reStructuredText как язык разметки обычного текста по умолчанию. reStructuredText использует справочник по синтаксисуНачало работы с reStructuredText.
Ссылаться на
- [1] Getting Started with Sphinx
- [2] Currently supported languages by Sphinx
- [3] Configure Sphinx - sphinx-quickstart
- [4] sphinx-rtd-theme.readthedocs.io
- [5] Read the Docs
- [6] Sphinx builtin themes
- [7] github imgkernel
- [8] Начало работы с reStructuredText
Отсканируйте QR-код в WeChat, чтобы получить оригиналы новейших технологий