Size: a a a

DocOps-сообщество

2019 December 10

NV

Nick Volynkin in DocOps-сообщество
Lana
у меня уже такой день давно настал)
Расскажи )
источник

AB

Arina Ballerina in DocOps-сообщество
Привет! TLDR

Пару месяцев назад я решала проблему — чем генерить документацию в PDF, если у тебя доку собирает MkDocs, который из коробки этого не умеет. Просила тут помощи и обещала здесь же отписаться, что пробовала, к какому решению пришла. Я начинающий автоматизатор, могу написать простенький скрипт на баше или питоне, не больше. В сторону генерации из HTML я сразу не пошла, так как там не одностраничный документ и CSS для меня это слишком сложно. Поэтому я смотрела конвертеры из Markdown в PDF.

Что я пробовала:

1. Конвертер https://hub.docker.com/r/fiware/md2pdf/. Мне с разбега даже hello world не дался, нужно разбираться в настройках. Если бы не помог @glu0n, я бы может и не справилась. Результат очень не очень внешне + не работает с кириллицей из коробки. Зато не нужно собирать всё в один файл, он это делает за вас, ему можно скормить тот же конфиг что уже есть в MkDocs.

2. Typora https://typora.io/. Самое простое и быстрое решение. Делает все через Pandoc, очень хорошо настроен шаблон, PDF получается эстетичный, правильно подсвечивает код. Можно скачать десктопное приложение. Cобственно я так и сделала, когда мне нужно было сделать PDF быстро. Минусы: все равно кое-чего не хватает например, в готовом PDF нет номеров страниц, нужно как-то собирать все md-файлы в один, ну и герерить придется руками (зато GUI).

3. Foliant https://github.com/foliant-docs. Самый серьезный инструмент, делает всё, что нужно. Тоже генерит через Pandoc. Тоже не нужно собирать ему один файл. Разобраться самостоятельно можно, есть документация, хотя мне все-таки потребовалась помощь создателей, но они слава богу отвечают в чате. Из коробки PDF у меня получился достаточно приличного качества. Но стало понятно, что если я хочу что-то поправить, то нужно будет самой настраивать шаблон, плюс Foliant по-моему нет смысла использовать только для сборки PDF, он не использует ваш конфиг MkDocs, использует свой конфиг с содержанием (foliant.yml). По-хорошему нужно делать сборку всех форматов доки Фолиантом.

4. Pandoc. Полный контроль над процессом, но настройка, самое сложное — LaTeX-шаблон. Ну и собирать все md-файлы в один тоже придется. Килограммы документации, и она неплохая.

Как я генерирую PDF в итоге:

Стало понятно что все равно придется настраивать LaTeX-шаблон.  И надо склеить md-файлы в один. Так как я контрол-фрик, да и сборка html-документации в MkDocs у меня уже настроена, я не стала склеивать файлы сторонней тулзой. Я написала короткий Python-скрипт, который парсит YAML-конфиг MkDocs и собирает один md-файл.  Этот один я скармливаю Pandoc. Использую --pdf-engine=xelatex. Обложку с названием документа дизайнер сделал в PDF и я ее приклеиваю в конце с помощью pdfunite. Осталось разобраться в туче параметров tex-шаблонов.
источник

НН

Нац Нац in DocOps-сообщество
>tldr
источник

v

vladimir in DocOps-сообщество
- когда вы узнали, что Typora умеет генерить PDF?
- сейчас 😳
источник

НН

Нац Нац in DocOps-сообщество
ща каждая вторая маркдаун-рилейтед тулза умеет в экспорт пдф
источник

v

vladimir in DocOps-сообщество
Arina Ballerina
Привет! TLDR

Пару месяцев назад я решала проблему — чем генерить документацию в PDF, если у тебя доку собирает MkDocs, который из коробки этого не умеет. Просила тут помощи и обещала здесь же отписаться, что пробовала, к какому решению пришла. Я начинающий автоматизатор, могу написать простенький скрипт на баше или питоне, не больше. В сторону генерации из HTML я сразу не пошла, так как там не одностраничный документ и CSS для меня это слишком сложно. Поэтому я смотрела конвертеры из Markdown в PDF.

