ورقة صياغة mermaid المرجعية

لدى mermaid مرجع كبير، ولكن مجموعة فرعية صغيرة منه تغطي كل ما يرسمه الناس تقريبًا. هذه الصفحة هي تلك المجموعة الفرعية: الأشكال، الأسهم، التجميع، الألوان، ومثال جاهز للنسخ لكل نوع مخطط. كل مقتطف أدناه يُرسم كما هو — الصقه في المحرر لتراه.

أقصر مخطط يعمل

يحتاج المخطط الانسيابي إلى سطر إعلان واحد وسهم واحد. TD تعني من الأعلى إلى الأسفل؛ استخدم LR للاتجاه من اليسار إلى اليمين، وهو أنسب للعمليات العريضة.

flowchart TD
  A[Start] --> B{Ready?}
  B -->|Yes| C[Ship it]
  B -->|No| A
مخطط انسيابي من ثلاث عقد، من الأعلى إلى الأسفل.

A وB وC هي معرّفات العقد — أسماء داخلية لا تُرسم أبدًا. النص بين الأقواس هو التسمية، ونوع الأقواس هو ما يحدد الشكل.

أشكال العقد

يُختار الشكل حسب زوج الفواصل المحيط بالتسمية. هذه هي الأشكال التي تستحق الحفظ:

الصياغةالشكلالمعنى المعتاد
A[Text]مستطيلخطوة أو إجراء
A(Text)دائري الحوافنقطة بداية أو نهاية
A([Text])كبسولةنقطة إنهاء
A[[Text]]روتين فرعياستدعاء لعملية أخرى
A[(Text)]أسطوانةقاعدة بيانات أو مخزن
A((Text))دائرةنقطة تقاطع
A{Text}معينقرار
A{{Text}}سداسيخطوة تحضيرية
A[/Text/]متوازي أضلاعإدخال أو إخراج
A[/Text\]شبه منحرفعملية يدوية

ضع التسمية بين علامتي اقتباس عندما تحتوي على أقواس أو نقطتين أو علامات اقتباس: A["Load (raw) data"]. بدون علامات الاقتباس، يفهم المحلل علامات الترقيم كصياغة.

الأسهم

الصياغةالنتيجة
A --> Bسهم
A --- Bخط بدون رأس سهم
A -.-> Bسهم منقّط
A ==> Bسهم سميك
A -->|label| Bسهم بتسمية عليه
A --> B --> Cسلسلة مكتوبة في سطر واحد
A --> B & Cمصدر واحد، هدفان

طول السهم له معنى أيضًا: --> يمثل مستوى واحدًا، بينما ---> يدفع الهدف مستوى إضافيًا للأسفل. إنها أبسط أداة تحكم في التخطيط يمنحها mermaid.

التجميع باستخدام المخططات الفرعية

يرسم subgraph صندوقًا مُسمّى حول العقد. المخططات الفرعية يمكن تداخلها، والأسهم يمكنها عبور حدودها بحرية.

flowchart LR
  subgraph api["API"]
    H[Handler] --> S[(Postgres)]
  end
  subgraph worker["Worker"]
    Q[Queue] --> W[Job]
  end
  H --> Q
خدمتان، لكل منهما مخزنها الخاص.

اللون والتنسيق

style يلوّن عقدة واحدة. classDef مع class يلوّنان مجموعة منها، وهذا ما تحتاجه بعد تجاوز ثلاث أو أربع عقد.

flowchart TD
  A[OK] --> B[Failed]
  style A fill:#16a34a,stroke:#333,color:#fff
  classDef bad fill:#dc2626,stroke:#333,color:#fff
  class B bad

الألوان جزء من مصدر المخطط، لذا تبقى بعد التصدير وتنتقل مع الملف. لا شيء هنا يعتمد على إعداد سمة في الأداة التي تعرضه.

مثال واحد لكل نوع مخطط

المخطط التسلسلي

