Commit Graph

101 Commits

Author SHA1 Message Date
Frédéric Wang 639d8a766f Separating MediaWiki specific files from MathJax module
This commit separates the files wiki2jax.js and texvc.js from the
MathJax modules. This allows for MathJax updates without affecting
MediaWiki files. It also defines the MediaWiki path configuration,
although this will really only be usable in MathJax 2.4. Finally,
it fixes jshint errors in texvc.js and wiki2jax.js

Moved texvc.js and wiki2jax.js to extensions/Math/modules/mediawiki-extensions directory

Change-Id:  I97d68c0555bc9fbdd6bf42912aa249d57b3d9359
2014-08-29 21:03:41 +02:00
Physikerwelt 7f6db28dd6 Revert "Added a hook for modifications to MathJax"
This reverts commit 0a8fbac418.

Change-Id: If4442d07e4d82e1f45211bb2b331221c62fadbb8
2014-08-19 19:13:35 +00:00
Translation updater bot 0a8fbac418 Added a hook for modifications to MathJax
The signal 'ext.math.mathjax.customize' is added to the
mathJax.Init function. Extensions can call this signal for
modifications to MathJax.

Change-Id: Ia2bae50cd1fcd15d4775d7b9666679c477060659
2014-08-19 11:07:57 -04:00
Frédéric Wang f590974c25 Add default display options
In some cases for example if the vagrant role
mobilefrontend is enabled the stylesheets are not
processed on mobile devices.
Without a default setting for the display attribute
all elements are displayed at the same time.

Change-Id: Ic0e95effaf0b413ec4c5878e1cfd5c269daa44c3
2014-07-25 17:19:30 +00:00
physikerwelt (Moritz Schubotz) bc519c22f4 Move @namespace css style to top
According to PHPStrom the @namespace css
element must be before normal css rules

Change-Id: I43eb10e976446bf846856f9c4f462a5be034062f
2014-07-25 13:00:13 -04:00
Trevor Parscal b3335f60c4 Specify dialog size in VisualEditor
Corresponds to changes to window system of OOUI and thus VisualEditor Ia74732e

Change-Id: I72f410e09eddc82e562b6beb74772636b896dcd7
2014-07-19 22:36:15 +00:00
Ed Sanders 47a6bd2073 Fix rerendering in VE
this.$element is no longer a wrapper, so use .filter instead
of .find. Don't use domElements argument as this has already
been written to this.$element at this stage (will remove this
argument in VE core).

Change-Id: If24580102201e2b83b57c63d85335bd728a28784
2014-07-14 17:45:24 +00:00
Frédéric Wang 382454a979 Update modules/ext.math.css
Currently, the PNG fallback is hidden in the MathML mode and the MathML & SVG
are respectively hidden and visible by default; the visibility of the
SVG/MathML output is only changed for Gecko. This does not work well for
IE < 9, which does not support SVG. This commit tries to improve the selection
of PNG, SVG or MathML according to the browser capatibility.

Change-Id: Ie9b0fdb66c51fbf6be98df092ce4de29fbba6068
2014-06-30 10:52:59 +00:00
Ed Sanders 7c08fc5b72 Migrate VE icon from VE extension
Removed from VE with Ic8074be2.

Change-Id: I33cdb6204b4abc44398ecedd65f7d9251e73e9b0
2014-06-21 14:52:16 +00:00
Ed Sanders e0a7cdf26d Remove display:inline-block highlight hacks for math nodes
With getClientRects these are no longer necessary.

Depends on I09f1c0850 in VE core.

Change-Id: I2c4c1809a92c6d2cbf6769782f7595a508d823ea
2014-06-16 14:48:29 +01:00
Frédéric Wang a3015f6e79 Hide redundant output in the MathML mode.
In the MathML mode, the SVG is always visible and for Gecko the MathML
output is visible too. This commit modifies ext.math.css to hide redundant
output for a given mathematical formula.

Change-Id: I5d48ec4f2a40246567b201e82444e61d408cb3b5
2014-06-11 14:16:57 +02:00
Frédéric Wang 27aee07cb0 Fonts for native MathML
This sets the default font-family on <math> elements so that we try to use
OpenType MATH fonts that are likely to be installed or fallback to WOFF and
obsolete mathematical fonts.

