X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/b0a7b2f3d7e62d35668a42dab2256505e68515f1..9733d1f79a5f1c62e059862edcd2d266f027a9b8:/IkiWiki/Plugin/teximg.pm
diff --git a/IkiWiki/Plugin/teximg.pm b/IkiWiki/Plugin/teximg.pm
index 29c1057f3..369c10882 100644
--- a/IkiWiki/Plugin/teximg.pm
+++ b/IkiWiki/Plugin/teximg.pm
@@ -11,9 +11,18 @@ use HTML::Entities;
use IkiWiki 2.00;
sub import { #{{{
+ hook(type => "getsetup", id => "teximg", call => \&getsetup);
hook(type => "preprocess", id => "teximg", call => \&preprocess);
} #}}}
+sub getsetup () { #{{{
+ return
+ plugin => {
+ safe => 1,
+ rebuild => undef,
+ },
+} #}}}
+
sub preprocess (@) { #{{{
my %params = @_;
@@ -27,14 +36,14 @@ sub preprocess (@) { #{{{
my $code = $params{code};
if (! defined $code && ! length $code) {
- return "[[teximg ".gettext("missing tex code"). "]]";
+ error gettext("missing tex code");
}
if (check($code)) {
return create($code, check_height($height), \%params);
}
else {
- return "[[teximg ".gettext("code includes disallowed latex commands"). "]]";
+ error gettext("code includes disallowed latex commands")
}
} #}}}
@@ -85,7 +94,7 @@ sub create ($$$) { #{{{
.qq{" class="teximg" />};
}
else {
- return qq{[[teximg }.gettext("failed to generate image from code")."]]";
+ error qq{}.gettext("failed to generate image from code")."";
}
} #}}}
@@ -119,12 +128,13 @@ sub gen_image ($$$$) { #{{{
}
else {
# store failure log
- my $log;
+ my $log="";
{
- open(my $f, '<', "$tmp/$digest.log");
- local $/=undef;
- $log = <$f>;
- close($f);
+ if (open(my $f, '<', "$tmp/$digest.log")) {
+ local $/=undef;
+ $log = <$f>;
+ close($f);
+ }
}
writefile("$digest.log", "$config{destdir}/$imagedir", $log);