Mermaid szintaxis puska
A mermaidnak nagy a referenciája, de van egy kis részhalmaza, ami szinte mindent lefed, amit az emberek rajzolnak. Ez az oldal az a részhalmaz: alakok, nyilak, csoportosítás, színek, és egy másolható példa minden diagramtípushoz. Az alábbi minden kódrészlet változtatás nélkül renderelődik — illeszd be a szerkesztőbe, hogy lásd.
A legrövidebb működő diagram
Egy folyamatábrához egy deklarációs sor és egy nyíl kell. A TD felülről lefelé jelent; használj LR-t balról jobbra, ami jobban illik a széles folyamatokhoz.
flowchart TD
A[Start] --> B{Ready?}
B -->|Yes| C[Ship it]
B -->|No| AAz A, B és C csomópont-azonosítók — belső nevek, sosem jelennek meg. A szögletes zárójelben lévő szöveg a felirat, és a zárójel stílusa választja ki az alakot.
Csomópont-alakok
Az alakot a felirat körüli határolójel-pár választja ki. Ezeket érdemes megjegyezni:
| Szintaxis | Alak | Szokásos jelentés |
|---|---|---|
A[Text] | Téglalap | Egy lépés vagy művelet |
A(Text) | Lekerekített | Egy kezdő- vagy végpont |
A([Text]) | Pirula | Egy terminátor |
A[[Text]] | Alfolyamat | Hívás egy másik folyamatba |
A[(Text)] | Henger | Egy adatbázis vagy tároló |
A((Text)) | Kör | Egy elágazási pont |
A{Text} | Rombusz | Egy döntés |
A{{Text}} | Hatszög | Egy előkészítő lépés |
A[/Text/] | Paralelogramma | Bemenet vagy kimenet |
A[/Text\] | Trapéz | Egy manuális művelet |
Idézőjelbe kell tenni a feliratot, ha zárójelet, kettőspontot vagy idézőjelet tartalmaz: A["Load (raw) data"]. Idézőjelek nélkül a feldolgozó az írásjeleidet szintaxisként értelmezi.
Nyilak
| Szintaxis | Eredmény |
|---|---|
A --> B | Nyíl |
A --- B | Vonal, nyílhegy nélkül |
A -.-> B | Pontozott nyíl |
A ==> B | Vastag nyíl |
A -->|label| B | Nyíl felirattal |
A --> B --> C | Lánc, egy sorba írva |
A --> B & C | Egy forrás, két cél |
A nyíl hossza is számít: a --> egy szintet jelent, a ---> a célt egy szinttel lejjebb tolja. Ez a legegyszerűbb elrendezés-vezérlés, amit a mermaid ad.
Csoportosítás alcsoportokkal
Egy subgraph egy feliratozott dobozt rajzol a csomópontok köré. Az alcsoportok egymásba ágyazhatók, és a nyilak szabadon átlépik a határaikat.
flowchart LR
subgraph api["API"]
H[Handler] --> S[(Postgres)]
end
subgraph worker["Worker"]
Q[Queue] --> W[Job]
end
H --> QSzín és stílus
A style egyetlen csomópontot fest be. A classDef és a class együtt egy csoportnyi csomópontot fest be, ami három-négy csomópont felett hasznosabb.
flowchart TD
A[OK] --> B[Failed]
style A fill:#16a34a,stroke:#333,color:#fff
classDef bad fill:#dc2626,stroke:#333,color:#fff
class B badA színek a diagram forrásának részei, így túlélik az exportálást, és a fájllal együtt utaznak. Semmi itt nem függ a renderelő eszköz témabeállításától.
Egy példa minden diagramtípushoz
Szekvenciadiagram
sequenceDiagram
participant User
participant API
participant DB
User->>API: request
API->>DB: query
DB-->>API: rows
API-->>User: responseOsztálydiagram
classDiagram
class Animal {
+String name
+move()
}
class Dog {
+bark()
}
Animal <|-- DogÁllapotdiagram
stateDiagram-v2
[*] --> Idle
Idle --> Running: start
Running --> Idle: stop
Running --> [*]: finishEntitás-kapcsolat diagram
erDiagram
CUSTOMER ||--o{ ORDER : places
ORDER ||--|{ LINE_ITEM : contains
CUSTOMER {
string name
string email
}Gantt diagram
gantt
title Project
dateFormat YYYY-MM-DD
section Phase 1
Task 1 :a1, 2026-01-01, 5d
Task 2 :after a1, 5dHol renderel a mermaid önmagában
- GitHub — egy körbekerített ```mermaid blokk renderelődik issue-kban, pull requestekben, kommentekben és README fájlokban.
- GitLab — ugyanaz a körbekerített blokk, issue-kban, merge requestekben és a wikiben.
- Notion — egy kódblokk, aminek a nyelve Mermaidra van állítva, a forrás mellett renderelődik.
- Obsidian — egy körbekerített mermaid blokk renderelődik előnézeti módban.
- Dokumentációs oldalak — a Docusaurus, a MkDocs Material és a VitePress is támogatja a mermaid blokkokat.
Ez az igazi oka annak, hogy a diagramokat mermaidként érdemes megtartani, nem képként: a diagram ugyanabban a szövegfájlban él, mint amit leír, és egy code review láthatja, mi változott benne.
Próbáld ki bármelyik részletet ezen az oldalon
Illeszd be a kód fülbe, és azonnal renderelődik — vagy építsd meg ugyanazt a diagramot a vásznon, és olvasd vissza a szintaxist.
Gyakran ismételt kérdések
Hogyan tegyek sortörést egy csomópont feliratán belül?
Használj <br>-t egy idézőjelbe tett feliraton belül: A["First line<br>Second line"]. A mermaid a feliratot HTML-ként rendereli, így a tag működik, még ha a szintaxis többi része nem is HTML.
Miért töri el a diagramomat a feliratom?
Szinte mindig egy idézőjel nélküli zárójel, kerek zárójel, kettőspont vagy idézőjel van a feliratban. Tedd az egész feliratot dupla idézőjelbe, és a feldolgozó leáll azzal, hogy az írásjeleidet szintaxisként kezelje.
Tudom irányítani az elrendezést?
Csak közvetve. Válaszd ki az irányt (TD, LR, BT, RL), használj hosszabb nyilakat (--->) a csomópontok távolabb tolásához, és csoportosítsd az összetartozó csomópontokat alcsoportokba. A többit a mermaid számolja ki — nincsenek koordináták.
Melyik mermaid verziót használja ez a szerkesztő?
A Mermaid 11-et, a jelenlegi főverziót, így minden, ami a v10 és v11 szintaxishoz dokumentált, itt renderelődik.