Bug: 65532
Change-Id: Id4517a3ce5eab4acdf2264712ba132b972120042
2014-06-10 11:07:10 +00:00
jenkins-bot 09359385b4 Merge "Use new MWInlineExtensionNode and DM node construction" 2014-06-07 03:47:54 +00:00
physikerwelt c390f6479a Add getHtmlOutput method
Currently the method render always returns
a html string that can be a string that
represents the correct result or a rendered
error message.
This change adds a mechanism that allows
to fetch the HTML output.
In a followup commit the rendering function
is changed to return a boolean value rather
than the rendering result.
This will simplify the error handling and caching.

Change-Id: I80760493e391911c41eb69d75a93c6a34db8852e
2014-06-06 21:52:35 +02:00
Ed Sanders 03f09e4e26 Use new MWInlineExtensionNode and DM node construction
Depends on I0ddcabeb and I8d4f37b6 in core.

Change-Id: I7d5e1174c4f8a49d926b287b8dd109e3148cf95b
2014-06-03 19:24:30 +01:00
Frédéric Wang a586c80083 Revome useless MathJax files added in Ib7f2e4b8eb7250ea4fc24aac3cedf196211f38c2
These files were added in but the change was totally unrelated to the
AsciiMath issue mentioned there and moreover this commit bypassed review.
These entity references are useless for LaTeXML
(which does not generate entity names), for the client-side MathJax
(which does not use MathML input) and for mathoid (which uses
phantomjs=webkit and thus already parses the HTML5 entity names correctly).
Finally, these files are likely to disappear in future MathJax versions.
So let's remove these files until it is clear what the intention was.

Change-Id: Iee875632411b98d1e86d3bb10f69ae3797105de7
2014-05-08 08:47:04 +02:00
physikerwelt (Moritz Schubotz) 7c0a940a78 Add missing MathJax files
some files required for Mathoid were missing in the
modules/MahtJax folder

For example I15cb2d1cb0533a2fa0e21012198387501a3b42ea
requires AsciiMath and LaTeXML requires named entities

Change-Id: Ib7f2e4b8eb7250ea4fc24aac3cedf196211f38c2
2014-05-07 11:50:14 +00:00
jenkins-bot e6a412132d Merge "Update for 126166 in VE Core" 2014-04-21 22:46:32 +00:00
James D. Forrester c12523f908 Simplify VE inspector code by extending new MWLiveExtensionInspector
All live preview logic has been moved to ve.ui.MWLiveExtensionInspector so
so this can be simplified down to just static configuration.

Depends on I708c4cb012be in VE-MW.

Change-Id: I24b4788e97411eec18161709ca5d47c87d3f64da
2014-04-17 17:55:37 -07:00
Trevor Parscal bd8aca6e5d Update for 126166 in VE Core
Change-Id: Ie5d4dbbc8ae301017f8ae047fb492368b965f980
2014-04-15 16:22:03 -07:00
Ed Sanders 3032c22480 Update VE implementation to use model-only inpsectors
As we can't access the view node we have to use stagin transactions
to apply changes to the real document node.

In all cases we can now bypass the parent teardown method as the
model has already been updated.

Depends on If1250402f266 being pulled through to the VE extension.

Bug: 63785
Change-Id: Ic42db8531a5119e8454fb26c80565cef656d3a80
2014-04-14 18:52:09 -07:00
Trevor Parscal 01f3f8ee67 Update tool to use a command
Bug: 63541
Change-Id: Iaeaf183dc2d906364d1dc69270bcf06c24ba833a
2014-04-09 22:56:42 +00:00
Moritz Schubotz (Physikerwelt) 58f913ecb0 $wgMathValidModes and orthogonal MathJax enabler
To adjust the selectable math rendering modes in user preferences $wgMathValidModes
is introduced.

* $wgUseLaTeXML becomes unnecessary use $wgMathValidModes[] = MW_MATH_LATEXML;
  to enable the LaTeXML rendering mode
* add $wgMathValidModes[] = MW_MATH_MATHJAX; to enable MathJax

Currently, MathJax is bound to the MW_MATH_SOURCE rendering mode.
This change makes the base mode user configurable.
That means before MathJax is loaded the png fallback image could
be displayed.

ATTENTION: This change modifies global variables as follows:
* MW_MATH_MATHJAX is deprecated.

Bug: 57981
Change-Id: Ibf705cb66754d04e4c7eafd1e98608b25d7dbb94
2014-04-08 15:29:42 +00:00
Derk-Jan Hartman ec4b89854d Fix trailing commas in MathJax wiki2jax
This breaks MathJax in IE7

