これは、人魚のコマンドラインインターフェイス(CLI)です。マーメイド定義ファイルを入力として使用し、SVG/PNG/PDFファイルを出力として生成します。
npm install -g @mermaid-js/mermaid-cli
Mermaid MMDダイアグラムファイルをSVGに変換します
mmdc -i input.mmd -o output.svg
注記
パッケージをグローバルにインストールしたくない場合は、代替インストールをご覧ください。
お好みの方法、つまりDocker、Yarn、NPM、ローカルインストールなどのMMDC実行可能ファイルを呼び出す方法を見つけます。
mmdc -i input.mmd -o output.png -t dark -b transparent
--cssFile
オプションを使用して、いくつかのカスタムCSSをインラインにできます。
アニメーションを備えたCSSファイルの例については、./test-positive/flowchart1.cssを参照してください。
警告: mermaid
のthemeCSS
オーバーライドする場合は、代わりに{"themeCSS": "..."})
をMermaid --configFile
に追加することをお勧めします。また、MermiadのthemeCSS
オーバーライドするために!important
。
警告:インラインCSSファイルは、SVGをホストするWebサイトのHTTPコンテンツセキュリティポリティヘッダーに応じて、ブラウザによってブロックされる場合があります。
mmdc --input test-positive/flowchart1.mmd --cssFile test-positive/flowchart1.css -o docs/animated-flowchart.svg
mmdc -i readme.template.md -o readme.md
このコマンドは、マークダウンファイル自体を変換します。 Mermaid-Cliは、人魚の図を見つけ、それらからSVGファイルを作成し、Markdown Outputのファイルを参照します。
これ:
### Some markdown
``` mermaid
graph
[....]
```
### Some more markdown
``` mermaid
sequenceDiagram
[....]
```
### Mermaid with custom title/desc
``` mermaid
graph
accTitle: My title here
accDescr: My description here
A-->B
```
次のようになります
### Some markdown
![ diagram ] ( ./readme-1.svg )
### Some more markdown
![ diagram ] ( ./readme-2.svg )
### Mermaid with custom title/desc
![ My description here ] ( ./readme-3.svg " My title here ")
Stdinから入力を簡単にパイプできます。この例は、Heredocを使用してStdinとしての図をMermaid-Cli(MMDC)に送信する方法を示しています。
cat << EOF | mmdc --input -
graph TD
A[Client] --> B[Load Balancer]
EOF
mmdc -h
docker pull minlag/mermaid-cli
または、githubコンテナレジストリから引っ張ります
docker pull ghcr.io/mermaid-js/mermaid-cli/mermaid-cli
または例:バージョン8.8.0
docker pull minlag/mermaid-cli:8.8.0
コンテナは/data
の入力ファイルを探します。たとえば、システムに/path/to/diagrams/diagram.mmd
のシステムに図が定義されている場合、コンテナを使用してSVGファイルを次のように生成できます。
docker run --rm -u ` id -u ` : ` id -g ` -v /path/to/diagrams:/data minlag/mermaid-cli -i diagram.mmd
または、ポッドマンを使用している場合は、次のことを行います。
podman run --userns keep-id --user ${UID} --rm -v /path/to/diagrams:/data:z ghcr.io/mermaid-js/mermaid-cli/mermaid-cli -i diagram.mmd
PodmanコマンドとDockerコマンドの重要な違いは次のとおりです。
--userns keep-id
引数の追加。これにより、コンテナは、サブイドにマッピングする代わりに、コンテナ名空間内の現在のユーザーのUIDと同じUIDを保持できます。ドキュメントはここにあります:z
の追加。これにより、Podmanは、selinuxラベルcontainer_file_t
を使用してボリューム内のファイルを再評価するように指示します。これにより、コンテナ内のプロセスがファイルにアクセスできます。詳細については、こちらの「ラベリングボリュームマウント」セクションを参照してください。以前のバージョンでは、入力ファイルは/home/mermaidcli
にマウントされていました。この動作を--workdir
オプションで復元できます。
docker run [...] --workdir=/home/mermaidcli minlag/mermaid-cli [...]
Node.js APIを介してmermaid-cli
に電話することができます。 mermaid-cli
mermaid
のバージョンに従っているため、 Nodejs APIはSemverのカバーされていないことに注意してください。
import { run } from "@mermaid-js/mermaid-cli"
await run (
"input.mmd" , "output.svg" , // {optional options},
)
一部の人々は、このツールをグローバルにインストールするのに問題があります。ローカルにインストールすることは、代替ソリューションです。
npm install @mermaid-js/mermaid-cli
./node_modules/.bin/mmdc -h
またはNPMを使用します:
npm install @mermaid-js/mermaid-cli
./node_modules/.bin/mmdc -h
npx
、NPMでデフォルトでインストールされます。コマンドを同時にダウンロードして実行します。 NPXでマーメイドCLIを使用するには、パッケージ名がインストールするコマンド( mmdc
)とは異なるため、 -p
フラグを使用する必要があります。 npx -p @mermaid-js/mermaid-cli mmdc -h
警告
このインストール方法はサポートされなくなりました。詳細については、説明を参照してください。 Mermaid-Cliの古いバージョンはBrewでインストールできます。
brew install mermaid-cli
貢献は大歓迎です。貢献ガイドを参照してください。