rename tex to teximg

master
joey 2007-08-23 21:19:21 +00:00
parent 27d029113f
commit 8c31a01efa
5 changed files with 39 additions and 34 deletions

View File

@ -2,7 +2,7 @@
# Licensed under GPL v2 or greater
# (c) 2007 Patrick Winnertz <patrick.winnertz@skolelinux.org>
package IkiWiki::Plugin::tex;
package IkiWiki::Plugin::teximg;
use warnings;
use strict;
use Digest::MD5 qw(md5_hex);
@ -11,7 +11,7 @@ use URI::Escape qw(uri_escape);
use IkiWiki 2.00;
sub import { #{{{
hook(type => "preprocess", id => "tex", call => \&preprocess);
hook(type => "preprocess", id => "teximg", call => \&preprocess);
} #}}}
sub preprocess (@) { #{{{
@ -27,14 +27,14 @@ sub preprocess (@) { #{{{
my $code = $params{code};
if (! defined $code && ! length $code) {
return "[[tex ".gettext("missing tex code"). "]]";
return "[[teximg ".gettext("missing tex code"). "]]";
}
if (check($code)) {
return create($code, check_height($height), \%params);
}
else {
return "[[tex ".gettext("code includes disallowed latex commands"). "]]";
return "[[teximg ".gettext("code includes disallowed latex commands"). "]]";
}
} #}}}
@ -70,7 +70,7 @@ sub create ($$$) { #{{{
my $digest = md5_hex($code, $height);
my $teximgdir = "/teximages";
my $teximgdir = "/teximag";
my $imglink = "$teximgdir/$digest.png";
my $imglog = "$teximgdir/$digest.log";
will_render($params->{destpage}, $imglink);
@ -89,10 +89,12 @@ sub create ($$$) { #{{{
if (-e "$config{destdir}/$imglink" ||
gen_image($code, $height, $digest, $teximgdir)) {
return qq{<img src="$imgurl" alt="}.uri_escape($code).qq{" class="teximage" />};
return qq{<img src="$imgurl" alt="}
.(exists $params{alt} ? $params{alt} : uri_escape($code))
.qq{" class="teximg" />};
}
else {
return qq{[[tex <a href="$logurl">}.gettext("failed to generate image from code")."</a>]]";
return qq{[[teximg <a href="$logurl">}.gettext("failed to generate image from code")."</a>]]";
}
} #}}}

2
debian/changelog vendored
View File

@ -46,7 +46,7 @@ ikiwiki (2.6) UNRELEASED; urgency=low
* Add proper Homepage field to Debian package (needs uber-new dpkg).
* Add monotone support, contributed by William Uther.
* Avoid ugly gettext messages if LANG is empty. Closes: #439035
* Added tex plugin to generate images from latex code.
* Added teximg plugin to generate images from latex code.
Contributed by Patrick Winnertz as a GSoC project.
* Call the formbuilder hook for the edit page.
* Call decode_form_utf8 before running formbuilder_setup hooks.

View File

@ -1,25 +0,0 @@
[[template id=plugin name=tex author="[[PatrickWinnertz]]"]]
[[tag type/chrome type/slow]]
This plugin renders LaTeX formulas into images, which are rendered automatically when you save this site.
Scaling of this images is of course also possible, possible heights are:
8,9,10,11,12,14,17,20
But is also work if you pic e.g. another height. The best fitting height is then used to generate the image.
#Here are some examples how to use this plugin:
[[tex code="\ce{[Cu(NH3)3]^{2+}}"]]
[[tex code="\frac{1}{2}"]]
[[tex code="E = - \frac{Z^2 \cdot \mu \cdot e^4}{32\pi^2 \epsilon_0^2 \hbar^2 n^2}" ]]
in order to scale this images use height=x:
[[tex code="\ce{[Cu(NH3)3]^{2+}}" height="17"]]
[[tex code="\ce{[Cu(NH3)3]^{2+}}" height="8"]]
If no height is choosen the default height 12 is used.
See [this site](http://www.der-winnie.de/opensource/gsoc2007) for rendered images.

View File

@ -0,0 +1,25 @@
[[template id=plugin name=teximg author="[[PatrickWinnertz]]"]]
[[tag type/chrome type/slow]]
This plugin renders LaTeX formulas into images.
## examples
\[[teximg code="\ce{[Cu(NH3)3]^{2+}}"]]
\[[teximg code="\frac{1}{2}"]]
\[[teximg code="E = - \frac{Z^2 \cdot \mu \cdot e^4}{32\pi^2 \epsilon_0^2 \hbar^2 n^2}" ]]
To scale the image, use height=x:
\[[teximg code="\ce{[Cu(NH3)3]^{2+}}" height="17"]]
\[[teximg code="\ce{[Cu(NH3)3]^{2+}}" height="8"]]
If no height is choosen the default height 12 is used. Valid heights are: 8, 9,
10, 11, 12, 14, 17, 20. If another height is entered, the closest available
height is used.
To add an alt text to the image, use alt="text":
\[[teximg code="\frac{1}{2}" alt="1/2"]]
See [this site](http://www.der-winnie.de/opensource/gsoc2007) for rendered images.

View File

@ -167,13 +167,16 @@ Okay, the last version of the tex plugin for ikiwiki can be downloaded [here](ht
> fixed a bug (the first time it was run, it tried to write the png file
> before the teximages/ directory existed) and checked the result in.
>
> Can you please flesh out [[plugins/tex]] with
> Can you please flesh out [[plugins/teximg]] with
> whatever documentation people who know tex will expect to see?
Okay, I'll fill this up today I think with information about the plugin
Done. Is that docu fine with you?
>> Perhaps add some documentation about the kind of tex code that can be
>> used, or a link to some documentation so people who don't know latex
>> well can figure this out?
> Also, please review my changes. In particular, I changed the @badthings
> array to use qr//, which is much clearer, but it needs to be tested that