Spis treści

Wstęp

Rozbudowa istniejącego pluginu

Graphviz plugin dla Dokuwiki został oparty na znalezionym rozwiązaniu http://wiki.ioslo.net/dokuwiki/graphviz/ Wersja ta obsługiwała podstawową funkcjonalność, tj. renderowanie diagramów z zamieszczonego w wiki kodu dot. W stosunku do znalezionej w sieci wersji wprowadzono następujące ulepszenia:

Instalacja pluginu

dot    application/graphviz

Sposób użycia

 <graphviz>KOD DOT</graphviz> 
<graphviz>
  digraph G {
     a -> b;
  }
</graphviz>

uzyskany zostanie następujący efekt:

<graphviz file="pl:miw:plik.dot"></graphviz>
<graphviz url="http://.../plik.dot"></graphviz>
 <graphviz neato>KOD DOT</graphviz> 
<graphviz height="300" width="800">KOD DOT</graphviz>
<graphviz neato file="pl:miw:plik.dot" width ="100" height="50"></graphviz>

Zasadzki

W związku ze sposobem działania mechanizmu cache w Dokuwiki istnieje możliwość, że plugin nie zadziała poprawnie. Nie wgłębiając się w szczegóły mechanizm cache w Dokuwiki wywołuje plugin podczas zapisywania dokumentu. Sam plugin renderuje diagramy w przypadku, gdy natrafi na kod, którego nigdy wcześniej nie renderował. W przeciwnym przypadku zostanie załadowany obrazek przechowywany w pamięci cache. Może się zatem zdarzyć, że renderując diagram z zewnętrznego pliku który ulegnie zmianie, plugin tych zmian nie wykryje gdyż podany kod:

"<graphviz url=".."></graphviz>" 

będzie w obu przypadkach identyczny. W razie wystąpienia tego typu problemów pomóc powinno wyczyszczenie zawartości katalogu:

wiki/data/media/graphviz

Można również użyć opcji NOCACHE → http://wiki.splitbrain.org/wiki:caching