X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/3d82d47e1896b8e64c1e22b09a05968fc481aebf..d0c9c21687b498fa40a6359fb7b7cbcd70034512:/IkiWiki/Plugin/graphviz.pm?ds=sidebyside diff --git a/IkiWiki/Plugin/graphviz.pm b/IkiWiki/Plugin/graphviz.pm index 021aa6b23..b43e96a73 100644 --- a/IkiWiki/Plugin/graphviz.pm +++ b/IkiWiki/Plugin/graphviz.pm @@ -5,18 +5,27 @@ package IkiWiki::Plugin::graphviz; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use IPC::Open2; -sub import { #{{{ - hook(type => "preprocess", id => "graphviz", call => \&graph); -} # }}} +sub import { + hook(type => "getsetup", id => "graphviz", call => \&getsetup); + hook(type => "preprocess", id => "graph", call => \&graph); +} + +sub getsetup () { + return + plugin => { + safe => 1, + rebuild => undef, + }, +} my %graphviz_programs = ( "dot" => 1, "neato" => 1, "fdp" => 1, "twopi" => 1, "circo" => 1 ); -sub render_graph (\%) { #{{{ +sub render_graph (\%) { my %params = %{(shift)}; my $src = "$params{type} g {\n"; @@ -75,9 +84,9 @@ sub render_graph (\%) { #{{{ else { return "\n"; } -} #}}} +} -sub graph (@) { #{{{ +sub graph (@) { my %params=@_; $params{src} = "" unless defined $params{src}; $params{type} = "digraph" unless defined $params{type}; @@ -85,6 +94,6 @@ sub graph (@) { #{{{ error gettext("prog not a valid graphviz program") unless $graphviz_programs{$params{prog}}; return render_graph(%params); -} # }}} +} 1