DokuWiki

It's better when it's simple

User Tools

Site Tools


plugin:mathpublish

This is an old revision of the document!


mathpublish Plugin

Compatible with DokuWiki

rincewind, angua, Adora Belle

plugin PHP only solution for including mathematical formulae into DokuWiki

Last updated on
2012-02-18
Provides
Syntax
Repository
Source

This extension has not been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues.

Similar to asciimath, asciimathml, jsmath, masciimath, math, mathjax, mimetex

Tagged with formula, math

This plugin is based on phpmathpublisher by Pascal Brachet to allow inclusion of properly rendered mathematical formulae in DokuWiki pages.

This plugin was originally written by Christopher Smith and named math2.

This is a completely self-contained PHP solution. It requires no third party packages. It makes use of php's GD library and freely available fonts1) to create an images for each formula. The plugin script, phpmathpublisher and the required fonts are all included in the download package.

Installation

A CosmoCode Plugin Install the plugin using the Plugin Manager and the download URL above, which points to latest version of the plugin. Refer to Plugins on how to install plugins manually.

Change Log

PHP Requirements

To run this plugin your PHP installation needs to have:

  • tokenizer library
  • gd library
  • png capabilities, i.e. libpng, which also requires the zlib library
  • freetype font library

Most default installs of PHP (eg. at web hosts) do have all these requirements fulfilled anyway. For full details refer to the PHP documentation.

Examples/Usage

Example:

<m>S(f)(t)=a_{0}+sum{n=1}{+infty}{a_{n} cos(n omega t)+b_{n} sin(n omega t)}</m> 
<m 8>delim{lbrace}{matrix{3}{1}{{3x-5y+z=0} {sqrt{2}x-7y+8z=0} {x-8y+9z=0}}}{ }</m>
<m 32>delim{|}{{1/N} sum{n=1}{N}{gamma(u_n)} - 1/{2 pi} int{0}{2 pi}{gamma(t) dt}}{|} <= epsilon/3</m>

Result2):



Syntax

The general syntax to embed a formulae is this:

<m size>...mathematical formulae...</m>
  • size (optional) the base glyph size in pixels - default value: 12.
  • alignment can be controlled in the same way as DokuWiki images, one space to the left to right align, one to the right to left align, one on each side to centre.

For a complete list of what mathematical terms can be used, refer to the original mathpublisher documentation or this DokuWiki-compatible formulae syntax page3)

Cyrillic support

Modification of expression.php for cyrillic support:

expression.php.diff
162,185c162,250
<         'tanh' => 'tanh'
<     );
< 
<     /**
<      * Symbol to font assignment
<      */
---
>         'tanh' => 'tanh',
> //cyrillic
>         'А' => '&#1040;',
>         'а' => '&#1072;',
>         'Б' => '&#1041;',
>         'б' => '&#1073;',
>         'В' => '&#1042;',
>         'в' => '&#1074;',
>         'Г' => '&#1043;',
>         'г' => '&#1075;',
>         'Д' => '&#1044;',
>         'д' => '&#1076;',
>         'Е' => '&#1045;',
>         'е' => '&#1077;',
>         'Ж' => '&#1046;',
>         'ж' => '&#1078;',
>         'З' => '&#1047;',
>         'з' => '&#1079;',
>         'И' => '&#1048;',
>         'и' => '&#1080;',
>         'Й' => '&#1049;',
>         'й' => '&#1081;',
>         'К' => '&#1050;',
>         'к' => '&#1082;',
>         'Л' => '&#1051;',
>         'л' => '&#1083;',
>         'М' => '&#1052;',
>         'м' => '&#1084;',
>         'Н' => '&#1053;',
>         'н' => '&#1085;',
>         'О' => '&#1054;',
>         'о' => '&#1086;',
>         'П' => '&#1055;',
>         'п' => '&#1087;',
>         'Р' => '&#1056;',
>         'р' => '&#1088;',
>         'С' => '&#1057;',
>         'с' => '&#1089;',
>         'Т' => '&#1058;',
>         'т' => '&#1090;',
>         'У' => '&#1059;',
>         'у' => '&#1091;',
>         'Ф' => '&#1060;',
>         'ф' => '&#1092;',
>         'Х' => '&#1061;',
>         'х' => '&#1093;',
>         'Ц' => '&#1062;',
>         'ц' => '&#1094;',
>         'Ч' => '&#1063;',
>         'ч' => '&#1095;',
>         'Ш' => '&#1064;',
>         'ш' => '&#1096;',
>         'Щ' => '&#1065;',
>         'щ' => '&#1097;',
>         'Ъ' => '&#1066;',
>         'ъ' => '&#1098;',
>         'Ы' => '&#1067;',
>         'ы' => '&#1099;',
>         'Ь' => '&#1068;',
>         'ь' => '&#1100;',
>         'Э' => '&#1069;',
>         'э' => '&#1101;',
>         'Ю' => '&#1070;',
>         'ю' => '&#1102;',
>         'Я' => '&#1071;',
>         'я' => '&#1103;'
>          );
>             
>              /**
>               * Symbol to font assignment
>               */

Discussion

How about replacing the - with &#x2212; (the &minus; sign) by adding in expression.php to protected $symboles = array( something like '-' ⇒ '&#x2212;',? I don't know if this should go upstream …

Hi, I From Perú, the plug in work awessome but i need to change the color of the formula to white, the background color of my template es black and look very bad, It's possible something to fix this? Thanks!

Excellent Plugin!!! I especially like the self contained nature and the fact the formulas will export in the pdf export as well!! Thanks and well done. Blake

1)
freeserif from the Free Software Foundation and several fonts made freely available by the American Mathematical Association
2)
note: the plugin is not installed at this site, these images are the actual images generated by the plugin taken from a site where the plugin is installed.
3)
You may want to copy that page to your wiki as a help page for your users
plugin/mathpublish.1418902381.txt.gz · Last modified: 2014-12-18 12:33 by grosse

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki