
Это статья — личный опыт. Сильно много расписывать не буду. Пишу ее больше для того, чтобы самому не забыть о том что сделал ).
Ну и думаю кому то этот опыт может быть полезен.
Что мы получим в итоге.
Сейчас есть документация реализованная на сайте https://cms.skeeks.com/docs
В результате получим:
https://cms.skeeks.com/cms-docs/ru/overview.html
https://cms.skeeks.com/cms-docs/en/overview.html
https://media.readthedocs.org/pdf/skeeks-cms/latest/skeeks-cms.pdf - pdf документация сгенерированная сервисом read the docs.
Предисловие.
Есть наша SkeekS CMS, а вот документации по ней нет. Как писать документацию? Самое первое что сделано, так это документация на самом сайте, реализованная средствами самой же cms.
В целом неплохо, писать удобно. Благодаря cms есть пара языков, если надо можно и больше. И на первых порах она вполне себе выручает. Однако, не все так хорошо.
Чего не хватает?
- Как минимум версионирования
- Скачать ее офлайн
- Распечатать в каком либо формате
- Сделать pdf
- Совместная доработка и обновление
Вижу два решения этих проблем. Допрограммировать сайт или поискать какие то готовые решения. Ведь в современном мире много разных проектов и еще больше документации к ним.
Решение.
Погуглив, можно найти много разных решений. И я остановился на одном из них.
Sphinx — Python documentation generator (http://www.sphinx-doc.org/)
Многие знакомые мне, крупные проекты используют именно этот метод написания документации.
Не так давно статья на хабре о том, что ядро linux документируют таким же образом https://habrahabr.ru/post/316758/
https://github.com/skeeks-cms/cms/tree/master/docs — проект документации SkeekS CMS (который и был реализован)
https://docs.readthedocs.io/en/latest/ — документация по сервису Read the docs
http://sphinx-ru.readthedocs.io/ru/latest/rst-markup.html — стандартный синтаксис разметки reStructuredText
Процесс.
На сервере линукс, с установленным python в консоле делаем команды.
apt-get install python-pip
pip install Sphinx
# У нас будет много переводов
pip install sphinx-intl
# Документация должна быть красивой
pip install sphinx_rtd_theme
Полезные команды с которыми я столкнулся и использую в работе
make gettext
make html
sphinx-intl update -p _build/gettext -l ru
sphinx-build -D language='ru' ./ build/ru
sphinx-build ./ build/en
-
Семенов Александр
- /
- 23.02.2017
- /
- 0
- /
- 10610
Alle Kommentare (0)