Что я пробовала:

1. Конвертер https://hub.docker.com/r/fiware/md2pdf/. Мне с разбега даже hello world не дался, нужно разбираться в настройках. Если бы не помог @glu0n, я бы может и не справилась. Результат очень не очень внешне + не работает с кириллицей из коробки. Зато не нужно собирать всё в один файл, он это делает за вас, ему можно скормить тот же конфиг что уже есть в MkDocs.

2. Typora https://typora.io/. Самое простое и быстрое решение. Делает все через Pandoc, очень хорошо настроен шаблон, PDF получается эстетичный, правильно подсвечивает код. Можно скачать десктопное приложение. Cобственно я так и сделала, когда мне нужно было сделать PDF быстро. Минусы: все равно кое-чего не хватает например, в готовом PDF нет номеров страниц, нужно как-то собирать все md-файлы в один, ну и герерить придется руками (зато GUI).

3. Foliant https://github.com/foliant-docs. Самый серьезный инструмент, делает всё, что нужно. Тоже генерит через Pandoc. Тоже не нужно собирать ему один файл. Разобраться самостоятельно можно, есть документация, хотя мне все-таки потребовалась помощь создателей, но они слава богу отвечают в чате. Из коробки PDF у меня получился достаточно приличного качества. Но стало понятно, что если я хочу что-то поправить, то нужно будет самой настраивать шаблон, плюс Foliant по-моему нет смысла использовать только для сборки PDF, он не использует ваш конфиг MkDocs, использует свой конфиг с содержанием (foliant.yml). По-хорошему нужно делать сборку всех форматов доки Фолиантом.

4. Pandoc. Полный контроль над процессом, но настройка, самое сложное — LaTeX-шаблон. Ну и собирать все md-файлы в один тоже придется. Килограммы документации, и она неплохая.

Как я генерирую PDF в итоге:

Стало понятно что все равно придется настраивать LaTeX-шаблон.  И надо склеить md-файлы в один. Так как я контрол-фрик, да и сборка html-документации в MkDocs у меня уже настроена, я не стала склеивать файлы сторонней тулзой. Я написала короткий Python-скрипт, который парсит YAML-конфиг MkDocs и собирает один md-файл.  Этот один я скармливаю Pandoc. Использую --pdf-engine=xelatex. Обложку с названием документа дизайнер сделал в PDF и я ее приклеиваю в конце с помощью pdfunite. Осталось разобраться в туче параметров tex-шаблонов.
а операционка у Вас какая?
поисковик говорит, что "pdfunite" для linux...
источник

AB

Arina Ballerina in DocOps-сообщество
vladimir
а операционка у Вас какая?
поисковик говорит, что "pdfunite" для linux...
macOS
источник

NV

Nick Volynkin in DocOps-сообщество
Arina Ballerina
Привет! TLDR

Пару месяцев назад я решала проблему — чем генерить документацию в PDF, если у тебя доку собирает MkDocs, который из коробки этого не умеет. Просила тут помощи и обещала здесь же отписаться, что пробовала, к какому решению пришла. Я начинающий автоматизатор, могу написать простенький скрипт на баше или питоне, не больше. В сторону генерации из HTML я сразу не пошла, так как там не одностраничный документ и CSS для меня это слишком сложно. Поэтому я смотрела конвертеры из Markdown в PDF.

Что я пробовала:

1. Конвертер https://hub.docker.com/r/fiware/md2pdf/. Мне с разбега даже hello world не дался, нужно разбираться в настройках. Если бы не помог @glu0n, я бы может и не справилась. Результат очень не очень внешне + не работает с кириллицей из коробки. Зато не нужно собирать всё в один файл, он это делает за вас, ему можно скормить тот же конфиг что уже есть в MkDocs.