Change-Id: I998cb98e688ef3e075d9d08012331f5e55e30b83
2014-04-08 17:25:55 +02:00
jenkins-bot c782b62261 Merge "Add dependency for math edit button" 2014-04-07 21:26:50 +00:00
Derk-Jan Hartman 13df3c9b0c MathJax: Listen for wikipage.content hook
This brings us one step closer to solving the JS rendering bug. The
remaining issue is how to know that the enabler script needs to be
loaded.

Bug: 36060
Change-Id: I9cbd032afaf90a735c92f055c2bf82766e9acbe0
2014-04-07 18:04:02 +02:00
Derk-Jan Hartman 23f94d5b6a Add dependency for math edit button
Declare that ext.math.editbutton.enabler depends on
mediawiki.action.edit.

Follow up to: I3d126c1c252c27fa65ab8fb42ffab66a2d99cfa8
Bug: 60471
Change-Id: Ibcda91bbb164b0b896d4c3f5f7c2c6ea6658468e
2014-04-07 13:15:02 +00:00
Derk-Jan Hartman e1343c3f87 Fix globals in strict mode
I didn't really intend to make this strict yet, but since I did,
better make it work

Follow up to: I679246089ec485678088ff08f3a46d8b74a262c5
Change-Id: Ic6180b3188d46ce92e0547b0fbb6c333906c49f6
2014-04-07 12:31:34 +02:00
jenkins-bot ea48a4442f Merge "Editbutton for math" 2014-04-07 09:33:56 +00:00
Moritz Schubotz 9f7a1e51c4 Editbutton for math
Move the code that creates the Editbutton for math from core,
where it is removed in Ib17aa47c7d647e1ed293541adbdd1aa77e25e59e.

Imported button image from:
ssh://gerrit.wikimedia.org:29418/mediawiki/core.git/skins/common/button_math.png

We don't need to vary the icon per language, because there is not a
single language that has a non default icon.

Bug: 60471
Change-Id: I3d126c1c252c27fa65ab8fb42ffab66a2d99cfa8
2014-04-07 09:26:16 +00:00
Derk-Jan Hartman 28efa34ffd Convert MathJax enabler script to tabs
Per our coding conventions:
https://www.mediawiki.org/wiki/Manual:Coding_conventions/JavaScript

Change-Id: I679246089ec485678088ff08f3a46d8b74a262c5
2014-04-07 11:05:08 +02:00
Moritz Schubotz (Physikerwelt) c5b0b15d8f Fix MathJax centers equations
* Removes the MathJax heuristics that decides
  if equations are centered or left-aligned.
* Introduces the attribute display to specify
  if the math element is rendered in inline,
  display, or inline-displaystyle.
* add css rules for display / inline math images

Bug: 61051
Change-Id: Iba69903f781f0cb1606b8ddcffb90fb86c9b229b
2014-04-06 21:58:30 +00:00
Derk-Jan Hartman eda0726fd4 Reset the fontstack of mathjax back to defaults
I suspect we retained this of the import of Nageh's option, it was
never really a conscious decision. This makes is to so that locally
installed fonts are preferred over the Tex webfont.

Bug: 63016
Change-Id: I6876f4969314b2feea01ecfef29f98dcd5f1056a
2014-04-05 11:52:34 +02:00
Ed Sanders 31df8ff3a8 Emit rerender on math node if Tex image is not present
This happens with then empty tag is rendered.

Bug: 63093
Change-Id: I5cf731cedda134d2542946da82997bddf58b00b5
2014-03-31 16:07:59 -07:00
Roan Kattouw 91ac23377f Make VE math inspector title not be null
Forgot to update this for the deferMsg refactor.

Bug: 63083
Change-Id: Ib401c36d656344b74f2358e3e32870186e54e351
2014-03-25 11:35:22 -07:00
Roan Kattouw e7be4f5ba7 Minor fixes for VE Math code
* Update MWMathInspectorTool for deferMsg refactor
* Update ce.MWMathNode to add primaryCommandName

Change-Id: I344e3ef498c504d07b1f42954ab44b82ed3c0a50
2014-03-19 19:31:41 -07:00
Roan Kattouw fcf045f832 Add VisualEditor support
Moved from the VisualEditor extension, where it was removed in Iab0c56246626de1e0f

Change-Id: I8e582ee6deadc2750d30b49f0c6de31ed9c16a50
2014-03-20 01:29:25 +00:00
Davide P. Cervone 01ca982894 Push math nodes onto mathArray individually to avoid problem in IE < 9 where push.apply doesn't work on a nodeList. Also, avoid duplicate elements in the array by checking for namespace prefixes. This needs to work for both HTML and XHTML. Resolves issue #672.
Signed-off-by: physikerwelt <wiki@physikerwelt.de>

Change-Id: I0e2071aebee4e524960b01c4a5a10e49b5520846
(cherry picked from commit d463f88c18b16d06d0af30619d6baf2ded489bc1)
2014-02-17 03:29:45 +00:00
Frédéric Wang 2c3e4a4b5d Update to MathJax 2.3
* Uses the MediaWiki resource modules to load MathJax

Change-Id: I9471b1baf41d2bcc4fdc64a26e7d806e92b9b17f
2014-01-27 21:36:02 +00:00
Brad Jorsch 2b8534793f MathJax must not process every <strong class="error">
Many things in MediaWiki (and various on-wiki templates, at least on
enwiki) output error messages wrapped in <strong class="error">. MathJax
parsing all of these (added in I1199cb34) is completely broken.

What appears to have been intended is that MathJax would parse the
errors output by MathRenderer.php. So let's add a "texerror" class to
those and have MathJax look for that class instead.

Bug: 55675
Change-Id: Iaa6c3a892af463f38e6706f9407c6dcb948fe670
2014-01-15 12:05:55 -05:00
Moritz Schubotz 12a45cff1b Adding mathoid as tex to MathML and SVG renderer
Uses nodejs to call phantomjs that renders the
tex input using MathJax and returns a json object
that includes both the SVG and the MathML
representation.

The project was forked from
https://github.com/agrbin/svgtex.

Co-Authored-By: Gabriel Wicke <gwicke@wikimedia.org>
Co-Authored-By: Moritz Schubotz <wiki@physikerwelt.de>
Change-Id: Ie5f24006c3aacd8f61f48ca275acd63a418d7529
2013-10-04 17:03:34 -07:00
Frédéric Wang bfc9ce8e7b Improvements to prepare a MathJax+PNG option
- Remove MathMathJax.php, which uses exactly the same output as MathSource.php.
- Make wiki2jax able to handle texvc output as a preview before MathJax rendering.

Change-Id: I1199cb34d555d2a1e57da98857f41a22cfe81df4
2013-09-10 18:38:10 +02:00
Matthew Flaschen f420e06763 Set menuSettings.locale
That one is necessary, and MathJax.Localization.locale will copy it automatically.

Bug: 35038
Change-Id: I4e21cc5cdcb0d7a31a97b3b136d725f67a53f75c
2013-06-04 21:42:36 +00:00
Derk-Jan Hartman 296bc66540 MathJax Localization: Remove language menu
This way the cookie is never set and MathJax simply always follows
the MediaWiki language.

Follow up of Ibf43a3e44ea2bfdbd9fddc01c71c72ba097ff1b7
Bug: 35038

Change-Id: Ie7530d3a904fb39945ba8b8d261852c2b8cb666b
2013-06-04 22:47:48 +02:00
Derk-Jan Hartman df9cfe846b MathJax: Support localizations of MathJax
Adding the localizations which I missed when updating to 2.2 in
I9446121985ae27e65a429b5a558940ac30520d44
Forward the userlanguage from MediaWiki to MathJax
Note that MathJax preserves selected language in cookies, so once set,
you need to manually switch it every single time.

Bug: 35038
Change-Id: Ibf43a3e44ea2bfdbd9fddc01c71c72ba097ff1b7
2013-06-04 20:25:55 +00:00
Nageh 9f29f48506 MathJax: Use \mathbf instead \boldsymbol for the \bold command
\boldsymbol actually resulted in bold italic formatting, which was not
consistent with the texvc renderer. Use \mathbf (Bold face) instead.

Change-Id: I1a6fb07c55a2089c7acf50059a3a4a4e196812f1
2013-05-24 20:09:08 +00:00
jenkins-bot b05d44c0dc Merge "Math: Add texvc alias \image to MathJax" 2013-05-24 20:07:58 +00:00
jenkins-bot 41673ba3e5 Merge "Math: Add \Q, \H and \AA texvc commands to MathJax" 2013-05-24 20:06:17 +00:00
jenkins-bot b88647fae9 Merge "MathJax: Improve font style inheritence" 2013-05-24 07:58:54 +00:00
Derk-Jan Hartman 6b58a5143d Math: Add texvc alias \image to MathJax
Bug: 35186
Change-Id: If2fb219a1191caeecb0ed04bf0c0105621725dce
2013-05-19 20:12:52 +02:00