Math library for MediaWiki (patched)
Go to file
physikerwelt bc52c77d24 Use extension.json, empty PHP entry point
* Use string constants instead of integers
* Derive new names from old via conversion of constant
  naming convention to CamelCase.
* Replace old constant string e.g. 'MW_MATH_ABC_DEF'
  with new string 'abcDef'
* Replace old constant value with new string.
* Tests to demonstrates what is actually done.
* Rename constants

Bug: T106630
Bug: T106631
Bug: T87941
Change-Id: I6d1094ece79e912d9ddbef6681a25196c7a6e801
2015-07-30 22:01:20 +00:00
db Increase size of the math_mathml in the mathlatexml table 2014-11-18 12:42:27 +01:00
i18n Localisation updates from https://translatewiki.net. 2015-07-28 21:49:29 +02:00
images Convert VisualEditor Beta Feature to a normal (non-optional) plugin 2014-04-29 13:34:40 -07:00
maintenance Use extension.json, empty PHP entry point 2015-07-30 22:01:20 +00:00
math Regularize spacing in `texvc` and `texvccheck` 2014-10-12 22:04:41 +02:00
mathoid Separate Mathoid from the Math extension 2014-02-10 18:28:08 +00:00
modules Use extension.json, empty PHP entry point 2015-07-30 22:01:20 +00:00
tests Use extension.json, empty PHP entry point 2015-07-30 22:01:20 +00:00
texvccheck Fix perl script permissions and shebang 2015-07-01 13:27:22 +00:00
.gitattributes Update to MathJax 2.3 2014-01-27 21:36:02 +00:00
.gitignore Remove client-side MathJax support 2015-07-16 00:46:29 +00:00
.gitreview Adding .gitreview 2012-03-23 10:30:45 -07:00
.jshintignore Adding mathoid as tex to MathML and SVG renderer 2013-10-04 17:03:34 -07:00
.rubocop.yml Prepare repository for running RuboCop after every push to Gerrit 2014-10-21 15:04:22 +02:00
.rubocop_todo.yml Prepare repository for running RuboCop after every push to Gerrit 2014-10-21 15:04:22 +02:00
COPYING Add COPYING 2014-03-01 16:15:39 +00:00
Gemfile Prepare repository for running RuboCop after every push to Gerrit 2014-10-21 15:04:22 +02:00
Gemfile.lock QA: update Ruby gems 2014-11-07 08:53:58 -07:00
Gruntfile.js build: Configure banana-checker and jsonlint 2015-06-19 21:54:10 -07:00
HISTORY Use extension.json, empty PHP entry point 2015-07-30 22:01:20 +00:00
Makefile Makefile in root directory 2014-01-28 20:55:48 +01:00
Math.alias.noTranslate.php Move integration tests to a new special page 2015-03-30 11:47:31 -04:00
Math.alias.php Localisation updates from https://translatewiki.net. 2015-04-30 22:19:51 +02:00
Math.hooks.php Use extension.json, empty PHP entry point 2015-07-30 22:01:20 +00:00
Math.php Use extension.json, empty PHP entry point 2015-07-30 22:01:20 +00:00
MathInputCheck.php Validate TeX input for all renderers, not just texvc 2014-01-22 10:07:27 +00:00
MathInputCheckTexvc.php Use extension.json, empty PHP entry point 2015-07-30 22:01:20 +00:00
MathLaTeXML.php Use extension.json, empty PHP entry point 2015-07-30 22:01:20 +00:00
MathMathML.php Use extension.json, empty PHP entry point 2015-07-30 22:01:20 +00:00
MathRenderer.php Use extension.json, empty PHP entry point 2015-07-30 22:01:20 +00:00
MathSource.php Use extension.json, empty PHP entry point 2015-07-30 22:01:20 +00:00
MathTexvc.php Use extension.json, empty PHP entry point 2015-07-30 22:01:20 +00:00
README Use extension.json, empty PHP entry point 2015-07-30 22:01:20 +00:00
RELEASE-NOTES-3.0.0 Add release notes for version 3.0.0 2015-07-25 22:01:48 +01:00
SpecialMathShowImage.php Use extension.json, empty PHP entry point 2015-07-30 22:01:20 +00:00
SpecialMathStatus.php Use extension.json, empty PHP entry point 2015-07-30 22:01:20 +00:00
extension.json Use extension.json, empty PHP entry point 2015-07-30 22:01:20 +00:00
mathParserTests.txt Coverage tests for the Math extension 2014-03-11 15:35:07 +00:00
package.json build: Configure banana-checker and jsonlint 2015-06-19 21:54:10 -07:00

README

This version (for MediaWiki 1.19) has some changes since previous versions:

* rendering options have been reduced to just 'Always PNG' and 'Leave it as TeX'
** all other rendering options will merge to PNG.
* initial experimental support for integrating MathJax client-side rendering

See the README in the math subdirectory for more info on setting up the
low-level conversion tools.
See the README in the texvccheck subdirectory for more info on setting up the
security checking tools for MathJax and LaTeXML.

MathML support:
If you prefer MathML rather than images you can use LaTeXML to convert the
math tags to MathML. To use that feature you have to enable LaTeXML by setting
$wgMathUseLaTeXML = true;
It is possible to choose LaTeXML as default option (for anonymous user) by setting
$wgDefaultUserOptions['math'] = 'latexml';
in the LocalSettings.php file.
The LaTeXML option requires php5-curl to be installed. Without php5-curl no proper
error handling can be guaranteed.
Furthermore, a core version of wmf/1.22wmf7 or newer is recommended.
Otherwise, errors in LaTeXML can lead to mal-formatted XML output and disturb the
page layout.

MathJax configuration:
Client-side configuration of MathJax can be done by specifying a mathJax.config
table, which takes a table as described in:
http://docs.mathjax.org/en/v1.1-latest/options/index.html#configuration

Example:
if ( typeof mathJax === 'undefined' ) {
  mathJax = {};
  mathJax.config = {
    showProcessingMessages: true
  };
}

Attributes of the <math /> element:
attribute "display":
possible values: "inline", "block" or "inline-displaystyle" (default)

"display" reproduces the old texvc behavior:
The equation is rendered with large height operands (texvc used $$ $tex $$ to render)
but the equation printed to the current line of the output and not centered in a new line.
In Wikipedia users use :<math>$tex</math> to move the math element closer to the center.

"inline" renders the equation in with small height operands by adding {\textstyle $tex } to the
users input ($tex). The equation is displayed in the current text line.

"inline-displaystyle" renders the equation in with large height operands centered in a new line by adding
{\displaystyle $tex } to the user input ($tex).


For testing your installation run
php tests/phpunit/phpunit.php extensions/Math/tests/
from your MediWiki home path.

== Logging ==
The math extension supports PSR-3 logging:
Configuration can be dona via
$wgDebugLogGroups['Math'] = array( 'level' => 'info', 'destination' => '/path/to/file.log' );