Поддержка Mermaid
Diagrammix3 поддерживает импорт и экспорт диаграмм с использованием синтаксиса Mermaid — популярного текстового языка описания диаграмм.
Что такое Mermaid?
Mermaid — это инструмент для создания диаграмм на основе JavaScript, использующий синтаксис, похожий на Markdown, для описания диаграмм. Он широко применяется в документации, вики и файлах README.
Пример синтаксиса Mermaid:
flowchart LR
A[Start] --> B{Decision}
B -->|Yes| C[Action]
B -->|No| D[End]
Импорт диаграмм Mermaid
Из буфера обмена
- Скопируйте синтаксис Mermaid в буфер обмена
- В Diagrammix3 перейдите в File → Import → Mermaid from Clipboard
- Диаграмма будет создана на вашем холсте
Из файла
- Перейдите в File → Import → Mermaid File...
- Выберите файл
.mmdили.mermaid - Диаграмма будет импортирована на ваш холст

Поддерживаемые типы диаграмм
| Тип Mermaid | Преобразование в Diagrammix |
|---|---|
flowchart / graph | Блок-схема с фигурами и коннекторами |
sequenceDiagram | Диаграмма последовательностей UML |
classDiagram | Диаграмма классов UML |
stateDiagram | Диаграмма состояний |
Синтаксис диаграммы состояний
Диаграммы состояний моделируют состояния, в которых может находиться объект, и переходы между ними.
Базовая диаграмма состояний:
stateDiagram-v2
[*] --> Active
Active --> Inactive : deactivate
Inactive --> Active : activate
Active --> [*] : terminate
Состояния и переходы:
[*]обозначает начальное и конечное состояния-->создаёт стрелку перехода: labelдобавляет подпись к переходу- Вложенные состояния используют отступы
Составные состояния:
stateDiagram-v2
state Processing {
[*] --> Validating
Validating --> Executing
Executing --> [*]
}
Результат: Диаграмма автомата состояний с правильными формами состояний и подписанными переходами.
Примеры импорта
Блок-схема
Входные данные Mermaid:
flowchart TD
A[Hard edge] -->|Link text| B(Round edge)
B --> C{Decision}
C -->|One| D[Result one]
C -->|Two| E[Result two]
Результат: Блок-схема сверху вниз с прямоугольными, скруглёнными и ромбовидными фигурами, соединёнными подписанными стрелками.

Диаграмма последовательностей
Входные данные Mermaid:
sequenceDiagram
participant A as Alice
participant B as Bob
A->>B: Hello Bob!
B-->>A: Hi Alice!
Результат: Диаграмма последовательностей с двумя участниками и стрелками сообщений.
Диаграмма классов
Входные данные Mermaid:
classDiagram
Animal <|-- Duck
Animal <|-- Fish
Animal : +int age
Animal : +String gender
Animal: +isMammal()
Результат: Диаграмма классов UML с отношениями наследования.
Экспорт в Mermaid
Экспорт текущей диаграммы
- Перейдите в File → Export → Mermaid...
- Выберите место сохранения
- Диаграмма экспортируется как файл
.mmd
Копирование как Mermaid
- Выделите фигуры, которые хотите экспортировать (или выделите все с помощью Cmd+A)
- Перейдите в Edit → Copy as Mermaid
- Вставьте синтаксис Mermaid в нужное место

Редактирование импортированных диаграмм
После импорта диаграммы Mermaid становятся нативными объектами Diagrammix. Вы можете:
- Перемещать и изменять размер фигур свободно
- Изменять стили с помощью Инспектора (цвета, шрифты, стили линий)
- Добавлять новые элементы с помощью инструментов Diagrammix
- Изменять соединения, перетаскивая конечные точки
- Применять автоматическую компоновку для реорганизации диаграммы
Связь с исходным кодом Mermaid не сохраняется — изменения вносятся непосредственно в объекты диаграммы.
Ограничения
- Сложное оформление: Директивы стилей Mermaid могут не полностью транслироваться
- Подграфы: Преобразуются в сгруппированные фигуры
- Расширенные функции: Некоторые специфичные для Mermaid функции (такие как обработчики кликов) игнорируются
- Двусторонний обмен: Экспорт импортированной диаграммы может не воспроизвести идентичный синтаксис Mermaid
Советы
- Наведите порядок после импорта: Используйте автоматическую компоновку для организации импортированных диаграмм
- Проверьте связи: Убедитесь, что типы связей импортированы корректно
- Оформляйте единообразно: Применяйте стили Diagrammix для аккуратного вида
- Сохраняйте исходный код: Сохраняйте оригинальные файлы Mermaid для контроля версий