X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/14a82190e10651051d394135a4f379bf1134726d..09a5cdbb3401cdcb17f3d2993912a8f0ea8d23b2:/IkiWiki/Plugin/teximg.pm
diff --git a/IkiWiki/Plugin/teximg.pm b/IkiWiki/Plugin/teximg.pm
index fc890666a..6a6bdd4fa 100644
--- a/IkiWiki/Plugin/teximg.pm
+++ b/IkiWiki/Plugin/teximg.pm
@@ -27,14 +27,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")
}
} #}}}
@@ -70,31 +70,22 @@ sub create ($$$) { #{{{
my $digest = md5_hex($code, $height);
- my $teximgdir = "/teximg";
- my $imglink = "$teximgdir/$digest.png";
- my $imglog = "$teximgdir/$digest.log";
- will_render($params->{destpage}, $imglink);
- will_render($params->{destpage}, $imglog);
-
- my $imgurl;
- my $logurl;
- if (! $params->{preview}) {
- $imgurl = urlto($imglink, $params->{destpage});
- $logurl = urlto($imglog, $params->{destpage});
- }
- else {
- $imgurl="$config{url}/$teximgdir/$digest.png";
- $logurl="$config{url}/$teximgdir/$digest.log";
- }
+ my $imglink= $params->{page} . "/$digest.png";
+ my $imglog = $params->{page} . "/$digest.log";
+ will_render($params->{page}, $imglink);
+ will_render($params->{page}, $imglog);
+
+ my $imgurl=urlto($imglink, $params->{destpage});
+ my $logurl=urlto($imglog, $params->{destpage});
if (-e "$config{destdir}/$imglink" ||
- gen_image($code, $height, $digest, $teximgdir)) {
+ gen_image($code, $height, $digest, $params->{page})) {
return qq{};
}
else {
- return qq{[[teximg }.gettext("failed to generate image from code")."]]";
+ error qq{}.gettext("failed to generate image from code")."";
}
} #}}}
@@ -128,12 +119,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);