2. Typora https://typora.io/. Самое простое и быстрое решение. Делает все через Pandoc, очень хорошо настроен шаблон, PDF получается эстетичный, правильно подсвечивает код. Можно скачать десктопное приложение. Cобственно я так и сделала, когда мне нужно было сделать PDF быстро. Минусы: все равно кое-чего не хватает например, в готовом PDF нет номеров страниц, нужно как-то собирать все md-файлы в один, ну и герерить придется руками (зато GUI).

3. Foliant https://github.com/foliant-docs. Самый серьезный инструмент, делает всё, что нужно. Тоже генерит через Pandoc. Тоже не нужно собирать ему один файл. Разобраться самостоятельно можно, есть документация, хотя мне все-таки потребовалась помощь создателей, но они слава богу отвечают в чате. Из коробки PDF у меня получился достаточно приличного качества. Но стало понятно, что если я хочу что-то поправить, то нужно будет самой настраивать шаблон, плюс Foliant по-моему нет смысла использовать только для сборки PDF, он не использует ваш конфиг MkDocs, использует свой конфиг с содержанием (foliant.yml). По-хорошему нужно делать сборку всех форматов доки Фолиантом.

4. Pandoc. Полный контроль над процессом, но настройка, самое сложное — LaTeX-шаблон. Ну и собирать все md-файлы в один тоже придется. Килограммы документации, и она неплохая.

Как я генерирую PDF в итоге:

Стало понятно что все равно придется настраивать LaTeX-шаблон.  И надо склеить md-файлы в один. Так как я контрол-фрик, да и сборка html-документации в MkDocs у меня уже настроена, я не стала склеивать файлы сторонней тулзой. Я написала короткий Python-скрипт, который парсит YAML-конфиг MkDocs и собирает один md-файл.  Этот один я скармливаю Pandoc. Использую --pdf-engine=xelatex. Обложку с названием документа дизайнер сделал в PDF и я ее приклеиваю в конце с помощью pdfunite. Осталось разобраться в туче параметров tex-шаблонов.
Круто 👏
источник

AB

Arina Ballerina in DocOps-сообщество
Nick Volynkin
Круто 👏
Спасибо!
источник

v

vladimir in DocOps-сообщество
за обзор - СПАСИБО! 👍
источник

AB

Arina Ballerina in DocOps-сообщество
Нац Нац
ща каждая вторая маркдаун-рилейтед тулза умеет в экспорт пдф
Пока самые красивые static html-доки, что я видела, получаются у MkDocs, поэтому я не хочу от него отказываться в пользу тех, кто умеет и то и то.
источник

FM

Fox Mulder in DocOps-сообщество
hugo?
источник

НН

Нац Нац in DocOps-сообщество
Arina Ballerina
Пока самые красивые static html-доки, что я видела, получаются у MkDocs, поэтому я не хочу от него отказываться в пользу тех, кто умеет и то и то.
я к комменту выше про Типору, а так да, респект за проделанный путь
источник

НН

Нац Нац in DocOps-сообщество
Fox Mulder
hugo?
Хуго - это один бинарник, к пдф-у он не имеет отношения
источник

NV

Nick Volynkin in DocOps-сообщество
Нац Нац
Хуго - это один бинарник, к пдф-у он не имеет отношения
Мне кажется, это был ответ к «самым красивым html-докам»
источник

FM

Fox Mulder in DocOps-сообщество
true
источник

НН

Нац Нац in DocOps-сообщество
Решают темы, не что внутри
источник

НН

Нац Нац in DocOps-сообщество
а так да, Хуга полюбилась, вчера до 9 вечера ворочал туда-сюда вот это вот всё
источник

AB

Arina Ballerina in DocOps-сообщество
Fox Mulder
hugo?
Вот его я еще не смотрела, только в эти выходные решила что-то дома собрать на коленке на нем.
источник

НН

Нац Нац in DocOps-сообщество
Хочется в нём досконально разобраться и клиентам всё на хуге сетапить, я как доделаю всё, запилю статейку как из хуги сделать удобную цмс-ку для нелюбителей гита
источник