htakeuchi/docker-asciidoctor-jpにmermaidを追加しました。
Dockerイメージにmermaidをインストールする際、以下の問題があり、単純にインストールできなかったのですが、とりあえず使える状態にしました。
- mermaid CLIで前提にしているPhantomJSのnpmパッケージがAlpine Linuxでは動作しない
- mermaid 7.1.0からCLIコマンド(mermaidコマンド)が同梱されなくなり、mermaid.cliに分離されたが、新しく提供されるmmdcコマンドはasciidoctor-diagramで未サポート
ということで、まずはPhantomJSを動かせるようにして、mermaid 7.0.9をインストールするようにしました。
本当はasciidoctor-diagramでmmdcを使えるようにするパッチを書いた方が良いんですけどね。
asciidoc文書の中に、
[mermaid]
....
sequenceDiagram
Alice->>Bob: Hello Bob, how are you?
alt is sick
Bob->>Alice: Not so good :(
else is well
Bob->>Alice: Feeling fresh like a daisy
end
opt Extra response
Bob->>Alice: Thanks for asking
end
....
などと書いて、
$ asciidoctor -r asciidoctor-diagram sample.adoc
とすると、
のような図を描画することができます。