コンテンツにスキップ

Top

Mermaid で シーケンス図

Markdown で シーケンス図を描くことができる Mermaid というライブラリを使ってみる。

MkDocsへの設定

以下を追加するだけ。(字下げ位置注意。-nameとclassとformatは同じ位置じゃないとエラーになった)
mkdocs.yml

markdown_extensions:
    - pymdownx.superfences:
        custom_fences:
          - name: mermaid
            class: mermaid
            format: !!python/name:pymdownx.superfences.fence_div_format

extra_javascript:
    - 'https://unpkg.com/mermaid@9.1.7/dist/mermaid.min.js'

シーケンス図

```mermaid
sequenceDiagram
    participant Alice
    participant Bob
    Alice->>John: Hello John, how are you?
    loop Healthcheck
        John->>John: Fight against hypochondria
    end
    Note right of John: Rational thoughts <br/>prevail!
    John-->>Alice: Great!
    John->>Bob: How about you?
    Bob-->>John: Jolly good!
```

が、以下のシーケンス図に変換される!

sequenceDiagram participant Alice participant Bob Alice->>John: Hello John, how are you? loop Healthcheck John->>John: Fight against hypochondria end Note right of John: Rational thoughts <br/>prevail! John-->>Alice: Great! John->>Bob: How about you? Bob-->>John: Jolly good!

```mermaidと書かないと変わらないので注意!

VSCodeで確認

いちいち mkdocs build して確認はさすがにしんどい。 xxx.md ファイルに書けばVSCodeでプレビューを出せるのでそれで確認したほうが良い。

プレビューを出すための拡張機能は、 Markdown Preview Mermaid Support 。

以上!