PlantUML - прикручиваем к Dokuwiki
PlantUML - это плагин для отрисовывания UML-диаграмм.
Требования
- Java
- PlantUML в виде plantuml.jar отсюда: http://plantuml.sourceforge.net/download.html
- Плагин PlantUML для Dokuwiki отсюда: https://www.dokuwiki.org/plugin:plantuml
- GraphViz http://www.graphviz.org/
Установка описана для Ubuntu Server 10.04.4 & 12.04.2
Установка
- Ставим Java. Я пробовал OpenJDK и IcedTea - и там и там работает нормально.
$ sudo apt-get install openjdk-6-jre
- Ставим GraphViz (наче далеко не все диаграммы будут отрисовываться):
$ sudo apt-get install graphviz
- Устанавливаем плагин в Dokuwiki
- Настраиваем плагин через Управление→Настройки вики→Plantuml Параметры плагина
- Render localy: включаем
- The path to your Java runtime interpreter (eg. /usr/bin/java): /usr/bin/java
- Качаем plantuml.jar и подкладываем его в папку плагина dokuwiki/lib/plugins/plantuml/
Работаем
Создаем страничку, пишем
<uml> Alice -> Bob: Authentication Request Bob --> Alice: Authentication Response Alice ->> Bob: Another authentication Request Alice <<-- Bob: another authentication Response </uml> <uml> [*] --> outbox outbox -> отправка : С частотой 2 раза в сек. отправка --> bounced : Известная ошибка,\nтребующая повторной\nотправки отправка --> sent : Отправка без ошибок отправка --> error : Неизвестная ошибка\nпри отправке отправка --> overlimit : Превышен лимит\nотправок overlimit --> [*] sent --> [*] error --> [*] bounced --> outbox : После выдержки 1 мин </uml>
Проверяем, должно работать. Если что - проверяем логи веб-сервера, смотрим не заблокирована ли функция PHP под названием 'exec'
<uml>
Alice → Bob: Authentication Request
Bob –> Alice: Authentication Response
Alice →> Bob: Another authentication Request
Alice «– Bob: another authentication Response
</uml>
<uml>
[*] –> outbox
outbox → отправка : С частотой 2 раза в сек.
отправка –> bounced : Известная ошибка,\nтребующая повторной\nотправки
отправка –> sent : Отправка без ошибок
отправка –> error : Неизвестная ошибка\nпри отправке
отправка –> overlimit : Превышен лимит\nотправок
overlimit –> [*]
sent –> [*]
error –> [*]
bounced –> outbox : После выдержки 1 мин
</uml>