sequenceDiagram
  participant User
  participant API
  participant DB
  User->>API: request
  API->>DB: query
  DB-->>API: rows
  API-->>User: response

مخطط الفئات

classDiagram
  class Animal {
    +String name
    +move()
  }
  class Dog {
    +bark()
  }
  Animal <|-- Dog

مخطط الحالة

stateDiagram-v2
  [*] --> Idle
  Idle --> Running: start
  Running --> Idle: stop
  Running --> [*]: finish

مخطط علاقات الكيانات

erDiagram
  CUSTOMER ||--o{ ORDER : places
  ORDER ||--|{ LINE_ITEM : contains
  CUSTOMER {
    string name
    string email
  }

مخطط جانت

gantt
  title Project
  dateFormat YYYY-MM-DD
  section Phase 1
  Task 1 :a1, 2026-01-01, 5d
  Task 2 :after a1, 5d

أين يُعرض mermaid من تلقاء نفسه

  • GitHub — كتلة ```mermaid محاطة تُعرض في المشكلات وطلبات السحب والتعليقات وملفات README.
  • GitLab — الكتلة المحاطة نفسها، في المشكلات وطلبات الدمج والويكي.
  • Notion — كتلة كود بلغة مضبوطة على Mermaid تُعرض بجانب المصدر.
  • Obsidian — كتلة mermaid محاطة تُعرض في وضع المعاينة.
  • مواقع التوثيق — Docusaurus وMkDocs Material وVitePress كلها تدعم كتل mermaid.

هذا هو السبب الحقيقي للاحتفاظ بالمخططات بصيغة mermaid بدلًا من الصور: يعيش المخطط في نفس الملف النصي للشيء الذي يصفه، ومراجعة الكود يمكنها رؤية ما تغيّر فيه.

جرّب أي مقتطف في هذه الصفحة

الصقه في تبويب الكود وسيُرسم فورًا — أو ابنِ المخطط نفسه على اللوحة واقرأ الصياغة الناتجة.

أسئلة متكررة

كيف أضيف فاصل أسطر داخل تسمية عقدة؟

استخدم <br> داخل تسمية بين علامتي اقتباس: A["First line<br>Second line"]. يعرض mermaid التسمية كـ HTML، لذا تعمل الوسمة رغم أن باقي الصياغة ليست HTML.

لماذا تكسر تسميتي المخطط؟

غالبًا بسبب قوس أو نقطتين أو علامة اقتباس داخل التسمية بدون علامات اقتباس محيطة. ضع التسمية كاملة بين علامتي اقتباس مزدوجتين ليتوقف المحلل عن معاملة علامات الترقيم كصياغة.

هل يمكنني التحكم في التخطيط؟

بشكل غير مباشر فقط. اختر الاتجاه (TD، LR، BT، RL)، استخدم أسهمًا أطول (--->) لدفع العقد بعيدًا عن بعضها، وجمّع العقد المرتبطة في مخططات فرعية. يحسب mermaid الباقي — لا توجد إحداثيات.

أي إصدار من mermaid يستخدمه هذا المحرر؟

الإصدار Mermaid 11، وهو الإصدار الرئيسي الحالي، لذا كل ما هو موثّق لصياغة v10 وv11 يُعرض هنا.

المزيد من الأدلة

  1. تصدير mermaid إلى PNG أو SVG

    أربع طرق للخروج من مخطط mermaid — PNG وSVG ومصدر .mmd وكتلة Markdown — ومتى يكون كل خيار هو الصحيح.

  2. مخططات mermaid التسلسلية

    المشاركون، أنواع الأسهم، أشرطة التفعيل، الحلقات وكتل alt — صياغة المخطط التسلسلي كاملة مع أمثلة قابلة للتشغيل.

افتح المحرر. مجاني — بلا تسجيل.

لوحة فارغة، تبويب كود، وكل خيارات التصدير — مجانًا، في متصفحك، الآن.