Added description of the asymptote plugin.
authorhttp://peter-simons.myopenid.com/ <http://peter-simons.myopenid.com/@web>
Tue, 27 Nov 2012 12:21:13 +0000 (08:21 -0400)
committeradmin <admin@branchable.com>
Tue, 27 Nov 2012 12:21:13 +0000 (08:21 -0400)
doc/plugins/asymptote.mdwn [new file with mode: 0644]

diff --git a/doc/plugins/asymptote.mdwn b/doc/plugins/asymptote.mdwn
new file mode 100644 (file)
index 0000000..85a0c6f
--- /dev/null
@@ -0,0 +1,35 @@
+[[!template id=plugin name=asymptote author="[[PeterSimons]]"]]
+[[!tag type/widget]]
+
+This plugin provides the [[ikiwiki/directive/asymptote]]
+[[ikiwiki/directive]]. This directive allows embedding
+[asymptote](http://asymptote.sourceforge.net//) diagrams in a page.
+
+Security implications: asymptote has functions for reading files and
+other dangerous stuff, so enabling this plugin means that everyone who
+can edit your Wiki can also read any file from your hard drive thats
+accessible to the user running Ikiwiki. 
+
+[[!if test="enabled(asymptote)" then="""
+An example diagram:
+
+[[!asymptote src="""
+import geometry;
+unitsize(1cm);
+triangle t = triangle((0,0), (4,0), (0.5,2));
+show(La="$D$", Lb="$E$", Lc="", t);
+dot(t.A^^t.B^^t.C);
+point pD = midpoint(t.BC); dot(pD);
+point pE = midpoint(t.AC); dot(pE);
+draw(pD--pE);
+
+point A_ = (pD-t.A)*2+t.A; dot("$A'$", A_, NE);
+draw(t.B--A_--t.C, dashed);
+draw(t.A--A_, dashed);
+
+point E_ = midpoint(line(t.B,A_)); dot(Label("$E'$", E_, E));
+draw(E_--pD, dashed);
+"""]]
+"""]]
+
+This plugin uses the [[!cpan Digest::SHA]] perl module.