Go to file
Moritz Schubotz 464886c3cb Add PNG and MathPlayer fallback for Wikidata user
In MathML rendering mode custom javascript is executed
to check if the brower has MathPlayer installed. In addition
it's checked if the browser supports SVG rendering. This
functionality was broken in Wikidata, since the scripts were
loaded as styles and not as JS modules.

Change-Id: I5fd8eafc89e01c6ec10cf0f3b71e885ec3a4399c
2017-05-26 18:15:31 +02: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. 2017-05-25 22:42:09 +02: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 Use TabPanelLayout instead of the deprecated CardLayout 2017-05-17 15:02:42 +05:30
tests Improve error reporting 2016-08-17 21:15:02 +02:00
texvccheck Merge "Remove broken test script texvccheck/test.pl" 2016-12-26 00:05:16 +00:00
.eslintrc.json eslint: Re-enable wrap-iife and partially enable dot-notation 2016-11-15 13:13:05 +00:00
.gitattributes
.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
composer.json build: add jakub-onderka/php-console-highlighter 2017-05-05 21:40:01 +02:00
COPYING Add COPYING 2014-03-01 16:15:39 +00:00
extension.json Correct "operators" message in chemSymbols.json 2017-02-23 19:34:54 +00:00
Gemfile Update tests to Selenium 3 2017-02-27 15:53:37 +01:00
Gemfile.lock Update tests to Selenium 3 2017-02-27 15:53:37 +01:00
Gruntfile.js Remove separate stylelint config for VE 2017-04-28 17:37:45 +01:00
HISTORY Use extension.json, empty PHP entry point 2015-07-30 22:01:20 +00:00
Makefile Remove unused Makefile variable "DIRS" 2016-12-25 13:35:16 +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 Better error handling for math render errors 2017-05-10 14:38:50 +02:00
Math.php Add php code sniffer to composer 2015-09-23 10:46:14 +01:00
MathChemSymbolsDataModule.php Add support for chemical formulae in VisualEditor 2017-02-19 18:36:26 +00: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 Skip shell invocation on large input 2017-01-20 15:09:56 -08:00
MathLaTeXML.php Replace use of &$this 2017-01-31 22:54:07 -05:00
MathMathML.php Replace use of &$this 2017-01-31 22:54:07 -05:00
MathMathSymbolsDataModule.php Add support for chemical formulae in VisualEditor 2017-02-19 18:36:26 +00:00
MathMLRdfBuilder.php RDF Formatter for Math data type 2016-02-12 20:38:27 +00:00
mathParserTests.txt Coverage tests for the Math extension 2014-03-11 15:35:07 +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 Revert "Add class mwe-math-element to math elements" 2017-01-03 23:57:46 +00:00
MathTexvc.php Replace use of &$this 2017-01-31 22:54:07 -05:00
MathValidator.php Convert all array() syntax to [] 2016-04-13 10:18:23 -04:00
MathWikidataHook.php Add PNG and MathPlayer fallback for Wikidata user 2017-05-26 18:15:31 +02:00
package.json build: Update eslint to 0.4.0 2017-05-04 21:52:38 +01:00
phpcs.xml Update mediawiki-codesniffer and parallel-lint settings 2015-09-29 02:19:04 +02:00
Rakefile Migration of browsertests* Jenkins jobs to selenium* jobs 2016-04-25 18:31:00 +02: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
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

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' ];