Math library for MediaWiki (patched)
Go to file
Tim Landscheidt 352abc726f Do not ignore all .mli files in texvccheck
The pattern "*.mli" was incorrectly added to texvccheck/.gitignore by
4c9dc2f08e with the comment "Compiled
source".  As with d9a7da14f1, .mli files
define the interfaces for the corresponding .ml module and thus should
not be ignored.

The only exception to this is parser.mli which is generated by the
ocamlyacc from the parser.mly definition, so this change only ignores
those files.

Change-Id: I263df70e58fb14a7228c32d5c985ff7f1b841891
2016-12-25 13:39: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. 2016-12-19 22:46:32 +01:00
images Update reference images 2016-10-10 18:26:22 +02:00
maintenance Updated maintenance scripts to use $this->requireExtension() 2016-12-17 15:23:58 -05:00
math Do not ignore all .mli files in texvccheck 2016-12-25 13:39:20 +00:00
mathoid Separate Mathoid from the Math extension 2014-02-10 18:28:08 +00:00
modules Add class `mwe-math-element` to math elements 2016-12-21 23:03:18 +00:00
tests Improve error reporting 2016-08-17 21:15:02 +02:00
texvccheck Do not ignore all .mli files in texvccheck 2016-12-25 13:39:20 +00:00
.eslintrc.json eslint: Re-enable wrap-iife and partially enable dot-notation 2016-11-15 13:13:05 +00:00
.gitattributes Update to MathJax 2.3 2014-01-27 21:36:02 +00:00
.gitignore Expand .gitignore for more editors 2016-11-13 13:22:03 +01:00
.gitreview Whoops, track not trace 2016-10-24 17:02:56 -07:00
.rubocop.yml Fixed Style/StringLiterals RuboCop offense 2015-09-22 10:18:13 -07:00
.stylelintrc build: Introduce stylelint to lint for css errors 2016-05-19 19:16:00 +01:00
COPYING Add COPYING 2014-03-01 16:15:39 +00:00
Gemfile Update mediawiki_api gem to 1.7.1 2016-05-26 01:34:35 +02:00
Gemfile.lock Update Gemfile.lock to match Gemfile 2016-05-26 13:43:08 +02:00
Gruntfile.js build: Replace jscs and jshint with eslint 2016-10-28 11:11:26 -07:00
HISTORY Use extension.json, empty PHP entry point 2015-07-30 22:01:20 +00:00
Makefile Fix "make texvccheck" in top-level Makefile 2016-12-25 12:45:09 +00:00
Math.alias.noTranslate.php Convert all array() syntax to [] 2016-04-13 10:18:23 -04:00
Math.alias.php Convert all array() syntax to [] 2016-04-13 10:18:23 -04:00
Math.hooks.php Remove 'UnitTestList' hook 2016-08-05 19:00:28 +00:00
Math.php Add php code sniffer to composer 2015-09-23 10:46:14 +01:00
MathDataModule.php Convert all array() syntax to [] 2016-04-13 10:18:23 -04:00
MathFormatter.php Convert all array() syntax to [] 2016-04-13 10:18:23 -04:00
MathInputCheck.php Add php code sniffer to composer 2015-09-23 10:46:14 +01:00
MathInputCheckRestbase.php Update to mediawiki-codesniffer 0.6.0 2016-04-19 17:07:21 -04:00
MathInputCheckTexvc.php Convert all array() syntax to [] 2016-04-13 10:18:23 -04:00
MathLaTeXML.php Fix: Convert all array() syntax to [] 2016-04-19 21:41:42 +00:00
MathMLRdfBuilder.php RDF Formatter for Math data type 2016-02-12 20:38:27 +00:00
MathMathML.php Add class `mwe-math-element` to math elements 2016-12-21 23:03:18 +00:00
MathRenderer.php Merge "Avoid DBPerformance warnings in writeToDatabase()" 2016-06-10 08:34:56 +00:00
MathRestbaseInterface.php Improve error reporting 2016-08-17 21:15:02 +02:00
MathSource.php Add class `mwe-math-element` to math elements 2016-12-21 23:03:18 +00:00
MathTexvc.php Add class `mwe-math-element` to math elements 2016-12-21 23:03:18 +00:00
MathValidator.php Convert all array() syntax to [] 2016-04-13 10:18:23 -04:00
MathWikidataHook.php Remove woff fonts 2016-05-23 14:52:59 +00:00
README Convert all array() syntax to [] 2016-04-13 10:18:23 -04:00
RELEASE-NOTES-3.0.0 Add release notes for version 3.0.0 2015-07-25 22:01:48 +01:00
Rakefile Migration of browsertests* Jenkins jobs to selenium* jobs 2016-04-25 18:31:00 +02:00
SpecialMathShowImage.php Convert all array() syntax to [] 2016-04-13 10:18:23 -04:00
SpecialMathStatus.php Convert all array() syntax to [] 2016-04-13 10:18:23 -04:00
composer.json build: Updating mediawiki/mediawiki-codesniffer to 0.7.2 2016-05-27 18:21:41 -07:00
extension.json Add class `mwe-math-element` to math elements 2016-12-21 23:03:18 +00:00
mathParserTests.txt Coverage tests for the Math extension 2014-03-11 15:35:07 +00:00
package.json build: Bump eslint-config-wikimedia to v0.3.0 (already passes) 2016-11-15 16:37:57 -08:00
phpcs.xml Update mediawiki-codesniffer and parallel-lint settings 2015-09-29 02:19:04 +02: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'] = [ 'level' => 'info', 'destination' => '/path/to/file.log' ];