Esta es una interfaz de línea de comandos (CLI) para sirena. Se necesita un archivo de definición de sirena como entrada y genera un archivo SVG/PNG/PDF como salida.
npm install -g @mermaid-js/mermaid-cli
Convertir el archivo del diagrama Mermaid MMD en SVG
mmdc -i input.mmd -o output.svg
Nota
Consulte instalaciones alternativas si no desea instalar el paquete a nivel mundial.
Localice cómo llamar al ejecutable de MMDC para su método preferido, es decir, Docker, hilo, NPM, instalación local, etc.
mmdc -i input.mmd -o output.png -t dark -b transparent
La opción --cssFile
se puede usar para en línea algunos CSS personalizados.
Consulte ./test-positive/flowchart1.css para obtener un ejemplo de un archivo CSS que tiene animaciones.
ADVERTENCIA : Si desea anular themeCSS
de mermaid
, le recomendamos agregar {"themeCSS": "..."})
a su sirena --configFile
. ¡También es posible que deba usar !important
anular themeCSS
de Mermiad.
ADVERTENCIA : Los archivos CSS en línea pueden ser bloqueados por su navegador, dependiendo del encabezado HTTP Content-Security-Policy del sitio web que aloja su SVG.
mmdc --input test-positive/flowchart1.mmd --cssFile test-positive/flowchart1.css -o docs/animated-flowchart.svg
mmdc -i readme.template.md -o readme.md
Este comando transforma un archivo de Markdown en sí. El Mermaid-Cli encontrará los diagramas de sirena, creará archivos SVG de ellos y se referirá a los de la salida de Markdown.
Este:
### 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
```
Se convierte en:
### 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 ")
Puede facilitar la entrada de Stdin. Este ejemplo muestra cómo usar un HEREDOC para enviar un diagrama como Stdin a Mermaid-Cli (MMDC).
cat << EOF | mmdc --input -
graph TD
A[Client] --> B[Load Balancer]
EOF
mmdc -h
docker pull minlag/mermaid-cli
o extraer del registro de contenedores de GitHub
docker pull ghcr.io/mermaid-js/mermaid-cli/mermaid-cli
o por ejemplo, versión 8.8.0
docker pull minlag/mermaid-cli:8.8.0
El contenedor busca archivos de entrada en /data
. Entonces, por ejemplo, si tiene un diagrama definido en su sistema en /path/to/diagrams/diagram.mmd
, puede usar el contenedor para generar un archivo SVG de la siguiente manera:
docker run --rm -u ` id -u ` : ` id -g ` -v /path/to/diagrams:/data minlag/mermaid-cli -i diagram.mmd
O, si usa Podman, en su lugar, haga:
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
Las diferencias clave en el comando Podman versus el comando Docker son:
--userns keep-id
. Esto permite que el contenedor mantenga el mismo UID que el UID del usuario actual en el espacio de nombres del contenedor en lugar de asignarse a un subúd. Los documentos se pueden encontrar aquí:z
al final del mapeo de volumen. Esto le indica a Podman que vuelva a colocar los archivos en el volumen con la etiqueta Selinux container_file_t
, que permite que los procesos en el contenedor accedan a los archivos. Consulte la sección "Montajes de volumen de etiquetado" aquí para obtener más información. En la versión anterior, los archivos de entrada se montaron en /home/mermaidcli
. Puede restaurar este comportamiento con la opción --workdir
:
docker run [...] --workdir=/home/mermaidcli minlag/mermaid-cli [...]
Es posible llamar mermaid-cli
a través de una API node.js. Semver no cubre la API NodeJS , ya que mermaid-cli
sigue la versión de mermaid
.
import { run } from "@mermaid-js/mermaid-cli"
await run (
"input.mmd" , "output.svg" , // {optional options},
)
Algunas personas tienen problemas para instalar esta herramienta a nivel mundial. Instalarlo localmente es una solución alternativa:
npm install @mermaid-js/mermaid-cli
./node_modules/.bin/mmdc -h
O usar NPM:
npm install @mermaid-js/mermaid-cli
./node_modules/.bin/mmdc -h
npx
se instala de forma predeterminada con NPM. Descarga y ejecuta comandos al mismo tiempo. Para usar la cli de sirena con NPX, debe usar el indicador -p
porque el nombre del paquete es diferente al comando que instala ( mmdc
). npx -p @mermaid-js/mermaid-cli mmdc -h
Advertencia
Este método de instalación ya no es compatible. Para más detalles, vea la discusión. Se puede instalar una versión antigua de Mermaid-Cli con Brew.
brew install mermaid-cli
Las contribuciones son bienvenidas. Consulte la guía de contribución.