Go to file
physikerwelt 47f530b355 Support for chemical formulae
* Add support for LaTeX package mhchem.
* Add hook <ce>
* Add format <math chem>

See bug description for the details.

Bug: T98306
Change-Id: I2ab80834edc5d071618bc52f133cfb2b7ece5016
2016-02-07 18:55:58 +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-02-05 21:52:06 +01:00
images Resolve problems on SpecialPage:MathStatus 2015-11-10 12:55:19 +00:00
maintenance Add php code sniffer to composer 2015-09-23 10:46:14 +01:00
math Begining -> beginning 2015-12-11 18:37:10 +00:00
mathoid Separate Mathoid from the Math extension 2014-02-10 18:28:08 +00:00
modules makeSvgsAndCss: Add missing semi-colons to CSS, tweak symbol alignment formula 2016-02-02 19:03:01 +00:00
tests Support for chemical formulae 2016-02-07 18:55:58 +00:00
texvccheck Begining -> beginning 2015-12-11 18:37:10 +00:00
.csslintrc build: Add csshint, jshint and jscs to math extension 2015-09-14 22:28:15 +00:00
.gitattributes Update to MathJax 2.3 2014-01-27 21:36:02 +00:00
.gitignore Add Restbase interface 2015-12-01 21:10:09 +00:00
.gitreview Adding .gitreview 2012-03-23 10:30:45 -07:00
.jscsrc build: Add csshint, jshint and jscs to math extension 2015-09-14 22:28:15 +00:00
.jshintignore Adding mathoid as tex to MathML and SVG renderer 2013-10-04 17:03:34 -07:00
.jshintrc Make math dialog with clickable list of formula fragments 2015-11-23 16:30:38 -08:00
.rubocop.yml Fixed Style/StringLiterals RuboCop offense 2015-09-22 10:18:13 -07:00
composer.json build: Updating development dependencies 2016-01-05 10:36:45 -08:00
COPYING Add COPYING 2014-03-01 16:15:39 +00:00
extension.json Add license-name to extension.json 2016-01-16 21:21:09 -05:00
Gemfile Update mediawiki_selenium Ruby gem to version 1.6.5 2016-02-03 17:27:36 +00:00
Gemfile.lock Update mediawiki_selenium Ruby gem to version 1.6.5 2016-02-03 17:27:36 +00:00
Gruntfile.js Rename modules/VisualEditor to modules/ve-math 2015-09-17 15:10:30 +00: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 Add php code sniffer to composer 2015-09-23 10:46:14 +01:00
Math.alias.php Add Persian special page alias 2015-08-22 17:14:38 +00:00
Math.hooks.php Support for chemical formulae 2016-02-07 18:55:58 +00:00
Math.php Add php code sniffer to composer 2015-09-23 10:46:14 +01:00
MathDataModule.php Make math dialog with clickable list of formula fragments 2015-11-23 16:30:38 -08:00
MathFormatter.php Clean up Wikibase related code 2016-01-25 16:22:07 +00:00
MathInputCheck.php Add php code sniffer to composer 2015-09-23 10:46:14 +01:00
MathInputCheckRestbase.php Reduce the number or requests sent to Restbase 2016-01-29 18:16:05 +01:00
MathInputCheckTexvc.php Add php code sniffer to composer 2015-09-23 10:46:14 +01:00
MathLaTeXML.php Add php code sniffer to composer 2015-09-23 10:46:14 +01:00
MathMathML.php Support for chemical formulae 2016-02-07 18:55:58 +00:00
mathParserTests.txt Coverage tests for the Math extension 2014-03-11 15:35:07 +00:00
MathRenderer.php Support for chemical formulae 2016-02-07 18:55:58 +00:00
MathRestbaseInterface.php Reduce the number or requests sent to Restbase 2016-01-29 18:16:05 +01:00
MathSource.php Add php code sniffer to composer 2015-09-23 10:46:14 +01:00
MathTexvc.php Logging: adjust the log entry levels 2015-12-15 00:14:15 +01:00
MathValidator.php Implement datatype 'Math' for Wikidata 2016-01-11 22:29:29 +00:00
MathWikidataHook.php Introduce a "MathEnableWikibaseDataType" config 2016-01-12 21:22:49 +01:00
package.json build: Updating development dependencies 2015-12-29 11:40:27 -08:00
phpcs.xml Update mediawiki-codesniffer and parallel-lint settings 2015-09-29 02:19:04 +02:00
Rakefile Added Rakefile 2015-11-09 17:50:54 +01: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 Add php code sniffer to composer 2015-09-23 10:46:14 +01:00
SpecialMathStatus.php Resolve problems on SpecialPage:MathStatus 2015-11-10 12:55:19 +00: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'] = array( 'level' => 'info', 'destination' => '/path/to/file.log' );