最近、Asciidoctor周りを調べているのですが、単体で使う分には問題ないものの、asciidoctor-diagram(PlantUMLなど)などを使おうとすると、とたんに環境構築がつらくなってくるので、docker-asciidoctor-jpをforkしてDockerコンテナを作りました。(現状はほぼ同じ内容です)

何ができるか

  • AsciidocテキストをHTML/PDF/EPUB3/mobiへ変換する
    • 図形の描画
      • Graphviz
      • PlantUML
      • ditaa
      • blockdiag(seqdiag/actdiag/nwdiag)
      • mermaid 7.0.9 (2018/02/23追加)
  • シンタックスハイライト(CodeRay/Pygments/highlightjs/prettify )
  • Reveal.jsのプレゼンテーションを作成する
  • その他(docker-asciidoctor参照)

環境

  • Asciidoctor 1.5.6.1
  • asciidoctor-pdf (alpha)
  • Asciidoctor-epub3 (alpha)
  • asciidoctor-fopub
  • asciidoctor-confluence
  • asciidoctor-revealjs
  • asciidoctor-pdf-cjk-kai_gen_gothic]
  • asciidoctor-stylesheet-factory
  • VL Gothic

使い方

コンテナを起動する

docker run --rm -it -v $(pwd):/documents htakeuchi/docker-asciidoctor-jp

あとはコンテナの中で各種のコマンドが使えます。

PDFの生成

asciidoctor-pdf -r asciidoctor-pdf-cjk-kai_gen_gothic -a pdf-style=KaiGenGothicJP foo.adoc

HTMLの生成

asciidoctor foo.adoc

[NOTE] 必要に応じてオプションを追加してください。(-aのオプションは文書の属性として書くこともできます)

  • 図形を含む: -r asciidoctor-diagram
  • 数式を含む: -r asciidoctor-mathematical
  • シンタックスハイライト: -a source-highlighter=highlightjs
  • スタイルシートの指定: -a stylesheet=/path/to/css/file.css

図形を含むPDFの生成

asciidoctor-pdf -r asciidoctor-diagram -r asciidoctor-pdf-cjk-kai_gen_gothic -a pdf-style=KaiGenGothicJP foo.adoc

HTMLの生成(シンタックスハイライト+スタイルシート指定)

asciidoctor -a source-highlighter=highlightjs -a stylesheet=/stylesheets/github.css foo.adoc

EPUB3の生成

asciidoctor-epub3 foo.adoc

[NOTE] EUB3を生成する場合、いくつかのルールがあります。link:https://github.com/asciidoctor/asciidoctor-epub3[asciidoctor/asciidoctor-epub3] のサンプルなどを参照してください。

mobi(Kindleフォーマット)の生成

kindlegen foo.epub

プレゼンテーション用HTMLの生成(asciidocotr-revealjs)

asciidoctor-revealjs -a revealjsdir=https://cdnjs.cloudflare.com/ajax/libs/reveal.js/3.6.0 foo.adoc