Extension:Math/Roadmap

Introduction
The Math extension (or, more broadly, the rendering of the tag) has a long history. It has been modified by a number of different people with different goals, different ideas, and different and programming styles, using different underlying technologies. As a result, the extension's current implementation is more a grown than a well-designed or -documented structure.

An overview of what can currently be done with this extension is found at the English Wikipedia's documentation.

The aim of this page is to co-ordinate the development activities concerning this extension.

Wanted features
See also Making Math Searchable in Wikipedia
 * MathML support
 * Specification of the subset of commands that are allowed "MediaWiki uses a subset of AMS-LaTeX markup, a superset of LaTeX markup which is in turn a superset of TeX markup, for mathematical formulae"
 * Automatic testing
 * Security stategie
 * Links to formula (in the current development version $parser->nextLinkID is used to generate an anchor id, which is not human readable. The problem is that the same TeX string can occur more than once in page.) see Extension:MathSearch
 * Automatic numbering of equations (bug 5600)

Current activities
Currently the following changesets are open: https://gerrit.wikimedia.org/r/#/q/status:open+project:mediawiki/extensions/Math,n,z

Next steps
The next step is to collect problems with MathML rendering with Firefox on this page.


 * In displaystyle the symbol $$\displaystyle \iiiint_A$$ does not look like the other integral symbols ($$\displaystyle \oint_A \int_A \iint_A \iiint_A$$). --Christian1985 (talk) 17:06, 29 October 2014 (UTC)
 * Task 1: Figure out how this realtes to Mathjax bug 116--Physikerwelt (talk) 17:58, 29 October 2014 (UTC)
 * Which font-family are you using? That works well for me with Latin Modern Math.
 * I think it would be nice when big symbols like integrals $$\int_A$$ in body text will be displayed in textstyle $$\textstyle \int_A$$. --Christian1985 (talk) 17:06, 29 October 2014 (UTC)
 * Brackets around big symbols like Integrals should be greater. Today it looks like: $$\left( \int_A \right)$$; code: --Christian1985 (talk) 17:14, 29 October 2014 (UTC)
 * I checked how this is rendered whith LaTeXML. However it produces the same problem. This indicates that it might be a Firefox issue. can you comment on that? --Physikerwelt (talk) 17:58, 29 October 2014 (UTC)
 * This seems to be a bug in Gecko.
 * The code  should be rendered correctly. Today it looks like: $$\overline{A}^T$$.--Christian1985 (talk) 18:05, 29 October 2014 (UTC)
 * The input is valid. Texvccheck transforms it to  which renderes correctly as $${\overline  {A}}^{T}$$
 * Task 1: check what texvcjs does with the input.--Physikerwelt (talk) 17:58, 29 October 2014 (UTC)


 * The symbol $$\lim_{x\to x_0\atop x\in I}$$ does not look very nice. The distance between $$\lim$$ and $$x \to x_0$$ is too small.--Christian1985 (talk) 18:05, 29 October 2014 (UTC)
 * This is a major problem, and should be resolved before I'd propose to make MathML standard for Firefox users. It might be a MathJax bug so I reported it as bug 948 --Physikerwelt (talk) 18:27, 29 October 2014 (UTC)
 * I'm not sure why an is generated by MathJax here.
 * The symbol $$\bigoplus$$ (\bigoplus) is compared to $$\sum$$ very small.--Christian1985 (talk) 18:16, 29 October 2014 (UTC)
 * Question: How large should the symbol be? Should they be the same size. LaTeXML adds the attribute mathsize="1.5em" to the mo element that contains the &oplus; but does not add the same attribute to &sum; ... however that seems to be a hack. If LaTeXML rendering is considered as correct, I could contact the LaTeXML developers how and why this was done. --Physikerwelt (talk) 18:38, 29 October 2014 (UTC)
 * I think it should be a little bit smaller then the symbol $$\sum$$. In the skript the symbol has the correct height.--Christian1985 (talk) 18:47, 29 October 2014 (UTC)
 * Which font-family are you using? That works well for me with Latin Modern Math.
 * Where can I see my currently used font and where can I change the font?--Christian1985 (talk) 19:19, 29 October 2014 (UTC)
 * In Firefox DOM inspector select one formula (using the "select one page element" button) and more precisely a "math" element. On the right panel, there is a tab "Fonts" that indicates the font currently used. You can also try http://fred-wang.github.io/MathFonts/ and https://addons.mozilla.org/en-US/firefox/addon/mathml-font-settings/.
 * You can also install http://www.gust.org.pl/projects/e-foundry/lm-math and add "math { font-family: Latin Modern Math; }" to your custom CSS.

,
 * Follows after formula a comma, then the distance between formula and comma is too big. Example: $$\omega$$, --Christian1985 (talk) 19:19, 29 October 2014 (UTC)
 * This is because there is a space in the code generated by MediaWiki:

Feature Requests

 * 3840 Looks for high math images printing. The only thoughts I have here are to switch form dvipng to dvisvg and use svg images which would look better at all scales and hopefully would print better. Related 15777
 * 5856, 10186 and 6722 are related to mhchem package. Users seem to be very interested in this.  Perhaps this should looked into.
 * 20902 request to install chemarr
 * 12223 Desperately needed and long overdue inline math tags. Probably would only make sense if base line issue is sorted out.  Should we use a slightly smaller font for inline math?  Not done in latex but may look nice on the web.
 * 28258 It would be nice to have some commutative diagram packages. xy-pic may be a good option.
 * 31546 Make error messages for Math use wikitext (Nobody assigned... Maybe target release 2.1)
 * 36063 Math settings provided by MathJax should be a part of user preferences. (Nobody assigned... Maybe target release 2.2)

Visual Appearance Issues
For a list of all bugs see
 * 15777 I have to agree this looks fairly bad. Curious if switching to dvisvg would straighten this out.
 * 38722

Localization

 * 2458 In TeX/LaTeX terms, this is about the babel package.

Abandoned changes
A list of abandoned changes. If anybody want to work on them the can be restored:
 * https://gerrit.wikimedia.org/r/#/c/129974/
 * https://gerrit.wikimedia.org/r/#/c/130828/
 * https://gerrit.wikimedia.org/r/#/c/4060/
 * https://gerrit.wikimedia.org/r/#/c/64523/