From 3e5c8181f71e4b89a4988ad08b9c07fb5f236951 Mon Sep 17 00:00:00 2001 From: "Davide P. Cervone" Date: Wed, 15 Feb 2012 11:06:00 -0500 Subject: [PATCH] First pass at updating documentation for v2.0. Added docs for AsciiMath input and SVG output, plus some examples. Still need to go through configuration options to update those, and advanced topics, particularly the API documents. --- docs/html/CSS-styles.html | 34 +- docs/html/HTML-snippets.html | 12 +- docs/html/_sources/CSS-styles.txt | 22 +- docs/html/_sources/asciimath.txt | 127 +++++ docs/html/_sources/config-files.txt | 205 ++++++- docs/html/_sources/configuration.txt | 146 +++-- docs/html/_sources/glossary.txt | 34 ++ docs/html/_sources/index.txt | 5 +- docs/html/_sources/installation.txt | 66 ++- docs/html/_sources/mathjax.txt | 32 +- docs/html/_sources/mathml.txt | 34 +- docs/html/_sources/options/AsciiMath.txt | 40 ++ docs/html/_sources/options/asciimath2jax.txt | 110 ++++ docs/html/_sources/options/index.txt | 4 +- docs/html/_sources/output.txt | 174 +++--- docs/html/_sources/platforms/index.txt | 13 +- docs/html/_sources/start.txt | 227 +++++--- docs/html/_sources/tex.txt | 528 ++++++++++++++++++- docs/html/_sources/whats-new.txt | 2 +- docs/html/api/ajax.html | 12 +- docs/html/api/callback.html | 12 +- docs/html/api/elementjax.html | 12 +- docs/html/api/html.html | 12 +- docs/html/api/hub.html | 12 +- docs/html/api/index.html | 12 +- docs/html/api/inputjax.html | 12 +- docs/html/api/jax.html | 12 +- docs/html/api/message.html | 12 +- docs/html/api/object.html | 12 +- docs/html/api/outputjax.html | 12 +- docs/html/api/queue.html | 12 +- docs/html/api/signal.html | 12 +- docs/html/api/variable.html | 12 +- docs/html/asciimath.html | 213 ++++++++ docs/html/callbacks.html | 12 +- docs/html/community.html | 12 +- docs/html/config-files.html | 198 +++++-- docs/html/configuration.html | 159 +++--- docs/html/dynamic.html | 12 +- docs/html/genindex.html | 15 +- docs/html/glossary.html | 46 +- docs/html/index.html | 19 +- docs/html/installation.html | 78 ++- docs/html/jsMath.html | 12 +- docs/html/mathjax.html | 44 +- docs/html/mathml.html | 54 +- docs/html/model.html | 12 +- docs/html/options/AsciiMath.html | 145 +++++ docs/html/options/FontWarnings.html | 12 +- docs/html/options/HTML-CSS.html | 22 +- docs/html/options/MMLorHTML.html | 12 +- docs/html/options/MathML.html | 22 +- docs/html/options/MathMenu.html | 12 +- docs/html/options/MathZoom.html | 12 +- docs/html/options/NativeMML.html | 12 +- docs/html/options/TeX.html | 12 +- docs/html/options/asciimath2jax.html | 213 ++++++++ docs/html/options/hub.html | 12 +- docs/html/options/index.html | 16 +- docs/html/options/jsMath2jax.html | 22 +- docs/html/options/mml2jax.html | 22 +- docs/html/options/tex2jax.html | 12 +- docs/html/output.html | 187 ++++--- docs/html/platforms/index.html | 23 +- docs/html/platforms/movable-type.html | 12 +- docs/html/platforms/wordpress.html | 12 +- docs/html/queues.html | 12 +- docs/html/search.html | 12 +- docs/html/searchindex.js | 2 +- docs/html/signals.html | 12 +- docs/html/start.html | 223 +++++--- docs/html/startup.html | 12 +- docs/html/synchronize.html | 12 +- docs/html/tex.html | 489 ++++++++++++++++- docs/html/typeset.html | 12 +- docs/html/upgrade.html | 12 +- docs/html/whats-new.html | 14 +- docs/source/CSS-styles.rst | 22 +- docs/source/asciimath.rst | 127 +++++ docs/source/conf.py | 6 +- docs/source/config-files.rst | 205 ++++++- docs/source/configuration.rst | 146 +++-- docs/source/glossary.rst | 34 ++ docs/source/index.rst | 5 +- docs/source/installation.rst | 66 ++- docs/source/mathjax.rst | 32 +- docs/source/mathml.rst | 34 +- docs/source/options/AsciiMath.rst | 40 ++ docs/source/options/asciimath2jax.rst | 110 ++++ docs/source/options/index.rst | 4 +- docs/source/output.rst | 174 +++--- docs/source/platforms/index.rst | 13 +- docs/source/start.rst | 227 +++++--- docs/source/tex.rst | 528 ++++++++++++++++++- docs/source/whats-new.rst | 2 +- test/sample-asciimath.html | 22 + test/sample-mml.html | 16 +- test/sample-tex.html | 4 +- 98 files changed, 4954 insertions(+), 1336 deletions(-) create mode 100644 docs/html/_sources/asciimath.txt create mode 100644 docs/html/_sources/options/AsciiMath.txt create mode 100644 docs/html/_sources/options/asciimath2jax.txt create mode 100644 docs/html/asciimath.html create mode 100644 docs/html/options/AsciiMath.html create mode 100644 docs/html/options/asciimath2jax.html create mode 100644 docs/source/asciimath.rst create mode 100644 docs/source/options/AsciiMath.rst create mode 100644 docs/source/options/asciimath2jax.rst create mode 100644 test/sample-asciimath.html diff --git a/docs/html/CSS-styles.html b/docs/html/CSS-styles.html index 616f24db2..fa4d40638 100644 --- a/docs/html/CSS-styles.html +++ b/docs/html/CSS-styles.html @@ -6,13 +6,13 @@ - CSS Style Objects — MathJax v1.1 documentation + CSS Style Objects — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -52,8 +52,8 @@

    CSS Style ObjectsΒΆ

    Many MathJax components allow you to specify CSS styles that control -the look of the elements they create. These are described using CSS -style objects, which are JavaScript objects that represent standard +the look of the elements they create. These are described using CSS +style objects, which are JavaScript objects that represent standard CSS declarations. The main CSS style object is a collection of name:value pairs where the name is the CSS selector that is being defined, and the value is an object that gives the style for that @@ -73,25 +73,27 @@ quotation marks as well.

    declaration:

    styles: {
     
    +  ".MathJax_Display": {
    +    "text-align": "center",
    +    margin:       "1em 0em"
    +  },
    +
       ".MathJax .merror": {
         "background-color": "#FFFF88",
         color:   "#CC0000",
         border:  "1px solid #CC0000",
         padding: "1px 3px",
    -    "font-family": "serif",
         "font-style": "normal",
         "font-size":  "90%"
    -  },
    -
    -  ".MathJax_Preview": {color: "#888888"},
    +  }
     
     }
     
    -

    This defines two CSS styles, one for the selector .MathJax -.merror, which specifies a background color, foreground color, -border, and so on, and a second for .MathJax_Preview that sets its -color.

    +

    This defines two CSS styles, one for the selector +.MathJax_Display, which specifies its text alignment and margin +settings, and a second for .MathJax .merror, which specifies a +background color, foreground color, border, and so on.

    You can add as many such definitions to a styles object as you wish. Note, however, that since this is a JavaScript object, the selectors must be unique (e.g., you can’t use two definitions for @@ -159,11 +161,11 @@ samples. In particular, the exte

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/html/HTML-snippets.html b/docs/html/HTML-snippets.html index ad4167220..1e415da86 100644 --- a/docs/html/HTML-snippets.html +++ b/docs/html/HTML-snippets.html @@ -6,13 +6,13 @@ - Describing HTML snippets — MathJax v1.1 documentation + Describing HTML snippets — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -156,11 +156,11 @@ This is bold text shown in red
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/html/_sources/CSS-styles.txt b/docs/html/_sources/CSS-styles.txt index bf014f5c2..b7b8b0bbb 100644 --- a/docs/html/_sources/CSS-styles.txt +++ b/docs/html/_sources/CSS-styles.txt @@ -5,8 +5,8 @@ CSS Style Objects ***************** Many MathJax components allow you to specify CSS styles that control -the look of the elements they create. These are described using CSS -style objects, which are JavaScript objects that represent standard +the look of the elements they create. These are described using `CSS +style objects`, which are JavaScript objects that represent standard CSS declarations. The main CSS style object is a collection of `name:value` pairs where the `name` is the CSS selector that is being defined, and the `value` is an object that gives the style for that @@ -31,24 +31,26 @@ declaration: styles: { + ".MathJax_Display": { + "text-align": "center", + margin: "1em 0em" + }, + ".MathJax .merror": { "background-color": "#FFFF88", color: "#CC0000", border: "1px solid #CC0000", padding: "1px 3px", - "font-family": "serif", "font-style": "normal", "font-size": "90%" - }, - - ".MathJax_Preview": {color: "#888888"}, + } } -This defines two CSS styles, one for the selector ``.MathJax -.merror``, which specifies a background color, foreground color, -border, and so on, and a second for ``.MathJax_Preview`` that sets its -color. +This defines two CSS styles, one for the selector +``.MathJax_Display``, which specifies its text alignment and margin +settings, and a second for ``.MathJax .merror``, which specifies a +background color, foreground color, border, and so on. You can add as many such definitions to a ``styles`` object as you wish. Note, however, that since this is a JavaScript object, the diff --git a/docs/html/_sources/asciimath.txt b/docs/html/_sources/asciimath.txt new file mode 100644 index 000000000..bbfccea88 --- /dev/null +++ b/docs/html/_sources/asciimath.txt @@ -0,0 +1,127 @@ +.. _AsciiMath-support: + +************************* +MathJax AsciiMath Support +************************* + +The support for :term:`AsciiMath` in MathJax consists of two parts: +the `asciimath2jax` preprocessor, and the `AsciiMath` input processor. +The first of these looks for mathematics within your web page +(indicated by delimiters like ```...```) and marks the mathematics for +later processing by MathJax. The AsciiMath input processor is what +converts the AsciiMath notation into MathJax's internal format, where +one of MathJax's output processors then displays it in the web page. + +The AsciiMath input jax actually includes a copy of Peter Jipsen's +``ASCIIMathML.js`` file (see the `AsciiMath home page +`_ for +details), and is included by permission of the author. This means +that the results of MathJax's AsciiMath processing should be the same +as using the actual ``ASCIIMathML.js`` package (at least as far as the +MathML that it generates is concerned). Thanks go to David Lippman +for writing the initial version of the AsciiMath preprocessor and +input jax. + +The `asciimath2jax` preprocessor can be configured to look for whatever +markers you want to use for your math delimiters. See the +:ref:`asciimath2jax configuration options ` section for +details on how to customize the action of `asciimath2jax`. + +The AsciiMath input processor handles conversion of your mathematical +notation into MathJax's internal format (which is essentially MathML). +The AsciiMath input processor has few configuration options (see the +:ref:`AsciiMath options ` section for details). + +The AsciiMath input jax handles only the original ASCIIMathML notation +(from ASCIIMathML v1.4.7), not the extened LaTeXMathML notation added +in version 2.0 of ASCIIMathML, though the AsciiMath input jax does +expose the tables that define the symbols that AsciiMath processes, +and so it would be possible to extend them to include additional +symbols. In general, it is probably better to use MathJax's :ref:`TeX +input jax ` to handle LaTeX notation instead. + + +AsciiMath delimiters +==================== + +By default, the `asciimath2jax` preprocessor defines the back-tick +(`````) as the delimiters for mathematics in AsciiMath format. It +does **not** define ``$...$`` as math delimiters. That is because +dollar signs appear too often in non-mathematical settings, which +could cause some text to be treated as mathematics unexpectedly. For +example, with single-dollar delimiters, "... the cost is $2.50 for the +first one, and $2.00 for each additional one ..." would cause the +phrase "2.50 for the first one, and" to be treated as mathematics +since it falls between dollar signs. For this reason, if you want to +use single-dollars for AsciiMath notation, you must enable that +explicitly in your configuration: + +.. code-block:: javascript + + MathJax.Hub.Config({ + asciimath2jax: { + delimiters: [['$','$'], ['`','`']] + } + }); + +Note that the dollar signs are frequently used as a delimiter for +mathematics in the :term:`TeX` format, and you can not enable the +dollar-sign delimiter for both. It is probably best to leave dollar +signs for TeX notation. + +See the ``config/default.js`` file, or the :ref:`asiimath2jax +configuration options ` page, for additional +configuration parameters that you can specify for the `asciimath2jax` +preprocessor, which is the component of MathJax that identifies +AsciiMath notation within the page. + + +AsciiMath in HTML documents +=============================== + +The AsciiMath syntax is descibed in the `ASCIIMathML syntax page +`_. + +Keep in mind that your mathematics is part of an HTML document, so you +need to be aware of the special characters used by HTML as part of its +markup. There cannot be HTML tags within the math delimiters (other +than ``
    ``) as AsciiMath-formatted math does not include HTML tags. +Also, since the mathematics is initially given as text on the page, +you need to be careful that your mathematics doesn't look like HTML +tags to the browser (which parses the page before MathJax gets to see +it). In particular, that means that you have to be careful about +things like less-than and greater-than signs (``<`` and ``>``), and +ampersands (``&``), which have special meaning to the browsers. For +example, + +.. code-block:: html + + ... when `x`` in the document (typically the end of the next +actual tag in the HTML file), and you may notice that you are missing +part of the text of the document. In the example above, the "``we +have ...``" will not be displayed because the browser thinks it is +part of the tag starting at `` where ``path-to-MathJax`` is the URL to the MathJax directory on your -server or hard disk. +server or hard disk. If you are using MathJax from the CDN, you can +view the contents of `default.js +`_ as a +reference, but you will not be able to edit the CDN copy. It is +possible to use the CDN copy of MathJax with your own configuration +file, however; see :ref:`Using a Local Configuration File with the CDN +` for details. -The remaining files are combined configuration files that include not just -configuration parameters but also the files that MathJax would need to -load for those configurations. This means MathJax will have to load fewer -files, and since each file access requires establishing connections over -the network, it can be better to load one larger file than several smaller -ones. See :ref:`Loading and Configuring MathJax ` for more -details about how to load configurations, and how to modify the parameters -for a configuration file. +The remaining files in the `MathJax/config +`_ directory are +combined configuration files that include not just configuration +parameters but also the files that MathJax would need to load for +those configurations. This means MathJax will have to load fewer +files, and since each file access requires establishing connections +over the network, it can be faster to load one larger file than +several smaller ones. See :ref:`Loading and Configuring MathJax +` for more details about how to load configurations, and how +to modify the parameters for a configuration file. The following sections describe the contents of the combined configuration files. Each comes in two flavors: a standard version and a "full" version. The standard version simply defines the output processor(s) that are part of the configuration, but doesn't load the code that implements the output -processor; the full version loads the complete output processors, so +processor. The full version loads the complete output processors, so everything that MathJax needs for the page should be loaded up front, and there will be no delay once the page is ready to be processed. To obtain the "full" version, add ``-full`` to the end of the configuration file name. -The ``TeX-AMS-MML_HTMLorMML`` configuration file +The ``TeX-MML-AM_HTMLorMML`` configuration file ================================================ This configuration file is the most general of the pre-defined -configurations. It loads all the important MathJax components, including +configurations. It loads all the main MathJax components, including +the TeX, MathML, and AsciiMath preprocessors and input processors, the +AMSmath, AMSsymbols, noErrors, and noUndefined TeX extensions, both +the native MathML and HTML-with-CSS output processor definitions, and +the MathMenu and MathZoom extensions. It is equivalent to the +following configuration: + +.. code-block:: javascript + + MathJax.Hub.Config({ + config: ["MMLorHTML.js"], + jax: ["input/TeX","input/MathML","input/AsciiMath","output/HTML-CSS","output/NativeMML"], + extensions: ["tex2jax.js","mml2jax.js","asciimath2jax.js","MathMenu.js","MathZoom.js"], + TeX: { + extensions: ["AMSmath.js","AMSsymbols.js","noErrors.js","noUndefined.js"] + } + }); + +In addition, it loads the mml Element Jax, the TeX, MathML, and +AsciiMath input jax main code (not just the definition files), as well +as the `toMathML` extension, which is used by the Show Source option +in the MathJax contextual menu. The `-full` version also loads both the +HTML-CSS and NativeMML output jax main code, plus the HTML-CSS +`mtable` extension, which is normally loaded on demand. + +See the :ref:`tex2jax configuration ` section for +other configuration options for the ``tex2jax`` preprocessor, and the +:ref:`TeX input jax configuration ` section for options +that control the TeX input processor. +See the :ref:`mml2jax configuration ` section for +other configuration options for the ``mml2jax`` preprocessor, and the +:ref:`MathML input jax configuration ` section for +options that control the MathML input processor. +See the :ref:`asciimath2jax configuration ` section for +other configuration options for the ``asciimath2jax`` preprocessor, and the +:ref:`AsciiMath input jax configuration ` section for +options that control the AsciiMath input processor. +See :ref:`MathJax Output Formats ` for more +information on the NativeMML and HTML-CSS output processors. See the +:ref:`MMLorHTML configuration ` section for +details on the options that control the ``MMLorHTML`` configuration. + + +The ``TeX-AMS-MML_HTMLorMML`` configuration file +================================================ + +This configuration file is the most commonly used of the pre-defined +configurations. It loads all the main MathJax components, including the TeX and MathML preprocessors and input processors, the AMSmath, AMSsymbols, noErrors, and noUndefined TeX extensions, both the native -MathML and HTML-with-CSS output processor definitions, and the MathMenu and -MathZoom extensions. It is equivalent to the following configuration: +MathML and HTML-with-CSS output processor definitions, and the +MathMenu and MathZoom extensions. It is equivalent to the following +configuration: .. code-block:: javascript @@ -58,12 +114,12 @@ MathZoom extensions. It is equivalent to the following configuration: } }); -In addition, it loads the mml Element Jax, the TeX and MathML input jax -main code (not just the definition files), as well as the `toMathML` -extension, which is used by the Show Source option in the MathJax -contextual menu. The full version also loads both the HTML-CSS and -NativeMML output jax main code, plus the HTML-CSS `mtable` extension, which -is normally loaded on demand. +In addition, it loads the mml Element Jax, the TeX and MathML input +jax main code (not just the definition files), as well as the +`toMathML` extension, which is used by the Show Source option in the +MathJax contextual menu. The ``-full`` version also loads both the +HTML-CSS and NativeMML output jax main code, plus the HTML-CSS +`mtable` extension, which is normally loaded on demand. See the :ref:`tex2jax configuration ` section for other configuration options for the ``tex2jax`` preprocessor, and the @@ -106,7 +162,7 @@ extensions. It is equivalent to the following configuration: In addition, it loads the mml Element Jax and the TeX input jax main code (not just the definition file), as well as the `toMathML` extension, which -is used by the Show Source option in the MathJax contextual menu. The full +is used by the Show Source option in the MathJax contextual menu. The ``-full`` version also loads the HTML-CSS output jax main code, plus the HTML-CSS `mtable` extension, which is normally loaded on demand. @@ -123,7 +179,7 @@ The ``MML_HTMLorMML`` configuration file This configuration file is for sites that only use MathML format for their mathematics. It will use MathML output in browsers where that is -supported, and HTML-CSS output otherwise. The user can still use the +supported well, and HTML-CSS output otherwise. The user can still use the MathJax contextual menu to select the other output format if they desire. This file includes all the important MathJax components for MathML input @@ -142,7 +198,7 @@ and MathZoom extensions. It is equivalent to the following configuration: In addition, it loads the mml Element Jax and the MathML input jax main code (not just the definition file), as well as the `toMathML` extension, which is used by the Show Source option in the MathJax contextual menu. -The full version also loads both the HTML-CSS and NativeMML output jax main +The ``-full`` version also loads both the HTML-CSS and NativeMML output jax main code files, plus the HTML-CSS `mtable` extension, which is normally loaded on demand. @@ -156,13 +212,100 @@ information on the NativeMML and HTML-CSS output processors. See the details on the options that control the ``MMLorHTML`` configuration. +The ``AM_HTMLorMML`` configuration file +================================================ + +This configuration file is for sites that only use AsciiMath format for their +mathematics. It will use MathML output in browsers where that is +supported well, and HTML-CSS output otherwise. The user can still use the +MathJax contextual menu to select the other output format if they desire. + +This file includes all the important MathJax components for AsciiMath +input and output, including the `asciimath2jax` preprocessor and +AsciiMath input jax, the NativeMML and HTML-CSS output processor +definition files, and the MathMenu and MathZoom extensions. It is +equivalent to the following configuration: + +.. code-block:: javascript + + MathJax.Hub.Config({ + config: ["MMLorHTML.js"], + jax: ["input/AsciiMath","output/HTML-CSS","output/NativeMML"], + extensions: ["asciimath2jax.js","MathMenu.js","MathZoom.js"] + }); + +In addition, it loads the mml Element Jax and the TeX input jax main code +(not just the definition file), as well as the `toMathML` extension, which +is used by the Show Source option in the MathJax contextual menu. The ``-full`` +version also loads the HTML-CSS output jax main code, plus the HTML-CSS +`mtable` extension, which is normally loaded on demand. + +See the :ref:`asciimath2jax configuration ` +section for other configuration options for the ``asciimath2jax`` +preprocessor, and the :ref:`AsciiMath input jax configuration +` section for options that control the AsciiMath +input processor. See :ref:`MathJax Output Formats ` +for more information on the HTML-CSS and NativeMML output processors. +See the :ref:`MMLorHTML configuration ` section +for details on the options that control the ``MMLorHTML`` +configuration. + + +The ``TeX-AMS-MML_SVG`` configuration file +================================================ + +This configuration file is the same as `TeX-AMS-MML_HTMLorMML` except +that it uses the SVG output renderer rather than the NativeMML or +HTML-CSS ones. It loads all the main MathJax components, including +the TeX and MathML preprocessors and input processors, the AMSmath, +AMSsymbols, noErrors, and noUndefined TeX extensions, the SVG output +processor definitions, and the MathMenu and MathZoom extensions. It +is equivalent to the following configuration: + +.. code-block:: javascript + + MathJax.Hub.Config({ + jax: ["input/TeX","input/MathML","output/SVG"], + extensions: ["tex2jax.js","mml2jax.js","MathMenu.js","MathZoom.js"], + TeX: { + extensions: ["AMSmath.js","AMSsymbols.js","noErrors.js","noUndefined.js"] + } + }); + +In addition, it loads the mml Element Jax, the TeX and MathML input +jax main code (not just the definition files), as well as the +`toMathML` extension, which is used by the Show Source option in the +MathJax contextual menu. The ``-full`` version also loads both the +SVG output jax main code, plus the SVG `mtable` extension, which +is normally loaded on demand. + +See the :ref:`tex2jax configuration ` section for +other configuration options for the ``tex2jax`` preprocessor, and the +:ref:`TeX input jax configuration ` section for options +that control the TeX input processor. +See the :ref:`mml2jax configuration ` section for +other configuration options for the ``mml2jax`` preprocessor, and the +:ref:`MathML input jax configuration ` section for +options that control the MathML input processor. +See :ref:`MathJax Output Formats ` for more +information on the SVG output processor. + + The ``Accessible`` configuration file ================================================ This configuration file is essentially the same as ``TeX-AMS-MML_HTMLorMML`` except that it includes options that are designed for assistive technology, particularly for those with visual -challenges. It is equivalent to the following configuration: +challenged. *This file is deprecated* since the controls that make +MathJax work with screen readers are now available in the MathJax +contextual menu, and so there is no need to set them in the +configuration file any longer. So you can use any of the other +pre-defined configurations and readers with special needs should be +able to change the MathJax settings themselves to be appropriate for +their software. + +The Accessible configuration is equivalent to the following: .. code-block:: javascript @@ -173,20 +316,24 @@ challenges. It is equivalent to the following configuration: TeX: { extensions: ["AMSmath.js","AMSsymbols.js","noErrors.js","noUndefined.js"] }, - NativeMML: { showMathMenuMSIE: false }, - menuSettings: { zoom: "Double-Click" }, + menuSettings: { + zoom: "Double-Click", + mpContext: true, + mpMouse: true + }, errorSettings: { message: ["[Math Error]"] } }); -This turns off the MathJax contextual menu for Internet Explorer, since -it can interfere with some screen readers. It also sets the zoom trigger +This turns off the MathJax contextual menu for IE when MathPlayer is +active, and passes mouse events on to MathPlayer to allow screen +readers full access to MathPlayer. It also sets the zoom trigger to double-click, so that readers can see a larger version of the mathematics but double-clicking on any equation. In addition, it loads the mml Element Jax, the TeX and MathML input jax main code (not just the definition files), as well as the `toMathML` extension, which is used by the Show Source option in the MathJax -contextual menu. The full version also loads both the HTML-CSS and +contextual menu. The ``-full`` version also loads both the HTML-CSS and NativeMML output jax main code, plus the HTML-CSS `mtable` extension, which is normally loaded on demand. diff --git a/docs/html/_sources/configuration.txt b/docs/html/_sources/configuration.txt index 290fbf48c..5685d7876 100644 --- a/docs/html/_sources/configuration.txt +++ b/docs/html/_sources/configuration.txt @@ -52,14 +52,14 @@ typical invocation of MathJax would be src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"> -which loads MathJax with a configuration file that includes everything you -need in order to enter mathematics in either TeX, LaTeX, or MathML -notation, and produces output using MathML if the browser supports that, -or HTML-with-CSS otherwise. If you **don't** load an explicit -configuration file, you will need to include an in-line configuration -block in order to tell MathJax how to read and display the mathematics on -your pages. See the section below on :ref:`Using In-line Configuration -Options ` for details. +which loads MathJax with a configuration file that includes everything +you need in order to enter mathematics in either TeX, LaTeX, or MathML +notation, and produces output using MathML if the browser supports +that well enough, or HTML-with-CSS otherwise. If you **don't** load +an explicit configuration file, you will need to include an in-line +configuration block in order to tell MathJax how to read and display +the mathematics on your pages. See the section below on :ref:`Using +In-line Configuration Options ` for details. It is best to load MathJax in the document's ```` block, but it is also possible to load MathJax into the ```` section, if @@ -82,7 +82,7 @@ advanced topic, however; see :ref:`Loading MathJax Dynamically Loading MathJax from the CDN ============================ -MathJax is now available as a web service from ``cdn.mathjax.org``, so you +MathJax is available as a web service from ``cdn.mathjax.org``, so you can obtain MathJax from there without needing to install it on your own server. The CDN is part of a distributed "cloud" network, so it is handled by servers around the world. That means that you should get access @@ -100,19 +100,19 @@ get. The CDN has the following directory structure: mathjax/ # project-name 1.0-latest/ - 1.1-beta/ # temporary 1.1-latest/ # the 1.1 release with any ciritical patches + 2.0-beta/ # temporary + 2.0-latest/ # the 2.0 release with any ciritical patches ... - latest/ # the most current version (1.1-latest in this case) + latest/ # the most current version (2.0-latest in this case) Each directory corresponds to an official MathJax release; however, hotfixes (urgent bug fixes) will be applied in each release branch as necessary, even if new releases are not prepared. In other words, ``1.1-latest`` will initially point to v1.1, but over time may be updated with patches that would correspond to releases that might be numbers 1.1a, -1.1b, etc., even if such releases are not actually prepared for -distribution (they likely won't be). - +1.1b, etc., even if such releases are not actually packaged for +separate distribution (they likely won't be). We may occasionally introduce directories for betas, as indicated above, but they will be temporary, and will be removed after the official release. @@ -124,7 +124,7 @@ For example, -will load the stable v1.1 version, even if we release v1.2 or other later +will load the stable v1.1 version, even after we release v2.0 or other later versions, while .. code-block:: html @@ -132,7 +132,7 @@ versions, while will always be the most current stable release, so it will go from v1.1 to -v1.2 automatically when that is released. Note that all the versions +v2.0 automatically when that is released. Note that all the versions available on the CDN are stable versions; the development version is not hosted on the CDN. (If you wish to use the development version of MathJax, you will need to install your own copy; see :ref:`Installing @@ -143,8 +143,9 @@ The use of ``cdn.mathjax.org`` is governed by its `terms of service sure to read that before linking to the MathJax CDN server. If you wish to use the MathJax CDN but use your own configuration file -rather than one of the pre-defined ones, see the information at the end -of the :ref:`Using a configuration file ` section below. +rather than one of the pre-defined ones, see the information at the +end of the :ref:`Using a Local Configuration File +` section below. Configuring MathJax @@ -157,7 +158,7 @@ pre-defined configuration file, but include in-line commands to adjust the configuration to your needs. Note that you must use at least one of these two forms of configuration. -Unlike earlier versions of MathJax, version 1.1 does not load a default +Unlike MathJax v1.0, version 1.1 and higher does not load a default configuration file. If you have been using version 1.0's ``config/MathJax.js`` for your configuration, you will need to load that configuration file explicitly via a ``config`` parameter, as described @@ -180,28 +181,41 @@ stored in the ``MathJax/config`` directory. Among these are the following .. describe:: TeX-AMS-MML_HTMLorMML.js - Allows math to be specified in TeX, LaTeX, or MathML notation, with the - `AMSmath` and `AMSsymbols` packages included, producing output using - MathML if the browser supports it, and HTML-with-CSS otherwise. + Allows math to be specified in :term:`TeX`, :term:`LaTeX`, or + :term:`MathML` notation, with the `AMSmath` and `AMSsymbols` + packages included, producing output using MathML if the browser + supports it sufficiently, and HTML-with-CSS otherwise. .. describe:: TeX-AMS_HTML.js - Allows math to be specified in TeX or LaTeX notation, with the + Allows math to be specified in :term:`TeX` or :term:`LaTeX` notation, with the `AMSmath` and `AMSsymbols` packages included, and produces output using the HTML-CSS output processor. .. describe:: MML_HTMLorMML.js - Allows math to be specified using MathML notation, and produces MathML - output if the browser supports it, or HTML-CSS output otherwise. + Allows math to be specified using :term:`MathML` notation, and produces MathML + output if the browser supports it sufficiently, or HTML-CSS output otherwise. -.. describe:: Accessible.js +.. describe:: AM_HTMLorMML.js - Essentially the same as ``TeX-AMS-MML_HTMLorMML``, but with some - settings specified to make MathJax work better with assistive - technology (for the visually impaired). This includes setting the - zoom trigger to be a double-click, and removing the MathMenu in - Internet Explorer (which can interfere with some screen readers). + Allows math to be specified using :term:`AsciiMath` notation, + producing output in MathML if the browser supports it + sufficiently, or as HTML-with-CSS otherwise. + +.. describe:: TeX-AMS-MML_SVG.js + + Allows math to be specified in :term:`TeX`, :term:`LaTeX`, or + :term:`MathML` notation, with the `AMSmath` and `AMSsymbols` + packages included, producing output using SVG. + +.. describe:: TeX-MML-AM_HTMLorMML.js + + Allows math to be specified in :term:`TeX`, :term:`LaTeX`, + :term:`MathML`, or :term:`AsciiMath` notation, with the `AMSmath` + and `AMSsymbols` packages included, producing output using MathML + if the browser supports it sufficiently, and HTML-with-CSS + otherwise. The first of these is a file that you can edit to suit your needs. It contains nearly all the configuration options that MathJax allows, and has @@ -226,7 +240,7 @@ the main code, and a "full" version, that also includes the complete output processors. For example, with ``TeX-AMS_HTML.js`` and ``TeX-AMS_HTML-full.js``, the latter includes the complete HTML-CSS output processor. The "full" configuration files are substantially larger (on -the order of 70KB), so you need to decide whether it is worth loading the +the order of 70KB more), so you need to decide whether it is worth loading the full configuration for your pages. If most of your pages include mathematics, then it is to your advantage to @@ -271,8 +285,17 @@ can use to first load the main configuration, then the local modifications. -You can also load MathJax from the MathJax CDN server but use a configuration from -your own local server: + +.. _local-config-files: + +Using a local configuration file with the CDN +============================================= + +You can load MathJax from the MathJax CDN server but still use a +configuration from your own local server. For example, suppose you +have a configuration file called ``local.js`` on your own server, in a +directory called ``MathJax/config/local``. Then you can load MathJax +from the CDN and still use your configuration file as follows: .. code-block:: html @@ -285,7 +308,7 @@ the complete URL to the local configuration file. Note that you also have to edit the :meth:`loadComplete()` call that is at the bottom of the configuration file to change it from ``[MathJax]/config/local/local.js`` to the complete URL as you give it -in the ``config`` parameter: +in the ``config`` parameter. In the example above, it would be .. code-block:: javascript @@ -303,23 +326,24 @@ Using in-line configuration options =================================== The second way to configure MathJax is through `in-line configuration`, -that puts the configuration options within the web page itself. This -process has changed in version 1.1 to make it compatible with HTML5. +which puts the configuration options within the web page itself. This +process was changed in version 1.1 to make it compatible with HTML5. Earlier versions of MathJax had in-line configuration included within the content of the `` -in its footer, so that MathJax will delay setting up until the footer is -reached, but will not have to wait until images and other files are -loaded. If you have ``text/x-mathjax-config`` script tags within the main -body of the document, MathJax will read and process those before -continuing its startup. In this way you can use a default configuration -that can be modified on a page-by-page basis. +in its footer, so that MathJax will delay setting up until the footer +is reached, but will not have to wait until images and other files are +loaded. In this way, if you have ``text/x-mathjax-config`` script +tags within the main body of the document, MathJax will read and +process those before continuing its startup. In this way you can use +a default configuration that can be modified on a page-by-page basis. + +Note that :meth:`MathJax.Hub.Configured()` is not called by MathJax; +you must make that call somewhere within the page yourself after the +configuration blocks are set up. If you do not execute this function, +MathJax will not process any of the math on the page. Details of the MathJax configuration process ============================================ Since there are a number of different ways to configure MathJax, it is -important to know how they interact. The configuration process is the +important to know how they interact. The configuration actions are the following: 1. Process any configuration file explicitly specified as a script parameter. diff --git a/docs/html/_sources/glossary.txt b/docs/html/_sources/glossary.txt index 14e18cc93..6325bd82c 100644 --- a/docs/html/_sources/glossary.txt +++ b/docs/html/_sources/glossary.txt @@ -8,6 +8,16 @@ Glossary .. glossary:: + AsciiMath + A notation for mathematics that uses characters commonly + available on all computer keyboards to represent the math in + an algebra-like syntax that should be intuitive and easily + read. + + .. seealso:: + + `AsciiMath home page `_ + Callback A JavaScript function that is used to perform actions that must wait for other actions to complete before they are @@ -44,6 +54,18 @@ Glossary `LaTeX Wikipedia entry `_ + Markdown + A text format commonly used in blogs and wikis for creating + web pages without the need for complicated markup notation. + It is intended to be an easy-to-read and easy-to-write format + that still gives you the ability to specify a rich text result + (including things like bold, italics, bullet lists, and so + on). + + .. seealso:: + + `Markdown home page `_ + MathML An XML specification created to describe mathematical notations and capture both its structure and content. MathML @@ -62,6 +84,18 @@ Glossary `STIX project `_ + SVG + Acronym for `Scalable Vector Graphics`. SVG is a graphics + format that allows images to be described as a collection of + graphics objects (like lines, rectangles, etc) rather than as + a bitmap of colored pixels. MathJax can use this format to + display mathematics as an alterantive to its HTML-CSS or + NativeMML output. + + .. seealso:: + + `SVG Wilipedia entry `_ + TeX A document markup language with robust math markup commands developed by Donald Knuth in the late 1970's, but still in diff --git a/docs/html/_sources/index.txt b/docs/html/_sources/index.txt index 80df118de..6c940b0ae 100644 --- a/docs/html/_sources/index.txt +++ b/docs/html/_sources/index.txt @@ -2,8 +2,8 @@ MathJax Documentation ##################### -MathJax is an open-source JavaScript display engine for LaTeX and -MathML that works in all modern browsers. +MathJax is an open-source JavaScript display engine for LaTeX, +MathML, and AsciiMath notaion that works in all modern browsers. Basic Usage =========== @@ -24,6 +24,7 @@ Basic Usage MathJax TeX and LaTeX Support MathJax MathML Support + MathJax AsciiMath Support MathJax Output Formats .. toctree:: diff --git a/docs/html/_sources/installation.txt b/docs/html/_sources/installation.txt index 97b518c6b..9ddf4f421 100644 --- a/docs/html/_sources/installation.txt +++ b/docs/html/_sources/installation.txt @@ -10,11 +10,12 @@ distributed network service (see :ref:`Using the MathJax CDN yourself, and you can begin using MathJax right away; skip this document on installation and go directly to :ref:`Configuring MathJax `. -MathJax can be loaded from a public web server or privately from your hard drive -or other local media. To use MathJax in either way, you will need to obtain a -copy of MathJax and its font package. There are three ways to do this: via -``git``, ``svn``, or via a pre-packaged archive. We recommend git or svn, as it -is easier to keep your installation up to date with these tools. +MathJax can be loaded from a public web server or privately from your +hard drive or other local media. To use MathJax in either way, you +will need to obtain a copy of MathJax. There are three ways to do +this: via ``git``, ``svn``, or via a pre-packaged archive. We +recommend ``git`` or ``svn``, as it is easier to keep your +installation up to date with these tools. .. _getting-mathjax-git: @@ -30,9 +31,9 @@ The easiest way to get MathJax and keep it up to date is to use the `Git git clone git://github.com/mathjax/MathJax.git MathJax -to obtain and set up a copy of MathJax. Note that there is no longer -a ``fonts.zip`` file, and that the ``fonts`` directory is now part of -the repository itself. +to obtain and set up a copy of MathJax. (Note that there is no longer +a ``fonts.zip`` file, as there was in v1.0, and that the ``fonts`` +directory is now part of the repository itself.) Whenever you want to update MathJax, you can now use @@ -123,11 +124,11 @@ latest revision using ``svn``, use the command .. code-block:: sh - svn checkout http://svn.github.com/mathjax/MathJax.git MathJax + svn checkout http://github.com/mathjax/MathJax/trunk MathJax -to obtain and set up a copy of MathJax. Note that there is no longer -a ``fonts.zip`` file, and that the ``fonts`` directory is now part of -the repository itself. +to obtain and set up a copy of MathJax. (Note that there is no longer +a ``fonts.zip`` file as of v1.1, and that the ``fonts`` directory is +now part of the repository itself.) Whenever you want to update MathJax, you can now use @@ -152,18 +153,17 @@ This gets you the current development copy of MathJax, which is the version that contains all the latest changes to MathJax. Although we try to make sure this version is a stable and usable version of MathJax, it is under active development, and at times it may be less stable than the "release" -version. If you prefer to use one of the tagged releases instead, then -either use ``git`` as described above, or one of the archive files as -described below. You can use +version. If you prefer to use one of the tagged releases instead, +then use .. code-block:: sh - svn checkout http://svn.github.com/mathjax/MathJax.git@nnn mathjax + svn checkout http://github.com/mathjax/MathJax/branch/[name] MathJax -to check out revision number `nnn`, but it is not easy to tell what -svn revision number is associated with a particular release. GitHub's -``svn`` service doesn't appear to allow you to specify a particular -tagged version. +where ``[name]`` is replaced by the name of the branch you want to +check out; e.g., ``2.0-latest``. The branch names can be found on the +`GitHub MathJax page `_ under the +`branches `_ tab. .. _getting-mathjax-zip: @@ -173,12 +173,12 @@ Obtaining MathJax via an archive Release versions of MathJax are available in archive files from the `MathJax download page `_ or the -`GitHub downloads `_ (click the -big download button on the right), where you can download the archive +`MathJax GitHub page `_ (via the +"zip" button, or the "downloads" tab), where you can download the archive that you need. -You should download the v1.1 archive (which will get you a file with a -name like ``mathjax-MathJax-v1.1-X-XXXXXXXX.zip``, where the X's are +You should download the v2.0 archive (which will get you a file with a +name like ``mathjax-MathJax-v2.0-X-XXXXXXXX.zip``, where the X's are some sequence of random-looking letters and numbers), then simply unzip it. Once the MathJax directory is unpacked, you should move it to the desired location on your server (or your hard disk, if you are using @@ -188,11 +188,10 @@ let you refer to the main MathJax file as ``/MathJax/MathJax.js`` from within any page on your server. From the `MathJax GitHub download link -`_ (the download button at the -right), you can also select the ``Download .tar.gz`` or ``Download -.zip`` buttons to get a copy of the current development version of -MathJax that contains all the latest changes and bug-fixes. You can -also get older tagged versions (if there are any). +`_, you can also select +the ``Download .tar.gz`` or ``Download .zip`` buttons to get a copy of +the current development version of MathJax that contains all the +latest changes and bug-fixes. If a packaged release receives any important updates, then those updates will be part of the `branch` for that version. The link to @@ -200,9 +199,8 @@ the ``.zip`` file in the download list will be the original release version, not the patched version. To obtain the patched version, use the `Branches` drop down menu (at the far left of the menus within the page) to select the release branch that you want (for example -``v1.1-latest``), and then use the download button and the ``Download -.tar.gz`` or ``Download .zip`` button to get the latest patched -version of that release. +``v2.0-latest``), and then use the "zip" button just above it to get +the latest patched version of that release. Testing your installation @@ -263,7 +261,7 @@ server `_. In the remote server's ``.htaccess`` that contains the following lines: :: - + Header set Access-Control-Allow-Origin "*" @@ -328,7 +326,7 @@ IE9 and remote fonts IE9's same-origin policy affects its ability to load web-based fonts, as described above. This has implications not ony to cross-domain loading of MathJax, but also to the case where you view a local page (with a -``file://`` URL) that accesses MathJax from a remote site, like the MathJax +``file://`` URL) that accesses MathJax from a remote site such as the MathJax CDN service. In this case, IE9 does **not** honor the ``Access-Control-Allow-Origin`` setting of the remote server (as it would if the web page came from an ``http://`` URL), and so it **never** allows the diff --git a/docs/html/_sources/mathjax.txt b/docs/html/_sources/mathjax.txt index c9dae62b2..836125c32 100644 --- a/docs/html/_sources/mathjax.txt +++ b/docs/html/_sources/mathjax.txt @@ -2,16 +2,17 @@ What is MathJax? **************** -MathJax is an open-source JavaScript display engine for LaTeX and -MathML that works in all modern browsers. It was designed with the -goal of consolidating the recent advances in web technologies into a -single, definitive, math-on-the-web platform supporting the major -browsers and operating systems. It requires no setup on the part of -the user (no plugins to downlaod or software to install), so the page -author can write web documents that include mathematics and be -confident that users will be able to view it naturally and easily. -One simply includes MathJax and some mathematics in a web page, and -MathJax does the rest. +MathJax is an open-source JavaScript display engine for LaTeX, MathML, +and AsciiMath notation that works in all modern browsers. It was +designed with the goal of consolidating the recent advances in web +technologies into a single, definitive, math-on-the-web platform +supporting the major browsers and operating systems, including those +on mobile devices. It requires no setup on the part of the user (no +plugins to download or software to install), so the page author can +write web documents that include mathematics and be confident that +users will be able to view it naturally and easily. One simply +includes MathJax and some mathematics in a web page, and MathJax does +the rest. MathJax uses web-based fonts (in those browsers that support it) to produce high-quality typesetting that scales and prints at full @@ -21,11 +22,12 @@ impaired. With MathJax, mathematics is text-based rather than image-based, and so it is available for search engines, meaning that your equations can be searchable, just like the text of your pages. MathJax allows page authors to write formulas using TeX and LaTeX -notation, or `MathML `_, a World Wide -Web Consortium standard for representing mathematics in XML format. -MathJax will even convert TeX notation into MathML, so that it can be -rendered more quickly by those browsers that support MathML natively, -or so that you can copy and paste it into other programs. +notation, `MathML `_, a World Wide Web +Consortium standard for representing mathematics in XML format, or +`AsciiMath `_ +notation. MathJax will even convert TeX notation into MathML, so that +it can be rendered more quickly by those browsers that support MathML +natively, or so that you can copy and paste it into other programs. MathJax is modular, so it loads components only when necessary, and can be extended to include new capabilities as needed. MathJax is diff --git a/docs/html/_sources/mathml.txt b/docs/html/_sources/mathml.txt index 8bcc40f79..415c56da6 100644 --- a/docs/html/_sources/mathml.txt +++ b/docs/html/_sources/mathml.txt @@ -20,10 +20,10 @@ displayed as MathML. Or you could use the `mml2jax` preprocessor and MathML input processor with the HTML-CSS output processor to make MathML available in browsers that don't have native MathML support. It is also possible to have MathJax select the output processor for -you so that MathML is used in those browsers that support it, while -HTML-CSS is used for those that don't. See the :ref:`common -configurations ` section for details and -examples. +you so that MathML is used in those browsers that support it well +enough, while HTML-CSS is used for those that don't. See the +:ref:`common configurations ` section for +details and examples. Of course it is also possible to use all three components together. It may seem strange to go through an internal format just to return to @@ -43,7 +43,7 @@ MathML in HTML pages ==================== For MathML that is handled via the preprocessor, you should not use -the named MathML entities, but rather use the numeric entities like +named MathML entities, but rather use numeric entities like ``√`` or unicode characters embedded in the page itself. The reason is that entities are replaced by the browser before MathJax runs, and some browsers report errors for unknown entities. For @@ -64,12 +64,16 @@ tags. That is, use rather than ````, since there is no closing tag, the rest of -the mathematics will become the content of the ```` tag; but -since ```` should have no content, the rest of the mathematics -will not be displayed. This is a common error that should be avoided. +(prior to HTML5) does not have self-closing tags, and some browsers +will get the nesting of tags wrong if you attempt to use them. For +example, with ````, since there is no closing +tag, the rest of the mathematics will become the content of the +```` tag; but since ```` should have no content, the +rest of the mathematics will not be displayed. This is a common error +that should be avoided. Modern browsers that support HTML5 should be +able to handle self-closing tags, but older browsers have problems +with them, so if you want your mathematics to be visible to the widest +audience, do not use the self-closing form in HTML documents. Supported MathML commands @@ -86,12 +90,12 @@ The deficiencies include: - No support for the elementary math tags: ``mstack``, ``mlongdiv``, ``msgroup``, ``msrow``, ``mscarries``, and ``mscarry``. -- Limited support for line breaking (they are only allowed in direct - children of ``mrow`` or implied ``mrow`` elements). - -- No support for alignment groups in table. +- No support for alignment groups in tables. - No support for right-to-left rendering. +- Not all attributes are supported for tables. E.g., ``columnspan`` + and ``rowspan`` are not implemented yet. + See the `results of the MathML3.0 test suite `_ for details. diff --git a/docs/html/_sources/options/AsciiMath.txt b/docs/html/_sources/options/AsciiMath.txt new file mode 100644 index 000000000..981815b72 --- /dev/null +++ b/docs/html/_sources/options/AsciiMath.txt @@ -0,0 +1,40 @@ +.. _configure-AsciiMath: + +***************************** +The AsciiMath input processor +***************************** + +The options below control the operation of the AsciiMath input +processor that is run when you include ``"input/AsciiMath"`` in the +`jax` array of your configuration or use a combined configuration file +that includes AsciiMath input. They are listed with their default +values. To set any of these options, include a ``AsciiMath`` section +in your :meth:`MathJax.Hub.Config()` call. For example + +.. code-block:: javascript + + MathJax.Hub.Config({ + AsciiMath: { + displaystyle: false + } + }); + +would set the ``displaystyle`` configuration option so that the limits +for operators like summation symbols will appear next to them rather +than above and below. + +.. describe:: displaystyle: true + + Determines whether operators like summation symbols will have + their limits above and below the operators (true) or to their + right (false). The former is how they would appear in displayed + equations that appear on their own lines, while the latter is + better suited to in-line equations so that they don't interfere + with the line spacing so much. + +.. describe:: decimal: "." + + This is the character to be used for decimal points in numbers. + if you change this to ``","``, then you need to be careful about + entering points or intervals. E.g., use ``(1, 2)`` rather than + ``(1,2)`` in that case. diff --git a/docs/html/_sources/options/asciimath2jax.txt b/docs/html/_sources/options/asciimath2jax.txt new file mode 100644 index 000000000..cb899efa7 --- /dev/null +++ b/docs/html/_sources/options/asciimath2jax.txt @@ -0,0 +1,110 @@ +.. _configure-asciimath2jax: + +****************************** +The asciimath2jax Preprocessor +****************************** + +The options below control the operation of the `asciimath2jax` preprocessor +that is run when you include ``"asciimath2jax.js"`` in the `extensions` array +of your configuration. They are listed with their default values. To +set any of these options, include a ``asciimath2jax`` section in your +:meth:`MathJax.Hub.Config()` call. For example + +.. code-block:: javascript + + MathJax.Hub.Config({ + asciimath2jax: { + delimiters: [['`','`'], ['$','$']] + } + }); + +would set the ASCIIMath delimiters for the `asciimath2jax` +preprocessor to include dollar signs as well as back-ticks. + + +.. describe:: delimiters: [['`','`']] + + Array of pairs of strings that are to be used as math + delimiters. The first in each pair is the initial delimiter and + the second is the terminal delimiter. You can have as many pairs + as you want. For example, + + .. code-block:: javascript + + inlineMath: [ ['$','$'], ['`','`'] ] + + would cause `asciimath2jax` to look for ``$...$`` and ```...``` as + delimiters for inline mathematics. (Note that the single dollar + signs are not enabled by default because they are used too + frequently in normal text, so if you want to use them for math + delimiters, you must specify them explicitly.) + + Note that the delimiters can't look like HTML tags (i.e., can't + include the less-than sign), as these would be turned into tags by + the browser before MathJax has the chance to run. You can only + include text, not tags, as your math delimiters. + +.. describe:: preview: "AsciiMath" + + This controls whether `asciimath2jax` inserts ``MathJax_Preview`` + spans to make a preview available, and what preview to use, when + it locates in-line or display mathematics in the page. The + default is ``"AsciiMath"``, which means use the ASCIIMath code as + the preview (which will be visible until it is processed by + MathJax). Set to ``"none"`` to prevent previews from being + inserted (the math will simply disappear until it is typeset). + Set to an array containing the description of an HTML snippet in + order to use the same preview for all equations on the page. + + Examples: + + .. code-block:: javascript + + preview: ["[math]"], // insert the text "[math]" as the preview + + .. code-block:: javascript + + preview: [["img",{src: "/images/mypic.jpg"}]], // insert an image as the preview + + See the :ref:`description of HTML snippets ` for + details on how to represent HTML code in this way. + +.. describe:: skipTags: ["script","noscript","style","textarea","pre","code"] + + This array lists the names of the tags whose contents should not + be processed by `asciimath2jax` (other than to look for + ignore/process classes as listed below). You can add to (or + remove from) this list to prevent MathJax from processing + mathematics in specific contexts. + +.. describe:: ignoreClass: "asciimath2jax_ignore" + + This is the class name used to mark elements whose contents should + not be processed by asciimath2jax (other than to look for the + ``processClass`` pattern below). Note that this is a regular + expression, and so you need to be sure to quote any `regexp` + special characters. The pattern is inserted into one that + requires your pattern to match a complete word, so setting + ``ignoreClass: "class2"`` would cause it to match an element with + ``class="class1 class2 class3"``. Note that you can assign + several classes by separating them by the vertical line character + (``|``). For instance, with ``ignoreClass: "class1|class2"`` + any element assigned a class of either ``class1`` or ``class2`` + will be skipped. + +.. describe:: processClass: "asciimath2jax_process" + + This is the class name used to mark elements whose contents + *should* be processed by `asciimath2jax`. This is used to restart + processing within tags that have been marked as ignored via the + ``ignoreClass`` or to cause a tag that appears in the ``skipTags`` + list to be processed rather than skipped. Note that this is a + regular expression, and so you need to be sure to quote any + `regexp` special characters. The pattern is inserted into one + that requires your pattern to match a complete word, so setting + ``processClass: "class2"`` would cause it to match an element with + ``class="class1 class2 class3"``. Note that you can assign + several classes by separating them by the vertical line character + (``|``). For instance, with ``processClass: "class1|class2"`` any + element assigned a class of either ``class1`` or ``class2`` will + have its contents processed. diff --git a/docs/html/_sources/options/index.txt b/docs/html/_sources/options/index.txt index 9d68d1b55..f73fca1ce 100644 --- a/docs/html/_sources/options/index.txt +++ b/docs/html/_sources/options/index.txt @@ -21,7 +21,7 @@ configuration if you do. The MathJax components, like the TeX input processor, have their own sections in the configuration object, labeled by the component name, -and using a configuration object as its value. The object is itself +and using an object as its value. That object is itself a configuration object made up of name-value pairs that give the configuration options for the component. @@ -70,6 +70,7 @@ are categorized by the component they affect. The tex2jax preprocessor options The mml2jax preprocessor options + The asciimath2jax preprocessor options The jsMath2jax preprocessor options .. toctree:: @@ -77,6 +78,7 @@ are categorized by the component they affect. The TeX input processor options The MathML input processor options + The AsciiMath input processor options The HTML-CSS output processor options The NativeMML output processor options The MMLorHTML configuration options diff --git a/docs/html/_sources/output.txt b/docs/html/_sources/output.txt index 2affa7edd..26d1e767f 100644 --- a/docs/html/_sources/output.txt +++ b/docs/html/_sources/output.txt @@ -4,24 +4,26 @@ MathJax Output Formats ********************** -Currently, MathJax can render math in two ways: +Currently, MathJax can render math in three ways: -- Using HTML-with-CSS to lay out the mathematics, or +- Using HTML-with-CSS to lay out the mathematics, +- Using :term:`SVG` to lay out the mathematics, or - Using a browser's native MathML support. -These are implemented by the `HTML-CSS` and `NativeMML` output +These are implemented by the `HTML-CSS`, `SVG` and `NativeMML` output processors. If you are using one of the combined configuration files, then this will select one of these output processors for you. If the config file ends in -``_HTML``, then it is the HTML-CSS output processor, and if it ends in +``_HTML``, then it is the HTML-CSS output processor, and if it ends in +``_SVG`` then the SVG output processor will be used. If it ends in ``_HTMLorMML``, then the NativeMML output processor will be chosen if the -browser supports it, otherwise HTML-CSS output will be used. +browser supports it well enough, otherwise HTML-CSS output will be used. -If you are performing your own in-line or file-based configuration, you -select which one you want to use by including either ``"output/HTML-CSS"`` -or ``"output/NativeMML"`` in the `jax` array of your MathJax configuration. -For example +If you are performing your own in-line or file-based configuration, +you select which one you want to use by including either +``"output/HTML-CSS"``, ``"output/SVG"``, or ``"output/NativeMML"`` in +the `jax` array of your MathJax configuration. For example .. code-block:: javascript @@ -34,35 +36,57 @@ The HTML-CSS output processor produces high-quality output in all major browsers, with results that are consistent across browsers and operating systems. This is MathJax's primary output mode. Its major advantage is its quality and consistency; its drawback is that it is -slower than the NativeMML mode at rendering the mathematics. (The -HTML-CSS processor has not yet been optimized for speed, so you can -expect some improvement in the future. Note that IE8 in "IE8 -standards mode" is an order of magnitude slower than any other browser -when processing math through the HTML-CSS output processor; see -:ref:`HTML-CSS with IE8 ` below for some strategies -to deal with this.) +slower than the NativeMML mode at rendering the mathematics. +Historically, the performance in Internet Explorer (and IE8 in +particular) was quite poor, with the page getting slower and slower as +more math is processed. MathJax version 2.0 includes a number of +optimizations to improve the display performance in IE, and it is now +more comparable to other browsers. The HTML-CSS output uses web-based +fonts so that users don't have to have math fonts installed on their +computers; but this does introduce some printing issues in some +browsers. -The NativeMML output processor uses the browser's internal MathML support (if -any) to render the mathematics. Currently, Firefox has native support -for MathML, and IE has the `MathPlayer plugin +The SVG output processor is new in MathJax version 2.0, and it uses +`Scalable Vector Graphics` to render the mathematics on the page. SVG +is supported in all the major browsers and most mobile devices; note, +however, that Internet Explorer prior to IE9 does not support SVG, and +IE9 only does in "IE9 standards mode", not its emulation modes for +earlier versions. The SVG output mode is high quality and slightly +faster than HTML-CSS, and it does not suffer from some of the +font-related issues that HTML-CSS does, so prints well in all +browsers. This format also works well in some ebook readers (e.g., +iBooks). The disadvantage of this mode is that it does not take +advantage of STIX fonts, and so only has access to the characters in +the web-based fonts, and it variable-width tables become fixed size +once they are typeset, and don't rescale if the window size changes +(for example). Since equation numbers are handled through +variable-width tables, that means equation numbers may not stay at the +edge of the window if it is resized. + +The NativeMML output processor uses the browser's internal MathML +support (if any) to render the mathematics. Currently, Firefox has +native support for MathML, and IE has the `MathPlayer plugin `_ for rendering MathML. Opera has some built-in support for MathML that works well with simple equations, but fails with more complex formulas, so we -don't recommend using the NativeMML output processor with Opera. Safari, +don't recommend using the NativeMML output processor with Opera. +Safari has some support for MathML since version 5.1, but the quality +is not as high as either Firefox's implementation or IE with MathPlayer. Chrome, Konqueror, and most other browsers don't support MathML -natively, but may in the future, since MathML is part of the HTML5 +natively, but may in the future, since MathML is part of the HTML5 specification. -The advantage of the NativeMML output Processor is its speed, since native -MathML support is much faster than using complicated HTML and CSS to lay -out mathematics, as the HTML-CSS output processor does. The disadvantage -is that you are dependent on the browser's MathML implementation for your -rendering, and these vary in quality of output and completeness of -implementation. MathJax may rely on features that are not available in -some renderers (for example, Firefox's MathML support does not implement -some of the named widths, such as ``negativethinmathspace``). The results -using the NativeMML output processor may have spacing or other rendering -problems that are outside of MathJax's control. +The advantage of the NativeMML output Processor is its speed, since +native MathML support is much faster than using complicated HTML and +CSS to lay out mathematics, as the HTML-CSS output processor does. +The disadvantage is that you are dependent on the browser's MathML +implementation for your rendering, and these vary in quality of output +and completeness of implementation. MathJax relies on features that +are not available in some renderers (for example, Firefox's MathML +support does not implement the features needed for labeled equations). +The results using the NativeMML output processor may have spacing or +other rendering problems that are outside of MathJax's control. + Automatic Selection of the Output Processor =========================================== @@ -70,9 +94,10 @@ Automatic Selection of the Output Processor Since not all browsers support MathML natively, it would be unwise to choose the NativeMML output processor unless you are sure of your audience's browser capabilities. MathJax can help with that, however, -since a number of its combined configuration files will select NativeMML -output when the browser supports it, and HTML-CSS output otherwise. These -are the configuration files that end in ``_HTMLorMML``. +since a number of its combined configuration files will select +NativeMML output when the browser supports it well enough, and +HTML-CSS output otherwise. These are the configuration files that end +in ``_HTMLorMML``. If you are doing your own configuration, there is a special configuration file that you can include that will choose between NativeMML and HTML-CSS @@ -86,28 +111,37 @@ the abilities of your user's browser. config: ["MMLorHTML.js"], jax: ["input/TeX"] -You can customize which choice to make on a browser-by-browser basis -or a global basis. See the ``config/default.js`` file or the + +By default, MathJax will choose HTML-CSS in all browsers except for +one case: Internet Explorer when the MathPlayer plugin is present. +In the past, MathJax selected NativeMML output for Firefox as well, +but we have found that there are too many rendering issues with +Firefox's native MathML implementation, and so MathJax now selects +HTML-CSS output for Firefox by default as well. Users can still use +the Mathjax contextual menu to select the NativeMML renderer if they +wish to choose greater speed at the expense of some quality. + +You can customize which choice MathJax makes on a browser-by-browser +basis or a global basis. See the ``config/default.js`` file or the :ref:`Configuring MMLorHTML ` section for further -details. As an example, this configuration tells MathJax to use HTML-CSS -output rather than native MathML support for Firefox: +details. As an example, this configuration tells MathJax to use +native MathML support rather than HTML-CSS output for Firefox: .. code-block:: html -With this configuration, MathML output will be used only for IE with the -MathPlayer plugin (Firefox is the only other browser to have native MathML -support that is sufficient for use with MathJax). Note, however, that a -user can employ the MathJax contextual menu to select the other renderer if -he or she wishes. +With this configuration, MathML output will be used for both Firefox +and IE with the MathPlayer plugin. Note, however, that a user can +employ the MathJax contextual menu to select the other renderer if he +or she wishes. MathJax produces MathML that models the underlying mathematics as best it can, rather than using complicated hacks to improve output for a @@ -119,41 +153,29 @@ be taken lightly. .. _html-css-with-ie8: -HTML-CSS with IE8 -================= +HTML-CSS with IE8 and IE9 +========================= -Internet Explorer 8 has at least eight different rendering modes in which -it can operate, and that are triggered by the `DOCTYPE` of the document -being viewed. Its "quirks" mode is its fastest mode, and its "IE8 -standards" mode is its slowest. This is the mode triggered by strict HTML -document types, and since most modern content management systems now -include a `DOCTYPE` that activates "standards" mode, IE8 will operate in -its slowest manner. This is particularly apparent when MathJax is used, -since IE8 in standards mode runs 20 to 30 times slower than it does in its -IE7 emulation mode, and 60 times slower than in quirks mode, on the sample -equations page in ``test/sample.html``. +The performance of MathJax in Internet Explorer 8 and 9 has been +substantially improved in version 2.0. The HTML-CSS output processing +was redesigned to avoid the page reflows that were the main source of +the speed problem in I8 and IE9. For test pages having between 20 and +50 typeset expressions, we see an 80% reduction in output processing +time for IE8, a 50% reduction for IE9, and between 15% and 25% +reduction for most other browsers over the v1.1a times. Since the +processing time in v1.1a grows non-linearly in IE, you should see even +larger savings for pages with more equations when using v2.0. -Most users find this speed reduction unacceptable when there is much -mathematics on the page. To overcome this problem, you may wish to -tell IE8 to use its IE7 emulation mode rather than its IE8 standards -mode. You can accomplish this by including the line +In the past, we recommended forcing IE8 and IE9 into IE7-emulation +mode in order to get better performance. That is no longer necessary. +Indeed, the fastest modes in IE8 and IE9 now are their IE8 standards +and IE9 standards modes, so it is best to force the highest mode +possible. That can be accomplished by adding .. code-block:: html - + -at the top of the ```` section of your HTML documents. This -lets you keep the strict `DOCTYPE` for validation purposes, while -still managing to get reasonable performance from Internet Explorer -8. Note that this line must come at the beginning of the ````, -before any stylesheets or other content are loaded. - -Alternatively, you can use the `MMLorHTML` configuration file -described above to select NativeMML output when possible, and request -that your users install the `MathPlayer plugin -`_, which will render -the mathematics much more quickly. - -It appears that IE9 in IE9 standards mode may perform better than IE8, but -since IE9 is still in beta testing as of this writing, we have yet to see -exactly what the performance of MathJax in IE9 will be like. +at the top of the ```` section of your HTML documents. Note +that this line must come at the beginning of the ````, before +any stylesheets, scripts, or other content are loaded. diff --git a/docs/html/_sources/platforms/index.txt b/docs/html/_sources/platforms/index.txt index 4976868c8..0f0b3b23f 100644 --- a/docs/html/_sources/platforms/index.txt +++ b/docs/html/_sources/platforms/index.txt @@ -4,15 +4,16 @@ Using MathJax in popular web platforms ====================================== -MathJax plugins are available for a growing number of wikis, blogs, and -other content-management systems. These include WordPress, Blogger, -Sphinx, TiddlyWiki, and MathEL-Wiki. A list of these is available in the -`web applications and integrations -`_ list of the +MathJax plugins are available for a growing number of wikis, blogs, +and other content-management systems. These include WordPress, +Blogger, Sphinx, TiddlyWiki, and MathEL-Wiki. A list of these is +available in the `web applications +`_ list of the `MathJax web site `_. If the program you are using is not one of these, you may still be able to -use MathJax by modifying the theme or template for your wiki or blog. +use MathJax by modifying the theme or template for your wiki or blog, +as explained below. Using MathJax in a Theme File diff --git a/docs/html/_sources/start.txt b/docs/html/_sources/start.txt index 8109dd73e..c484bbc42 100644 --- a/docs/html/_sources/start.txt +++ b/docs/html/_sources/start.txt @@ -5,15 +5,15 @@ Getting Started *************** MathJax allows you to include mathematics in your web pages, either -using TeX and LaTeX notation, or as MathML, and you can even use both -in the same document. +using TeX and LaTeX notation, MathML, or AsciiMath notation, and you +can even use all three in the same document. There are two ways to access MathJax: the easiest way is to use the copy of MathJax available from our distributed network service at ``cdn.mathjax.org``, but you can also download and install a copy of -MathJax on your own server, or for use locally on your own hard disk -(with no need for network access). Both of these are described below, -with links to more detailed explanations. This page gives the +MathJax on your own server, or use it locally on your own hard disk +(with no need for network access). All three of these are described +below, with links to more detailed explanations. This page gives the quickest and easiest ways to get MathJax up and running on your web site, but you may want to read the details in order to customize the setup for your pages. @@ -43,12 +43,13 @@ into the ```` block of your document. (It can also go in the load the latest version of MathJax from the distributed server, and configure it to recognize mathematics in both TeX and MathML notation, and ask it to generate its output using MathML if the browser supports -that, and otherwise use HTML-with-CSS to display the mathematics. -This is the most general configuration, and should suffice for most -people's needs. Other configurations are available, however, and you -can also provide additional configuration parameters to taylor one of -the configurations to your needs. More details can be found in the -:ref:`Loading and Configuring MathJax ` instructions. +that well enough, and otherwise use HTML-with-CSS to display the +mathematics. This is one of the most general configurations, and +should suffice for most people's needs. Other configurations are +available, however, and you can also provide additional configuration +parameters to taylor one of the configurations to your needs. More +details can be found in the :ref:`Loading and Configuring MathJax +` instructions. The use of ``cdn.mathjax.org`` is governed by its `terms of service `_, so be @@ -68,7 +69,7 @@ and replace it. This is sometimes called a `man-in-the-middle `_ attack. To prevent such attacks, it is necessary to access the MathJax CDN -over a secure HTTPS connection. This can be easily done by using the +over a secure HTTPS connection. This can be done easily by using the following `` Currently, the Amazon Cloudfront service used by the MathJax CDN does -not support the use of a human-friendly name like cdn.mathjax.org for -secure connections. However, this address is stable and safe to use. +not support the use of a human-friendly name like ``cdn.mathjax.org`` +for secure connections; however, the address given above is stable and +safe to use. Installing Your Own Copy of MathJax @@ -89,7 +91,8 @@ We recommend using the CDN service if you can, but you can also install MathJax on your own server, or locally on your own hard disk. To do so you will need to do the following things: -1. Obtain a copy of MathJax and make it available on your server. +1. Obtain a copy of MathJax and make it available on your server or +hard disk. 2. Configure MathJax to suit the needs of your site. @@ -108,8 +111,8 @@ should obtain a file named something like ``mathjax-MathJax-v1.1-X-XXXXXXXX.zip``, where the X's are random-looking letters and numbers). This archive includes both the MathJax code and the MathJax webfonts, so it is the only file you -need. Note that this is different from earlier releases, which had -the fonts separate from the rest of the code. +need. Note that this is different from v1.0 and earlier releases, +which had the fonts separate from the rest of the code. Unpack the archive and place the resulting MathJax folder onto your web server at a convenient location where you can include it into your @@ -118,7 +121,7 @@ your server would be one natural way to do this. That would let you refer to the main MathJax file via the URL ``/MathJax/MathJax.js`` from within any page on your server. -Note: While this is the easiest way to set up MathJax initially, there +**Note:** While this is the easiest way to set up MathJax initially, there is a better way to do it if you want to be able to keep your copy of MathJax up-to-date. That uses the `Git `_ version control system, and is described in the :ref:`Installing MathJax @@ -128,17 +131,18 @@ of MathJax (see :ref:`Installing MathJax via SVN `). Once you have MathJax set up on your server, you can test it using the -files in the ``MathJax/test`` directory. Load them in your browser -using its web address rather than opening them locally (i.e., use an -``http://`` URL rather than a ``file://`` URL). When you view the -``index.html`` file, after a few moments you should see a message -indicating that MathJax appears to be working. If not, check that the -files have been transferred to the server completely and that the -permissions allow the server to access the files and folders that are -part of the MathJax directory. (Be sure to verify the MathJax -folder's permissions as well.) Check the server log files for any -errors that pertain to the MathJax installation; this may help locate -problems in the permission or locations of files. +files in the ``MathJax/test`` directory. If you are putting MathJax +on a server, load them in your browser using their web addresses +rather than opening them locally (i.e., use an ``http://`` URL rather +than a ``file://`` URL). When you view the ``index.html`` file, after +a few moments you should see a message indicating that MathJax appears +to be working. If not, check that the files have been transferred to +the server completely and that the permissions allow the server to +access the files and folders that are part of the MathJax directory. +(Be sure to verify the MathJax folder's permissions as well.) Check +the server log files for any errors that pertain to the MathJax +installation; this may help locate problems in the permission or +locations of files. Configuring your copy of MathJax @@ -147,11 +151,12 @@ Configuring your copy of MathJax When you include MathJax into your web pages as described below, it will load the file ``config/TeX-AMS-MML_HTMLorMML.js`` (i.e., the file named ``TeX-AMS-MML_HTMLorMML.js`` in the ``config`` folder of the -main ``MathJax`` folder). This file preloads all the most commonly-used -components of MathJax, allowing it to process mathematics that is in -the TeX or LaTeX format, or in MathML notation. It will produce -output in MathML form if the user's browser supports that, and will use -HTML-with-CSS to render the mathematics otherwise. +main ``MathJax`` folder). This file preloads all the most +commonly-used components of MathJax, allowing it to process +mathematics that is in the TeX or LaTeX format, or in MathML notation. +It will produce output in MathML form if the user's browser supports +that sufficiently, and will use HTML-with-CSS to render the +mathematics otherwise. There are a number of other prebuilt configuration files that you can choose from as well, or you could use the ``config/default.js`` file and @@ -160,11 +165,11 @@ described more fully in :ref:`Common Configurations `, and the configuration options are described in :ref:`Configuration Options `. -Note: The configuration process has changed in MathJax v1.1, so if you have -existing pages that use MathJax, you may need to modify the tag that -loads MathJax so that it conforms with the new configuration process. -See :ref:`Installing and Configuring MathJax ` for more -details. +Note: The configuration process changed between MathJax v1.0 and v1.1, +so if you have existing pages that use MathJax v1.0, you may need to +modify the tag that loads MathJax so that it conforms with the new +configuration process. See :ref:`Installing and Configuring MathJax +` for more details. Linking your copy of MathJax into a web page @@ -210,13 +215,15 @@ of MathJax. Putting mathematics in a web page ================================= -To put mathematics in your web page, you can use either :term:`TeX` -and :term:`LaTeX` notation or :term:`MathML` notation or both within -the same page; the MathJax configuration tells MathJax which you want -to use, and how you plan to indicate the mathematics when you are -using TeX notation. The configuration file used in the examples above -tells MathJax to look for both TeX and MathML notation within your -pages. These two formats are described in more detail below. +To put mathematics in your web page, you can use :term:`TeX` and +:term:`LaTeX` notation, :term:`MathML` notation, :term:`AsciiMath` +notation, or a combination of all three within the same page; the +MathJax configuration tells MathJax which you want to use, and how you +plan to indicate the mathematics when you are using TeX notation. The +configuration file used in the examples above tells MathJax to look +for both TeX and MathML notation within your pages. Other +configuration files tell MathJax to use AsciiMath input. These three +formats are described in more detail below. .. _tex-and-latex-input: @@ -258,10 +265,14 @@ options ` page, for additional configuration parameters that you can specify for the `tex2jax` preprocessor, which is the component of MathJax that identifies TeX notation within the page. See the :ref:`TeX and LaTeX ` page for -more on MathJax's support for TeX. +more on MathJax's support for TeX, and in particular how to deal with +single dollar signs in your text when you have enabled single +dollar-sign delimiters. -Here is a complete sample page containing TeX mathematics (also available -in the ``test/sample-tex.html`` file): +Here is a complete sample page containing TeX mathematics (also +available in the `test/sample-tex.html +`_ +file): .. code-block:: html @@ -290,6 +301,16 @@ a tag in HTML. Putting a space on both sides of the less-than sign should be sufficient, but see :ref:`TeX and LaTeX support ` for details. +If you are using MathJax within a blog, wiki, or other content +management system, the markup language used by that system may +interfere with the TeX notation used by MathJax. For example, if your +blog uses :term:`Markdown` notation for authoring your pages, the +underscores used by TeX to indicate subscripts may be confused with +the use of underscores by Markdown to indicate italics, and the two +uses may prevent your mathematics from being displayed. See :ref:`TeX +and LaTeX support ` for some suggestions about how to +deal with the problem. + There are a number of extensions for the TeX input processor that are loaded by the ``TeX-AMS-MML_HTMLorMML`` configuration. These include: @@ -305,9 +326,13 @@ loaded by the ``TeX-AMS-MML_HTMLorMML`` configuration. These include: - `TeX/noUndefined.js`, which prevents undefined macros from producing an error message, and instead shows the macro name in red. -Other extensions may be loaded automatically when needed. +Other extensions may be loaded automatically when needed. See +:ref:`TeX and LaTeX support ` for details on the other +TeX extensions that are available. +.. _mathml-input: + MathML input ------------ @@ -321,10 +346,21 @@ works with both), and that the web page need not be served with any special MIME-type. Also note that, unless you are using XHTML rather than HTML, you should not include a namespace prefix for your ```` tags; for example, you should not use ```` except -in a file where you have tied the ``m`` namespace to the MathML DTD. +in a file where you have tied the ``m`` namespace to the MathML DTD by +adding the ``xmlns:m="http://www.w3.org/1998/Math/MathML"`` attribtue +to your file's ```` tag. -Here is a complete sample page containing MathML mathematics (also -available in the ``test/sample-mml.html`` file): +Although it is not required, it is recommended that you include the +``xmlns="http://www.w3.org/1998/Math/MathML"`` attribute on all +```` tags in your document (and this is preferred to the use of +a namespace prefix like ``m:`` above, since those are deprecated in +HTML5) in order to make your MathML work in the widest range of +situations. + +Here is a complete sample page containing MathML mathematics (also +available in the `test/sample-mml.html +`_ +file): .. code-block:: html @@ -338,13 +374,19 @@ available in the ``test/sample-mml.html`` file): - When a0, - there are two solutions to +

    + When + + a0 + , + there are two solutions to + ax2 + bx + c = 0 - and they are - + + and they are + x = @@ -363,6 +405,7 @@ available in the ``test/sample-mml.html`` file): . +

    @@ -374,20 +417,66 @@ should use .. code-block:: html - + -rather than ```` in an HTML document. If you use the -self-closing form, some browsers will not build the math tree properly, and -MathJax will receive a damaged math structure, which will not be rendered -as the original notation would have been. Unfortunately, there is nothing -MathJax can do about that, since the browser has incorrectly interpreted -the tags long before MathJax has a chance to work with them. +rather than ```` in an HTML document. If you +use the self-closing form, some browsers will not build the math tree +properly, and MathJax will receive a damaged math structure, which +will not be rendered as the original notation would have been. +Typically, this will cause parts of your expression to not be +displayed. Unfortunately, there is nothing MathJax can do about that, +since the browser has incorrectly interpreted the tags long before +MathJax has a chance to work with them. + +The component of MathJax that recognizes MathML notation within the +page is called the `mml2jax` extension, and it has only a few +configuration options; see the ``config/default.js`` file or the +:ref:`mml2jax configuration options ` page for more +details. See the :ref:`MathML ` page for more on +MathJax's MathML support. + + +.. _asciimath-input: + +AsciiMath input +--------------- + +MathJax v2.0 includes a new input format: :term:`AsciiMath` notation. +For mathematics written in this form, you mark your mathematical +expressions by surrounding them in "back-ticks", i.e., ```...```. + +Here is a complete sample page containing AsciiMath notation (also +available in the `test/sample-asciimath.html +`_ +file): + +.. code-block:: html + + + + + MathJax AsciiMath Test Page + + + + +

    When `a != 0`, there are two solutions to `ax^2 + bx + c = 0` and + they are

    +

    + `x = (-b +- sqrt(b^2-4ac))/(2a) .` +

    + + + + +The component of MathJax that recognizes asciimath notation within the +page is called the `asciimath2jax` extension, and it has only a few +configuration options; see the ``config/default.js`` file or the +:ref:`asciimath2jax configuration options ` page for more +details. See the :ref:`AsciiMath support ` page for more on +MathJax's AsciiMath support. -The component of MathJax that recognizes MathML notation is called the -`mml2jax` extension, and it has only a few configuration options; see the -``config/default.js`` file or the :ref:`mml2jax configuration options -` page for more details. See the :ref:`MathML -` page for more on MathJax's MathML support. Where to go from here? diff --git a/docs/html/_sources/tex.txt b/docs/html/_sources/tex.txt index 5bf2e8324..7452360b0 100644 --- a/docs/html/_sources/tex.txt +++ b/docs/html/_sources/tex.txt @@ -81,7 +81,7 @@ TeX and LaTeX in HTML documents Keep in mind that your mathematics is part of an HTML document, so you need to be aware of the special characters used by HTML as part of its markup. There cannot be HTML tags within the math delimiters (other -than ``
    ``) as TeX-formatted math does not include HTML tags. +than ``
    ``) as TeX-formatted math does not include HTML tags. Also, since the mathematics is initially given as text on the page, you need to be careful that your mathematics doesn't look like HTML tags to the browser (which parses the page before MathJax gets to see @@ -129,6 +129,151 @@ easier to enter ``<`` and ``>`` using TeX-like syntax: Keep in mind that the browser interprets your text before MathJax does. +Another source of difficulty is when MathJax is used in content +management systems that have their own document processing commands +that are interpreted before the HTML page is created. For example, +many blogs and wikis use formats like :term:`Markdown` to allow you to +create the content of you pages. In Markdown, the underscore is used +to indicate italics, and this usage will conflict with MathJax's ise +of the underscore to indicate a subscript. Since Markdown is applied +to the page first, it will convert your subscripts markers into +italics (inserting ```` tags into your mathematics, which will +cause MathJax to ignore the math). + +Such systems need to be told not to modify the mathematics that +appears between math delimiters. That usually involves modifying the +content-management system itself, which is beyond the means of most +page authors. If you are lucky, someone else will already have done +this for you, and you can find a MathJax plugin for your system on the +`MathJax-In-Use page +`_ page. + +If there is no plugin for your system, or if it doesn't handle the +subtleties of issolating the mathematics from the other markup that it +supports, then you may have to "trick" it into leaving your +mathematics untouched. Most content-management systems provide some +means of indicating text that should not be modified ("verbatim" +text), often for giving code snippets for computer languages. +You may be use that to enclose your mathematics so that the system +leaves it unchanged and MathJax can process it. For example, in +Markdown, the back-tick (`````) is used to mark verbatim text, so + +.. code-block:: latex + + ... we have `\(x_1 = 132\)` and `\(x_2 = 370\)` and so ... + +may be able to protect the underscores from being processed by +Markdown. + +Some content-management systems use the backslash (``\``) as a special +character for "escaping" other characters, but TeX uses this character +to indicate a macro name. In such systems, you may have to double the +backslashes in order to obtain a single backslash in your HTML page. +For example, you may have to do + +.. code-block:: latex + + \\begin{array}{cc} + a & b \\\\ + c & c + \\end{array} + +to get an array with the four entries *a*, *b*, *c*, and *d*. Note in +particular that if you want ``\\`` you will have to double *both* +backslashes, giving ``\\\\``. + +Finally, if you have enabled single dollar-signs as math delimiters, +and you want to include a literal dollar sign in your web page (one +that doesn't represent a math delimiter), you will need to prevent +MathJax from using it as a math delimiter. If you also enable the +``processEscapes`` configuration parameter, then you can use ``\$`` in +the text of your page to get a dollar sign (without the backslash) in +the end. Alternatively, you use something like +``$`` to isolate the dollar sign so that +MathJax will not use it as a delimiter. + + +.. _tex-macros: + +Defining TeX macros +=================== + +You can use the ``\def``, ``\newcommand``, ``\renewcommand``, +``\newenvironment``, ``\renewenvironment``, and ``\let`` commands to +create your own macros and environments. Unlike actual TeX, however, +in order for MathJax to process these, they must be enclosed in math +delimiters (since MathJax only processes macros in math-mode). For +example + +.. code-block:: latex + + \( + \def\RR{\bf R} + \def\bold#1{\bf #1} + \) + +would define ``\RR`` to produce a bold-faced "R", and ``\bold{...}`` +to put its argument into bold face. Both definitions would be +available throughout the rest of the page. + +You can include macro definitions in the `Macros` section of the `TeX` +blocks of your configuration, but they must be represetned as +JavaScript objects. For example, the two macros above can be +pre-defined in the configuraiton by + +.. code-block:: javascript + + MathJax.Hub.Config({ + TeX: { + Macros: { + RR: "{\\bf R}", + bold: ["{\\bf #1}",1] + } + } + }); + +Here you give the macro as a `name:value` pair, where the `name` +is the name of the control sequence (without the backslash) that you +are defining, and `value` is either the replacement string for the +macro (when there are no arguments) or an array consisting of the +replacement string followed by the number of arguments for the macro. + +Note that the replacement string is given as a JavaScript string +literal, and the backslash has special meaning in JavaScript strings. +So to get an actual backslash in the string you must double it, as int +he examples above. + +If you have many such definitions that you want to use on more than +one page, you could put them into a configuration file that you can +load along with the main configuration file. For example, you could +create a file in ``MathJax/config/local`` called ``local.js`` that +contains your macro definitions: + +.. code-block:: javascript + + MathJax.Hub.Config({ + TeX: { + Macros: { + RR: "{\\bf R}", + bold: ["{\\bf #1}",1] + } + } + }); + + MathJax.Ajax.loadComplete("[MathJax]/config/local/local.js"); + +and then load it along with your main configuration file on the script +that loads ``MathJax.js``: + +.. code-block:: html + + + +If you are using the CDN, you can make a local configuration file on +your own server, and load MathJax itself from the CDN and your +configuration file from your server. See :ref:`Using a Local +Configuration File with the CDN ` for details. + .. _tex-extensions: @@ -165,7 +310,53 @@ script prior to loading MathJax. For example will load the `autobold` TeX extension in addition to those already included in the ``TeX-AMS_HTML`` configuration file. -The main extensions are described below. +You can also load these extensions from within a math expresion using +the non-standard ``\require{extension}`` macro. For example + +.. code-block:: latex + + \(\require{color}\) + +would load the `color` extension into the page. This way you you can +load extensions into pages that didn't load them in their +configurations (and prevents you from having to load all the +extensions into all pages even if they aren't used). + +The main extensions are described below. + + +Action +------ + +The `action` extension gives you access to the MathML ```` +element. It defines three new non-standard macros: + +.. describe:: \\mathtip{math}{tip} + + Use ``tip`` (in math mode) as tooltip for ``math``. + +.. describe:: \\texttip{math}{tip} + + Use ``tip`` (in text mode) as tooltip for ``math``. + +.. describe:: \\toggle{math1}{math2}...\\endtoggle + + Show ``math1``, and when clicked, show ``math2``, and so on. + When the last one is clicked, go back to math1. + +To use this extension in your own configurations, add it to the +`extensions` array in the TeX block. + +.. code-block:: javascript + + TeX: { + extensions: ["action.js"] + } + +This extension is **not** included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands. + AMSmath and AMSsymbols ---------------------- @@ -208,6 +399,295 @@ appears in a section of an HTML page that is in bold. This extension is **not** loaded by the combined configuration files. +BBox +---- + +The `bbox` extension defines a new macro for adding background colors, +borders, and padding to your math expressions. + +.. describe:: \\bbox[options]{math} + + puts a bounding box around ``math`` using the provided ``options``. + The options can be one of the following: + + 1. A color name used for the background color. + 2. A dimension (e.g., ``2px``) to be used as a padding around the + mathematics (on all sides). + 3. Style attributes to be applied to the mathematics (e.g., + ``border:1px solid red``). + 4. A combination of these separated by commas. + +Here are some examples: + +.. code-block:: latex + + \bbox[red]{x+y} % a red box behind x+y + \bbox[2pt]{x+1} % an invisible box around x+y with 2pt of extra space + \bbox[red,2pt]{x+1} % a red box around x+y with 2pt of extra space + \bbox[5px,border:2px solid red] + % a 2px red border around the math 5px away + +This extension is **not** included in any of the combined configurations, +but it will be loaded automatically, so you do not need to include it +in your `extensions` array. + + +Begingroup +---------- + +The `begingroup` extension implements commands that provide a +mechanism for localizing macro defintions so that they are not +permanent. This is useful if you have a blog site, for example, and +want to isolate changes that your readers make in their comments so +that they don't affect later comments. + +It defines two new non-standard macros, ``\begingroup`` and +``\endgroup``, that are used to start and stop a local namespace for +macros. Any macros that are defined between the ``\begingroup`` and +``\endgroup`` will be removed after the ``\endgroup`` is executed. +For example, if you put ``\(\begingroup\)`` at the top of each reader's +comments and ``\(\endgroup\)`` at the end, then any macros they define +within their response will be removed after it is processed. + +In addition to these two macros, the `begingroup` extension defines +the standard ``\global`` and ``\gdef`` control sequences from TeX. +(The ``\let``, ``\def``, ``\newcommand``, and ``\newenvironment`` +control sequences are already defined in the core TeX input jax.) + +To use this extension in your own configurations, add it to the +`extensions` array in the TeX block. + +.. code-block:: javascript + + TeX: { + extensions: ["begingroup.js"] + } + +This extension is **not** included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands. + + +Cancel +------ + +The `cancel` extension defines the following macros: + +.. describe:: \\cancel{math} + + Strikeout ``math`` from lower left to upper right. + +.. describe:: \\bcancel{math} + + Strikeout ``math`` from upper left to lower right. + +.. describe:: \\xcancel{math} + + Strikeout ``math`` with an "X". + +.. describe:: \\cancelto{value}{math} + + Strikeout ``math`` with an arrow going to ``value``. + +To use this extension in your own configurations, add it to the +`extensions` array in the TeX block. + +.. code-block:: javascript + + TeX: { + extensions: ["cancel.js"] + } + +This extension is **not** included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands. + + +Color +----- + +The ``\color`` command in the core TeX input jax is not standard in +that it takes the mathematics to be colored as one of its parameters, +whereas the LaTeX ``\color`` command is a switch that changes the +color of everything that follows it. + +The `color` extension changes the ``\color`` command to be compatible +with the LaTeX implementation, and also defines ``\colorbox``, +``\fcolorbox``, and ``\DefineColor``, as in the LaTeX color package. +It defines the standard set of colors (Apricot, Aquamarine, +Bittersweet, and so on), and provides the RGB and grey-scale color +spaces in addition to named colors. + +To use this extension in your own configurations, add it to the +`extensions` array in the TeX block. + +.. code-block:: javascript + + TeX: { + extensions: ["color.js"] + } + +This extension is **not** included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands, +and have ``\color`` be compatible with LaTeX usage. + + +Enclose +------- + +The `enclose` extension gives you access to the MathML ```` +element for adding boxes, ovals, strikethroughs, and other marks over +your mathematics. It defines the following non-standard macro: + +.. describe:: \\enclose{notation}[attributes]{math} + + Where ``notation`` is a comma-separated list of MathML + ```` notations (e.g., ``circle``, ``left``, + ``updiagonalstrike``, ``longdiv``, etc.), ``attributes`` are + MathML attribute values allowed on the ```` element + (e.g., ``mathcolor="red"``, ``mathbackground="yellow"``), and + ``math`` is the mathematics to be enclosed. + +For example + +.. code-block:: latex + + \enclose{circle}[mathcolor="red"]{x} + \enclose{circle}[mathcolor="red"]{\color{black}{x}} + \enclose{circle,box}{x} + \enclose{circle}{\enclose{box}{x}} + +To use this extension in your own configurations, add it to the +`extensions` array in the TeX block. + +.. code-block:: javascript + + TeX: { + extensions: ["action.js"] + } + +This extension is **not** included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands. + + +Extpfeil +-------- + +The `extpfeil` extension adds more macros for producing extensible +arrows, including ``\xtwoheadrightarrow``, ``\xtwoheadleftarrow``, +``\xmapsto``, ``\xlongequal``, ``\xtofrom``, and a non-standard +``\Newextarrow`` for creating your own extensible arrows. The latter +has the form + +.. describe:: \\Newextarrow{\\cs}{lspace,rspace}{unicode-char} + + where ``\cs`` is the new control sequence name to be defined, + ``lspace`` and ``rspace`` are integers representing the amount of + space (in suitably small units) to use at the left and right of + text that is placed above or below the arrow, and ``unicode-char`` + is a number representing a unicode character position in either + decimal or hexadecimal notation. + +For example + +.. code-block:: latex + + \Newextarrow{\xrightharpoonup}{5,10}{0x21C0} + +defines an extensible right harpoon with barb up. Note that MathJax +knows how to stretch only a limited number of characters, so you may +not actually get a stretchy character this way. + +To use this extension in your own configurations, add it to the +`extensions` array in the TeX block. + +.. code-block:: javascript + + TeX: { + extensions: ["extpfeil.js"] + } + +This extension is **not** included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands. + + +HTML +---- + +The `HTML` extension gives you access to some HTML features like +styles, classes, element ID's and clickable links. It defines the +following non-standard macros: + +.. describe:: \\href{url}{math} + + Makes ``math`` be a link to the page given by ``url``. + +.. describe:: \\class{name}{math} + + Attaches the CSS class ``name`` to the output associated with + ``math`` when it is included in the HTML page. This allows your + CSS to style the element. + +.. describe:: \\cssId{id}{math} + + Attaches an id attribute with value ``id`` to the output + associated with ``math`` when it is included in the HTML page. + This allows your CSS to style the element, or your javascript to + locate it on the page. + +.. describe:: \\style{css}{math} + + Adds the give ``css`` declarations to the element associated with + ``math``. + +For example: + +.. code-block:: latex + + x \href{why-equal.html}{=} y^2 + 1 + + (x+1)^2 = \class{hidden}{(x+1)(x+1)} + + (x+1)^2 = \cssId{step1}{\style{visibility:hidden}{(x+1)(x+1)}} + +This extension is **not** included in any of the combined configurations, +but it will be loaded automatically when any of these macros is used, +so you do not need to include it explicitly in your configuration. + + +mhchem +------ + +The `mhchem` extensions implements the ``\ce``, ``\cf``, and ``\cee`` +chemical equation macros of the LaTeX `mhchem` package. See the +`mhchem CPAN page `_ for more +information and a link to the documentation for `mhchem`. + +For example + +.. code-block:: latex + + \ce{C6H5-CHO} + \ce{$A$ ->[\ce{+H2O}] $B$} + \ce{SO4^2- + Ba^2+ -> BaSO4 v} + +To use this extension in your own configurations, add it to the +`extensions` array in the TeX block. + +.. code-block:: javascript + + TeX: { + extensions: ["mhchem.js"] + } + +This extension is **not** included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands. + + noErrors -------- @@ -230,10 +710,11 @@ following to your :meth:`MathJax.Hub.Config()` call: inlineDelimiters: ["",""], // or ["$","$"] or ["\\(","\\)"] multiLine: true, // false for TeX on all one line style: { - "font-family": "serif", - "font-size": "80%", + "font-size": "90%", + "text-align": "left", "color": "black", - "border": "1px solid" + "padding": "1px 3px", + "border": "1px solid" // add any additional CSS styles that you want // (be sure there is no extra comma at the end of the last item) } @@ -358,6 +839,11 @@ macro is defined in an extension, the name of the extension follows the macro name. If the extension is in brackets, the extension will be loaded automatically when the macro or environment is first used. +More complete details about how to use these macros, with examples and +explanations, is available at Carol Fisher's `TeX Commands Available +in MathJax +`_ page. + Symbols ------- @@ -431,8 +917,11 @@ B \barwedge AMSsymbols \Bbb \Bbbk AMSsymbols + \bbox [bbox] + \bcancel cancel \because AMSsymbols \begin + \begingroup begingroup non-standard \beta \beth AMSsymbols \between AMSsymbols @@ -498,13 +987,18 @@ C .. code-block:: latex \cal + \cancel cancel + \cancelto cancel \cap \Cap AMSsymbols \cases \cdot \cdotp \cdots + \ce mhchem + \cee mhchem \centerdot AMSsymbols + \cf mhchem \cfrac AMSmath \check \checkmark AMSsymbols @@ -522,7 +1016,8 @@ C \class [HTML] non-standard \clubsuit \colon - \color + \color color + \colorbox color \complement AMSsymbols \cong \coprod @@ -603,12 +1098,15 @@ E \ell \emptyset + \enclose enclose non-standard \end + \endgroup begingroup non-standard \enspace \epsilon \eqalign \eqalignno \eqcirc AMSsymbols + \eqref [AMSmath] \eqsim AMSsymbols \eqslantgtr AMSsymbols \eqslantless AMSsymbols @@ -625,6 +1123,7 @@ F \fallingdotseq AMSsymbols \fbox + \fcolorbox color \Finv AMSsymbols \flat \forall @@ -642,6 +1141,7 @@ G \Gamma \gamma \gcd + \gdef begingroup \ge \genfrac AMSmath \geq @@ -652,6 +1152,7 @@ G \ggg AMSsymbols \gggtr AMSsymbols \gimel AMSsymbols + \global begingroup \gnapprox AMSsymbols \gneq AMSsymbols \gneqq AMSsymbols @@ -774,6 +1275,7 @@ L \lesseqqgtr AMSsymbols \lessgtr AMSsymbols \lesssim AMSsymbols + \let [newcommand] \lfloor \lg \lgroup @@ -843,6 +1345,7 @@ M \mathscr \mathsf \mathstrut + \mathtip action non-standard \mathtt \matrix \max @@ -850,9 +1353,11 @@ M \measuredangle AMSsymbols \mho AMSsymbols \mid + \middle \min \mit \mkern + \mmlToken non-standard \mod \models \moveleft @@ -880,6 +1385,7 @@ N \neq \newcommand [newcommand] \newenvironment [newcommand] + \Newextarrow extpfeil \newline \nexists AMSsymbols \ngeq AMSsymbols @@ -1007,7 +1513,9 @@ R \rbrack \rceil \Re + \ref [AMSmath] \renewcommand [newcommand] + \renewenvironment [newcommand] \require non-standard \restriction AMSsymbols \rfloor @@ -1130,6 +1638,7 @@ T \textit \textrm \textstyle + \texttip action non-standard \tfrac AMSmath \therefore AMSsymbols \Theta @@ -1142,6 +1651,7 @@ T \tiny \Tiny non-standard \to + \toggle action non-standard \top \triangle \triangledown AMSsymbols @@ -1250,8 +1760,14 @@ X \Xi \xi + \xcancel cancel \xleftarrow AMSmath + \xlongequal extpfeil + \xmapsto extpfeil \xrightarrow AMSmath + \xtofrom extpfeil + \xtwoheadleftarrow extpfeil + \xtwoheadrightarrow extpfeil Y - diff --git a/docs/html/_sources/whats-new.txt b/docs/html/_sources/whats-new.txt index 5c4b694fa..0a5419fc5 100644 --- a/docs/html/_sources/whats-new.txt +++ b/docs/html/_sources/whats-new.txt @@ -29,7 +29,7 @@ Optimization * Parallel downloading of files needed by MathJax, for faster startup times. -* Shorter timeout for web fonts, so if they can't be downlaoded, you don't +* Shorter timeout for web fonts, so if they can't be downloaded, you don't have to wait so long. * Rollover to image fonts if a web font fails to load (so you don't have diff --git a/docs/html/api/ajax.html b/docs/html/api/ajax.html index cd1624856..712dc8fb5 100644 --- a/docs/html/api/ajax.html +++ b/docs/html/api/ajax.html @@ -6,13 +6,13 @@ - The MathJax.Ajax Object — MathJax v1.1 documentation + The MathJax.Ajax Object — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • @@ -423,12 +423,12 @@ actual root URL location).

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • diff --git a/docs/html/api/callback.html b/docs/html/api/callback.html index 05de0e371..29f5017bd 100644 --- a/docs/html/api/callback.html +++ b/docs/html/api/callback.html @@ -6,13 +6,13 @@ - The MathJax.Callback Class — MathJax v1.1 documentation + The MathJax.Callback Class — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • @@ -420,12 +420,12 @@ and returns the signal object. See
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • diff --git a/docs/html/api/elementjax.html b/docs/html/api/elementjax.html index 7fa8eb433..454b0ae03 100644 --- a/docs/html/api/elementjax.html +++ b/docs/html/api/elementjax.html @@ -6,13 +6,13 @@ - The MathJax.ElementJax Class — MathJax v1.1 documentation + The MathJax.ElementJax Class — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • @@ -271,12 +271,12 @@ contextual menu.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • diff --git a/docs/html/api/html.html b/docs/html/api/html.html index 4e26eb044..06ae321ed 100644 --- a/docs/html/api/html.html +++ b/docs/html/api/html.html @@ -6,13 +6,13 @@ - The MathJax.HTML Object — MathJax v1.1 documentation + The MathJax.HTML Object — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • @@ -300,12 +300,12 @@ above,

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • diff --git a/docs/html/api/hub.html b/docs/html/api/hub.html index b33e847d3..befab3afc 100644 --- a/docs/html/api/hub.html +++ b/docs/html/api/hub.html @@ -6,13 +6,13 @@ - The MathJax.Hub Object — MathJax v1.1 documentation + The MathJax.Hub Object — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • @@ -685,12 +685,12 @@ error on the page.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • diff --git a/docs/html/api/index.html b/docs/html/api/index.html index 2c86519b3..ff28f7b7a 100644 --- a/docs/html/api/index.html +++ b/docs/html/api/index.html @@ -6,13 +6,13 @@ - The MathJax API — MathJax v1.1 documentation + The MathJax API — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -132,11 +132,11 @@ on the main MathJax documentation page.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/html/api/inputjax.html b/docs/html/api/inputjax.html index 1ca46c0fd..68b3cc299 100644 --- a/docs/html/api/inputjax.html +++ b/docs/html/api/inputjax.html @@ -6,13 +6,13 @@ - The MathJax.InputJax Class — MathJax v1.1 documentation + The MathJax.InputJax Class — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • @@ -210,12 +210,12 @@ of the various types from one another.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • diff --git a/docs/html/api/jax.html b/docs/html/api/jax.html index 1947b45ab..fa862d3f5 100644 --- a/docs/html/api/jax.html +++ b/docs/html/api/jax.html @@ -6,13 +6,13 @@ - The Base Jax Class — MathJax v1.1 documentation + The Base Jax Class — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • @@ -313,12 +313,12 @@ isn’t called until those files are completely loaded.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • diff --git a/docs/html/api/message.html b/docs/html/api/message.html index 0d216852c..a6e58b3a0 100644 --- a/docs/html/api/message.html +++ b/docs/html/api/message.html @@ -6,13 +6,13 @@ - The MathJax.Message Object — MathJax v1.1 documentation + The MathJax.Message Object — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • @@ -272,12 +272,12 @@ newlines. This is used in debugging MathJax operations.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • diff --git a/docs/html/api/object.html b/docs/html/api/object.html index ce1f81a7a..5fda49fa5 100644 --- a/docs/html/api/object.html +++ b/docs/html/api/object.html @@ -6,13 +6,13 @@ - The MathJax Object-Oriented Programming Model — MathJax v1.1 documentation + The MathJax Object-Oriented Programming Model — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • @@ -341,12 +341,12 @@ wrapping the def for the previous | -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • diff --git a/docs/html/api/outputjax.html b/docs/html/api/outputjax.html index 93329edb0..8b059973f 100644 --- a/docs/html/api/outputjax.html +++ b/docs/html/api/outputjax.html @@ -6,13 +6,13 @@ - The MathJax.OutputJax Class — MathJax v1.1 documentation + The MathJax.OutputJax Class — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • @@ -228,12 +228,12 @@ tag associated with the element jax.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • diff --git a/docs/html/api/queue.html b/docs/html/api/queue.html index e10cfa204..1fafb6e8b 100644 --- a/docs/html/api/queue.html +++ b/docs/html/api/queue.html @@ -6,13 +6,13 @@ - The MathJax.Callback.Queue Class — MathJax v1.1 documentation + The MathJax.Callback.Queue Class — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • @@ -231,12 +231,12 @@ it has been waiting for a command to complete.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • diff --git a/docs/html/api/signal.html b/docs/html/api/signal.html index 44270331e..5dfae463a 100644 --- a/docs/html/api/signal.html +++ b/docs/html/api/signal.html @@ -6,13 +6,13 @@ - The MathJax.Callback.Signal Class — MathJax v1.1 documentation + The MathJax.Callback.Signal Class — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • @@ -319,12 +319,12 @@ message is posted to the signal.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • diff --git a/docs/html/api/variable.html b/docs/html/api/variable.html index 75bbae9bb..a99c59d56 100644 --- a/docs/html/api/variable.html +++ b/docs/html/api/variable.html @@ -6,13 +6,13 @@ - The MathJax variable — MathJax v1.1 documentation + The MathJax variable — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • @@ -205,12 +205,12 @@ perform typesetting actions (and is previous | -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • The MathJax API »
  • diff --git a/docs/html/asciimath.html b/docs/html/asciimath.html new file mode 100644 index 000000000..312891995 --- /dev/null +++ b/docs/html/asciimath.html @@ -0,0 +1,213 @@ + + + + + + + + MathJax AsciiMath Support — MathJax v2.0 documentation + + + + + + + + + + + + + + + +
    +
    +
    +
    + +
    +

    MathJax AsciiMath SupportΒΆ

    +

    The support for AsciiMath in MathJax consists of two parts: +the asciimath2jax preprocessor, and the AsciiMath input processor. +The first of these looks for mathematics within your web page +(indicated by delimiters like `...`) and marks the mathematics for +later processing by MathJax. The AsciiMath input processor is what +converts the AsciiMath notation into MathJax’s internal format, where +one of MathJax’s output processors then displays it in the web page.

    +

    The AsciiMath input jax actually includes a copy of Peter Jipsen’s +ASCIIMathML.js file (see the AsciiMath home page for +details), and is included by permission of the author. This means +that the results of MathJax’s AsciiMath processing should be the same +as using the actual ASCIIMathML.js package (at least as far as the +MathML that it generates is concerned). Thanks go to David Lippman +for writing the initial version of the AsciiMath preprocessor and +input jax.

    +

    The asciimath2jax preprocessor can be configured to look for whatever +markers you want to use for your math delimiters. See the +asciimath2jax configuration options section for +details on how to customize the action of asciimath2jax.

    +

    The AsciiMath input processor handles conversion of your mathematical +notation into MathJax’s internal format (which is essentially MathML). +The AsciiMath input processor has few configuration options (see the +AsciiMath options section for details).

    +

    The AsciiMath input jax handles only the original ASCIIMathML notation +(from ASCIIMathML v1.4.7), not the extened LaTeXMathML notation added +in version 2.0 of ASCIIMathML, though the AsciiMath input jax does +expose the tables that define the symbols that AsciiMath processes, +and so it would be possible to extend them to include additional +symbols. In general, it is probably better to use MathJax’s TeX +input jax to handle LaTeX notation instead.

    +
    +

    AsciiMath delimitersΒΆ

    +

    By default, the asciimath2jax preprocessor defines the back-tick +(`) as the delimiters for mathematics in AsciiMath format. It +does not define $...$ as math delimiters. That is because +dollar signs appear too often in non-mathematical settings, which +could cause some text to be treated as mathematics unexpectedly. For +example, with single-dollar delimiters, ”... the cost is $2.50 for the +first one, and $2.00 for each additional one ...” would cause the +phrase “2.50 for the first one, and” to be treated as mathematics +since it falls between dollar signs. For this reason, if you want to +use single-dollars for AsciiMath notation, you must enable that +explicitly in your configuration:

    +
    MathJax.Hub.Config({
    +  asciimath2jax: {
    +    delimiters: [['$','$'], ['`','`']]
    +  }
    +});
    +
    +
    +

    Note that the dollar signs are frequently used as a delimiter for +mathematics in the TeX format, and you can not enable the +dollar-sign delimiter for both. It is probably best to leave dollar +signs for TeX notation.

    +

    See the config/default.js file, or the asiimath2jax +configuration options page, for additional +configuration parameters that you can specify for the asciimath2jax +preprocessor, which is the component of MathJax that identifies +AsciiMath notation within the page.

    +
    +
    +

    AsciiMath in HTML documentsΒΆ

    +

    The AsciiMath syntax is descibed in the ASCIIMathML syntax page.

    +

    Keep in mind that your mathematics is part of an HTML document, so you +need to be aware of the special characters used by HTML as part of its +markup. There cannot be HTML tags within the math delimiters (other +than <BR>) as AsciiMath-formatted math does not include HTML tags. +Also, since the mathematics is initially given as text on the page, +you need to be careful that your mathematics doesn’t look like HTML +tags to the browser (which parses the page before MathJax gets to see +it). In particular, that means that you have to be careful about +things like less-than and greater-than signs (< and >), and +ampersands (&), which have special meaning to the browsers. For +example,

    +
    ... when `x<y` we have ...
    +
    +

    will cause a problem, because the brower will think <y is the +beginning of a tag named y (even though there is no such tag in +HTML). When this happens, the browser will think the tag continues up +to the next > in the document (typically the end of the next +actual tag in the HTML file), and you may notice that you are missing +part of the text of the document. In the example above, the “we +have ...” will not be displayed because the browser thinks it is +part of the tag starting at <y. This is one indication you can +use to spot this problem; it is a common error and should be avoided.

    +

    Usually, it is sufficient to simply put spaces around these symbols to +cause the browser to avoid them, so

    +
    ... when `x < y` we have ...
    +
    +

    should work. Alternatively, you can use the HTML entities &lt;, +&gt; and &amp; to encode these characters so that the browser +will not interpret them, but MathJax will. E.g.,

    +
    ... when `x &lt; y` we have ...
    +
    +
    +

    Keep in mind that the browser interprets your text before MathJax +does.

    +
    +
    + + +
    +
    +
    +
    +
    +

    Table Of Contents

    + + +

    Previous topic

    +

    MathJax MathML Support

    +

    Next topic

    +

    MathJax Output Formats

    + + +
    +
    +
    +
    + + + + + \ No newline at end of file diff --git a/docs/html/callbacks.html b/docs/html/callbacks.html index beda23173..4a32ce5d9 100644 --- a/docs/html/callbacks.html +++ b/docs/html/callbacks.html @@ -6,13 +6,13 @@ - Using Callbacks — MathJax v1.1 documentation + Using Callbacks — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Synchronizing your code with MathJax »
  • @@ -290,12 +290,12 @@ schedules it to be called in half a second.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Synchronizing your code with MathJax »
  • diff --git a/docs/html/community.html b/docs/html/community.html index 15e6a58cb..c3847dcac 100644 --- a/docs/html/community.html +++ b/docs/html/community.html @@ -6,13 +6,13 @@ - The MathJax Community — MathJax v1.1 documentation + The MathJax Community — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -141,11 +141,11 @@ our previous | -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/html/config-files.html b/docs/html/config-files.html index 6704108ae..4a3d2c1f2 100644 --- a/docs/html/config-files.html +++ b/docs/html/config-files.html @@ -6,13 +6,13 @@ - Common Configurations — MathJax v1.1 documentation + Common Configurations — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -60,32 +60,79 @@ it via

    where path-to-MathJax is the URL to the MathJax directory on your -server or hard disk.

    -

    The remaining files are combined configuration files that include not just -configuration parameters but also the files that MathJax would need to -load for those configurations. This means MathJax will have to load fewer -files, and since each file access requires establishing connections over -the network, it can be better to load one larger file than several smaller -ones. See Loading and Configuring MathJax for more -details about how to load configurations, and how to modify the parameters -for a configuration file.

    +server or hard disk. If you are using MathJax from the CDN, you can +view the contents of default.js as a +reference, but you will not be able to edit the CDN copy. It is +possible to use the CDN copy of MathJax with your own configuration +file, however; see Using a Local Configuration File with the CDN for details.

    +

    The remaining files in the MathJax/config directory are +combined configuration files that include not just configuration +parameters but also the files that MathJax would need to load for +those configurations. This means MathJax will have to load fewer +files, and since each file access requires establishing connections +over the network, it can be faster to load one larger file than +several smaller ones. See Loading and Configuring MathJax for more details about how to load configurations, and how +to modify the parameters for a configuration file.

    The following sections describe the contents of the combined configuration files. Each comes in two flavors: a standard version and a “full” version. The standard version simply defines the output processor(s) that are part of the configuration, but doesn’t load the code that implements the output -processor; the full version loads the complete output processors, so +processor. The full version loads the complete output processors, so everything that MathJax needs for the page should be loaded up front, and there will be no delay once the page is ready to be processed. To obtain the “full” version, add -full to the end of the configuration file name.

    +
    +

    The TeX-MML-AM_HTMLorMML configuration fileΒΆ

    +

    This configuration file is the most general of the pre-defined +configurations. It loads all the main MathJax components, including +the TeX, MathML, and AsciiMath preprocessors and input processors, the +AMSmath, AMSsymbols, noErrors, and noUndefined TeX extensions, both +the native MathML and HTML-with-CSS output processor definitions, and +the MathMenu and MathZoom extensions. It is equivalent to the +following configuration:

    +
    MathJax.Hub.Config({
    +  config: ["MMLorHTML.js"],
    +  jax: ["input/TeX","input/MathML","input/AsciiMath","output/HTML-CSS","output/NativeMML"],
    +  extensions: ["tex2jax.js","mml2jax.js","asciimath2jax.js","MathMenu.js","MathZoom.js"],
    +  TeX: {
    +    extensions: ["AMSmath.js","AMSsymbols.js","noErrors.js","noUndefined.js"]
    +  }
    +});
    +
    +
    +

    In addition, it loads the mml Element Jax, the TeX, MathML, and +AsciiMath input jax main code (not just the definition files), as well +as the toMathML extension, which is used by the Show Source option +in the MathJax contextual menu. The -full version also loads both the +HTML-CSS and NativeMML output jax main code, plus the HTML-CSS +mtable extension, which is normally loaded on demand.

    +

    See the tex2jax configuration section for +other configuration options for the tex2jax preprocessor, and the +TeX input jax configuration section for options +that control the TeX input processor. +See the mml2jax configuration section for +other configuration options for the mml2jax preprocessor, and the +MathML input jax configuration section for +options that control the MathML input processor. +See the asciimath2jax configuration section for +other configuration options for the asciimath2jax preprocessor, and the +AsciiMath input jax configuration section for +options that control the AsciiMath input processor. +See MathJax Output Formats for more +information on the NativeMML and HTML-CSS output processors. See the +MMLorHTML configuration section for +details on the options that control the MMLorHTML configuration.

    +

    The TeX-AMS-MML_HTMLorMML configuration fileΒΆ

    -

    This configuration file is the most general of the pre-defined -configurations. It loads all the important MathJax components, including +

    This configuration file is the most commonly used of the pre-defined +configurations. It loads all the main MathJax components, including the TeX and MathML preprocessors and input processors, the AMSmath, AMSsymbols, noErrors, and noUndefined TeX extensions, both the native -MathML and HTML-with-CSS output processor definitions, and the MathMenu and -MathZoom extensions. It is equivalent to the following configuration:

    +MathML and HTML-with-CSS output processor definitions, and the +MathMenu and MathZoom extensions. It is equivalent to the following +configuration:

    MathJax.Hub.Config({
       config: ["MMLorHTML.js"],
       jax: ["input/TeX","input/MathML","output/HTML-CSS","output/NativeMML"],
    @@ -96,12 +143,12 @@ MathZoom extensions.  It is equivalent to the following configuration:

    });
    -

    In addition, it loads the mml Element Jax, the TeX and MathML input jax -main code (not just the definition files), as well as the toMathML -extension, which is used by the Show Source option in the MathJax -contextual menu. The full version also loads both the HTML-CSS and -NativeMML output jax main code, plus the HTML-CSS mtable extension, which -is normally loaded on demand.

    +

    In addition, it loads the mml Element Jax, the TeX and MathML input +jax main code (not just the definition files), as well as the +toMathML extension, which is used by the Show Source option in the +MathJax contextual menu. The -full version also loads both the +HTML-CSS and NativeMML output jax main code, plus the HTML-CSS +mtable extension, which is normally loaded on demand.

    See the tex2jax configuration section for other configuration options for the tex2jax preprocessor, and the TeX input jax configuration section for options @@ -138,7 +185,7 @@ extensions. It is equivalent to the following configuration:

    In addition, it loads the mml Element Jax and the TeX input jax main code (not just the definition file), as well as the toMathML extension, which -is used by the Show Source option in the MathJax contextual menu. The full +is used by the Show Source option in the MathJax contextual menu. The -full version also loads the HTML-CSS output jax main code, plus the HTML-CSS mtable extension, which is normally loaded on demand.

    See the tex2jax configuration section for @@ -152,7 +199,7 @@ information on the HTML-CSS output processor.

    The MML_HTMLorMML configuration fileΒΆ

    This configuration file is for sites that only use MathML format for their mathematics. It will use MathML output in browsers where that is -supported, and HTML-CSS output otherwise. The user can still use the +supported well, and HTML-CSS output otherwise. The user can still use the MathJax contextual menu to select the other output format if they desire.

    This file includes all the important MathJax components for MathML input and output, including the mml2jax preprocessor and MathML input jax, the @@ -168,7 +215,7 @@ and MathZoom extensions. It is equivalent to the following configuration:

    In addition, it loads the mml Element Jax and the MathML input jax main code (not just the definition file), as well as the toMathML extension, which is used by the Show Source option in the MathJax contextual menu. -The full version also loads both the HTML-CSS and NativeMML output jax main +The -full version also loads both the HTML-CSS and NativeMML output jax main code files, plus the HTML-CSS mtable extension, which is normally loaded on demand.

    See the mml2jax configuration section for @@ -180,12 +227,86 @@ information on the NativeMML and HTML-CSS output processors. See the MMLorHTML configuration section for details on the options that control the MMLorHTML configuration.

    +
    +

    The AM_HTMLorMML configuration fileΒΆ

    +

    This configuration file is for sites that only use AsciiMath format for their +mathematics. It will use MathML output in browsers where that is +supported well, and HTML-CSS output otherwise. The user can still use the +MathJax contextual menu to select the other output format if they desire.

    +

    This file includes all the important MathJax components for AsciiMath +input and output, including the asciimath2jax preprocessor and +AsciiMath input jax, the NativeMML and HTML-CSS output processor +definition files, and the MathMenu and MathZoom extensions. It is +equivalent to the following configuration:

    +
    MathJax.Hub.Config({
    +  config: ["MMLorHTML.js"],
    +  jax: ["input/AsciiMath","output/HTML-CSS","output/NativeMML"],
    +  extensions: ["asciimath2jax.js","MathMenu.js","MathZoom.js"]
    +});
    +
    +
    +

    In addition, it loads the mml Element Jax and the TeX input jax main code +(not just the definition file), as well as the toMathML extension, which +is used by the Show Source option in the MathJax contextual menu. The -full +version also loads the HTML-CSS output jax main code, plus the HTML-CSS +mtable extension, which is normally loaded on demand.

    +

    See the asciimath2jax configuration +section for other configuration options for the asciimath2jax +preprocessor, and the AsciiMath input jax configuration section for options that control the AsciiMath +input processor. See MathJax Output Formats +for more information on the HTML-CSS and NativeMML output processors. +See the MMLorHTML configuration section +for details on the options that control the MMLorHTML +configuration.

    +
    +
    +

    The TeX-AMS-MML_SVG configuration fileΒΆ

    +

    This configuration file is the same as TeX-AMS-MML_HTMLorMML except +that it uses the SVG output renderer rather than the NativeMML or +HTML-CSS ones. It loads all the main MathJax components, including +the TeX and MathML preprocessors and input processors, the AMSmath, +AMSsymbols, noErrors, and noUndefined TeX extensions, the SVG output +processor definitions, and the MathMenu and MathZoom extensions. It +is equivalent to the following configuration:

    +
    MathJax.Hub.Config({
    +  jax: ["input/TeX","input/MathML","output/SVG"],
    +  extensions: ["tex2jax.js","mml2jax.js","MathMenu.js","MathZoom.js"],
    +  TeX: {
    +    extensions: ["AMSmath.js","AMSsymbols.js","noErrors.js","noUndefined.js"]
    +  }
    +});
    +
    +
    +

    In addition, it loads the mml Element Jax, the TeX and MathML input +jax main code (not just the definition files), as well as the +toMathML extension, which is used by the Show Source option in the +MathJax contextual menu. The -full version also loads both the +SVG output jax main code, plus the SVG mtable extension, which +is normally loaded on demand.

    +

    See the tex2jax configuration section for +other configuration options for the tex2jax preprocessor, and the +TeX input jax configuration section for options +that control the TeX input processor. +See the mml2jax configuration section for +other configuration options for the mml2jax preprocessor, and the +MathML input jax configuration section for +options that control the MathML input processor. +See MathJax Output Formats for more +information on the SVG output processor.

    +

    The Accessible configuration fileΒΆ

    This configuration file is essentially the same as TeX-AMS-MML_HTMLorMML except that it includes options that are designed for assistive technology, particularly for those with visual -challenges. It is equivalent to the following configuration:

    +challenged. This file is deprecated since the controls that make +MathJax work with screen readers are now available in the MathJax +contextual menu, and so there is no need to set them in the +configuration file any longer. So you can use any of the other +pre-defined configurations and readers with special needs should be +able to change the MathJax settings themselves to be appropriate for +their software.

    +

    The Accessible configuration is equivalent to the following:

    MathJax.Hub.Config({
       config: ["MMLorHTML.js"],
       jax: ["input/TeX","input/MathML","output/HTML-CSS","output/NativeMML"],
    @@ -193,20 +314,24 @@ challenges.  It is equivalent to the following configuration:

    TeX: { extensions: ["AMSmath.js","AMSsymbols.js","noErrors.js","noUndefined.js"] }, - NativeMML: { showMathMenuMSIE: false }, - menuSettings: { zoom: "Double-Click" }, + menuSettings: { + zoom: "Double-Click", + mpContext: true, + mpMouse: true + }, errorSettings: { message: ["[Math Error]"] } });
    -

    This turns off the MathJax contextual menu for Internet Explorer, since -it can interfere with some screen readers. It also sets the zoom trigger +

    This turns off the MathJax contextual menu for IE when MathPlayer is +active, and passes mouse events on to MathPlayer to allow screen +readers full access to MathPlayer. It also sets the zoom trigger to double-click, so that readers can see a larger version of the mathematics but double-clicking on any equation.

    In addition, it loads the mml Element Jax, the TeX and MathML input jax main code (not just the definition files), as well as the toMathML extension, which is used by the Show Source option in the MathJax -contextual menu. The full version also loads both the HTML-CSS and +contextual menu. The -full version also loads both the HTML-CSS and NativeMML output jax main code, plus the HTML-CSS mtable extension, which is normally loaded on demand.

    @@ -221,9 +346,12 @@ is normally loaded on demand.

    Table Of Contents

    diff --git a/docs/html/configuration.html b/docs/html/configuration.html index 6379bad1b..86b5d89a7 100644 --- a/docs/html/configuration.html +++ b/docs/html/configuration.html @@ -6,13 +6,13 @@ - Loading and Configuring MathJax — MathJax v1.1 documentation + Loading and Configuring MathJax — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -89,14 +89,14 @@ typical invocation of MathJax would be

    </script> -

    which loads MathJax with a configuration file that includes everything you -need in order to enter mathematics in either TeX, LaTeX, or MathML -notation, and produces output using MathML if the browser supports that, -or HTML-with-CSS otherwise. If you don’t load an explicit -configuration file, you will need to include an in-line configuration -block in order to tell MathJax how to read and display the mathematics on -your pages. See the section below on Using In-line Configuration -Options for details.

    +

    which loads MathJax with a configuration file that includes everything +you need in order to enter mathematics in either TeX, LaTeX, or MathML +notation, and produces output using MathML if the browser supports +that well enough, or HTML-with-CSS otherwise. If you don’t load +an explicit configuration file, you will need to include an in-line +configuration block in order to tell MathJax how to read and display +the mathematics on your pages. See the section below on Using +In-line Configuration Options for details.

    It is best to load MathJax in the document’s <head> block, but it is also possible to load MathJax into the <body> section, if needed. If you do this, load it as early as possible, as @@ -111,7 +111,7 @@ been prepared, for example, via a Loading MathJax Dynamically for more details.

    Loading MathJax from the CDNΒΆ

    -

    MathJax is now available as a web service from cdn.mathjax.org, so you +

    MathJax is available as a web service from cdn.mathjax.org, so you can obtain MathJax from there without needing to install it on your own server. The CDN is part of a distributed “cloud” network, so it is handled by servers around the world. That means that you should get access @@ -124,10 +124,11 @@ that your pages always use the same version of MathJax.

    get. The CDN has the following directory structure:

    mathjax/         # project-name
        1.0-latest/
    -   1.1-beta/     # temporary
        1.1-latest/   # the 1.1 release with any ciritical patches
    +   2.0-beta/     # temporary
    +   2.0-latest/   # the 2.0 release with any ciritical patches
        ...
    -   latest/       # the most current version (1.1-latest in this case)
    +   latest/       # the most current version (2.0-latest in this case)
     

    Each directory corresponds to an official MathJax release; however, @@ -135,9 +136,9 @@ hotfixes (urgent bug fixes) will be applied in each release branch as necessary, even if new releases are not prepared. In other words, 1.1-latest will initially point to v1.1, but over time may be updated with patches that would correspond to releases that might be numbers 1.1a, -1.1b, etc., even if such releases are not actually prepared for -distribution (they likely won’t be).

    -

    We may occasionally introduce directories for betas, as indicated above, +1.1b, etc., even if such releases are not actually packaged for +separate distribution (they likely won’t be). +We may occasionally introduce directories for betas, as indicated above, but they will be temporary, and will be removed after the official release.

    To load from a particular release, use the directory for that release. @@ -145,13 +146,13 @@ For example,

    <script type="text/javascript" src="http://cdn.mathjax.org/mathjax/1.1-latest/MathJax.js"></script>
     
    -

    will load the stable v1.1 version, even if we release v1.2 or other later +

    will load the stable v1.1 version, even after we release v2.0 or other later versions, while

    <script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
     

    will always be the most current stable release, so it will go from v1.1 to -v1.2 automatically when that is released. Note that all the versions +v2.0 automatically when that is released. Note that all the versions available on the CDN are stable versions; the development version is not hosted on the CDN. (If you wish to use the development version of MathJax, you will need to install your own copy; see Installing @@ -159,8 +160,8 @@ and Testing MathJax for information on how to do that.)

    The use of cdn.mathjax.org is governed by its terms of service, so be sure to read that before linking to the MathJax CDN server.

    If you wish to use the MathJax CDN but use your own configuration file -rather than one of the pre-defined ones, see the information at the end -of the Using a configuration file section below.

    +rather than one of the pre-defined ones, see the information at the +end of the Using a Local Configuration File section below.

    Configuring MathJaxΒΆ

    @@ -170,7 +171,7 @@ used independently, or in combination. For example, you can load a main pre-defined configuration file, but include in-line commands to adjust the configuration to your needs.

    Note that you must use at least one of these two forms of configuration. -Unlike earlier versions of MathJax, version 1.1 does not load a default +Unlike MathJax v1.0, version 1.1 and higher does not load a default configuration file. If you have been using version 1.0’s config/MathJax.js for your configuration, you will need to load that configuration file explicitly via a config parameter, as described @@ -191,15 +192,16 @@ describing them, which you can edit to suit your needs.

    TeX-AMS-MML_HTMLorMML.js
    -

    Allows math to be specified in TeX, LaTeX, or MathML notation, with the -AMSmath and AMSsymbols packages included, producing output using -MathML if the browser supports it, and HTML-with-CSS otherwise.

    +

    Allows math to be specified in TeX, LaTeX, or +MathML notation, with the AMSmath and AMSsymbols +packages included, producing output using MathML if the browser +supports it sufficiently, and HTML-with-CSS otherwise.

    TeX-AMS_HTML.js
    -

    Allows math to be specified in TeX or LaTeX notation, with the +

    Allows math to be specified in TeX or LaTeX notation, with the AMSmath and AMSsymbols packages included, and produces output using the HTML-CSS output processor.

    @@ -207,18 +209,34 @@ using the HTML-CSS output processor.

    MML_HTMLorMML.js
    -

    Allows math to be specified using MathML notation, and produces MathML -output if the browser supports it, or HTML-CSS output otherwise.

    +

    Allows math to be specified using MathML notation, and produces MathML +output if the browser supports it sufficiently, or HTML-CSS output otherwise.

    -Accessible.js
    -

    Essentially the same as TeX-AMS-MML_HTMLorMML, but with some -settings specified to make MathJax work better with assistive -technology (for the visually impaired). This includes setting the -zoom trigger to be a double-click, and removing the MathMenu in -Internet Explorer (which can interfere with some screen readers).

    +AM_HTMLorMML.js +

    Allows math to be specified using AsciiMath notation, +producing output in MathML if the browser supports it +sufficiently, or as HTML-with-CSS otherwise.

    +
    + +
    +
    +TeX-AMS-MML_SVG.js
    +

    Allows math to be specified in TeX, LaTeX, or +MathML notation, with the AMSmath and AMSsymbols +packages included, producing output using SVG.

    +
    + +
    +
    +TeX-MML-AM_HTMLorMML.js
    +

    Allows math to be specified in TeX, LaTeX, +MathML, or AsciiMath notation, with the AMSmath +and AMSsymbols packages included, producing output using MathML +if the browser supports it sufficiently, and HTML-with-CSS +otherwise.

    The first of these is a file that you can edit to suit your needs. It @@ -241,7 +259,7 @@ the main code, and a “full” version, that also includes the complete output processors. For example, with TeX-AMS_HTML.js and TeX-AMS_HTML-full.js, the latter includes the complete HTML-CSS output processor. The “full” configuration files are substantially larger (on -the order of 70KB), so you need to decide whether it is worth loading the +the order of 70KB more), so you need to decide whether it is worth loading the full configuration for your pages.

    If most of your pages include mathematics, then it is to your advantage to load the full version, but if you are including MathJax in a theme file for @@ -278,8 +296,14 @@ can use

    to first load the main configuration, then the local modifications.

    -

    You can also load MathJax from the MathJax CDN server but use a configuration from -your own local server:

    + +
    +

    Using a local configuration file with the CDNΒΆ

    +

    You can load MathJax from the MathJax CDN server but still use a +configuration from your own local server. For example, suppose you +have a configuration file called local.js on your own server, in a +directory called MathJax/config/local. Then you can load MathJax +from the CDN and still use your configuration file as follows:

    <script type="text/javascript"
        src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML,http://myserver.com/MathJax/config/local/local.js">
     </script>
    @@ -290,7 +314,7 @@ the complete URL to the local configuration file.  Note that you also
     have to edit the loadComplete() call that is at the bottom of
     the configuration file to change it from
     [MathJax]/config/local/local.js to the complete URL as you give it
    -in the config parameter:

    +in the config parameter. In the example above, it would be

    MathJax.Ajax.loadComplete("http://myserver.com/MathJax/config/local/local.js");
     
    @@ -302,22 +326,23 @@ location of your configuration file.

    Using in-line configuration optionsΒΆ

    The second way to configure MathJax is through in-line configuration, -that puts the configuration options within the web page itself. This -process has changed in version 1.1 to make it compatible with HTML5. +which puts the configuration options within the web page itself. This +process was changed in version 1.1 to make it compatible with HTML5. Earlier versions of MathJax had in-line configuration included within the content of the <script> tag that loads MathJax.js, but HTML5 makes it illegal to have content for a script with a src attribute.

    -

    MathJax solves this problem by using separate <script> tags to perform -configuration for MathJax. Because MathJax starts its configuration -process as soon as it is loaded, the configuration script must come -before the script tag that loads MathJax.js itself. You do this -by including a <script> with type="text/x-mathjax-config", whose -content will be run when MathJax performs its configuration. Generally, -this script will include a MathJax.Hub.Config() call to perform -MathJax configuration, but it can also include other MathJax commands, -such as registering signal actions, or any JavaScript commands that you -want. You can have as many such script tags as you want, and MathJax will -process them in order as they appear in the document.

    +

    MathJax solves this problem by using separate <script> tags to +perform the configuration for and loading of MathJax. Because MathJax +starts its configuration process as soon as it is loaded, the +configuration script must come before the script tag that loads +MathJax.js itself. You do this by including a <script> with +type="text/x-mathjax-config" whose content will be run when +MathJax performs its configuration. Generally, this script will +include a MathJax.Hub.Config() call to perform MathJax +configuration, but it can also include other MathJax commands, such as +registering signal actions, or any JavaScript commands that you want. +You can have as many such script tags as you need, and MathJax will +process them in the order in which they appear in the document.

    For instance,

    <script type="text/x-mathjax-config">
       MathJax.Hub.Config({
    @@ -340,15 +365,16 @@ the TeX input processor and the HTML-CSS output proces
     HTML-CSS processor to use the TeX fonts rather than other locally installed
     fonts (e.g., STIX fonts).  See the configuration options section (or the comments in the config/default.js
     file) for more information about the configuration options that you can
    -include in the MathJax.Hub.Config() call.  Note that this
    +include in the MathJax.Hub.Config() call.  This
     configuration does not load any pre-defined configuration file.

    Note that you can combine in-line configuration with file-based configuration; simply include text/x-mathjax-config scripts as above, but also include config=filename when you load the MathJax.js file. For example, the tex2jax preprocessor does not enable the TeX single-dollar in-line math delimiters by default. You can load one of the -pre-defined configuration files that include the TeX preprocessor, and use -an in-line configuration block to enable the single-dollar signs:

    +pre-defined configuration files that includes the TeX preprocessor, and use +an in-line configuration block to enable the single-dollar signs, as +in this example:

    <script type="text/x-mathjax-config">
       MathJax.Hub.Config({
         tex2jax: {
    @@ -405,17 +431,21 @@ example, you could use

    </script>
    -

    in its footer, so that MathJax will delay setting up until the footer is -reached, but will not have to wait until images and other files are -loaded. If you have text/x-mathjax-config script tags within the main -body of the document, MathJax will read and process those before -continuing its startup. In this way you can use a default configuration -that can be modified on a page-by-page basis.

    +

    in its footer, so that MathJax will delay setting up until the footer +is reached, but will not have to wait until images and other files are +loaded. In this way, if you have text/x-mathjax-config script +tags within the main body of the document, MathJax will read and +process those before continuing its startup. In this way you can use +a default configuration that can be modified on a page-by-page basis.

    +

    Note that MathJax.Hub.Configured() is not called by MathJax; +you must make that call somewhere within the page yourself after the +configuration blocks are set up. If you do not execute this function, +MathJax will not process any of the math on the page.

    Details of the MathJax configuration processΒΆ

    Since there are a number of different ways to configure MathJax, it is -important to know how they interact. The configuration process is the +important to know how they interact. The configuration actions are the following:

    1. Process any configuration file explicitly specified as a script parameter.
    2. @@ -444,6 +474,7 @@ when MathJax runs, and browser-dependent erratic behavior will result.

    3. Loading MathJax from the CDN
    4. Configuring MathJax
    5. Using a configuration file
    6. +
    7. Using a local configuration file with the CDN
    8. Using in-line configuration options
    9. Configuring MathJax after it is loaded
    10. Details of the MathJax configuration process
    11. @@ -486,11 +517,11 @@ when MathJax runs, and browser-dependent erratic behavior will result.

    12. previous |
    13. -
    14. MathJax v1.1 documentation »
    15. +
    16. MathJax v2.0 documentation »
    diff --git a/docs/html/dynamic.html b/docs/html/dynamic.html index 6e1fe82f3..9551c6777 100644 --- a/docs/html/dynamic.html +++ b/docs/html/dynamic.html @@ -6,13 +6,13 @@ - Loading MathJax Dynamically — MathJax v1.1 documentation + Loading MathJax Dynamically — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -246,11 +246,11 @@ converting the math images to their original TeX code.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/html/genindex.html b/docs/html/genindex.html index 7f0c3ab5b..512a33000 100644 --- a/docs/html/genindex.html +++ b/docs/html/genindex.html @@ -6,13 +6,13 @@ - Index — MathJax v1.1 documentation + Index — MathJax v2.0 documentation - + @@ -32,7 +32,7 @@
  • index
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -54,6 +54,7 @@
    addText()
    +
    AsciiMath
    Augment()
    @@ -163,6 +164,7 @@

    M

    +
    Markdown
    MathML
    @@ -225,6 +227,7 @@
    Styles()
    Subclass()
    Suspend()
    +
    SVG
    @@ -288,11 +291,11 @@
  • index
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/html/glossary.html b/docs/html/glossary.html index 6dc84b013..167b367c2 100644 --- a/docs/html/glossary.html +++ b/docs/html/glossary.html @@ -6,13 +6,13 @@ - Glossary — MathJax v1.1 documentation + Glossary — MathJax v2.0 documentation - + @@ -36,7 +36,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -48,6 +48,16 @@

    GlossaryΒΆ

    +
    AsciiMath
    +

    A notation for mathematics that uses characters commonly +available on all computer keyboards to represent the math in +an algebra-like syntax that should be intuitive and easily +read.

    +
    +

    See also

    +

    AsciiMath home page

    +
    +
    Callback
    A JavaScript function that is used to perform actions that must wait for other actions to complete before they are @@ -79,6 +89,18 @@ its internal format manager. The code for the jax are in the

    LaTeX Wikipedia entry

    +
    Markdown
    +

    A text format commonly used in blogs and wikis for creating +web pages without the need for complicated markup notation. +It is intended to be an easy-to-read and easy-to-write format +that still gives you the ability to specify a rich text result +(including things like bold, italics, bullet lists, and so +on).

    +
    +

    See also

    +

    Markdown home page

    +
    +
    MathML

    An XML specification created to describe mathematical notations and capture both its structure and content. MathML @@ -97,6 +119,18 @@ package. A comprehensive set of scientific glyphs.

    STIX project

    +
    SVG
    +

    Acronym for Scalable Vector Graphics. SVG is a graphics +format that allows images to be described as a collection of +graphics objects (like lines, rectangles, etc) rather than as +a bitmap of colored pixels. MathJax can use this format to +display mathematics as an alterantive to its HTML-CSS or +NativeMML output.

    +
    +

    See also

    +

    SVG Wilipedia entry

    +
    +
    TeX

    A document markup language with robust math markup commands developed by Donald Knuth in the late 1970’s, but still in @@ -146,11 +180,11 @@ formats for mathematical journals, articles, and books.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/html/index.html b/docs/html/index.html index 3c7762f24..5a02c2be1 100644 --- a/docs/html/index.html +++ b/docs/html/index.html @@ -6,13 +6,13 @@ - MathJax Documentation — MathJax v1.1 documentation + MathJax Documentation — MathJax v2.0 documentation - + @@ -36,7 +36,7 @@
  • next |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -47,8 +47,8 @@

    MathJax DocumentationΒΆ

    -

    MathJax is an open-source JavaScript display engine for LaTeX and -MathML that works in all modern browsers.

    +

    MathJax is an open-source JavaScript display engine for LaTeX, +MathML, and AsciiMath notaion that works in all modern browsers.

    Basic UsageΒΆ

    @@ -66,6 +66,7 @@ MathML that works in all modern browsers.

    @@ -121,7 +122,7 @@ MathML that works in all modern browsers.


    -

    This version of the documentation was built July 27, 2011.

    +

    This version of the documentation was built February 15, 2012.

    @@ -179,11 +180,11 @@ MathML that works in all modern browsers.

  • next |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/html/installation.html b/docs/html/installation.html index cdb6ce176..f13c3c6c1 100644 --- a/docs/html/installation.html +++ b/docs/html/installation.html @@ -6,13 +6,13 @@ - Installing and Testing MathJax — MathJax v1.1 documentation + Installing and Testing MathJax — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -55,20 +55,21 @@ distributed network service (see Using the MathJax CDN). In that case, there is no need to install MathJax yourself, and you can begin using MathJax right away; skip this document on installation and go directly to Configuring MathJax.

    -

    MathJax can be loaded from a public web server or privately from your hard drive -or other local media. To use MathJax in either way, you will need to obtain a -copy of MathJax and its font package. There are three ways to do this: via -git, svn, or via a pre-packaged archive. We recommend git or svn, as it -is easier to keep your installation up to date with these tools.

    +

    MathJax can be loaded from a public web server or privately from your +hard drive or other local media. To use MathJax in either way, you +will need to obtain a copy of MathJax. There are three ways to do +this: via git, svn, or via a pre-packaged archive. We +recommend git or svn, as it is easier to keep your +installation up to date with these tools.

    Obtaining MathJax via GitΒΆ

    The easiest way to get MathJax and keep it up to date is to use the Git version control system to access our GitHub repository. Use the command

    git clone git://github.com/mathjax/MathJax.git MathJax
     
    -

    to obtain and set up a copy of MathJax. Note that there is no longer -a fonts.zip file, and that the fonts directory is now part of -the repository itself.

    +

    to obtain and set up a copy of MathJax. (Note that there is no longer +a fonts.zip file, as there was in v1.0, and that the fonts +directory is now part of the repository itself.)

    Whenever you want to update MathJax, you can now use

    cd MathJax
     git remote show origin
    @@ -134,12 +135,12 @@ git pull origin v1.1-latest
     

    If you are more comfortable with the subversion source control system, you may want to use GitHub’s svn service to obtain MathJax. If you want to get the latest revision using svn, use the command

    -
    svn checkout http://svn.github.com/mathjax/MathJax.git MathJax
    +
    svn checkout http://github.com/mathjax/MathJax/trunk MathJax
     
    -

    to obtain and set up a copy of MathJax. Note that there is no longer -a fonts.zip file, and that the fonts directory is now part of -the repository itself.

    +

    to obtain and set up a copy of MathJax. (Note that there is no longer +a fonts.zip file as of v1.1, and that the fonts directory is +now part of the repository itself.)

    Whenever you want to update MathJax, you can now use

    cd MathJax
     svn status -u
    @@ -158,26 +159,25 @@ latest bug fixes and new features as they become available.

    that contains all the latest changes to MathJax. Although we try to make sure this version is a stable and usable version of MathJax, it is under active development, and at times it may be less stable than the “release” -version. If you prefer to use one of the tagged releases instead, then -either use git as described above, or one of the archive files as -described below. You can use

    -
    svn checkout http://svn.github.com/mathjax/MathJax.git@nnn mathjax
    +version.  If you prefer to use one of the tagged releases instead,
    +then use

    +
    svn checkout http://github.com/mathjax/MathJax/branch/[name] MathJax
     
    -

    to check out revision number nnn, but it is not easy to tell what -svn revision number is associated with a particular release. GitHub’s -svn service doesn’t appear to allow you to specify a particular -tagged version.

    +

    where [name] is replaced by the name of the branch you want to +check out; e.g., 2.0-latest. The branch names can be found on the +GitHub MathJax page under the +branches tab.

    Obtaining MathJax via an archiveΒΆ

    Release versions of MathJax are available in archive files from the MathJax download page or the -GitHub downloads (click the -big download button on the right), where you can download the archive +MathJax GitHub page (via the +“zip” button, or the “downloads” tab), where you can download the archive that you need.

    -

    You should download the v1.1 archive (which will get you a file with a -name like mathjax-MathJax-v1.1-X-XXXXXXXX.zip, where the X’s are +

    You should download the v2.0 archive (which will get you a file with a +name like mathjax-MathJax-v2.0-X-XXXXXXXX.zip, where the X’s are some sequence of random-looking letters and numbers), then simply unzip it. Once the MathJax directory is unpacked, you should move it to the desired location on your server (or your hard disk, if you are using @@ -185,20 +185,18 @@ it locally rather then through a web server). One natural location is to put it at the top level of your web server’s hierarchy. That would let you refer to the main MathJax file as /MathJax/MathJax.js from within any page on your server.

    -

    From the MathJax GitHub download link (the download button at the -right), you can also select the Download .tar.gz or Download -.zip buttons to get a copy of the current development version of -MathJax that contains all the latest changes and bug-fixes. You can -also get older tagged versions (if there are any).

    +

    From the MathJax GitHub download link, you can also select +the Download .tar.gz or Download .zip buttons to get a copy of +the current development version of MathJax that contains all the +latest changes and bug-fixes.

    If a packaged release receives any important updates, then those updates will be part of the branch for that version. The link to the .zip file in the download list will be the original release version, not the patched version. To obtain the patched version, use the Branches drop down menu (at the far left of the menus within the page) to select the release branch that you want (for example -v1.1-latest), and then use the download button and the Download -.tar.gz or Download .zip button to get the latest patched -version of that release.

    +v2.0-latest), and then use the “zip” button just above it to get +the latest patched version of that release.

    Testing your installationΒΆ

    @@ -248,7 +246,7 @@ MathJax is installed, and if that server is running the MathJax/fonts/ folder, create a file called .htaccess that contains the following lines:

    -
    <FilesMatch "\.(ttf|otf|eot)$">
    +
         
         
    diff --git a/docs/html/jsMath.html b/docs/html/jsMath.html
    index a3016d5e3..b69e7a395 100644
    --- a/docs/html/jsMath.html
    +++ b/docs/html/jsMath.html
    @@ -6,13 +6,13 @@
       
         
         
    -    Converting to MathJax from jsMath — MathJax v1.1 documentation
    +    Converting to MathJax from jsMath — MathJax v2.0 documentation
         
         
         
         
         
    -    
    +    
         
          
       
    @@ -40,7 +40,7 @@
             
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -130,11 +130,11 @@ page for more details.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/html/mathjax.html b/docs/html/mathjax.html index c9f7fff84..602e8f62d 100644 --- a/docs/html/mathjax.html +++ b/docs/html/mathjax.html @@ -6,13 +6,13 @@ - What is MathJax? — MathJax v1.1 documentation + What is MathJax? — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -51,16 +51,17 @@

    What is MathJax?ΒΆ

    -

    MathJax is an open-source JavaScript display engine for LaTeX and -MathML that works in all modern browsers. It was designed with the -goal of consolidating the recent advances in web technologies into a -single, definitive, math-on-the-web platform supporting the major -browsers and operating systems. It requires no setup on the part of -the user (no plugins to downlaod or software to install), so the page -author can write web documents that include mathematics and be -confident that users will be able to view it naturally and easily. -One simply includes MathJax and some mathematics in a web page, and -MathJax does the rest.

    +

    MathJax is an open-source JavaScript display engine for LaTeX, MathML, +and AsciiMath notation that works in all modern browsers. It was +designed with the goal of consolidating the recent advances in web +technologies into a single, definitive, math-on-the-web platform +supporting the major browsers and operating systems, including those +on mobile devices. It requires no setup on the part of the user (no +plugins to download or software to install), so the page author can +write web documents that include mathematics and be confident that +users will be able to view it naturally and easily. One simply +includes MathJax and some mathematics in a web page, and MathJax does +the rest.

    MathJax uses web-based fonts (in those browsers that support it) to produce high-quality typesetting that scales and prints at full resolution (unlike mathematics included as images). MathJax can be @@ -69,11 +70,12 @@ impaired. With MathJax, mathematics is text-based rather than image-based, and so it is available for search engines, meaning that your equations can be searchable, just like the text of your pages. MathJax allows page authors to write formulas using TeX and LaTeX -notation, or MathML, a World Wide -Web Consortium standard for representing mathematics in XML format. -MathJax will even convert TeX notation into MathML, so that it can be -rendered more quickly by those browsers that support MathML natively, -or so that you can copy and paste it into other programs.

    +notation, MathML, a World Wide Web +Consortium standard for representing mathematics in XML format, or +AsciiMath +notation. MathJax will even convert TeX notation into MathML, so that +it can be rendered more quickly by those browsers that support MathML +natively, or so that you can copy and paste it into other programs.

    MathJax is modular, so it loads components only when necessary, and can be extended to include new capabilities as needed. MathJax is highly configurable, allowing authors to customize it for the special @@ -123,11 +125,11 @@ mathematics on your web pages interactive and dynamic.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/html/mathml.html b/docs/html/mathml.html index 770567a3a..519d84693 100644 --- a/docs/html/mathml.html +++ b/docs/html/mathml.html @@ -6,13 +6,13 @@ - MathJax MathML Support — MathJax v1.1 documentation + MathJax MathML Support — MathJax v2.0 documentation - - + + @@ -35,12 +35,12 @@ index
  • - next |
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -66,10 +66,10 @@ displayed as MathML. Or you could use the mml2jax preprocessor and MathML input processor with the HTML-CSS output processor to make MathML available in browsers that don’t have native MathML support. It is also possible to have MathJax select the output processor for -you so that MathML is used in those browsers that support it, while -HTML-CSS is used for those that don’t. See the common -configurations section for details and -examples.

    +you so that MathML is used in those browsers that support it well +enough, while HTML-CSS is used for those that don’t. See the +common configurations section for +details and examples.

    Of course it is also possible to use all three components together. It may seem strange to go through an internal format just to return to MathML in the end, but this is actually what makes it possible to view @@ -85,7 +85,7 @@ even with a pure MathML workflow.

    MathML in HTML pagesΒΆ

    For MathML that is handled via the preprocessor, you should not use -the named MathML entities, but rather use the numeric entities like +named MathML entities, but rather use numeric entities like &#x221A; or unicode characters embedded in the page itself. The reason is that entities are replaced by the browser before MathJax runs, and some browsers report errors for unknown entities. For @@ -103,12 +103,16 @@ tags. That is, use

    rather than <mspace width="thinmathspace />. This is because HTML -does not have self-closing tags, and some browsers will get the -nesting of tags wrong if you attempt to use them. For example, with -<mspace width="1em" />, since there is no closing tag, the rest of -the mathematics will become the content of the <mspace> tag; but -since <mspace> should have no content, the rest of the mathematics -will not be displayed. This is a common error that should be avoided.

    +(prior to HTML5) does not have self-closing tags, and some browsers +will get the nesting of tags wrong if you attempt to use them. For +example, with <mspace width="1em" />, since there is no closing +tag, the rest of the mathematics will become the content of the +<mspace> tag; but since <mspace> should have no content, the +rest of the mathematics will not be displayed. This is a common error +that should be avoided. Modern browsers that support HTML5 should be +able to handle self-closing tags, but older browsers have problems +with them, so if you want your mathematics to be visible to the widest +audience, do not use the self-closing form in HTML documents.

    Supported MathML commandsΒΆ

    @@ -121,10 +125,10 @@ coming.

    • No support for the elementary math tags: mstack, mlongdiv, msgroup, msrow, mscarries, and mscarry.
    • -
    • Limited support for line breaking (they are only allowed in direct -children of mrow or implied mrow elements).
    • -
    • No support for alignment groups in table.
    • +
    • No support for alignment groups in tables.
    • No support for right-to-left rendering.
    • +
    • Not all attributes are supported for tables. E.g., columnspan +and rowspan are not implemented yet.

    See the results of the MathML3.0 test suite for details.

    @@ -149,8 +153,8 @@ children of mrow or i

    MathJax TeX and LaTeX Support

    Next topic

    -

    MathJax Output Formats

    +

    MathJax AsciiMath Support

    diff --git a/docs/html/model.html b/docs/html/model.html index 511600603..9cce4ee7c 100644 --- a/docs/html/model.html +++ b/docs/html/model.html @@ -6,13 +6,13 @@ - The MathJax Processing Model — MathJax v1.1 documentation + The MathJax Processing Model — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -291,11 +291,11 @@ dynamic as the rest of the page.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/html/options/AsciiMath.html b/docs/html/options/AsciiMath.html new file mode 100644 index 000000000..7b8e9a97f --- /dev/null +++ b/docs/html/options/AsciiMath.html @@ -0,0 +1,145 @@ + + + + + + + + The AsciiMath input processor — MathJax v2.0 documentation + + + + + + + + + + + + + + + + +
    +
    +
    +
    + +
    +

    The AsciiMath input processorΒΆ

    +

    The options below control the operation of the AsciiMath input +processor that is run when you include "input/AsciiMath" in the +jax array of your configuration or use a combined configuration file +that includes AsciiMath input. They are listed with their default +values. To set any of these options, include a AsciiMath section +in your MathJax.Hub.Config() call. For example

    +
    MathJax.Hub.Config({
    +  AsciiMath: {
    +    displaystyle: false
    +  }
    +});
    +
    +
    +

    would set the displaystyle configuration option so that the limits +for operators like summation symbols will appear next to them rather +than above and below.

    +
    +
    +displaystyle: true
    +

    Determines whether operators like summation symbols will have +their limits above and below the operators (true) or to their +right (false). The former is how they would appear in displayed +equations that appear on their own lines, while the latter is +better suited to in-line equations so that they don’t interfere +with the line spacing so much.

    +
    + +
    +
    +decimal: "."
    +

    This is the character to be used for decimal points in numbers. +if you change this to ",", then you need to be careful about +entering points or intervals. E.g., use (1, 2) rather than +(1,2) in that case.

    +
    + +
    + + +
    +
    +
    +
    +
    +

    Previous topic

    +

    The MathML input processor

    +

    Next topic

    +

    The HTML-CSS output processor

    + + +
    +
    +
    +
    + + + + + \ No newline at end of file diff --git a/docs/html/options/FontWarnings.html b/docs/html/options/FontWarnings.html index 0392d2475..404985822 100644 --- a/docs/html/options/FontWarnings.html +++ b/docs/html/options/FontWarnings.html @@ -6,13 +6,13 @@ - The FontWarnings extension — MathJax v1.1 documentation + The FontWarnings extension — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • @@ -252,12 +252,12 @@ The default is 1.5 seconds.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • diff --git a/docs/html/options/HTML-CSS.html b/docs/html/options/HTML-CSS.html index cded40fa7..fd85b522e 100644 --- a/docs/html/options/HTML-CSS.html +++ b/docs/html/options/HTML-CSS.html @@ -6,13 +6,13 @@ - The HTML-CSS output processor — MathJax v1.1 documentation + The HTML-CSS output processor — MathJax v2.0 documentation - + - + @@ -39,9 +39,9 @@ next |
  • - previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • @@ -211,8 +211,8 @@ where the tooltip will be placed.

    Previous topic

    -

    The MathML input processor

    +

    The AsciiMath input processor

    Next topic

    The NativeMML output processor

    @@ -243,14 +243,14 @@ where the tooltip will be placed.

    next |
  • - previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • diff --git a/docs/html/options/MMLorHTML.html b/docs/html/options/MMLorHTML.html index 7a99b3d6b..35ecd69f3 100644 --- a/docs/html/options/MMLorHTML.html +++ b/docs/html/options/MMLorHTML.html @@ -6,13 +6,13 @@ - The MMLorHTML configuration options — MathJax v1.1 documentation + The MMLorHTML configuration options — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • @@ -128,12 +128,12 @@ complicated output generated by MathJax, so its setting is
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • diff --git a/docs/html/options/MathML.html b/docs/html/options/MathML.html index e6bcaafa3..05b2d69c5 100644 --- a/docs/html/options/MathML.html +++ b/docs/html/options/MathML.html @@ -6,13 +6,13 @@ - The MathML input processor — MathJax v1.1 documentation + The MathML input processor — MathJax v2.0 documentation - + - + @@ -36,12 +36,12 @@ index
  • - next |
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • @@ -86,8 +86,8 @@ spacing would be used (rather than TeX spacing rules).

    The TeX input processor

    Next topic

    -

    The HTML-CSS output processor

    +

    The AsciiMath input processor

    diff --git a/docs/html/options/MathMenu.html b/docs/html/options/MathMenu.html index 9606f3096..976783e2d 100644 --- a/docs/html/options/MathMenu.html +++ b/docs/html/options/MathMenu.html @@ -6,13 +6,13 @@ - The MathMenu extension — MathJax v1.1 documentation + The MathMenu extension — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • @@ -179,12 +179,12 @@ style in a JavaScript object.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • diff --git a/docs/html/options/MathZoom.html b/docs/html/options/MathZoom.html index 4a5489fc7..ac8d370fc 100644 --- a/docs/html/options/MathZoom.html +++ b/docs/html/options/MathZoom.html @@ -6,13 +6,13 @@ - The MathZoom extension — MathJax v1.1 documentation + The MathZoom extension — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • @@ -132,12 +132,12 @@ style in a JavaScript object.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • diff --git a/docs/html/options/NativeMML.html b/docs/html/options/NativeMML.html index 7f591cd5c..f4b17612b 100644 --- a/docs/html/options/NativeMML.html +++ b/docs/html/options/NativeMML.html @@ -6,13 +6,13 @@ - The NativeMML output processor — MathJax v1.1 documentation + The NativeMML output processor — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • @@ -156,12 +156,12 @@ CSS style in a JavaScript object.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • diff --git a/docs/html/options/TeX.html b/docs/html/options/TeX.html index a899cd036..4637b84b6 100644 --- a/docs/html/options/TeX.html +++ b/docs/html/options/TeX.html @@ -6,13 +6,13 @@ - The TeX input processor — MathJax v1.1 documentation + The TeX input processor — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • @@ -178,12 +178,12 @@ be sufficient for any reasonable equation.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • diff --git a/docs/html/options/asciimath2jax.html b/docs/html/options/asciimath2jax.html new file mode 100644 index 000000000..f90a02269 --- /dev/null +++ b/docs/html/options/asciimath2jax.html @@ -0,0 +1,213 @@ + + + + + + + + The asciimath2jax Preprocessor — MathJax v2.0 documentation + + + + + + + + + + + + + + + + +
    +
    +
    +
    + +
    +

    The asciimath2jax PreprocessorΒΆ

    +

    The options below control the operation of the asciimath2jax preprocessor +that is run when you include "asciimath2jax.js" in the extensions array +of your configuration. They are listed with their default values. To +set any of these options, include a asciimath2jax section in your +MathJax.Hub.Config() call. For example

    +
    MathJax.Hub.Config({
    +  asciimath2jax: {
    +    delimiters: [['`','`'], ['$','$']]
    +  }
    +});
    +
    +
    +

    would set the ASCIIMath delimiters for the asciimath2jax +preprocessor to include dollar signs as well as back-ticks.

    +
    +
    +delimiters: [['`','`']]
    +

    Array of pairs of strings that are to be used as math +delimiters. The first in each pair is the initial delimiter and +the second is the terminal delimiter. You can have as many pairs +as you want. For example,

    +
    inlineMath: [ ['$','$'], ['`','`'] ]
    +
    +
    +

    would cause asciimath2jax to look for $...$ and `...` as +delimiters for inline mathematics. (Note that the single dollar +signs are not enabled by default because they are used too +frequently in normal text, so if you want to use them for math +delimiters, you must specify them explicitly.)

    +

    Note that the delimiters can’t look like HTML tags (i.e., can’t +include the less-than sign), as these would be turned into tags by +the browser before MathJax has the chance to run. You can only +include text, not tags, as your math delimiters.

    +
    + +
    +
    +preview: "AsciiMath"
    +

    This controls whether asciimath2jax inserts MathJax_Preview +spans to make a preview available, and what preview to use, when +it locates in-line or display mathematics in the page. The +default is "AsciiMath", which means use the ASCIIMath code as +the preview (which will be visible until it is processed by +MathJax). Set to "none" to prevent previews from being +inserted (the math will simply disappear until it is typeset). +Set to an array containing the description of an HTML snippet in +order to use the same preview for all equations on the page.

    +

    Examples:

    +
    preview: ["[math]"],     //  insert the text "[math]" as the preview
    +
    +
    +
    preview: [["img",{src: "/images/mypic.jpg"}]],  // insert an image as the preview
    +
    +
    +

    See the description of HTML snippets for +details on how to represent HTML code in this way.

    +
    + +
    +
    +skipTags: ["script","noscript","style","textarea","pre","code"]
    +

    This array lists the names of the tags whose contents should not +be processed by asciimath2jax (other than to look for +ignore/process classes as listed below). You can add to (or +remove from) this list to prevent MathJax from processing +mathematics in specific contexts.

    +
    + +
    +
    +ignoreClass: "asciimath2jax_ignore"
    +

    This is the class name used to mark elements whose contents should +not be processed by asciimath2jax (other than to look for the +processClass pattern below). Note that this is a regular +expression, and so you need to be sure to quote any regexp +special characters. The pattern is inserted into one that +requires your pattern to match a complete word, so setting +ignoreClass: "class2" would cause it to match an element with +class="class1 class2 class3". Note that you can assign +several classes by separating them by the vertical line character +(|). For instance, with ignoreClass: "class1|class2" +any element assigned a class of either class1 or class2 +will be skipped.

    +
    + +
    +
    +processClass: "asciimath2jax_process"
    +

    This is the class name used to mark elements whose contents +should be processed by asciimath2jax. This is used to restart +processing within tags that have been marked as ignored via the +ignoreClass or to cause a tag that appears in the skipTags +list to be processed rather than skipped. Note that this is a +regular expression, and so you need to be sure to quote any +regexp special characters. The pattern is inserted into one +that requires your pattern to match a complete word, so setting +processClass: "class2" would cause it to match an element with +class="class1 class2 class3". Note that you can assign +several classes by separating them by the vertical line character +(|). For instance, with processClass: "class1|class2" any +element assigned a class of either class1 or class2 will +have its contents processed.

    +
    + +
    + + +
    +
    +
    +
    +
    +

    Previous topic

    +

    The mml2jax Preprocessor

    +

    Next topic

    +

    The jsMath2jax Preprocessor

    + + +
    +
    +
    +
    + + + + + \ No newline at end of file diff --git a/docs/html/options/hub.html b/docs/html/options/hub.html index eca230d41..3b9c964e6 100644 --- a/docs/html/options/hub.html +++ b/docs/html/options/hub.html @@ -6,13 +6,13 @@ - The Core Configuration Options — MathJax v1.1 documentation + The Core Configuration Options — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • @@ -354,12 +354,12 @@ does not cause a default configuration file to be loaded.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • diff --git a/docs/html/options/index.html b/docs/html/options/index.html index 2acda7ade..d51aa4a92 100644 --- a/docs/html/options/index.html +++ b/docs/html/options/index.html @@ -6,13 +6,13 @@ - Configuration Objects — MathJax v1.1 documentation + Configuration Objects — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -66,7 +66,7 @@ browsers (namely Internet Explorer) will fail to process the configuration if you do.

    The MathJax components, like the TeX input processor, have their own sections in the configuration object, labeled by the component name, -and using a configuration object as its value. The object is itself +and using an object as its value. That object is itself a configuration object made up of name-value pairs that give the configuration options for the component.

    For example,

    @@ -106,6 +106,7 @@ are categorized by the component they affect.

    @@ -113,6 +114,7 @@ are categorized by the component they affect.

    diff --git a/docs/html/options/jsMath2jax.html b/docs/html/options/jsMath2jax.html index 819d2e45b..f504ad799 100644 --- a/docs/html/options/jsMath2jax.html +++ b/docs/html/options/jsMath2jax.html @@ -6,13 +6,13 @@ - The jsMath2jax Preprocessor — MathJax v1.1 documentation + The jsMath2jax Preprocessor — MathJax v2.0 documentation - + - + @@ -39,9 +39,9 @@ next |
  • - previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • @@ -98,8 +98,8 @@ details on how to represent HTML code in this way.

    Previous topic

    -

    The mml2jax Preprocessor

    +

    The asciimath2jax Preprocessor

    Next topic

    The TeX input processor

    @@ -130,14 +130,14 @@ details on how to represent HTML code in this way.

    next |
  • - previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • diff --git a/docs/html/options/mml2jax.html b/docs/html/options/mml2jax.html index 77b38fa3c..39b16ab0a 100644 --- a/docs/html/options/mml2jax.html +++ b/docs/html/options/mml2jax.html @@ -6,13 +6,13 @@ - The mml2jax Preprocessor — MathJax v1.1 documentation + The mml2jax Preprocessor — MathJax v2.0 documentation - + - + @@ -36,12 +36,12 @@ index
  • - next |
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • @@ -101,8 +101,8 @@ details on how to represent HTML code in this way.

    The tex2jax Preprocessor

    Next topic

    -

    The jsMath2jax Preprocessor

    +

    The asciimath2jax Preprocessor

    diff --git a/docs/html/options/tex2jax.html b/docs/html/options/tex2jax.html index 4a7649a01..53c107e15 100644 --- a/docs/html/options/tex2jax.html +++ b/docs/html/options/tex2jax.html @@ -6,13 +6,13 @@ - The tex2jax Preprocessor — MathJax v1.1 documentation + The tex2jax Preprocessor — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • @@ -235,12 +235,12 @@ have its contents processed.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Configuration Objects »
  • diff --git a/docs/html/output.html b/docs/html/output.html index fbf91f5c1..6d4de3465 100644 --- a/docs/html/output.html +++ b/docs/html/output.html @@ -6,13 +6,13 @@ - MathJax Output Formats — MathJax v1.1 documentation + MathJax Output Formats — MathJax v2.0 documentation - + - + @@ -38,9 +38,9 @@ next |
  • - previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -51,22 +51,24 @@

    MathJax Output FormatsΒΆ

    -

    Currently, MathJax can render math in two ways:

    +

    Currently, MathJax can render math in three ways:

      -
    • Using HTML-with-CSS to lay out the mathematics, or
    • +
    • Using HTML-with-CSS to lay out the mathematics,
    • +
    • Using SVG to lay out the mathematics, or
    • Using a browser’s native MathML support.
    -

    These are implemented by the HTML-CSS and NativeMML output +

    These are implemented by the HTML-CSS, SVG and NativeMML output processors.

    If you are using one of the combined configuration files, then this will select one of these output processors for you. If the config file ends in _HTML, then it is the HTML-CSS output processor, and if it ends in +_SVG then the SVG output processor will be used. If it ends in _HTMLorMML, then the NativeMML output processor will be chosen if the -browser supports it, otherwise HTML-CSS output will be used.

    -

    If you are performing your own in-line or file-based configuration, you -select which one you want to use by including either "output/HTML-CSS" -or "output/NativeMML" in the jax array of your MathJax configuration. -For example

    +browser supports it well enough, otherwise HTML-CSS output will be used.

    +

    If you are performing your own in-line or file-based configuration, +you select which one you want to use by including either +"output/HTML-CSS", "output/SVG", or "output/NativeMML" in +the jax array of your MathJax configuration. For example

    jax: ["input/TeX","output/HTML-CSS"]
     
    @@ -76,40 +78,61 @@ in your document.

    major browsers, with results that are consistent across browsers and operating systems. This is MathJax’s primary output mode. Its major advantage is its quality and consistency; its drawback is that it is -slower than the NativeMML mode at rendering the mathematics. (The -HTML-CSS processor has not yet been optimized for speed, so you can -expect some improvement in the future. Note that IE8 in “IE8 -standards mode” is an order of magnitude slower than any other browser -when processing math through the HTML-CSS output processor; see -HTML-CSS with IE8 below for some strategies -to deal with this.)

    -

    The NativeMML output processor uses the browser’s internal MathML support (if -any) to render the mathematics. Currently, Firefox has native support -for MathML, and IE has the MathPlayer plugin for rendering +slower than the NativeMML mode at rendering the mathematics. +Historically, the performance in Internet Explorer (and IE8 in +particular) was quite poor, with the page getting slower and slower as +more math is processed. MathJax version 2.0 includes a number of +optimizations to improve the display performance in IE, and it is now +more comparable to other browsers. The HTML-CSS output uses web-based +fonts so that users don’t have to have math fonts installed on their +computers; but this does introduce some printing issues in some +browsers.

    +

    The SVG output processor is new in MathJax version 2.0, and it uses +Scalable Vector Graphics to render the mathematics on the page. SVG +is supported in all the major browsers and most mobile devices; note, +however, that Internet Explorer prior to IE9 does not support SVG, and +IE9 only does in “IE9 standards mode”, not its emulation modes for +earlier versions. The SVG output mode is high quality and slightly +faster than HTML-CSS, and it does not suffer from some of the +font-related issues that HTML-CSS does, so prints well in all +browsers. This format also works well in some ebook readers (e.g., +iBooks). The disadvantage of this mode is that it does not take +advantage of STIX fonts, and so only has access to the characters in +the web-based fonts, and it variable-width tables become fixed size +once they are typeset, and don’t rescale if the window size changes +(for example). Since equation numbers are handled through +variable-width tables, that means equation numbers may not stay at the +edge of the window if it is resized.

    +

    The NativeMML output processor uses the browser’s internal MathML +support (if any) to render the mathematics. Currently, Firefox has +native support for MathML, and IE has the MathPlayer plugin for rendering MathML. Opera has some built-in support for MathML that works well with simple equations, but fails with more complex formulas, so we -don’t recommend using the NativeMML output processor with Opera. Safari, +don’t recommend using the NativeMML output processor with Opera. +Safari has some support for MathML since version 5.1, but the quality +is not as high as either Firefox’s implementation or IE with MathPlayer. Chrome, Konqueror, and most other browsers don’t support MathML natively, but may in the future, since MathML is part of the HTML5 specification.

    -

    The advantage of the NativeMML output Processor is its speed, since native -MathML support is much faster than using complicated HTML and CSS to lay -out mathematics, as the HTML-CSS output processor does. The disadvantage -is that you are dependent on the browser’s MathML implementation for your -rendering, and these vary in quality of output and completeness of -implementation. MathJax may rely on features that are not available in -some renderers (for example, Firefox’s MathML support does not implement -some of the named widths, such as negativethinmathspace). The results -using the NativeMML output processor may have spacing or other rendering -problems that are outside of MathJax’s control.

    +

    The advantage of the NativeMML output Processor is its speed, since +native MathML support is much faster than using complicated HTML and +CSS to lay out mathematics, as the HTML-CSS output processor does. +The disadvantage is that you are dependent on the browser’s MathML +implementation for your rendering, and these vary in quality of output +and completeness of implementation. MathJax relies on features that +are not available in some renderers (for example, Firefox’s MathML +support does not implement the features needed for labeled equations). +The results using the NativeMML output processor may have spacing or +other rendering problems that are outside of MathJax’s control.

    Automatic Selection of the Output ProcessorΒΆ

    Since not all browsers support MathML natively, it would be unwise to choose the NativeMML output processor unless you are sure of your audience’s browser capabilities. MathJax can help with that, however, -since a number of its combined configuration files will select NativeMML -output when the browser supports it, and HTML-CSS output otherwise. These -are the configuration files that end in _HTMLorMML.

    +since a number of its combined configuration files will select +NativeMML output when the browser supports it well enough, and +HTML-CSS output otherwise. These are the configuration files that end +in _HTMLorMML.

    If you are doing your own configuration, there is a special configuration file that you can include that will choose between NativeMML and HTML-CSS depending on the browser in use. To invoke it, add "MMLorHTML.js" to @@ -120,14 +143,22 @@ the abilities of your user’s browser.

    jax: ["input/TeX"]
    -

    You can customize which choice to make on a browser-by-browser basis -or a global basis. See the config/default.js file or the +

    By default, MathJax will choose HTML-CSS in all browsers except for +one case: Internet Explorer when the MathPlayer plugin is present. +In the past, MathJax selected NativeMML output for Firefox as well, +but we have found that there are too many rendering issues with +Firefox’s native MathML implementation, and so MathJax now selects +HTML-CSS output for Firefox by default as well. Users can still use +the Mathjax contextual menu to select the NativeMML renderer if they +wish to choose greater speed at the expense of some quality.

    +

    You can customize which choice MathJax makes on a browser-by-browser +basis or a global basis. See the config/default.js file or the Configuring MMLorHTML section for further -details. As an example, this configuration tells MathJax to use HTML-CSS -output rather than native MathML support for Firefox:

    +details. As an example, this configuration tells MathJax to use +native MathML support rather than HTML-CSS output for Firefox:

    <script type="text/x-mathjax-config">
       MathJax.Hub.Config({
    -    MMLorHTML: { prefer: { Firefox: "HTML" } }
    +    MMLorHTML: { prefer: { Firefox: "MML" } }
       });
     </script>
     <script type="text/javascript"
    @@ -135,11 +166,10 @@ output rather than native MathML support for Firefox:

    </script>
    -

    With this configuration, MathML output will be used only for IE with the -MathPlayer plugin (Firefox is the only other browser to have native MathML -support that is sufficient for use with MathJax). Note, however, that a -user can employ the MathJax contextual menu to select the other renderer if -he or she wishes.

    +

    With this configuration, MathML output will be used for both Firefox +and IE with the MathPlayer plugin. Note, however, that a user can +employ the MathJax contextual menu to select the other renderer if he +or she wishes.

    MathJax produces MathML that models the underlying mathematics as best it can, rather than using complicated hacks to improve output for a particular MathML implementation. When you make the choice to use the @@ -147,37 +177,28 @@ NativeMML output processor, you are making a trade-off: gaining speed at the expense of quality and reliability, a decision that should not be taken lightly.

    -
    -

    HTML-CSS with IE8ΒΆ

    -

    Internet Explorer 8 has at least eight different rendering modes in which -it can operate, and that are triggered by the DOCTYPE of the document -being viewed. Its “quirks” mode is its fastest mode, and its “IE8 -standards” mode is its slowest. This is the mode triggered by strict HTML -document types, and since most modern content management systems now -include a DOCTYPE that activates “standards” mode, IE8 will operate in -its slowest manner. This is particularly apparent when MathJax is used, -since IE8 in standards mode runs 20 to 30 times slower than it does in its -IE7 emulation mode, and 60 times slower than in quirks mode, on the sample -equations page in test/sample.html.

    -

    Most users find this speed reduction unacceptable when there is much -mathematics on the page. To overcome this problem, you may wish to -tell IE8 to use its IE7 emulation mode rather than its IE8 standards -mode. You can accomplish this by including the line

    -
    <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7">
    +
    +

    HTML-CSS with IE8 and IE9ΒΆ

    +

    The performance of MathJax in Internet Explorer 8 and 9 has been +substantially improved in version 2.0. The HTML-CSS output processing +was redesigned to avoid the page reflows that were the main source of +the speed problem in I8 and IE9. For test pages having between 20 and +50 typeset expressions, we see an 80% reduction in output processing +time for IE8, a 50% reduction for IE9, and between 15% and 25% +reduction for most other browsers over the v1.1a times. Since the +processing time in v1.1a grows non-linearly in IE, you should see even +larger savings for pages with more equations when using v2.0.

    +

    In the past, we recommended forcing IE8 and IE9 into IE7-emulation +mode in order to get better performance. That is no longer necessary. +Indeed, the fastest modes in IE8 and IE9 now are their IE8 standards +and IE9 standards modes, so it is best to force the highest mode +possible. That can be accomplished by adding

    +
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
     
    -

    at the top of the <head> section of your HTML documents. This -lets you keep the strict DOCTYPE for validation purposes, while -still managing to get reasonable performance from Internet Explorer -8. Note that this line must come at the beginning of the <head>, -before any stylesheets or other content are loaded.

    -

    Alternatively, you can use the MMLorHTML configuration file -described above to select NativeMML output when possible, and request -that your users install the MathPlayer plugin, which will render -the mathematics much more quickly.

    -

    It appears that IE9 in IE9 standards mode may perform better than IE8, but -since IE9 is still in beta testing as of this writing, we have yet to see -exactly what the performance of MathJax in IE9 will be like.

    +

    at the top of the <head> section of your HTML documents. Note +that this line must come at the beginning of the <head>, before +any stylesheets, scripts, or other content are loaded.

    @@ -191,14 +212,14 @@ exactly what the performance of MathJax in IE9 will be like.

    Previous topic

    -

    MathJax MathML Support

    +

    MathJax AsciiMath Support

    Next topic

    The MathJax Community

    @@ -229,13 +250,13 @@ exactly what the performance of MathJax in IE9 will be like.

    next |
  • - previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/html/platforms/index.html b/docs/html/platforms/index.html index efae5122c..e809a5368 100644 --- a/docs/html/platforms/index.html +++ b/docs/html/platforms/index.html @@ -6,13 +6,13 @@ - Using MathJax in popular web platforms — MathJax v1.1 documentation + Using MathJax in popular web platforms — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -51,13 +51,14 @@ @@ -129,12 +129,12 @@ your pages. If you need to adjust the configuration, see
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Using MathJax in popular web platforms »
  • diff --git a/docs/html/platforms/wordpress.html b/docs/html/platforms/wordpress.html index b63114c6b..7d0a759d2 100644 --- a/docs/html/platforms/wordpress.html +++ b/docs/html/platforms/wordpress.html @@ -6,13 +6,13 @@ - Installing MathJax in WordPress — MathJax v1.1 documentation + Installing MathJax in WordPress — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Using MathJax in popular web platforms »
  • @@ -131,12 +131,12 @@ your pages. If you need to adjust the configuration, see
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Using MathJax in popular web platforms »
  • diff --git a/docs/html/queues.html b/docs/html/queues.html index eb52bf5fa..753fac82a 100644 --- a/docs/html/queues.html +++ b/docs/html/queues.html @@ -6,13 +6,13 @@ - Using Queues — MathJax v1.1 documentation + Using Queues — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Synchronizing your code with MathJax »
  • @@ -319,12 +319,12 @@ finishes everything it has queued when it was loaded. For example,

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Synchronizing your code with MathJax »
  • diff --git a/docs/html/search.html b/docs/html/search.html index 2e1be6d4c..ee51e9058 100644 --- a/docs/html/search.html +++ b/docs/html/search.html @@ -6,13 +6,13 @@ - Search — MathJax v1.1 documentation + Search — MathJax v2.0 documentation - + @@ -38,7 +38,7 @@
  • index
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -86,11 +86,11 @@
  • index
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/html/searchindex.js b/docs/html/searchindex.js index a1bc33c02..276245d63 100644 --- a/docs/html/searchindex.js +++ b/docs/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{"":{Load:[0,0,1],Preloading:[0,0,1],Log:[18,0,1],ExecuteHooks:[28,0,1],setScript:[12,0,1],Subclass:[38,0,1],Delay:[28,0,1],Init:[38,0,1],getAllJax:[37,0,1],Interest:[29,0,1],Translate:[39,0,1],Config:[37,0,1],addElement:[12,0,1],Reprocess:[37,0,1],Styles:[0,0,1],ExecuteHook:[29,0,1],loadTimeout:[0,0,1],Resume:[17,0,1],Update:[37,0,1],loadComplete:[0,0,1],formatError:[37,0,1],call:[17,0,1],getJaxByInputType:[37,0,1],PreProcess:[37,0,1],Post:[29,0,1],has:[38,0,1],Signal:[28,0,1],Set:[18,0,1],Insert:[37,0,1],addText:[12,0,1],TextNode:[12,0,1],Augment:[38,0,1],Clear:[18,0,1],Register:[39,0,1],Remove:[18,0,1],Element:[12,0,1],Queue:[28,0,1],NoInterest:[29,0,1],Suspend:[17,0,1],getJaxByType:[37,0,1],Push:[17,0,1],Typeset:[37,0,1],fileURL:[0,0,1],wait:[17,0,1],reset:[28,0,1],getJaxFor:[37,0,1],LoadHook:[0,0,1],Process:[37,0,1],Text:[45,0,1],loadError:[0,0,1],Startup:[39,0,1],SourceElement:[45,0,1],can:[38,0,1],File:[18,0,1],MessageHook:[29,0,1],isJax:[37,0,1],filterText:[18,0,1],isa:[38,0,1],Require:[0,0,1]}},terms:{represent:51,reprocess:[37,45,48],mathjax_msie_fram:18,four:[1,14],prefix:[12,20,15],asymp:46,blacktriangledown:46,webfont:[6,42,20],whose:[12,7,48,5,31,37,24],html5:[50,14,15,7],under:[41,35],preprocess:[51,37,30,48],slowest:50,worth:7,digit:15,gimel:46,everi:[19,37,15,7],risk:20,mskip:46,arcco:46,govern:[20,14,7],dotplu:46,affect:[14,35,15,46,37,45,26],eqnarrai:46,cmd:22,bigodot:46,ominu:46,math:[30,5,7,11,12,13,14,15,40,18,19,20,39,22,23,27,3,43,33,34,35,10,37,46,41,42,44,47,48,49,50,51],nparallel:46,properti:[12,0,32,38,28,29,17,31,39,45,10,37,24],nsubseteqq:46,direct:[42,6,14,41,35],consequ:11,second:[0,14,35,28,31,53,49,5,6,21,22,7,19,10,41,24,1],ngeq:46,even:[0,41,42,28,31,17,46,3,49,48,40,20,21,7,19,23,51,37,29,1],hide:48,prejax:[51,22],neg:46,children:41,"new":[30,4,12,13,14,15,18,19,20,25,23,45,26,28,37,10,7,38,29,35,24,1,47,48,49,51],net:20,mhtml:2,told:49,limsup:46,elimin:22,behavior:[14,35,22,7],lessapprox:46,blacktriangleright:46,here:[12,29,32,28,31,1,3,48,19,20,39,22,37,45],met:30,lneqq:46,path:[40,0,7,20],noundefin:[40,20,46],interpret:[46,20,35],nrightarrow:46,forum:[20,4],mbox:46,rceil:46,circleddash:46,mathstrut:46,unix:35,org:[14,15,2,3,47,48,46,20,33,8,50,36,7],thinmathspac:[20,41],unit:15,highli:23,describ:[12,46,14,35,28,20,44,53,30,48,40,6,21,7,31,50,51,37],would:[5,6,9,11,12,14,40,17,20,21,22,45,25,27,28,31,37,33,34,35,7,38,46,42,43,53,47,48,50,51,52,1],afterward:31,readi:[40,19,39,30,32],ltime:46,varlambda:46,call:[0,2,3,46,6,7,9,14,17,18,19,20,25,22,24,26,27,28,29,31,34,35,10,37,38,39,5,42,43,44,45,1,47,48,49,11,51,52],recommend:[20,51,35,50],vcenter:46,preview:[5,43,51,27,22],type:[0,2,3,5,8,10,12,14,40,19,20,39,22,45,37,33,36,7,46,41,24,1,48,49,50,51],until:[0,27,29,1,5,31,39,22,7,19,43,37],notin:46,displaymath:[5,7],relat:[0,15],notic:46,warn:[0,14,22,6],jpg:[5,43,21,27],loss:7,hold:[0,21,22,34,51,37],unpack:[20,35],must:[0,14,42,35,20,44,17,46,30,7,18,5,6,25,22,34,49,50,41,29,53],fbox:[46,15],join:[19,46],centerdot:46,setup:[23,20,41],work:[12,13,14,35,15,31,46,3,4,48,19,20,41,33,49,23,50,7,38],cc0000:[53,22],tag_nam:35,root:[0,15,30,18,46,7],overrid:[38,6,10,39,24],mathmenu:[42,53,47,40,11,7,26],give:[29,42,20,53,3,19,6,21,7,25,26],cirit:7,indic:[0,7,35,31,17,46,30,19,20,29,39,22,45,10,37,24,51],impair:[23,7],hline:46,want:[4,5,14,40,16,18,19,20,22,24,28,31,35,36,7,38,46,42,1,48,50,52],setminu:46,end:[0,5,41,15,2,50,46,30,4,40,8,19,36,7,1],quot:[5,42,15,22],hom:46,heartsuit:46,how:[0,2,3,4,5,6,8,14,40,17,18,20,21,22,27,28,29,43,37,33,34,35,7,46,42,47,49,11,51],disappear:[5,43,27],answer:[4,48],verifi:[20,35,4],config:[2,30,5,6,7,8,9,10,11,14,40,18,19,20,25,22,24,26,27,3,31,33,34,36,37,39,46,42,43,53,47,48,50,52,1],renewcommand:46,updat:[37,35,15,2,1,48,14,22,7,45],showrender:47,recogn:20,lai:[50,51],diagdown:46,after:[0,42,28,31,17,1,3,47,18,19,20,39,22,48,49,35,51,7,29,26],befor:[0,2,30,4,46,7,8,14,17,18,19,20,21,22,25,28,29,31,34,37,38,39,5,41,42,44,1,48,49,50,51],wrong:41,startuphook:[19,37],parallel:[46,1,30,15],averag:51,alignedat:46,attempt:[0,41,47],third:[1,41],leftarrow:46,receiv:[29,14,35,31,19,20,39,49,7,38],greasekit:3,maintain:[14,49,4,19,31,22],environ:[5,20,46,25,4],enter:[41,48,46,20,51,7],textnod:12,order:[29,14,42,35,20,44,17,1,30,7,18,5,6,27,22,31,50,43,37,38,51],oper:[0,5,6,9,11,15,17,18,19,25,23,27,43,34,42,39,29,32,35,31,44,1,47,48,50,52],approxeq:46,softwar:[23,20,51],over:[12,0,42,15,46,47,48,40,20,22,34,51,7],fall:[46,6,1,35,20],becaus:[19,14,42,1,31,46,3,18,5,20,21,7,51,41,29,25,48],boxtim:46,suspend:[19,17,1,29],textrm:46,appar:[50,1],afil:31,flexibl:[21,1,14],vari:50,smallint:46,fit:[19,47],fix:[14,35,15,7],strang:41,better:[15,47,40,20,33,8,50,7],boxminu:46,drawback:50,upharpoonleft:46,persist:4,comprehens:44,easier:[29,14,35,1,46,41,38],moveleft:46,them:[12,0,5,14,35,15,20,17,46,41,40,6,25,1,7,31,19,51,37,29,53],thei:[0,3,4,5,6,7,9,14,15,40,16,17,18,19,20,21,22,25,26,27,29,30,31,34,35,37,39,46,41,42,43,44,53,47,48,49,11,51,52,1],qualiti:[23,50,51],safe:[12,20,3,48],"break":[46,49,1,41,15],mtext:[46,20,15],wedg:46,widetild:46,choic:[50,37,8],dbinom:46,leftharpoondown:46,timeout:[0,15,28],each:[5,7,35,28,29,46,30,49,18,40,20,48,19,51,37,1],debug:18,side:[20,18,25,22,8],mean:[5,14,2,31,16,30,46,3,49,48,40,6,27,22,19,23,43,7,29],leqq:46,createel:3,resum:[17,1],leqalignno:46,mathopen:46,looparrowleft:46,network:[14,35,15,40,20,36,7],goe:[46,49,1],iint:46,newli:[12,19,38],crucial:35,predefin:22,content:[2,30,5,8,10,12,14,15,20,21,22,3,37,36,7,38,40,41,44,1,48,50,51],method:[12,0,14,38,28,29,17,1,3,49,18,19,31,39,7,45,10,37,24,48],reader:[40,23,7,15],forth:32,impract:35,multilin:46,situat:[7,15,48],free:[45,4],ineffici:[38,22],reconfigur:14,lneq:46,angl:46,moment:[20,10,35],isn:[19,39],iphon:15,isa:38,subtl:48,confus:14,mathbb:46,rang:51,mathbf:46,render:[41,15,30,47,5,20,22,23,50,51,52,33],independ:7,yourcolleg:35,restrict:[46,35,22],hook:[19,0,28,29],instruct:[21,20,14,3,2],alreadi:[0,28,48,46,3,4,18,19,31,49,7,38,1],primari:[50,14],tooltop:42,top:[32,35,46,20,50,7],sometim:[20,7,35],underlin:[46,15],master:49,too:[46,42,15,3,5,20],similarli:[0,37,35],john:31,listen:[19,29,37,28],thickapprox:46,namespac:[20,3,15,28,48],tool:[1,35],tagind:25,embellish:15,compressor:15,somewhat:49,technic:44,past:[29,14,15,19,49,23],filesmatch:35,provid:[12,0,41,28,2,31,17,46,18,19,20,29,21,48,49,23,51,37,38,1],eqalignno:46,tree:[20,21],"final":[14,31,46,20,21,23,51],project:[44,7,4],matter:[19,33],mathtt:46,ldotp:46,modern:[23,6,50,13],mind:[46,20,7,2],manner:50,increment:17,seem:[31,41],rightrightarrow:46,ldot:46,person:31,latter:[16,19,21,51,7,26],juli:13,expens:50,simplifi:15,though:[28,46,49,21,22,51],object:[0,30,6,12,13,16,17,18,19,21,22,24,26,28,31,34,10,37,38,39,29,32,42,44,45,53,47,48,49,11,51,1],gzip:15,regular:[5,20,22],letter:[20,35],grave:46,don:[14,15,31,1,3,48,19,6,41,7,50,51,37],dom:[12,45,1,48,19,49,39,22,37,24],doe:[46,41,35,28,31,52,45,3,19,20,11,22,7,23,50,10,37,24,51],declar:[41,42,53,47,6,11,34],tfrac:46,unchang:[14,52,48],sum:[46,28],came:35,delaystartupuntil:[37,30,22,7],random:[20,35],lnapprox:46,syntax:[46,38,15],mediawiki:2,isopera:37,outerhtml:15,shownam:31,asynchon:48,involv:[49,7,4],consolid:23,layout:45,firstnam:31,mathchoic:46,ismsi:[37,30],menu:[13,41,42,15,30,47,40,11,22,34,8,35,50,36,45,51],explain:[40,49,14,7,26],configur:[0,3,5,6,7,8,9,10,13,14,15,18,19,20,25,22,23,24,26,27,30,31,33,34,35,36,37,39,40,41,42,43,21,46,11,50,51,52],apach:35,theme:[7,2,8],rich:23,folder:[20,42,35],stop:42,infti:[46,51],amazon:20,report:[41,22,4],circeq:46,subseteq:46,fadeouttim:6,bar:[46,38,28],patch:[7,35],reload:47,bad:15,replacechild:3,neq:46,respond:[29,22,4],undefinedfamili:42,dashrightarrow:46,scriptscriptstyl:46,precneqq:46,result:[14,42,28,31,45,1,48,46,20,41,7,50,10,37,24,51],respons:[29,10,15,28],fail:[0,15,31,39,50,26],best:[0,14,35,1,50,51,7],awar:[46,0,1,41],subarrai:46,varinjlim:46,wikipedia:[44,3],circledcirc:46,gneqq:46,awai:[7,35],approach:[31,51,2,48],attribut:[12,15,53,46,43,21,51,7],never:[35,0,7,3,39],extend:[23,51],extens:[0,30,5,6,14,15,40,19,20,25,22,26,27,3,43,37,33,34,7,39,46,32,44,53,47,48,1],add:[5,14,2,17,46,40,6,39,22,45,50,38,53],preprocessor:[5,14,43,46,41,30,32,40,20,27,22,7,51,37,48,26,33],intop:46,cot:46,cow:38,howev:[14,35,31,30,53,3,4,18,46,20,22,48,50,51,7,38,1,26],against:29,seri:[1,21],com:[7,35],varpsi:46,pre:[5,14,35,40,6,7],foral:46,can:[0,3,4,5,6,7,12,14,15,40,17,18,19,20,25,22,23,24,26,28,29,30,31,32,33,35,10,37,38,39,46,41,42,44,53,11,48,49,50,51,1],foobar:38,sai:[17,3,28],innerhtml:[3,48],height:[46,15,47],wider:4,sqsupset:46,speak:[16,51],chrome:[42,50,37,3,15],three:[41,35,28,31,1,6,21,49,51,39],been:[0,3,4,5,14,17,18,19,20,24,28,30,31,33,10,7,29,35,1,48,49,50],trigger:[40,50,7,22,34],interest:[19,29,44,4,49],basic:13,tini:46,quickli:[23,50,7,4],underrightarrow:46,regul:1,xxx:46,ani:[0,3,4,5,6,7,9,11,14,40,17,18,19,20,25,22,45,27,28,29,30,31,34,35,37,38,46,41,42,43,1,47,48,49,50,52],emploi:50,dash:[53,42],tanh:46,servic:[14,35,15,20,36,7],showcontext:47,diamondsuit:46,sourceforg:14,weren:14,dashboard:36,"3px":53,succeq:46,have:[0,2,30,4,5,6,14,15,40,19,20,11,22,45,26,28,29,3,31,37,35,7,38,46,41,42,1,48,49,50,51],nexist:46,tabl:41,cong:46,sever:[0,5,14,35,46,48,40,31,51,24,1],amout:18,disabl:[11,14,42],incorrectli:[20,14,15],perform:[30,4,6,14,15,17,18,19,39,22,45,28,31,37,7,29,32,44,1,48,49,50],suggest:[6,4],make:[0,4,46,6,14,15,16,17,19,20,22,23,27,43,37,42,7,38,5,41,35,53,47,48,49,50,51,1],complex:[50,21],split:46,synch:14,lrcorner:46,unsafewindow:3,complet:[0,30,5,14,17,19,20,39,22,45,28,29,31,37,7,40,35,44,1,48,49,50],longmapsto:46,hand:[32,18,25,22,51,41,33],fairli:[21,14],rais:[46,15],mkern:46,ignorepast:29,unlhd:46,squar:[46,21,15],redefin:[6,10,39,24],kept:19,thu:[14,28,1,19,31,45],inherit:[16,38,10,24,45],client:42,thi:[0,1,2,3,4,5,6,7,8,10,11,12,13,14,15,16,17,18,19,20,21,22,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,45,46,47,48,49,50,51,52,53],idotsint:46,programm:38,everyth:[40,46,1,37,7],settimeout:[31,28],left:[41,35,32,30,18,46,49,25,22,8,36,26],processclass:5,identifi:[12,20,46,51,29],just:[46,41,35,28,2,31,53,40,20,22,8,23,51,7,29,1],yen:46,mathbin:46,human:20,coprod:46,yet:[41,17,1,48,19,49,50],languag:[44,49,51],noscript:5,onload:[32,3,30,31,22,7],errorset:[40,22],easi:[35,33],interfer:[40,7],had:[19,20,14,7],myconfig:[19,31],els:[31,3,48],save:[36,7,53,8],hat:46,take:[12,0,14,28,2,31,1,30,4,48,46,6,25,49,7],sanit:18,applic:[23,20,30,2],loadtimeout:0,quirk:50,preserv:31,negativethinmathspac:50,background:[46,53,15],sqsubset:46,specif:[0,7,28,2,29,44,17,1,32,5,31,39,22,48,50,51,37,45],deprec:7,arbitrari:46,manual:6,zoom:[13,41,15,40,22,34,7],leftrightarrow:46,underli:50,www:[35,3,47],right:[11,41,42,44,17,1,3,18,46,25,22,8,35,51,7,26],old:19,famili:[46,0,53,42],deal:50,autobold:46,begin:[19,35,46,30,48,5,25,50,51,7,1],percentag:[11,42,22],donald:44,successfulli:[0,31],interc:46,dddot:46,bottom:[7,8],subclass:[29,32,24,39,45,10,38],circ:46,tracker:[20,4],overcom:[50,49],condit:[0,30],foo:[38,28],core:[1,30,46,22,51,37,26],plu:[40,29,30],bold:[46,21,25,26],insecur:20,popular:[20,33,2],colleg:35,repositori:[14,35,15],post:[29,42,30,4,18,19,49,39],"super":[38,15],llless:46,obj:12,nwarrow:46,slightli:[46,8],surround:[20,11,42],unfortun:[20,35],current_theme_templ:2,joomla:2,span:[27,5,43,21,22,51,33],downharpoonright:46,geramond:46,encod:46,two:[19,1,49,46,40,20,21,22,53,50,7,25,26],down:[36,35,22],shortparallel:46,wrap:38,ntriangleright:46,stackrel:46,nsupseteq:46,git:[20,14,35,15],suffici:[46,20,25,52,50],checkmark:46,transform:51,ngtr:46,avail:[0,2,5,6,14,19,20,11,22,23,45,27,43,35,7,38,41,42,1,47,48,50,51],width:[41,47,46,20,25,50],reli:[0,14,44,1,3,48,31,11,50],wordpress:[2,8],editor:8,rightthreetim:46,lnsim:46,form:[41,42,44,18,46,20,25,22,51,7],offer:[14,15,4],forc:[7,42],epsilon:46,hear:[19,29],downdownarrow:46,"true":[46,14,42,28,29,30,47,5,32,22,7,11,9,37,38],maxmacro:25,reset:[47,28],displayalign:22,intern:[0,41,29,44,17,1,46,22,50,10,37,24,51],tell:[35,3,48,20,50,7],moveright:46,more:[40,6,8,10,14,15,17,20,21,22,23,28,31,37,33,35,36,7,38,39,29,42,44,53,11,48,49,50,51,52,1],retir:14,nnn:35,featur:[13,41,35,4,48,19,31,34,50,38],rfloor:46,exist:[42,28,46,20,35,38],ddot:46,backsim:46,triangleq:46,check:[0,14,35,31,18,46,20,29,38],when:[0,30,5,6,7,8,9,11,14,15,16,17,18,19,20,21,22,23,24,25,27,28,29,31,32,33,34,35,10,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,1],abovewithdelim:46,role:51,test:[12,13,14,35,49,30,3,48,19,20,41,7,50,37,38],tie:[30,28],smallsmil:46,scriptstyl:46,searrow:46,mathel:2,intend:[38,22],munderov:51,gvertneqq:46,consid:[0,14,15,46,4,5,20,51,37,45,1],omega:46,outdat:4,longer:[29,14,35,18],bullet:46,anywher:7,tex2jax_ignor:[5,15],ignor:[5,29],time:[0,3,4,46,6,12,37,15,18,19,25,22,28,31,34,7,39,29,35,1,48,50,51],push:[28,44,17,1,30,48,31,37],"5kb":25,mathrm:46,doteq:46,emulateie7:50,skip:[5,35],consum:18,webkit:15,skin:2,displayind:22,millisecond:[0,42,28,47,18,6,34,37],decid:[7,47],middl:20,depend:[28,30,48,31,8,50,7,52],head:[2,3,48,20,8,50,36,7],newenviron:46,readabl:44,nearrow:46,varpi:46,certainli:35,vee:46,decis:50,text:[2,30,5,6,8,12,14,15,40,18,19,20,21,22,23,45,25,27,3,31,33,36,7,46,42,43,1,11,48,50,51],succnsim:46,sourc:[13,14,42,1,3,47,40,41,19,23,35,51,37,45,11],string:[0,28,29,46,18,5,53,21,22,19,37,45,25],word:[5,51,7],room:25,dim:46,getjaxfor:[19,37,24],administr:[2,8],level:[20,7,35,32],did:31,item:[11,42,47,46,31,21],cooki:[12,30,15],div:[12,46,51,33,48],prevent:[46,27,42,15,43,47,5,20,25,22,7],mmlorhtml:[40,50,52,22,26],slower:50,compens:11,sign:[46,14,5,20,51,7],cost:[46,20,7,38],pmb:46,rightarrowtail:46,histori:[19,29,30,44],xandi:38,dotsi:46,dotsm:46,appear:[19,32,35,31,46,47,18,5,20,22,48,8,50,7,45],dotso:46,repli:19,dotsc:46,dotsb:46,current:[0,42,35,2,29,45,20,8,50,36,7,38],backepsilon:46,ampersand:46,inlinemath:[46,14,48,5,20,7],defici:41,amalg:46,mathsiz:46,gener:[46,7,20,52,30,40,6,33,31,51,37,45],mfrac:[20,51],modif:[1,7],address:[20,35],along:[44,1,18,19,33,10,24],wait:[0,7,35,15,28,29,44,17,1,3,48,19,31,30,39,22,49,37],box:[46,0,15,6],html_head:2,shift:22,bot:46,queue:[29,32,28,49,16,17,1,30,48,31,44,37],overriden:37,digamma:46,varlimsup:46,commonli:20,macintosh:37,semant:38,succsim:46,extra:[19,46,51,15,22],circumv:35,modul:[0,36,32],prefer:[14,42,47,20,50,35,52],iepro7:3,veebar:46,visibl:[5,43,1,27,48],marker:46,myid:53,mobil:[14,15,7],arrowvert:46,memori:[49,45],bigr:46,visit:20,todai:44,subvers:[20,35],stylesheet:[0,32,28,29,17,30,48,49,22,8,50],handler:[0,32,44,3,30,48,49,22,51,7],current_skin:2,bigl:46,bigm:46,eqcirc:46,checkout:35,bigg:46,inputjax:[32,16,45,30,39,10,38],capit:16,reduct:50,peopl:20,bigtriangleup:46,enhanc:[51,15],minscaleadjust:42,visual:[40,23,7],accept:[31,28,48],hphantom:46,easiest:[19,20,35,28,31],graphic:35,prepar:[1,7],cap:46,uniqu:53,pmatrix:46,whatev:[46,2,38,1,48,19,24],cal:46,purpos:[31,51,50],getjaxbytyp:37,downharpoonleft:46,subseteqq:46,varprojlim:46,backslash:[46,25,22],topic:[16,13,7],critic:35,sharp:46,occur:[0,41,35,28,31,17,1,3,47,18,19,20,39,22,7,49,37,29,48],eqsim:46,pink:46,alwai:[28,16,1,46,31,7],multipl:[46,1,14],trianglelefteq:46,write:[29,1,48,20,23,50],pure:41,mathsf:46,tild:46,xhtml:[20,41],map:51,book:44,max:46,clone:35,spot:46,usabl:35,mac:[11,37,42,22],mai:[0,2,3,4,46,6,8,14,16,19,20,11,22,24,29,31,37,35,7,38,5,41,42,45,1,48,49,50,51],data:[12,0,32,42,28,31,38,19,20,39,45,35,10,37,24],grow:2,newlin:[46,15,18],vartheta:46,preceq:46,explicit:[0,7,22,20],uparrow:46,produc:[6,14,19,20,25,22,23,45,26,28,31,33,50,10,7,29,42,24,47,48,11,51],inform:[0,42,2,29,44,18,40,31,11,22,19,51,7],"switch":[51,14,35,15,33],preced:[31,7,22],combin:[0,14,15,46,40,20,50,7],block:[11,14,42,15,20,30,3,46,6,39,22,51,7],approx:46,comfort:35,lsh:46,tex2math:33,still:[19,41,28,2,29,44,1,40,22,34,50],pointer:38,ttf:35,dynam:[0,32,13,1,3,48,20,22,49,23,51,7],entiti:[46,41,15],amssymbol:[40,20,46,14,7],conjunct:14,group:[0,41,4],monitor:4,polici:35,ignoreclass:5,platform:[23,13,2,20],window:[32,28,6,3,47,18,31,48,37],"05em":46,bookmarklet:7,main:[46,14,35,1,16,38,53,47,40,20,32,22,7,10,37,24,51],mathexampl:48,non:[12,0,17,46,20,51],within:[0,14,35,15,28,20,16,46,41,30,7,48,5,6,25,33,31,49,51,37,38],myinputjax:39,initi:[0,14,49,46,30,47,32,5,20,39,22,7,19,51,37,45,1],safari:[50,37,3,15],half:31,now:[14,35,15,44,30,20,50,7],discuss:[12,35,7,3,4],nor:[6,21],term:[20,14,7,18],name:[0,30,5,6,7,12,14,15,40,18,19,20,21,22,24,25,26,28,29,3,31,35,10,37,38,39,46,41,42,45,53,50],opera:[50,52,37,3,15],boxdot:46,drop:35,separ:[19,14,35,53,18,5,20,41,22,11,7,1,26],messagestyl:[6,22,18],confid:23,varsupsetneqq:46,compil:31,domain:[20,7,35],replac:[0,14,15,41,3,48,20,25,7,51,37,38,39],individu:[45,15,26,48],continu:[0,14,46,19,49,7,1],happen:[41,35,17,1,46,49,51],shown:[46,21,22,47,48],accomplish:[20,7,3,35,50],"3rd":20,space:[15,48,46,20,22,50,9,51],intermix:30,internet:[0,15,46,3,47,18,40,31,22,50,51,7,26],formula:[48,22,34,23,50,51],correct:[31,14,3],she:50,simeq:46,earlier:[20,1,7],migrat:[13,14],ajax:[0,7,16,1,30,32,19,31,39,37],mime:[41,45,20,39,10,37,24],underleftarrow:46,brower:46,ord:46,care:[46,20,3,26],ntrianglelefteq:46,couldn:31,x00b1:20,synchron:[0,28,13,44,17,1,3,48,19,31,30,49,37,29],mscarri:41,thing:[46,20,21,48],place:[0,42,6,46,4,48,19,20,29,25,22,35,7,38,1,33],mathop:46,unwis:50,think:[46,22,48],frequent:[5,19],first:[19,41,42,1,28,31,46,3,49,48,5,20,29,21,22,8,35,10,7,24,51],origin:[38,46,35,29,17,3,48,19,20,45,10,7,24],lfloor:46,oni:35,directli:[35,15,1,3,48,46,31,39,8,51],onc:[0,35,28,29,46,30,48,40,20,39,33,1],arrai:[30,46,6,9,37,15,17,19,21,22,24,25,26,27,28,29,31,33,10,7,39,5,42,43,11,50,51,52],yourself:[35,20,17,3,46,31,22,7],submit:4,open:[13,41,35,47,46,20,8,23,36],ios4:15,size:[11,42,15,53,48,46,25,7],given:[12,0,38,15,2,29,17,46,53,18,19,31,21,1,22,45,28,51,37,24,39],ifmodul:35,referenec:37,leftrightharpoon:46,circl:46,white:53,conveni:[20,38,22],hub:[0,30,5,6,7,9,11,14,40,16,18,19,20,25,22,24,26,27,3,31,33,34,37,39,46,32,42,43,45,1,47,48,50,51,52],especi:51,copi:[14,35,3,4,20,41,7,23,37,39],specifi:[30,46,6,9,11,12,14,15,17,19,20,21,22,25,28,29,31,37,34,35,7,5,42,53,47,49,50,51,52,1],github:[14,35],enclos:[51,53,42,22],quad:46,than:[0,30,5,6,7,8,9,14,15,40,17,19,20,39,22,23,45,26,28,29,35,10,37,38,46,41,42,44,53,48,49,50,51,1],serv:[20,15],wide:[23,51,35],instanc:[12,7,45,1,5,39,37,38],underbrac:46,were:[19,14,45,48],posit:[17,42,15],stub:39,browser:[30,5,6,12,13,14,15,40,20,11,22,23,45,26,3,37,41,33,35,7,46,32,42,44,47,49,50,51,52],preccurlyeq:46,delic:11,lnot:46,doublecup:46,nleftrightarrow:46,argument:[29,28,1,31,38,26],hskip:46,doctyp:[20,41,50],engin:[23,13],techniqu:[14,3],npreceq:46,consortium:23,note:[0,3,46,6,8,37,20,21,22,45,25,29,31,35,7,39,5,42,53,47,48,50,51,52,1],x2260:20,jsmath:[13,51,33],noth:[20,28,31],channel:[19,44],updownarrow:46,surd:[46,15],sure:[46,14,35,15,29,1,4,48,5,20,50,7],windowset:47,normal:[5,28,46,3,40,20,22,51,53],buffer:25,compress:7,beta:[46,50,7],pair:[12,0,28,53,5,21,19,10,37,24,25,26],fileurl:0,beth:46,hotfix:7,latex:[13,44,46,5,20,22,23,51,7],renam:14,textarea:5,later:[29,41,42,28,17,1,46,31,7,37],drive:35,typeset:[0,30,5,15,18,19,11,22,23,45,27,3,43,34,37,32,42,31,44,1,47,48,49,51],badg:4,sigma:46,mathfrak:46,showmathmenu:42,show:[46,35,20,4,48,40,6,21,22,31,36,47,26],autoreset:28,parentnod:[3,15],unprocess:[37,45,48],concurr:30,permiss:[20,35],hack:50,isfirefox:37,corner:[32,22,18],xml:[23,44],onli:[0,2,3,4,5,6,14,15,40,20,21,22,23,45,29,31,37,35,10,7,46,41,42,44,53,48,50],explicitli:[46,14,15,31,5,20,22,7,38],activ:[14,35,28,44,4,48,49,41,50,51],written:[20,8],inlinedelimit:46,otim:46,black:46,offici:7,geq:46,mypic:[5,43,21,27],nearli:[40,46,7,26],variou:[0,42,2,29,16,53,18,19,6,11,10,7,51,26],get:[12,13,41,42,15,28,31,30,1,3,18,46,20,29,11,22,48,35,50,7,38],cannot:46,ncong:46,downarrow:46,nsim:46,requir:[0,5,14,28,46,3,40,31,39,7,19,23,51,37,24,1],truli:48,prime:46,lceil:46,mathpunct:46,consist:[46,50,1,21,41],hostil:20,intermitt:[32,18],shortmid:46,retypeset:48,where:[0,30,4,46,6,12,14,18,19,20,25,45,28,31,37,35,10,7,40,32,42,24,53,48,49,51],wiki:[20,51,7,3,2],often:[46,20,53,51],lozeng:46,ismac:[37,30],concern:[51,37],infinit:25,detect:[15,28],parent:[12,38],enumer:46,label:[47,26],enough:[1,21],between:[46,7,15,28,31,1,47,19,20,50,51,37,45],maltes:46,"import":[0,35,15,1,40,49,19,7],across:[44,50],absenc:2,longleftrightarrow:46,vdot:46,screen:[0,15,48,1,18,40,23,7,24],negmedspac:46,come:[14,35,1,3,40,31,41,50,51,7],leftleftarrow:46,img:[27,53,3,5,43,21],timout:0,pertain:20,audienc:50,inconsist:14,overbrac:46,improv:[14,15,4,22,50,7],among:7,color:[46,53,21,15,22],operatornam:46,period:[0,32,35],colon:[46,53],cancel:28,"70kb":7,bigcirc:46,msrow:41,damag:20,needlessli:31,myserv:7,skew:46,mark:[0,41,46,5,20,33,51,53],addit:[0,14,15,28,20,17,46,48,40,6,41,1,22,31,19,10,37,24,53,45],succapprox:46,fade:6,arcsin:46,resolut:23,processenviron:5,breve:46,texfont:6,blacktriangl:46,those:[46,6,37,17,19,20,21,22,23,45,28,29,31,10,7,39,40,41,35,24,53,48,51,1],"case":[46,14,42,28,31,16,38,53,3,48,19,20,21,22,45,35,51,7,24,1,26],kappa:46,tostr:28,oldstyl:46,addtext:12,invok:50,invoc:7,margin:25,opera10:42,advantag:[50,1,14,7,2],barwedg:46,leadsto:46,henc:35,worri:[19,51],destin:37,updatemath:48,bigwedg:46,develop:[14,35,44,4,41,7],author:[14,18,39,22,34,23,51],media:[53,7,35],postjax:[51,22],same:[5,14,35,15,29,46,8,27,40,20,25,19,49,43,7,24,1],html:[2,30,5,6,7,9,12,13,14,15,40,16,19,20,21,22,24,26,27,3,43,32,33,35,36,37,46,41,42,44,53,47,48,49,50,51,52],pad:[12,53],knuth:44,mathvari:51,document:[0,14,35,44,13,16,46,3,48,5,20,41,22,7,23,50,51,37,24,33],bring:51,finish:[44,49,1,3,48],vvdash:46,nest:[41,15,32],assist:[40,7],longleftarrow:46,capabl:[16,23,50],formaterror:37,mani:[46,7,15,49,53,5,31,37,1],extern:[0,32,31,1,19,49,37],submenu:[22,47,8],appropri:[46,19,39,33,10,51],macro:[15,46,20,25,22,7,26],markup:[46,0,51,41,44],leftharpoonup:46,overwithdelim:46,without:[0,14,42,6,46,19,31,41,11,51,7],model:[13,32,35,16,30,46,50,51,38],bigotim:46,stixfont:6,mml2jax:[41,43,40,20,22,51,26],loaderror:0,rest:[0,41,1,48,20,23,51],flavor:[40,7],speed:[50,51,14,15,7],versu:1,mathzoom:[40,53,34,26],nleqq:46,except:[40,20,49],littl:[0,29],blog:[20,51,7,2],treatment:46,yuicompressor:15,earli:[7,15],hover:[47,22,34],around:[46,7],read:[14,35,15,21,19,20,41,7],outermost:21,boldsymbol:46,messsag:18,getjaxbyinputtyp:37,moo:38,world:[23,31,7],lasterror:37,mod:46,sum_:51,blackberri:15,cdot:46,integ:37,server:[14,42,15,3,40,20,35,7],either:[0,14,35,2,29,16,53,3,5,20,21,7,34,19,50,37,52,25],output:[3,46,9,11,13,14,15,19,20,39,22,24,26,37,41,33,7,38,40,32,42,44,45,53,47,48,50,51,52],rollov:15,manag:[12,32,35,2,31,44,30,18,20,50,51,45],lesssim:46,node:12,respect:[11,42,28],constitut:16,pod:46,slice:28,easili:[23,20,51],definit:[0,42,15,53,47,40,25,34,23,11],shoveright:46,inputid:45,dashleftarrow:46,mathcal:46,complic:[50,21,41,52],refer:[13,7,35,20,45,3,48,19,6,29,39,31,49,37,38],power:[1,4],inspect:37,broken:51,thinspac:46,found:[0,20,4,31,22,10],regexp:5,"throw":[24,10,39,3],trianglerighteq:46,comparison:[1,37],underwai:1,ddddot:46,act:[46,44,1,19,31,25,22,51],industri:44,processor:[46,41,42,1,44,53,30,47,40,20,25,50,9,7,52,51,26,11],hookrightarrow:46,nobreakspac:46,routin:[12,0,49,31,39,10,37,24],nsupseteqq:46,effici:[38,48],elementari:41,lessdot:46,triangledown:46,compos:41,rightharpoondown:46,mathbackground:46,your:[0,2,3,4,5,6,7,8,9,11,13,14,15,40,20,25,22,23,27,31,33,34,35,36,37,46,41,42,43,44,21,1,47,48,49,50,52],compon:[0,30,46,14,40,16,19,20,23,24,26,37,41,10,7,38,29,32,53,47,49,51],log:[46,20,35,18],area:[25,18],fontwarn:[6,22,26],lor:46,strict:[50,35],compliant:[14,15],interfac:[35,2,20,8,23,36],lot:[19,25,35],lambda:46,programmat:[51,33],cloudfront:20,buggi:46,categor:26,faster:[50,7,15],pull:35,mathml:[13,41,15,44,45,46,3,51,40,20,11,10,52,8,23,50,9,7,24,36,26],furthermor:[1,14,22,7],possibl:[0,41,35,15,28,6,53,18,40,20,22,31,50,51,7,38,1],"default":[0,30,5,6,7,9,11,14,40,18,20,25,22,24,26,27,28,43,33,34,35,10,37,39,46,42,47,50,51,52],processescap:[5,46,14,7],buildrel:46,notag:46,embed:41,connect:[40,20,51,7,31],taylor:20,creat:[0,30,4,12,18,19,39,45,28,31,10,38,29,32,35,44,24,1,47,49,51,53],certain:[19,29,49],leftrightsquigarrow:46,risingdotseq:46,varliminf:46,file:[0,2,3,46,6,7,8,10,14,15,17,18,19,20,21,22,24,26,28,29,30,31,33,36,37,39,40,35,44,45,53,49,50,51,52,1],outputjax:[32,16,45,30,39,24],fill:[50,52],again:[46,0,37,45,48],iiiint:46,googl:4,pmod:46,event:[0,15,44,3,48,19,49,22,51],wai:[19,14,35,28,2,31,1,3,18,5,20,51,27,22,48,50,43,7,29,39],you:[1,2,3,4,5,6,7,8,9,11,14,15,16,17,18,19,20,25,22,23,24,26,27,28,30,31,33,35,36,37,38,39,40,41,42,43,21,46,47,48,49,50,51,52,53],trash:45,sequenc:[13,7,35,17,46,30,19,49,37],symbol:[46,20],dashv:46,track:[51,4],menuset:[40,22,34],reduc:[46,7],mathcolor:46,lbrace:46,directori:[0,42,15,49,44,45,30,18,40,20,39,22,19,35,10,7,24],descript:[27,43,3,5,6,32,22],lbrack:46,hello:31,calle:38,potenti:1,escap:25,dst:37,negthickspac:46,lvertneqq:46,all:[0,2,30,5,6,7,13,14,15,40,18,19,20,39,22,23,26,27,28,29,3,31,32,37,38,46,41,35,43,44,1,49,50,51],consider:7,illustr:48,dollar:[5,20,46,14,7],abil:[50,51,14,35,15],follow:[19,14,42,15,28,31,16,46,30,48,40,20,21,53,35,51,7,38,39,26],alt:[3,22],disk:[40,20,7,35],multlinewidth:25,scr:46,articl:44,init:38,program:[32,2,49,16,45,1,30,20,23,51,38],smile:46,cgi:0,introduc:[20,7],liter:5,multlin:[46,25],vert:46,far:[0,29,35,18],varrho:46,"1px":[12,46,53],verb:46,mechan:[29,28,17,1,30,19,49,38],difficult:[31,41,49],loadcomplet:[0,37,39,7],veri:8,preferredfont:42,fourth:1,list:[2,30,46,6,8,9,36,37,16,19,20,25,22,24,27,28,43,34,35,10,7,5,42,45,1,47,48,11,51,52],"_html":50,emul:50,adjust:[42,3,48,11,8,36,7],plain:46,small:[42,15,18,46,25,51],dimens:15,getalljax:[37,48],lll:46,tex:[2,3,5,6,7,8,9,10,13,14,15,40,19,20,25,22,23,26,27,32,33,35,36,37,39,46,41,42,44,1,48,50,51],zero:[6,17],design:[41,3,4,40,23,36],pass:[0,14,15,28,29,17,1,30,47,19,31,51,37,38,26],overlin:46,further:[17,51,39,1,50],what:[0,4,46,6,13,37,15,20,11,22,23,27,28,43,34,35,7,5,41,42,47,48,50,51],sub:32,section:[3,5,6,9,11,14,15,40,25,22,26,27,31,37,33,34,36,7,46,41,42,43,47,50,52],advanc:[16,13,23,7],abl:[14,42,28,2,20,3,48,19,6,22,8,23,35,36,7],delet:42,version:[13,14,35,15,48,30,3,4,32,40,20,39,7,34,45,10,37,24],sup:46,"public":[29,35],hasn:[0,10,14,24,18],full:[0,15,16,3,48,40,31,22,23,7],themselv:[20,37,30,21,32],geqslant:46,modular:[23,41],ggg:46,standard:[19,35,44,46,40,20,23,50,51,7,53],modifi:[13,14,2,48,46,18,40,20,39,7,19,37,24],valu:[0,30,46,6,9,12,15,17,19,21,22,25,26,27,28,31,34,37,38,5,41,42,43,53,47,48,11,51,52,1],search:[23,13,37,4],sender:19,prior:[46,22],amount:[6,25,28],action:[0,7,28,29,32,17,46,3,18,19,31,30,39,44,34,49,51,37,48,1],mathjax_wikipedia:3,mml_htmlormml:[14,2,3,40,20,8,50,36,7],magnitud:50,llap:46,via:[0,2,30,5,6,14,15,18,19,20,39,45,26,28,3,34,35,7,38,40,41,42,1,51],shorthand:48,filenam:[31,14,3,7],href:[46,21,15],inappropri:19,emptyset:46,simbl:3,decrement:17,establish:40,select:[41,35,42,47,40,11,50,37],proceed:[1,21],x41:46,distinct:16,ctrl:22,regist:[0,7,29,44,30,19,49,39,10,37,24,51],rightsquigarrow:46,taken:[19,46,1,48,50],imath:46,ispc:[37,30],vec:46,flat:46,diamond:46,desir:[40,38,3,35],mlongdiv:41,ital:[0,22],flag:22,aleph:46,particular:[12,0,7,35,28,31,44,17,53,46,20,29,22,49,50,51,37,38],known:1,upsilon:46,mathml3:41,cach:[19,7],showmathmenumsi:[40,11,15],none:[29,27,42,28,43,5,31,22,51,7],outlin:15,det:46,dev:4,widehat:46,remain:[40,44],paragraph:[46,6,51,48,20],caveat:[20,35],def:[46,25,38],deg:46,scan:[37,22],myspan:21,challeng:40,registr:39,share:[20,7,35,4],templat:[36,7,2,8],succneqq:46,minimum:[37,42,15],unreli:14,explor:[0,15,46,3,47,18,40,31,22,50,51,7,26],phrase:[46,20],mathinput:48,huge:46,cours:[1,14,41,7],goal:23,awkward:38,secur:[20,3,35],rather:[0,30,46,6,9,14,15,17,19,20,39,22,23,45,26,28,7,38,5,41,35,53,48,49,50,51,1],anoth:[29,35,17,1,18,19,49,10,48,51,26],showmathmath:11,csc:46,snippet:[12,13,27,43,4,5,6,21,22,37],ddagger:46,stix:[42,15,44,46,6,35,51,7],simpl:[50,21,22,18],css:[0,3,46,6,9,13,14,15,20,11,22,24,26,37,41,33,34,35,7,40,32,42,44,45,53,47,48,50,51,52],unabl:6,resourc:15,referenc:6,mtabl:40,variant:44,reflect:[30,48],vdash:46,mstack:41,impliedbi:46,associ:[11,42,28,45,48,31,39,35,10,37,24,51],welcom:4,lhd:46,footer:7,onto:[44,20,1,37,48],ambigu:16,caus:[0,46,6,37,18,19,20,25,22,45,29,31,32,7,39,5,41,35,1,47,48,51],callback:[0,32,28,29,16,17,1,30,48,19,31,39,44,49,37,45],firefox3:42,merror:53,unrhd:46,help:[13,14,35,4,20,47,50,7],soon:[7,3,22,48],trade:[50,7],through:[46,14,35,15,29,1,47,19,49,41,50,51,7,38,26],hierarchi:[7,35],paramet:[0,30,46,12,14,15,17,18,20,25,22,24,26,27,28,29,31,37,10,7,38,39,40,43,45,48],style:[12,0,42,15,13,44,46,30,47,18,5,6,21,22,34,11,51,37,45,53],arial:[46,42],border:[12,46,53],x221a:41,processupdatetim:37,x221e:51,late:[44,3],isreadi:[32,30],pend:17,amsmathaddit:1,mathplay:[50,3,15,47,22],might:[0,14,35,31,1,4,19,20,25,7,51,41],alter:[5,48],good:[1,3,4],"return":[12,0,41,38,28,29,17,1,49,18,19,31,39,48,45,10,37,24],textstyl:46,hslash:46,getelementbyid:48,rlap:46,mathscr:46,unlik:[23,7,39],bigcup:46,ntriangleleft:46,iff:46,x2212:[20,51],fulli:[20,1,41],unicod:[46,6,41,42],x2211:51,subsystem:30,originaltext:45,weight:[21,38],hard:[35,15,4,40,20,7],realli:[31,22],nless:46,expect:[46,50,1,7,22],beyond:4,orient:[16,38,32,30],"try":[35,4,19,20,39,38],shortcom:49,skiptag:5,print:[23,53,35],occurr:49,msie:[11,37,52],foreground:53,availablefont:[6,7,42],safari3:42,ast:46,offsetx:42,symbian:15,mml:[32,52,40,20,10,45,51],reason:[0,41,31,1,3,47,18,46,20,25,50,37,39],base:[14,42,35,2,49,16,30,3,32,6,39,45,23,50,7,38],put:[0,14,35,49,46,20,7,26],mathr:46,offseti:42,basi:[50,7,52],succnapprox:46,stanard:46,drupal:2,msbm10:20,showprocessingmessag:[22,26],perhap:[31,7],bumpeq:46,elementjax:[32,16,30,39,10,45],stixgener:[46,42],getelementsbytagnam:3,assign:[5,31],major:[23,50,7,3],notifi:19,boxplu:46,feel:4,exchang:44,lastnam:31,number:[0,2,40,6,14,15,18,20,21,22,45,25,28,31,37,10,7,39,32,35,24,1,50],fadeoutstep:6,done:[17,1,30,20,51,7],least:[50,51,37,7],blank:[29,28],stabl:[20,7,35],miss:[46,28],differ:[46,7,35,28,31,1,48,19,20,49,50,51,37,38],script:[0,2,30,5,8,10,12,14,15,40,19,20,39,22,24,3,37,33,36,7,46,35,45,1,48,50,51],interact:[23,20,51,7,45],smoother:6,construct:[51,1],statement:[1,28],illeg:[21,15,7],store:[12,29,14,42,15,28,45,1,48,31,32,33,7,10,37,24,51],option:[5,6,8,9,13,14,40,20,21,22,25,26,27,43,37,33,34,7,38,39,46,42,47,11,51,52],nleftarrow:46,triangleleft:46,ntrianglerighteq:46,selector:[53,22,18],tex2jax_process:5,part:[5,41,35,28,49,46,8,3,40,20,25,22,19,23,50,51,7,38,1],pars:[46,15],binom:46,cosh:46,kind:51,aaa:25,prebuilt:20,whenev:[29,41,35],remot:35,remov:[29,7,15,48,45,18,5,6,22,51,37,24],dtd:20,bridg:[14,45],arrang:28,ffff88:53,comput:[35,37,42],nleqslant:46,packag:[44,7,35,33],expir:12,"null":[12,0,32,42,15,28,29,38,3,18,6,39,22,48,45,10,37,24],built:[13,14,3,50],equival:[12,28,1,48,40,31,21],lim:46,self:[20,41,15],ell:46,also:[3,4,5,12,14,40,16,18,19,20,11,22,45,28,31,35,7,38,46,41,42,44,47,48,49,51],brack:46,build:20,brace:46,distribut:[20,36,14,35,7],appendchild:[12,3],addel:12,reach:7,react:29,most:[19,32,35,15,2,44,30,53,3,40,20,39,28,50,7,38],plan:20,rho:46,alpha:46,rhd:46,vardelta:46,clear:[29,42,28,30,18,19],tpl:2,exp:46,latest:[14,35,2,3,4,48,46,20,33,8,50,36,7],leftroot:46,cdata:15,nshortparallel:46,carefulli:[21,42,48],cdn:[14,35,15,2,3,48,46,20,33,8,50,36,7],finv:46,particularli:[40,50,35],rightleftarrow:46,font:[0,46,6,13,14,15,18,20,21,22,23,25,35,7,11,42,44,53,47,48,49,51],find:[7,4,48,6,33,8,50,51,37],preremoveclass:22,execut:[0,28,29,17,1,30,19,31,51,7],pretti:35,solut:[20,51,35,4],delayedx:28,queu:[17,1,7,28,29],factor:[11,42,15,22],noerror:[40,20,46],tagsid:[25,26],precnsim:46,express:[19,29,1,48,5,25,22],strut:46,nativ:[41,16,3,40,11,23,50,51,52],mainten:14,greasemonkei:[7,3],konqueror:[50,37],restart:[5,17,1,7,35],ie9:[50,35,15],ie8:[50,15],ie7:50,acut:46,vmatrix:46,common:[13,14,2,20,44,46,41,40,6,21,7,37,39],set:[0,30,5,6,7,9,12,14,15,40,18,19,20,21,22,45,25,26,27,28,29,3,31,33,34,35,37,38,46,32,42,43,44,53,47,48,49,11,51,52,1],overrightarrow:46,startup:[13,7,15,48,30,1,3,32,19,39,22,37],see:[0,30,4,5,6,7,8,10,14,15,40,17,19,20,11,22,26,27,28,29,31,33,34,35,36,37,46,41,42,43,44,53,47,48,49,50,51,1],sec:46,arg:46,ams_hml:7,disadvantag:50,langl:46,inconveni:14,someth:[46,35,4,48,5,20,22],particip:4,won:[1,7,35,15],subscript:[46,15],experi:22,altern:[0,46,31,50,51,38],numer:[37,41],complement:46,javascript:[0,2,3,46,6,8,11,13,14,16,19,20,21,22,23,45,25,26,28,31,34,36,7,38,40,32,42,44,53,47,48,49,50,51,1],isol:15,mailbox:[19,44],bmatrix:46,consumpt:15,distinguish:10,longrightarrow:46,errat:7,classnam:3,popul:30,varsigma:46,last:[0,35,28,17,53,46,37,26],delimit:[46,14,15,5,20,51,7],hyperlink:51,nvdash:46,context:[5,47,22,28],overset:46,hbar:46,whole:[49,37,48],load:[0,2,3,46,7,10,13,14,15,17,18,19,20,39,22,23,24,28,29,30,31,33,36,37,40,32,35,44,1,48,49,50,51],markdown:51,simpli:[5,14,35,28,43,17,46,48,40,31,27,22,7,23,37,39,33],point:[46,17,7,20],instanti:38,schedul:31,usemathmlspac:9,header:[7,35,2,8],suppli:[37,45,22,28],bigve:46,mistak:21,zeta:46,becom:[14,35,28,1,4,19,41,38],gneq:46,devic:[14,15,7],due:14,empti:[32,42,28,1,30,22,51],otherwis:[0,7,28,46,18,40,20,32,8,50,37,38],strategi:50,invis:35,fire:[30,7,3,31],imag:[14,42,15,43,3,27,5,6,21,23,35,7],coordin:[17,51,1],understand:[40,51],demand:40,urcorn:46,convers:46,blacksquar:46,look:[12,46,41,42,28,2,29,53,4,18,5,20,48,8,35,51,37,26],solid:[12,46,53],pitchfork:46,lvert:46,"while":[12,0,14,35,20,52,46,3,19,6,41,22,49,50,51,7,29,1],blacktriangleleft:46,nprec:46,abov:[12,14,42,15,28,20,1,3,48,46,6,22,31,35,50,7,38],circlearrowright:46,bowti:46,everyon:19,loop:[25,45],pack:15,subsect:39,measuredangl:46,vartriangl:46,eqslantless:46,biguplu:46,itself:[46,14,35,1,28,29,17,53,30,32,19,41,22,7,45,51,37,38,39,26],overleftarrow:46,limit:[12,0,41,46,25,7],rightarrow:46,xleftarrow:46,shorten:18,shorter:15,redisplai:18,conflict:[51,15],upuparrow:46,optim:[50,15],domin:44,alert:[19,31,1,28],jsmath2jax:[27,15,26,33],temporari:7,user:[3,4,46,6,13,18,19,20,11,22,23,28,33,34,35,7,40,41,42,47,48,50,51],robust:[19,44],stack:25,recent:[23,3],lower:[32,15,16,30,18,46,22],task:46,older:[7,35],entri:[44,17,53,15],searchabl:23,ngeqq:46,textit:46,curvearrowleft:46,normals:46,scriptsiz:46,fallingdotseq:46,explan:20,rvert:46,obscur:[15,18],press:22,amp:[46,15],regardless:48,cup:46,setscript:12,blacklozeng:46,ffeeee:46,input:[3,46,8,9,36,14,15,19,20,39,22,24,25,26,37,32,33,10,7,38,40,41,44,45,1,48,50,51],subsequ:[46,39],sin:46,oslash:46,format:[13,14,42,44,45,46,11,40,20,21,22,23,50,10,41,24,51],big:[46,35,26],moodl:2,tomathml:[40,45],game:46,insert:[27,28,3,5,43,39,22,8,36,37,24,51],bit:[11,38],diagup:46,semi:53,varkappa:46,signal:[29,7,28,49,16,30,32,19,31,39,44,37],altough:31,resolv:15,collect:[31,53,45,1,28],api:[16,13,23,20],mathrel:46,swarrow:46,scrip:14,gtrless:46,creation:[10,30],some:[2,3,46,6,14,16,17,19,20,39,22,23,24,26,28,31,37,35,10,7,38,40,41,42,45,1,11,48,50,51,52],back:[6,35,45],emph:46,global:[16,50,32,28,48],urgent:7,sampl:[35,49,53,30,48,19,20,22,50],instal:[13,14,42,15,20,35,46,6,8,23,50,7],scale:[23,11,42,15,22],substitut:25,mathemat:[0,3,5,6,8,10,11,7,15,40,19,20,25,22,23,24,27,43,33,34,35,36,37,39,46,41,42,44,45,1,47,48,50,51],larg:[46,0,14,7],prod:46,reproduc:48,sqsubseteq:46,tex2jax:[5,14,15,48,46,3,32,40,20,41,22,51,7,26],machin:[44,35],garamond:46,previou:[31,1,29,28,18],run:[0,3,5,6,9,37,17,19,20,25,22,27,28,30,43,35,7,29,41,42,31,1,11,48,49,50,51,52],doteqdot:46,odot:46,step:[6,51,30,2,20],hookleftarrow:46,varsubsetneq:46,impos:35,ngeqslant:46,reappear:18,materi:[15,48],dialog:15,rangl:46,succcurlyeq:46,gamma:46,file3:1,file2:[0,1],file1:[0,1],file4:1,bmod:46,msam10:20,prec:46,notat:[44,46,20,23,51,7],isjax:37,chang:[11,14,42,15,2,48,3,47,18,20,25,7,35,51,37,45],announc:49,triangl:46,question:[20,39,4],fast:[14,15,7],custom:[46,15,18,40,20,23,50],adjac:15,perp:46,includ:[0,2,30,5,6,7,9,11,14,15,40,16,19,20,21,22,23,25,26,27,28,3,31,32,33,34,35,10,37,39,46,41,42,43,53,47,48,50,51,52,1],suit:[6,14,41,7,20],nativemml:[41,52,47,40,11,50,51,24,26],overleftrightarrow:46,ulcorn:46,properli:[12,0,14,35,15,20,45,1,3,48,6,41,31,37,38],poster:29,atop:46,loadhook:[0,37,31],serif:[46,0,53,42],link:[14,35,15,2,20,16,6,49,7],translat:[51,10,39,24,15],delta:46,line:[46,14,35,15,2,30,3,5,20,27,7,50,51,41,26],enspac:46,rmoustach:46,qquad:46,divideontim:46,geqq:46,similar:[49,35,28],enlarg:34,constant:[19,25],doesn:[19,42,28,45,46,3,40,22,35,7,38],repres:[12,27,20,53,18,5,6,21,22,23,43,24,51],mathdiv:[12,31,1,48],tbinom:46,home:0,phantom:46,iiint:46,titl:[20,48],sequenti:[49,1,30],invalid:[46,21],llcorner:46,toaudibl:45,bracket:[46,21,22],shoveleft:46,xrightarrow:46,department:35,supseteq:46,nice:3,delayclear:42,msup:[20,51],alttext:43,varsubsetneqq:46,eval:28,newcommand:46,svn:[20,14,35],rightharpoonup:46,land:46,mimetyp:[45,10,39,24],svg:[51,15],supseteqq:46,depth:46,dot:46,leak:45,scroll:36,prototyp:38,code:[0,3,4,5,8,12,13,14,40,17,19,20,21,22,27,28,29,30,31,37,7,46,32,43,44,53,48,49,11,1],partial:46,queri:51,tiddlywiki:2,edu:35,privat:[49,39,35],elsewher:48,friendli:20,send:[19,29,7],becam:44,sens:51,sent:[19,29,37,44],actiontyp:42,unzip:35,gnsim:46,xxxxxxxx:[20,35],mous:[51,47,42,15,34],tri:[46,0,14,42],ischrom:37,mathit:46,button:35,geograph:7,fewer:40,nleq:46,userscript:3,maction:[42,15],pleas:[21,4],impli:[46,41],smaller:[40,0,15],fortun:19,arctan:46,natur:[23,20,46,35,51],varupsilon:46,download:[0,14,35,15,6,20,22,51,7],hspace:46,click:[42,47,40,11,22,34,8,35,51,7],append:[12,35],compat:[44,50,7,15,22],index:[20,35,2],access:[46,35,15,2,31,45,1,47,40,20,29,23,7,38],mathjax:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53],backprim:46,vargamma:46,closur:[31,28,48],leq:46,intercept:20,let:[14,35,41,3,47,20,21,22,50,37,52],sinh:46,vertic:5,sinc:[0,46,14,15,40,17,19,20,25,22,28,37,7,38,29,41,53,11,48,49,50,51,1],tex4ht:51,rtime:46,convert:[13,41,28,46,3,18,5,33,23,51,24],sqcap:46,larger:[40,20,51,7],technolog:[40,23,7,4],zscale:22,circledast:46,typic:[5,46,10,7,35],honor:35,chanc:[5,19,29,20],firefox:[35,15,3,50,37,52],rgroup:46,appli:[46,35,7,38],iskonqueror:37,lessgtr:46,"boolean":37,smallmatrix:46,cloud:[14,7],from:[0,2,30,46,7,10,13,14,15,18,19,20,25,22,24,27,29,3,31,33,35,36,37,38,39,5,32,42,43,45,1,47,48,50,51],zip:[20,35,15],commun:[19,13,4,20],chi:46,doubl:[40,7,25,22,34],upgrad:[6,35,4,13],varphi:46,next:[46,49,45,48],implic:35,few:[46,20,35,33],msqrt:[20,51],simpler:18,newmath:48,src:[5,14,2,43,46,3,27,48,40,20,21,33,7,8,50,36,37,1],nsubseteq:46,doublebarwedg:46,projlim:46,"4ac":20,actual:[12,0,41,28,17,46,48,19,31,22,7,10,37,24,1],versionatleast:37,account:12,alik:3,retriev:12,augment:[38,10,39,24],aperson:31,thin:25,control:[5,27,42,35,20,46,7,47,40,6,25,22,34,43,50,9,37,52,53,11],tau:46,tar:35,process:[0,3,5,7,12,13,14,15,40,17,18,19,20,25,22,24,26,27,30,31,33,10,37,39,46,41,43,45,1,48,50,51,52],dfrac:46,preformat:15,high:[23,50,51],tag:[2,30,46,8,14,15,19,20,21,22,24,25,26,3,43,37,33,10,7,5,41,35,45,48,51],tan:46,delai:[0,7,42,28,29,47,18,40,22,34,19,37],fontwarns:53,gcd:46,importat:16,getelementsbytagnamen:3,subdirectori:[35,10,24,45],instead:[46,14,35,15,31,17,1,48,19,20,51,7],class4:38,class2:[5,38],smallfrown:46,sim:46,class1:[5,38],simplesup:38,frac:46,overridden:[42,24,18,39,45,10,38],mspace:[46,20,41,15],anothermethod:38,frak:46,filtertext:18,redund:[38,22],essenti:[40,46,51,7,38],light:[46,38],correspond:[37,42,33,7],element:[30,5,6,12,37,15,40,19,20,21,22,24,29,32,10,7,38,46,41,42,45,53,48,49,51,1],issu:[0,41,4,18,22,51,7],unaccept:50,allow:[2,3,46,14,15,18,19,20,21,22,23,25,31,34,35,7,38,29,41,42,44,53,47,11,1],fallback:[35,42],mjx:12,fastest:50,move:[35,14,42],nsucc:46,comma:[53,3,46,22,7,26],dagger:46,mathjax_tooltip:42,movabl:[36,2],chosen:50,coth:46,varxi:46,therefor:46,pixel:42,multimap:46,crash:22,greater:46,handl:[0,14,15,49,44,46,3,32,19,6,41,7,11,1,37,52,39],supsetneq:46,nokia:15,innermost:21,dai:12,maxbuff:25,front:[40,15],successor:33,gggtr:46,sourceel:[19,45,24,48],anyth:[19,26,4],edit:[7,2,8],class3:[5,38],mode:[46,42,15,5,20,33,35,50,51],varomega:46,"2em":46,genfrac:46,subset:46,delaypost:42,nointerest:29,meta:50,"static":38,our:[14,35,15,4,20,36],rightleftharpoon:46,ie6:42,special:[46,41,31,53,5,20,22,7,49,23,50,51,37],out:[0,14,42,35,1,19,6,11,50,51],variabl:[32,28,16,3,30,48,46,31,38],lesseqqgtr:46,reflow:15,categori:1,rel:[0,11,42,15],moveabl:[36,2],merg:[12,37],red:[46,20,21],negthinspac:46,nsucceq:46,insid:[15,2],workflow:41,manipul:48,eqslantgtr:46,releas:[20,7,3,35],bleed:15,indent:[25,22],could:[0,14,31,16,46,4,48,19,20,41,7,51,37,45,1],ask:[4,48,20,25,51,7],succ:46,keep:[14,35,2,44,48,46,20,50,51,7],gtreqqless:46,length:3,outsid:[5,50],"0em":22,uproot:46,unexpectedli:[46,20],rbrace:46,blogger:2,rbrack:46,precapprox:46,spadesuit:46,date:[20,14,35,15,7],uplu:46,clubsuit:46,bigsqcup:46,suffic:20,"long":[46,20,1,15,47],start:[0,14,35,1,28,13,46,30,49,51,19,20,21,22,8,36,7,29,39],unknown:41,system:[42,35,2,20,16,4,46,6,23,50],messag:[0,14,35,44,20,16,46,30,49,18,40,6,32,39,22,19,37,29],attach:[19,29,49],attack:20,termin:5,man:20,iota:46,rsh:46,supset:46,"1em":41,gtreqless:46,hdashlin:46,exactli:50,blind:51,ipad:15,gtrdot:46,subsetneq:46,structur:[0,7,28,31,44,48,19,20,32,37,26],charact:[46,41,42,15,53,5,6,25,22,51],htaccess:35,seriou:51,bet:35,exhibit:35,"function":[0,28,29,44,17,46,3,48,19,31,30,39,49,51,37,38,1],biggl:46,biggm:46,rrightarrow:46,unkown:37,lightli:50,close:[41,15,20,4,40,6,26],need:[0,1,2,3,4,5,6,7,8,10,14,15,17,18,19,20,25,22,23,24,28,30,31,35,36,37,38,39,40,41,42,44,45,46,48,49,11,51,53],turn:[12,5,14,28,29,40,41,11],biggr:46,min:46,mid:46,which:[2,30,5,7,10,14,15,40,18,19,20,21,22,24,25,26,27,28,29,3,31,32,33,34,35,36,37,38,46,41,42,43,45,53,48,50,51,1],hbox:46,mit:46,singl:[0,14,15,28,49,16,46,48,5,20,32,23,1,7,53],declaremathoper:46,mathjax_preview:[27,53,5,43,22,51],x22d6:46,unless:[20,15,28,50],who:[19,29,4],eight:50,leftthreetim:46,"class":[38,46,32,15,28,29,16,17,5,39,22,45,10,24,51,33],underset:46,placement:15,url:[0,14,35,15,3,47,40,20,7],gather:46,request:[0,15,29,46,30,19,31,50,7,1],face:[35,4,6,25,42,26],inde:[3,26],movablelimit:15,nmid:46,determin:[7,42,2,30,46,11,22,37],flux:1,occasion:7,fact:[29,14,39],backsimeq:46,mathjax_messag:18,leftarrowtail:46,verbos:[44,31,22],bracevert:46,woth:41,curlyeqsucc:46,inlin:[5,20,14],locat:[0,14,35,20,30,48,5,6,27,22,7,19,43,37,24,51,33],jax:[30,40,9,14,15,16,19,25,22,24,26,3,37,33,10,7,38,39,11,32,42,44,45,53,48,50,51,52],vartriangleright:46,forev:3,should:[3,5,8,36,14,40,17,20,39,22,24,25,28,29,31,37,33,10,7,46,41,35,21,53,48,50,52,1],imagefont:[6,42],vartriangleleft:46,suppos:[31,14,48],"5px":12,triangleright:46,"5pt":20,local:[35,28,20,1,3,48,6,22,7],hope:[6,14],precsim:46,liminf:46,looparrowright:46,increas:[14,15],bigstar:46,leqslant:46,smash:46,enabl:[46,14,2,5,20,8,36,7],organ:51,frown:46,stuff:37,integr:2,contain:[0,2,3,5,6,12,37,40,16,17,18,19,20,39,22,45,27,28,29,31,35,7,46,32,42,43,53,48,51,1],view:[41,42,35,16,3,20,33,23,50,7],conform:20,frame:18,apolog:14,temporarili:18,troubl:20,issafari:37,asynchron:[0,32,28,29,44,17,1,48,19,31,49,37],statu:[0,35,31],error:[0,14,46,3,4,40,20,41,22,10,37,24,39],jmath:46,pattern:[5,22],gtrsim:46,favor:14,state:1,quickest:20,theta:46,neither:[6,21],equiv:[46,50],omicron:46,nshortmid:46,kei:[12,0,28,29,17,19,22,37],entir:[37,22,7,48],closebox:6,ker:46,thumb:1,skipstartuptypeset:22,plugin:[2,47,22,8,23,50,51],admin:[36,8],nabla:46,equal:[1,37,38],gnapprox:46,etc:[46,1,7,22,48],eta:46,equat:[5,27,42,15,43,35,46,48,40,20,25,22,23,50,51,45],eth:46,limiti:35,lmoustach:46,onchang:48,comment:[15,53,40,20,22,7],varnoth:46,arriv:[19,49],solv:[7,3],arguement:31,sqcup:46,quit:48,showfontmenu:47,"55em":46,quotat:53,bbb:46,sqsupseteq:46,treat:[46,20],immedi:[0,17,1,30,48,19,7],smallsetminu:46,both:[0,14,15,31,44,1,30,40,20,41,22,7,8,36,37,38],alignat:46,varsupsetneq:46,otf:[35,15],psi:46,togeth:[14,28,1,40,41,37],injlim:46,present:[29,41,4,6,22,7],twoheadrightarrow:46,multi:46,iscallback:28,displaylin:46,align:[46,41,22],contextu:[13,41,42,47,40,11,22,34,50,51,45],studentdisplai:48,defin:[46,14,42,34,20,30,53,3,7,47,40,6,25,22,31,11,1,37,38,39,26],glossari:[44,13],layer:[15,2],almost:46,curvearrowright:46,site:[14,35,2,40,20,22,23,36,7],archiv:[20,35],substanti:[14,7],revis:35,halt:49,curlywedg:46,displaystyl:[46,48],parti:[19,20],cross:35,sqrt:[46,20,51],getx:38,extensiondir:39,oint:46,android:15,cssid:[46,15],curlyve:46,phi:46,http:[14,35,2,3,47,48,46,20,33,8,50,36,7],d3eoax9i5htok0:20,lleftarrow:46,"8em":[46,25],effect:[17,1,3],mrow:[20,51,41],student:48,php:[2,8],executehook:[29,28],off:[46,15,40,49,11,50,7],center:[46,22],well:[19,35,28,31,53,4,48,40,20,39,22,49,50,7],exampl:[0,3,4,46,6,7,9,11,12,14,15,17,19,20,21,22,24,25,26,27,28,29,31,32,33,34,35,10,37,38,5,41,42,43,45,53,47,48,49,50,51,52,1],command:[41,35,28,44,17,1,30,48,46,22,7,37],choos:[46,20,50],undefin:[46,20,28,31],setx:38,subsetneqq:46,sibl:15,usual:[28,31,1,46,6,39,22,51,7],curlyeqprec:46,paus:35,less:[46,35,5,20,51,37],obtain:[14,35,48,40,20,22,51,7,24],mistaken:51,mathclos:46,mathoutput:48,simultan:[1,30],web:[2,30,46,6,13,14,15,19,20,22,23,45,3,33,35,7,29,42,1,48,49,51],current_them:2,smith:31,textbf:46,cdotp:46,atopwithdelim:46,valid:[31,14,50],match:[5,29,42],webpag:33,piec:15,varpropto:46,punctuat:15,know:[29,31,3,19,20,10,7,24,51],cfrac:46,mathinn:46,recurs:[37,15],mho:46,nofont:6,like:[3,46,15,17,18,19,20,23,26,28,29,31,33,10,7,5,41,35,44,53,48,49,50,51,1],lost:31,messagehook:[19,29,37],necessari:[23,20,37,45,7],page:[2,30,5,6,7,8,12,13,14,15,40,16,18,19,20,11,22,23,45,27,29,3,31,33,35,36,37,46,41,42,43,1,47,48,49,50,51],captur:44,linux:37,"export":45,superclass:38,proper:[29,37],guarante:[0,1,48,17],librari:[16,1,32,35],glyph:[46,44],kern:46,assum:48,avoid:[14,15,46,21,22,51,41],tooltip:42,leav:[12,25,52,48],doublecap:46,supsetneqq:46,preload:[0,20],twoheadleftarrow:46,daleth:46,upharpoonright:46,journal:44,usag:13,host:[14,7],sphericalangl:46,although:[16,29,35,52],offset:42,panel:46,varepsilon:46,about:[19,14,42,15,28,20,46,7,4,48,40,6,11,22,31,49,35,51,37,29],ams_html:[46,14,48,40,33,7],rare:1,column:25,mathajx:14,mod_head:35,mapsto:46,constructor:38,fals:[5,42,15,29,46,3,47,40,11,22,9,37,38,26],bigoplu:46,eqalign:46,own:[14,35,15,20,16,1,4,46,6,49,50,10,7,24,51,26],amsmath:[46,14,1,40,20,25,7],circledr:46,automat:[17,1,18,46,20,39,50,51,7,38],bigtriangledown:46,guard:22,vphantom:46,circlearrowleft:46,transfer:[20,35],support:[13,14,42,15,20,30,46,3,4,32,40,6,41,23,50,51,7,52,11],much:[19,50,7,44,49],bigcap:46,arg1:31,"var":[12,28,1,3,48,19,31,38],stai:7,arg2:31,deliveri:[20,15],propto:46,unexpect:[11,22],precnapprox:46,studentansw:48,bodi:[0,14,48,20,10,7,24],gain:[50,47],lgroup:46,bug:[12,14,35,15,4,18,20,22,51,7],count:3,made:[35,1,4,49,51,45,26],bbbk:46,whether:[46,27,42,43,3,47,48,5,31,11,22,7,9,37,52],wish:[14,31,53,3,4,46,20,7,50,37],displai:[46,6,12,13,15,18,19,20,25,22,23,45,27,33,34,7,5,41,35,24,47,48,51],substack:46,underleftrightarrow:46,mathord:46,gtrapprox:46,below:[2,46,6,9,11,12,37,20,21,22,45,25,27,43,34,35,10,7,5,42,24,47,49,50,51,52],sideset:46,"_htmlormml":50,problem:[14,35,15,31,3,4,46,20,50,51,7],x03c0:51,"int":46,dure:[15,28,19,39,22,37,45],novemb:14,implement:[12,0,14,16,46,40,31,41,19,50,51,38,39],nolimit:46,inf:46,probabl:[19,31,7,2],oplu:46,helpurl:47,immateri:1,percent:[11,42],detail:[0,5,6,7,8,13,14,15,40,17,19,20,11,22,27,28,29,43,33,34,35,36,37,46,41,42,1,47,48,49,50,51],lesseqgtr:46,other:[0,2,30,5,6,7,14,15,40,17,18,19,20,39,22,23,45,28,29,31,33,35,37,38,46,41,42,44,1,11,48,49,50,51,52],futur:[0,4,18,19,49,50,45],branch:[7,35],varieti:51,downlaod:[23,15],removeaft:6,repeat:[35,2],star:46,thicksim:46,msgroup:41,matrix:46,sphinx:2,scientif:44,reliabl:[50,14,3,7],rule:[46,6,9,1,22],mathjax_mathml:3,portion:48,eot:35},objtypes:{"0":"py:method"},titles:["The MathJax.Ajax Object","Using Queues","Using MathJax in popular web platforms","Loading MathJax Dynamically","The MathJax Community","The tex2jax Preprocessor","The FontWarnings extension","Loading and Configuring MathJax","Installing MathJax in WordPress","The MathML input processor","The MathJax.InputJax Class","The NativeMML output processor","The MathJax.HTML Object","MathJax Documentation","Migrating from MathJax v1.0 to v1.1","What’s New in MathJax v1.1","The MathJax API","The MathJax.Callback.Queue Class","The MathJax.Message Object","Using Signals","Getting Started","Describing HTML snippets","The Core Configuration Options","What is MathJax?","The MathJax.OutputJax Class","The TeX input processor","Configuration Objects","The jsMath2jax Preprocessor","The MathJax.Callback Class","The MathJax.Callback.Signal Class","The MathJax Startup Sequence","Using Callbacks","The MathJax variable","Converting to MathJax from jsMath","The MathZoom extension","Installing and Testing MathJax","Using MathJax in Movable Type","The MathJax.Hub Object","The MathJax Object-Oriented Programming Model","The Base Jax Class","Common Configurations","MathJax MathML Support","The HTML-CSS output processor","The mml2jax Preprocessor","Glossary","The MathJax.ElementJax Class","MathJax TeX and LaTeX Support","The MathMenu extension","Modifying Math on the Page","Synchronizing your code with MathJax","MathJax Output Formats","The MathJax Processing Model","The MMLorHTML configuration options","CSS Style Objects"],objnames:{"0":"Python method"},filenames:["api/ajax","queues","platforms/index","dynamic","community","options/tex2jax","options/FontWarnings","configuration","platforms/wordpress","options/MathML","api/inputjax","options/NativeMML","api/html","index","upgrade","whats-new","api/index","api/queue","api/message","signals","start","HTML-snippets","options/hub","mathjax","api/outputjax","options/TeX","options/index","options/jsMath2jax","api/callback","api/signal","startup","callbacks","api/variable","jsMath","options/MathZoom","installation","platforms/movable-type","api/hub","api/object","api/jax","config-files","mathml","options/HTML-CSS","options/mml2jax","glossary","api/elementjax","tex","options/MathMenu","typeset","synchronize","output","model","options/MMLorHTML","CSS-styles"]}) \ No newline at end of file +Search.setIndex({objects:{"":{Load:[0,0,1],Preloading:[0,0,1],Log:[18,0,1],ExecuteHooks:[28,0,1],setScript:[12,0,1],Subclass:[40,0,1],Delay:[28,0,1],Init:[40,0,1],getAllJax:[39,0,1],Interest:[29,0,1],Translate:[41,0,1],Config:[39,0,1],addElement:[12,0,1],Reprocess:[39,0,1],Styles:[0,0,1],ExecuteHook:[29,0,1],loadTimeout:[0,0,1],Resume:[17,0,1],Update:[39,0,1],loadComplete:[0,0,1],formatError:[39,0,1],call:[17,0,1],getJaxByInputType:[39,0,1],PreProcess:[39,0,1],Post:[29,0,1],has:[40,0,1],Signal:[28,0,1],Set:[18,0,1],Insert:[39,0,1],addText:[12,0,1],TextNode:[12,0,1],Augment:[40,0,1],Clear:[18,0,1],Register:[41,0,1],Remove:[18,0,1],Element:[12,0,1],Queue:[28,0,1],NoInterest:[29,0,1],Suspend:[17,0,1],getJaxByType:[39,0,1],Push:[17,0,1],Typeset:[39,0,1],fileURL:[0,0,1],wait:[17,0,1],reset:[28,0,1],getJaxFor:[39,0,1],LoadHook:[0,0,1],Process:[39,0,1],Text:[48,0,1],loadError:[0,0,1],Startup:[41,0,1],SourceElement:[48,0,1],can:[40,0,1],File:[18,0,1],MessageHook:[29,0,1],isJax:[39,0,1],filterText:[18,0,1],isa:[40,0,1],Require:[0,0,1]}},terms:{represent:54,lspace:49,reprocess:[39,48,51],mathjax_msie_fram:18,yellow:49,four:[49,1,14],prefix:[12,20,42],asymp:49,blacktriangledown:49,webfont:[6,45,20],whose:[12,7,51,5,46,33,39,24],html5:[14,42,20,44,53,7],under:[44,37],preprocess:[54,39,30,51],asciimath2jax:[43,20,33,15,26],worth:7,digit:42,gimel:49,everi:[19,39,42,7],risk:20,mskip:49,arcco:49,govern:[20,14,7],dotplu:49,affect:[14,37,42,49,39,48,26],eqnarrai:49,cmd:22,bigodot:49,c6h5:49,ominu:49,vector:[47,53],math:[30,5,7,11,12,13,14,42,43,18,19,20,41,22,23,27,15,3,32,33,35,36,37,10,39,49,44,45,47,50,51,52,53,54],nparallel:49,showcontext:50,nsubseteqq:49,direct:[6,14,45,37],consequ:11,second:[0,14,37,28,46,56,52,5,6,33,21,22,7,19,10,44,24,1],ngeq:49,even:[0,3,49,39,28,17,19,20,21,23,15,29,46,7,43,44,45,1,51,52,53,54],hide:51,prejax:[54,22],neg:49,menclos:49,"new":[30,4,49,12,13,14,42,18,19,20,25,23,24,26,28,39,10,7,40,29,37,48,1,50,51,52,53,54],net:20,mhtml:2,told:[49,52],limsup:49,elimin:22,behavior:[14,37,22,7],lessapprox:49,never:[37,0,7,3,41],here:[12,49,34,28,46,48,1,3,51,19,20,41,22,39,29],updiagonalstrik:49,met:30,lneqq:49,path:[43,0,7,20],noundefin:[43,20,49],interpret:[49,20,37,15],nrightarrow:49,forum:[20,4],mbox:49,rceil:49,linearli:53,circleddash:49,mathstrut:49,unix:37,org:[14,42,2,3,50,51,49,20,35,8,53,38,7],thinmathspac:44,unit:[49,42],highli:23,describ:[12,49,14,37,28,20,47,56,30,51,43,6,21,7,46,54,39],would:[5,6,7,9,11,12,14,15,43,17,20,25,22,48,27,28,31,32,33,35,36,37,39,40,49,45,46,21,56,50,51,53,54,55,1],afterward:46,readi:[43,19,41,30,34],ltime:49,varlambda:49,call:[0,2,3,49,6,7,9,14,17,18,19,20,25,22,24,26,27,28,29,31,32,33,36,37,10,39,40,41,5,45,46,47,48,1,50,51,52,11,54,55],recommend:[20,54,37,53],vcenter:49,preview:[27,5,32,33,22,54],type:[0,2,3,5,8,10,12,14,43,19,20,41,22,48,39,35,38,7,49,44,24,1,51,52,53,54],until:[0,27,46,1,5,32,33,41,22,7,19,39,29],notin:49,displaymath:[5,7],relat:[0,42,53],notic:[49,15],warn:[0,14,22,6],jpg:[5,32,33,21,27],loss:7,hold:[0,21,22,36,54,39],unpack:[20,37],must:[0,30,49,6,14,17,18,20,25,22,15,29,33,36,37,7,5,44,45,47,56,52,53],fbox:[49,42],join:[19,49],centerdot:49,setup:[23,20,44],work:[12,13,14,37,42,15,46,49,3,4,51,43,20,44,35,52,19,23,53,40],cc0000:[56,22],tag_nam:37,root:[0,42,30,18,49,7],overrid:[40,6,10,41,24],mathmenu:[45,56,50,43,11,26],give:[49,45,20,47,56,3,19,6,21,7,29,25,26],cirit:7,indic:[0,7,37,15,46,17,49,30,19,20,29,41,22,48,10,39,24,54],impair:23,hline:49,want:[4,5,14,28,43,16,18,19,20,22,24,15,46,33,37,38,7,40,49,44,45,1,51,53,55],david:15,setminu:49,end:[0,5,44,15,2,53,49,30,4,43,8,19,38,7,1,42],quot:[5,33,45,22,42],hom:49,heartsuit:49,how:[0,2,3,4,5,6,7,8,14,15,43,17,18,20,21,22,27,28,29,32,33,35,36,37,39,49,45,31,50,52,11,54],disappear:[5,32,33,27],answer:[4,51],verifi:[20,37,4],config:[2,30,5,6,7,8,9,10,11,14,43,18,19,20,25,22,24,26,27,15,3,31,32,33,35,36,38,39,41,49,45,46,56,50,51,53,55,1],renewcommand:49,updat:[39,37,42,2,1,51,14,22,7,48],showrender:50,recogn:20,lai:[53,54],diagdown:49,after:[0,45,28,46,17,49,3,50,18,19,20,41,22,51,52,37,54,7,29,1,26],befor:[0,2,30,4,49,7,8,14,15,17,18,19,20,21,22,25,28,29,46,33,36,39,40,41,5,44,45,47,1,51,52,53,54],wrong:44,startuphook:[19,39],parallel:[49,1,30,42],averag:54,alignedat:49,attempt:[0,44,50],third:[1,44],leftarrow:49,receiv:[29,14,37,46,19,20,41,52,7,40],greasekit:3,maintain:[14,52,4,19,46,22],environ:[5,20,49,25,4],enter:[44,31,51,49,20,54,7],textnod:12,order:[30,49,6,5,14,17,18,20,22,27,39,32,33,37,7,40,29,45,46,47,1,53,54],oper:[0,5,6,9,11,42,17,18,19,25,46,23,27,31,33,36,45,41,29,34,37,32,47,1,50,51,53,55],approxeq:49,over:[12,0,45,42,49,50,51,43,20,22,36,53,54,7],fall:[37,15,20,1,49,6],becaus:[19,14,45,1,15,46,49,3,18,5,20,33,21,7,54,44,29,25,51],boxtim:49,suspend:[19,17,1,29],textrm:49,appar:1,afil:46,flexibl:[21,1,14],vari:53,smallint:49,img:[27,56,3,5,32,33,21],fix:[53,14,37,42,7],strang:44,better:[42,15,31,50,20,35,8,53,7],boxminu:49,drawback:53,upharpoonleft:49,persist:4,comprehens:47,hidden:49,easier:[29,14,37,1,49,44,40],moveleft:49,them:[0,5,6,12,14,42,43,17,19,20,25,15,29,39,31,33,7,49,44,37,46,56,54,1],thei:[0,3,4,5,6,7,9,11,14,42,43,16,17,18,19,20,25,22,26,27,29,30,31,32,33,36,37,39,41,49,45,46,47,21,56,50,51,52,53,54,55,1],qualiti:[23,53,54],safe:[12,20,3,51],rectangl:47,"break":[49,52,1,42],emph:49,mtext:[49,20,42],wedg:49,widetild:49,choic:[53,39,8],dbinom:49,leftharpoondown:49,timeout:[0,42,28],each:[5,7,37,15,28,29,49,30,52,18,43,20,33,51,19,54,39,1],debug:18,side:[18,49,20,25,22,8],mean:[2,30,5,6,14,43,16,19,22,23,27,15,29,3,32,33,7,49,46,51,52,53],leqq:49,createel:3,resum:[17,1],represetn:49,leqalignno:49,mathopen:49,looparrowleft:49,network:[14,37,42,43,20,38,7],goe:[49,52,1],newli:[12,19,40],crucial:37,predefin:22,content:[2,30,5,8,10,12,14,42,43,20,21,22,39,3,33,38,7,40,49,44,47,1,51,53,54],reader:[43,23,49,42,53],forth:34,impract:37,multilin:49,written:[20,8],situat:[20,7,42,51],free:[48,4],ineffici:[40,22],reconfigur:14,lneq:49,angl:49,moment:[20,10,37],isn:[19,41],iphon:42,isa:40,subtl:51,confus:[20,14],attribtu:20,mathbb:49,rang:[20,54],mathbf:49,render:[5,44,42,30,50,43,20,22,23,53,54,55,35],independ:7,yourcolleg:37,restrict:[49,37,22],hook:[19,0,28,29],unlik:[23,49,7,41],alreadi:[0,28,51,49,3,4,18,19,46,52,7,40,1],subtleti:49,primari:[53,14],tooltop:45,top:[34,37,49,20,53,7],sometim:[20,7,37],underlin:[49,42],master:52,too:[49,45,42,15,3,5,20,33,53],similarli:[0,39,37],newenviron:49,john:46,listen:[19,29,39,28],thickapprox:49,namespac:[42,28,3,51,49,20],tool:[1,37],tagind:25,embellish:42,compressor:42,somewhat:52,technic:47,past:[29,14,42,19,52,23,53],filesmatch:37,provid:[12,0,44,2,28,46,17,49,18,19,20,29,21,51,52,23,54,39,40,1],eqalignno:49,x2212:[20,54],tree:[20,21],"final":[14,46,49,20,21,23,54],project:[47,7,4],matter:[19,35],mathtt:49,ldotp:49,modern:[23,6,44,13],mind:[49,20,7,15,2],increment:17,seem:[46,44],rightrightarrow:49,ldot:49,person:46,latter:[49,16,19,31,21,54,7,26],expens:53,simplifi:42,though:[28,15,49,52,21,22,54],object:[0,30,49,6,12,13,16,17,18,19,21,22,24,26,28,46,36,10,39,40,41,29,34,45,47,48,56,50,51,52,11,54,1],gzip:42,regular:[5,20,33,22],letter:[20,37],grave:49,don:[49,14,42,46,1,3,31,51,19,6,44,7,53,54,39],dom:[12,48,1,51,19,52,41,22,39,24],doe:[49,44,37,15,28,46,55,48,3,19,20,11,22,7,23,53,10,39,24,54],declar:[44,45,56,50,49,6,11,36],place:[0,45,6,49,4,51,19,20,29,25,22,37,7,40,1,35],tfrac:49,unchang:[49,14,55,51],sum:[49,28],came:37,delaystartupuntil:[39,30,22,7],random:[20,37],lnapprox:49,syntax:[49,47,40,42,15],mediawiki:2,isopera:39,outerhtml:42,shownam:46,asynchon:51,next:[15,52,51,49,31,48],involv:[49,52,7,4],consolid:23,layout:48,firstnam:46,mathchoic:49,ismsi:[39,30],menu:[13,44,45,42,30,50,43,11,22,36,8,37,53,38,48,54],explain:[14,2,43,52,7,26],configur:[0,3,5,6,7,8,9,10,13,14,42,18,19,20,25,22,23,24,26,27,15,30,31,32,33,35,36,37,38,39,41,43,44,45,46,21,49,11,53,54,55],apach:37,theme:[7,2,8],rich:[23,47],folder:[20,45,37],stop:[49,45],infti:[49,54],amazon:20,report:[44,22,4],circeq:49,subseteq:49,fadeouttim:6,bar:[49,40,28],method:[12,0,14,40,28,29,17,1,3,52,18,19,46,41,7,48,10,39,24,51],reload:50,bad:42,replacechild:3,neq:49,unexpectedli:[49,20,15],undefinedfamili:45,dashrightarrow:49,scriptscriptstyl:49,precneqq:49,result:[14,45,28,15,46,47,48,1,51,49,20,44,7,53,10,39,24,54],respons:[49,29,10,42,28],fail:[0,42,46,41,53,26],best:[0,14,37,15,1,53,54,7],awar:[49,0,1,44,15],subarrai:49,varinjlim:49,wikipedia:[47,3],circledcirc:49,gneqq:49,awai:[49,7,37],approach:[46,54,2,51],attribut:[12,44,42,20,56,49,32,21,54,7],blacktriangleright:49,extend:[23,54,15],extens:[0,30,5,6,14,42,43,19,20,25,22,26,27,39,3,32,33,35,36,7,41,49,34,47,56,50,51,1],add:[5,14,2,17,49,43,6,33,41,22,48,53,40,56],preprocessor:[5,14,15,20,49,44,30,34,43,32,33,27,22,7,54,39,51,26,35],intop:49,protect:49,expos:15,cow:40,howev:[49,14,37,46,30,56,3,4,18,43,20,22,51,53,54,7,40,1,26],configuraiton:49,against:29,seri:[1,21],com:[7,37],varpsi:49,pre:[5,14,37,49,43,6,33,7],foral:49,can:[0,3,4,5,6,7,12,14,28,43,17,18,19,20,25,22,23,24,26,15,29,30,46,33,34,35,37,10,39,40,41,42,49,44,45,47,56,11,51,52,53,54,1],foobar:40,delic:11,innerhtml:[3,51],height:[49,42,50],wider:4,summat:31,sqsupset:49,speak:[16,54],issol:49,chrome:[45,53,39,3,42],patch:[7,37],three:[44,37,28,46,1,49,6,21,41,52,53,54,20],been:[0,3,4,5,14,17,18,19,20,24,28,30,46,33,35,10,7,29,37,1,51,52,53],trigger:[43,22,36],interest:[19,29,47,4,52],basic:13,tini:49,quickli:[23,7,4],underrightarrow:49,regul:1,xxx:49,ani:[0,3,4,5,6,7,9,11,14,43,17,18,19,20,25,22,48,27,28,29,30,31,32,33,36,37,39,40,49,44,45,46,1,50,51,52,53,55],emploi:53,dash:[56,45],tanh:49,hat:49,servic:[14,37,42,20,38,7],properti:[12,0,34,40,28,29,17,46,41,48,10,39,24],diamondsuit:49,sourceforg:14,weren:14,dashboard:38,"3px":[49,56],succeq:49,have:[0,2,30,4,5,6,7,14,15,43,19,20,11,22,48,26,28,29,3,46,33,37,39,40,42,49,44,45,31,1,51,52,53,54],nexist:49,tabl:[53,44,15],cong:49,sever:[0,5,14,37,49,51,43,46,33,54,24,1],amout:18,disabl:[11,14,45],incorrectli:[20,14,42],perform:[30,4,6,14,42,17,18,19,41,22,48,28,46,39,7,29,34,47,1,51,52,53],suggest:[6,4,20],make:[0,4,5,6,14,42,43,16,17,19,20,22,23,27,39,32,33,37,7,40,49,44,45,56,50,51,52,53,54,1],complex:[53,21],split:49,synch:14,lrcorner:49,unsafewindow:3,complet:[0,30,5,14,43,17,19,20,41,22,48,28,29,39,46,33,7,49,37,47,1,51,52,53],longmapsto:49,hand:[34,18,25,22,54,44,35],fairli:[21,14],rais:[49,42],mkern:49,ignorepast:29,unlhd:49,squar:[49,21,42],redefin:[6,10,41,24],kept:19,thu:[14,28,1,19,46,48],inherit:[16,40,10,24,48],client:45,thi:[0,1,2,3,4,5,6,7,8,10,11,12,13,14,15,16,17,18,19,20,21,22,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56],idotsint:49,programm:40,everyth:[43,49,1,39,7],settimeout:[46,28],left:[44,37,34,30,18,49,52,25,22,8,38,26],processclass:[5,33],identifi:[12,29,15,49,20,54],just:[49,44,37,2,28,46,56,43,20,22,8,23,54,7,29,1],yen:49,mathbin:49,human:20,coprod:49,yet:[44,17,1,51,19,52],languag:[49,20,54,47,52],noscript:[5,33],onload:[34,3,30,46,22,7],errorset:[43,22],easi:[47,35],interfer:[20,31],had:[19,20,14,7],myconfig:[19,46],step1:49,els:[49,46,3,51],save:[53,38,7,56,8],"0x21c0":49,take:[12,0,14,28,2,46,1,30,4,51,49,6,25,52,53,7],sanit:18,applic:[23,20,30,2],loadtimeout:0,preserv:46,bbox:49,background:[49,56,42],sqsubset:49,specif:[0,7,2,28,29,47,17,1,34,5,46,33,41,22,51,53,54,39,48],deprec:[43,20,7],arbitrari:49,manual:6,zoom:[13,44,42,43,22,36],leftrightarrow:49,underli:53,www:[20,3,37,50],right:[11,44,45,47,17,1,3,18,49,31,25,22,8,37,54,7,26],old:19,famili:[49,0,45],deal:20,autobold:49,interv:31,begin:[19,37,15,49,30,51,5,25,53,54,7,1],percentag:[11,45,22],donald:47,successfulli:[0,46],interc:49,dddot:49,bottom:[7,8],subclass:[29,34,24,41,48,10,40],circ:49,tracker:[20,4],overcom:52,condit:[0,30],foo:[40,28],core:[1,30,49,22,54,39,26],plu:[43,29,30],bold:[49,47,21,25,26],insecur:20,popular:[20,35,2],colleg:37,repositori:[14,37,42],post:[29,45,30,4,18,19,52,41],"super":[40,42],llless:49,obj:12,nwarrow:49,slightli:[49,53,8],surround:[20,11,45],unfortun:[20,37],current_theme_templ:2,joomla:2,span:[49,27,5,32,33,21,22,54,35],downharpoonright:49,geramond:49,regist:[0,7,29,47,30,19,52,41,10,39,24,54],jipsen:15,encod:[49,15],bound:49,two:[19,1,15,52,49,43,20,21,22,56,7,25,26],down:[38,37,22],shortparallel:49,wrap:40,ntriangleright:49,stackrel:49,nsupseteq:49,git:[20,14,37,42],suffici:[15,49,20,25,7,55],support:[13,14,45,42,15,20,30,49,3,4,34,43,6,44,23,53,54,7,55,11],transform:54,ngtr:49,avail:[0,2,5,6,14,43,19,20,11,22,23,48,27,32,33,37,7,40,49,44,45,47,1,50,51,53,54],width:[44,50,49,20,25,53],reli:[0,14,47,1,3,51,46,11,53],wordpress:[2,8],editor:8,rightthreetim:49,lnsim:49,longdiv:49,form:[44,45,47,18,49,20,25,22,54,7],offer:[14,42,4],forc:[53,7,45],epsilon:49,hear:[19,29],so4:49,downdownarrow:49,"true":[5,14,45,28,29,49,30,50,43,31,34,22,7,11,9,39,40],maxmacro:25,reset:[50,28],displayalign:22,intern:[0,44,15,29,47,17,1,49,22,53,10,39,24,54],tell:[37,3,51,20,53,7],moveright:49,more:[49,6,8,10,14,42,17,20,21,22,23,28,29,46,39,35,37,38,7,40,41,43,45,47,56,11,51,52,53,54,55,1],retir:14,featur:[13,44,37,49,4,51,19,46,36,53,40],rfloor:49,exist:[45,28,49,20,37,40],ddot:49,backsim:49,triangleq:49,check:[0,14,37,46,18,49,20,29,40],tip:49,abovewithdelim:49,role:54,test:[12,13,14,37,52,30,3,51,19,20,44,7,53,39,40],tie:[30,28],smallsmil:49,scriptstyl:49,searrow:49,mathel:2,intend:[47,40,22],munderov:54,gvertneqq:49,consid:[0,14,42,49,4,5,20,54,39,48,1],omega:49,outdat:4,longer:[29,14,37,18,43,53],furthermor:[1,14,22,7],anywher:7,cancelto:49,tex2jax_ignor:[5,42],ignor:[5,49,33,29],time:[0,3,4,49,6,12,39,42,18,19,25,22,28,46,36,7,41,29,37,1,51,53,54],push:[28,47,17,1,30,51,46,39],"5kb":25,mathrm:49,doteq:49,skip:[5,33,37],consum:18,webkit:42,skin:2,displayind:22,millisecond:[0,45,28,50,18,6,36,39],decid:[7,50],middl:[49,20],depend:[28,30,51,46,8,53,7,55],head:[2,3,51,20,8,53,38,7],decim:[49,31],readabl:47,nearrow:49,varpi:49,certainli:37,vee:49,decis:53,text:[2,30,5,6,8,12,14,42,43,18,19,20,21,22,23,48,25,27,15,3,32,33,35,38,7,49,45,46,47,56,11,51,53,54,1],succnsim:49,sourc:[13,14,45,37,49,3,50,43,44,19,23,53,54,39,48,1,11],string:[0,28,29,49,18,5,56,33,21,22,19,39,48,25],word:[5,33,7,54],room:25,dim:49,getjaxfor:[19,39,24],administr:[2,8],level:[20,7,37,34],did:46,item:[11,45,50,49,46,21],cooki:[12,30,42],div:[12,49,54,35,51],prevent:[49,27,45,42,20,50,5,32,33,25,22,7],mmlorhtml:[43,53,55,22,26],slower:53,compens:11,sign:[49,14,15,5,20,33,54,7],cost:[49,20,7,40,15],pmb:49,rightarrowtail:49,widehat:49,xandi:40,dotsi:49,dotsm:49,appear:[19,34,37,15,46,49,31,18,5,20,33,22,51,8,7,48,50],dotso:49,repli:19,dotsc:49,dotsb:49,current:[0,45,37,2,29,48,20,8,53,38,7,40],backepsilon:49,ampersand:[49,15],inlinemath:[49,14,51,5,20,33,7],defici:44,amalg:49,mathsiz:49,gener:[49,7,15,20,55,30,43,6,35,46,54,39,48],mfrac:[20,54],modif:[1,7],address:[20,37],along:[49,47,1,18,19,35,10,24],wait:[0,7,37,42,28,29,47,17,1,3,51,19,46,30,41,22,52,39],box:[49,0,42,6],html_head:2,shift:22,xtwoheadrightarrow:49,bot:49,queue:[29,34,28,52,16,17,1,30,51,46,47,39],overriden:39,digamma:49,varlimsup:49,commonli:[43,20,47],macintosh:39,semant:40,succsim:49,extra:[19,49,54,22,42],circumv:37,modul:[0,38,34],prefer:[14,45,50,20,53,37,55],iepro7:3,veebar:49,visibl:[49,27,1,51,5,32,33,44],marker:[49,15],myid:56,mobil:[23,53,14,42,7],arrowvert:49,memori:[52,48],bigr:49,visit:20,todai:47,subvers:[20,37],stylesheet:[0,34,28,29,17,30,51,52,22,8,53],handler:[0,34,47,3,30,51,52,22,54,7],xtofrom:49,current_skin:2,bigl:49,bigm:49,eqcirc:49,checkout:37,bigg:49,inputjax:[34,16,48,30,41,10,40],capit:16,reduct:53,peopl:20,bigtriangleup:49,enhanc:[54,42],minscaleadjust:45,visual:[43,23],accept:[46,28,51],hphantom:49,easiest:[19,20,37,28,46],graphic:[47,53,37],prepar:[1,7],cap:49,uniqu:56,pmatrix:49,whatev:[49,2,15,24,1,51,19,40],cal:49,purpos:[46,54],getjaxbytyp:39,downharpoonleft:49,subseteqq:49,varprojlim:49,backslash:[49,25,22],topic:[16,13,7],critic:37,sharp:49,chemic:49,occur:[0,44,37,28,46,17,1,3,50,18,19,20,41,22,7,52,39,29,51],eqsim:49,pink:49,alwai:[28,16,1,49,46,7],multipl:[49,1,14],trianglelefteq:49,write:[29,15,47,1,51,20,23],fourth:1,mathsf:49,tild:49,xhtml:[20,44],map:54,book:47,max:49,clone:37,spot:[49,15],usabl:37,mac:[11,39,45,22],cours:[1,14,44,7],mai:[0,2,3,4,49,6,8,14,16,19,20,11,22,24,15,29,46,39,37,7,40,5,44,45,48,1,51,52,53,54],underscor:[49,20],data:[12,0,34,45,28,46,40,19,20,41,48,37,10,39,24],grow:[53,2],newlin:[49,42,18],vartheta:49,baso4:49,explicit:[0,7,22,20],uparrow:49,produc:[49,6,14,19,20,25,22,23,48,26,28,46,35,53,10,7,29,45,24,50,51,11,54],inform:[0,45,2,29,47,49,18,43,46,11,22,19,54,7],"switch":[14,37,42,49,35,54],preced:[46,7,22],combin:[0,14,42,31,49,43,20,53,7],block:[11,14,45,42,20,3,30,49,6,41,22,54,7],approx:49,comfort:37,lsh:49,tex2math:35,still:[19,44,2,28,29,47,1,43,22,36,53,7],pointer:40,ttf:37,dynam:[0,34,13,1,3,51,20,22,52,23,54,7],entiti:[49,44,42,15],amssymbol:[43,20,49,14,7],conjunct:14,group:[0,44,4],monitor:4,polici:37,mpcontext:43,lucki:49,platform:[23,13,2,20],window:[34,28,6,3,50,18,46,51,53,39],"05em":49,bookmarklet:7,main:[49,14,37,1,16,40,56,50,43,20,34,22,7,53,10,39,24,54],mathexampl:51,non:[12,0,15,17,49,20,53,54],within:[0,30,49,6,14,28,16,20,25,15,39,46,33,35,7,40,42,5,44,37,51,52,54],myinputjax:41,initi:[0,14,15,52,49,30,50,34,5,20,33,41,22,7,19,54,39,48,1],safari:[53,39,3,42],half:46,now:[14,37,42,47,30,43,20,53],discuss:[12,37,7,3,4],nor:[6,21],term:[20,14,7,18],name:[0,30,5,6,7,12,14,28,43,18,19,20,21,22,24,25,26,15,29,3,46,33,37,10,39,40,41,42,49,44,45,48,56],opera:[53,55,39,3,42],boxdot:49,drop:37,separ:[19,14,37,1,49,18,5,20,33,44,22,11,7,56,26],messagestyl:[6,22,18],confid:23,varsupsetneqq:49,compil:46,domain:[20,7,37],replac:[0,14,37,42,44,3,51,49,20,25,7,54,39,40,41],individu:[48,42,26,51],strikethrough:49,continu:[0,14,15,49,19,52,7,1],happen:[44,37,15,17,1,49,52,54],shown:[49,21,22,50,51],accomplish:[20,7,3,37,53],"3rd":20,space:[42,15,31,51,49,20,22,53,9,54],intermix:30,internet:[0,42,3,50,18,49,46,22,53,54,26],formula:[51,22,36,23,53,54],correct:[46,14,3],simeq:49,earlier:[20,1,7,53],migrat:[13,14],ajax:[0,7,16,1,30,34,49,46,41,19,39],mime:[44,48,20,41,10,39,24],underleftarrow:49,brower:[49,15],ord:49,care:[15,31,3,49,20,26],ntrianglelefteq:49,couldn:46,x00b1:20,synchron:[0,28,13,47,17,1,3,51,19,46,30,52,39,29],mscarri:44,thing:[15,47,51,49,20,21],eqref:49,mathop:49,unwis:53,think:[49,22,15,51],frequent:[5,19,33,15],first:[3,49,8,28,19,20,21,22,24,15,29,46,33,37,10,7,5,44,45,1,51,52,54],origin:[40,49,37,15,29,17,3,51,19,20,48,10,7,24],lfloor:49,oni:37,directli:[37,42,1,3,51,49,46,41,8,54],onc:[0,37,28,29,49,30,51,43,20,41,35,53,1],arrai:[30,49,6,9,7,42,17,19,21,22,24,25,26,27,28,29,31,32,33,35,10,39,41,5,45,46,11,53,54,55],yourself:[37,20,17,3,49,46,22,7],fast:[14,42,7],open:[13,44,37,50,49,20,8,23,38],ios4:42,size:[11,45,42,56,51,49,25,53,7],given:[0,2,49,12,15,17,18,19,20,21,22,48,28,46,39,40,41,42,29,24,56,54,1],ifmodul:37,referenec:39,leftrightharpoon:49,circl:49,white:56,conveni:[20,40,22],hub:[0,30,5,6,7,9,11,14,43,16,18,19,20,25,22,24,26,27,15,3,31,32,33,35,36,39,41,49,34,45,46,48,1,50,51,53,54,55],especi:54,copi:[14,37,15,3,4,43,20,44,7,23,39,41],specifi:[30,49,6,9,11,12,14,28,17,19,20,21,22,25,15,29,39,46,33,36,7,42,5,45,47,56,50,52,53,54,55,1],github:[14,37],enclos:[49,54,56,45,22],quad:49,than:[0,30,5,6,7,8,9,14,28,43,17,19,20,41,22,23,48,26,15,29,31,33,37,10,39,40,42,49,44,45,47,56,51,52,53,54,1],serv:[20,42],wide:[23,54,37],instanc:[12,7,48,1,5,33,41,39,40],underbrac:49,were:[19,53,14,48,51],posit:[49,17,45,42],stub:41,browser:[30,5,6,12,13,14,42,43,20,11,22,23,48,26,15,39,3,33,34,35,37,7,49,44,45,47,50,52,53,54,55],preccurlyeq:49,sai:[17,3,28],lnot:49,doublecup:49,nleftrightarrow:49,argument:[29,28,1,49,46,40,26],hskip:49,doctyp:[20,44],engin:[23,13],techniqu:[14,3],npreceq:49,consortium:23,note:[0,3,49,6,8,39,20,21,22,48,25,15,29,46,33,37,7,41,5,45,56,50,51,53,54,55,1],x2260:20,jsmath:[13,54,35],noth:[20,28,46],channel:[19,47],updownarrow:49,surd:[49,42],sure:[49,14,37,42,29,1,4,51,5,20,33,53,7],windowset:50,normal:[5,28,49,3,43,20,33,22,54,56],buffer:25,compress:7,beta:[49,7],pair:[12,0,28,49,5,56,33,21,19,10,39,24,25,26],fileurl:0,beth:49,hotfix:7,latex:[13,15,47,49,5,20,22,23,54,7],renam:14,textarea:[5,33],later:[29,44,45,28,15,17,1,49,46,7,39],drive:37,typeset:[0,30,5,42,18,19,11,22,23,48,27,3,46,33,36,39,34,45,32,47,1,50,51,52,53,54],badg:4,sigma:49,mathfrak:49,showmathmenu:45,show:[49,37,20,4,51,43,6,21,22,46,38,50,26],autoreset:28,parentnod:[3,42],unprocess:[39,48,51],concurr:30,permiss:[20,37,15],hack:53,isfirefox:39,corner:[34,22,18],xml:[23,47],onli:[0,2,3,4,5,6,14,42,43,20,21,22,23,48,15,29,39,46,33,37,10,7,49,45,47,56,51,53],explicitli:[49,14,42,15,46,5,20,33,22,7,40],activ:[14,37,28,47,4,51,43,52,44,54],behind:49,inlinedelimit:49,otim:49,black:49,offici:7,geq:49,mypic:[5,32,33,21,27],nearli:[43,49,7,26],variou:[0,45,2,29,16,56,18,19,6,11,10,7,54,26],get:[30,49,12,13,28,18,20,11,22,15,3,46,37,7,40,42,29,44,45,1,51,53],cannot:[49,15],ncong:49,downarrow:49,nsim:49,requir:[0,5,14,28,46,49,3,43,20,33,41,7,19,23,54,39,24,1],truli:51,prime:49,blind:54,lceil:49,mathpunct:49,consist:[44,15,1,49,21,53],hostil:20,intermitt:[34,18],shortmid:49,apricot:49,retypeset:51,where:[0,30,4,49,6,12,14,28,18,19,20,25,24,15,46,39,37,10,7,43,34,45,48,56,51,52,54],wiki:[2,47,3,49,20,54,7],latexmathml:15,often:[49,20,56,54,15],keyboard:47,ismac:[39,30],concern:[54,39,15],infinit:25,detect:[42,28],parent:[12,40],enumer:49,label:[53,50,26],enough:[44,1,20,21,53,7],between:[49,7,28,15,46,1,50,19,20,53,54,39,48,42],maltes:49,"import":[0,37,42,1,43,52,19,7],across:[47,53],absenc:2,longleftrightarrow:49,vdot:49,screen:[0,42,1,18,43,23,51,24],negmedspac:49,come:[14,37,1,3,43,46,44,53,54,7],leftleftarrow:49,fit:[19,50],timout:0,pertain:20,audienc:[53,44],inconsist:14,overbrac:49,mani:[49,7,42,52,56,5,46,33,53,39,1],among:7,color:[42,47,56,49,21,22],operatornam:49,period:[0,34,37],colorbox:49,colon:[49,56],cancel:[49,28],"70kb":7,bigcirc:49,msrow:44,damag:20,needlessli:46,myserv:7,skew:49,mark:[0,44,15,49,5,20,33,35,54,56],addit:[0,1,14,15,28,20,17,49,51,43,6,44,48,22,46,19,10,39,24,56,42],succapprox:49,fade:6,arcsin:49,xrightharpoonup:49,mathplay:[42,3,50,43,22,53],breve:49,texfont:6,blacktriangl:49,former:31,those:[49,6,39,17,19,20,21,22,23,48,28,29,46,10,7,41,43,44,37,24,56,51,54,1],"case":[3,49,14,16,19,20,21,22,48,26,28,46,37,7,40,45,31,24,56,51,53,54,1],kappa:49,tostr:28,oldstyl:49,addtext:12,trick:49,invok:53,invoc:7,margin:[56,25],opera10:45,advantag:[53,1,14,7,2],barwedg:49,leadsto:49,henc:37,worri:[19,54],destin:39,somewher:7,updatemath:51,bigwedg:49,develop:[14,37,47,4,44,7],author:[14,15,18,49,20,41,22,36,23,54],media:[56,7,37],postjax:[54,22],same:[5,14,37,42,15,20,49,8,27,43,32,33,25,29,19,52,7,24,1],html:[2,30,5,6,7,9,12,13,14,42,16,19,20,21,22,24,26,27,15,3,32,33,34,35,37,38,39,43,44,45,47,49,50,51,52,53,54,55,56],pad:[12,49,56],knuth:47,mathvari:54,document:[0,14,37,47,15,13,16,49,3,51,5,20,44,22,7,23,53,54,39,24,35],bring:54,finish:[47,52,1,3,51],vvdash:49,nest:[44,42,34],availablefont:[6,7,45],someon:49,hslash:49,capabl:[16,23,53],formaterror:39,displaystyl:[49,31,51],extern:[0,34,46,1,19,52,39],submenu:[22,50,8],appropri:[19,49,43,41,35,10,54],macro:[42,49,20,25,22,7,26],mml_svg:[43,7],leftharpoonup:49,overwithdelim:49,without:[0,14,45,6,47,49,19,46,44,11,54,7],model:[13,34,37,16,30,49,53,54,40],bigotim:49,stixfont:6,mml2jax:[44,20,43,32,22,54,26],loaderror:0,when:[0,30,5,6,7,8,9,11,14,15,16,17,18,19,20,25,22,23,24,27,28,29,31,32,33,34,35,36,37,10,39,40,41,42,43,44,45,46,47,21,49,50,51,52,48,53,54,55,1],greasemonkei:[7,3],bitmap:47,flavor:[43,7],speed:[53,54,14,42,7],versu:1,strikeout:49,widest:[20,44],asciimathml:15,nleqq:49,except:[43,20,52,53],littl:[0,29],blog:[2,47,49,20,54,7],rescal:53,treatment:49,yuicompressor:42,earli:[7,42],hover:[50,22,36],around:[49,7,15],read:[14,37,42,47,21,19,20,44,7],outermost:21,boldsymbol:49,messsag:18,getjaxbyinputtyp:39,moo:40,world:[23,46,7],lasterror:39,mod:49,sum_:54,blackberri:42,asciimath2jax_process:33,cdot:49,integ:[49,39],server:[49,14,45,42,3,43,20,37,7],either:[0,14,37,2,29,16,49,3,56,5,20,33,21,7,36,19,53,39,55,25],output:[3,49,9,11,13,14,42,19,20,41,22,24,26,15,39,44,35,7,40,43,34,45,47,48,56,50,51,53,54,55],rollov:42,manag:[12,34,37,2,46,47,30,18,49,20,54,48],lesssim:49,node:12,respect:[11,45,28],inlin:[5,20,33,14],constitut:16,pod:49,slice:28,easili:[23,20,54,47],definit:[0,45,42,49,50,43,25,36,23,11,56],shoveright:49,inputid:48,dashleftarrow:49,mathcal:49,complic:[47,53,21,44,55],refer:[19,7,37,13,48,3,51,43,6,29,41,46,52,39,40,20],arrow:49,power:[1,4],inspect:39,broken:54,thinspac:49,found:[0,37,20,4,46,22,53,10],regexp:[5,33],"throw":[24,10,41,3],trianglerighteq:49,comparison:[1,39],ibook:53,ddddot:49,stretch:49,act:[49,47,1,19,46,25,22,54],industri:47,processor:[49,44,45,1,15,31,47,56,30,50,43,20,25,53,9,7,55,54,26,11],hookrightarrow:49,nobreakspac:49,routin:[12,0,52,46,41,10,39,24],nsupseteqq:49,effici:[40,51],elementari:44,lessdot:49,triangledown:49,compos:44,rightharpoondown:49,mathbackground:49,your:[0,2,3,4,5,6,7,8,9,11,13,14,42,43,20,25,22,23,27,15,31,32,33,35,36,37,38,39,49,44,45,46,47,21,1,50,51,52,53,55],compon:[0,30,49,14,43,16,19,20,23,24,26,15,39,44,10,7,40,29,34,56,50,52,54],log:[49,20,37,18],area:[25,18],aren:49,fontwarn:[6,22,26],lor:49,strict:37,compliant:[14,42],interfac:[37,2,20,8,23,38],lot:[19,25,37],lambda:49,programmat:[54,35],verbatim:49,cloudfront:20,buggi:49,categor:26,faster:[43,53,7,42],pull:37,mathml:[3,49,8,9,38,13,42,20,11,23,48,26,15,10,7,43,44,47,24,53,54,55],bullet:[49,47],possibl:[0,44,37,15,28,6,56,18,43,20,22,46,53,54,7,40,1,42],"default":[0,30,5,6,7,9,11,14,28,43,18,20,25,22,24,26,27,15,32,33,35,36,37,10,39,41,49,45,31,50,53,54,55],processescap:[5,49,14,7],buildrel:49,notag:49,asiimath2jax:15,embed:44,connect:[43,20,54,7,46],taylor:20,creat:[0,30,4,49,12,18,19,41,48,28,46,10,40,29,34,37,47,24,56,50,52,54,1],certain:[19,29,52],leftrightsquigarrow:49,risingdotseq:49,varliminf:49,file:[0,2,3,49,6,7,8,10,14,15,17,18,19,20,21,22,24,26,28,29,30,46,35,38,39,41,42,43,37,31,47,48,56,52,53,54,55,1],outputjax:[34,16,48,30,41,24],fill:[53,55],again:[49,0,39,48,51],iiiint:49,googl:4,pmod:49,event:[0,42,47,3,51,43,52,22,19,54],wai:[2,3,49,14,18,19,20,41,22,27,28,29,32,33,7,5,37,46,1,51,53,54],you:[1,2,3,4,5,6,7,8,9,11,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,30,31,32,33,35,37,38,39,40,41,42,43,44,45,46,47,49,50,51,52,53,54,55,56],trash:48,poor:53,resolut:23,sequenc:[13,7,37,17,49,30,19,52,39],symbol:[49,20,15,31],mhchem:49,begingroup:49,dashv:49,track:[54,4],menuset:[43,22,36],reduc:[49,7],mathcolor:49,lbrace:49,directori:[0,45,42,52,47,48,30,18,43,20,41,22,19,37,10,7,24],descript:[27,32,3,5,6,33,34,22],lbrack:49,hello:46,calle:40,potenti:1,extpfeil:49,escap:[49,25],dst:39,negthickspac:49,lvertneqq:49,all:[0,2,3,5,6,7,13,14,42,43,18,19,20,41,22,23,26,27,28,29,30,32,33,34,39,40,49,44,37,46,47,1,52,53,54],consider:7,illustr:51,dollar:[49,14,15,5,20,33,7],mathjax_displai:56,abil:[14,37,42,47,53,54],follow:[19,14,45,42,28,46,16,49,30,51,43,20,21,56,37,54,7,40,41,26],alt:[3,22],disk:[43,20,7,37],multlinewidth:25,scr:49,articl:47,init:40,program:[34,2,52,16,48,1,30,20,23,54,40],smile:49,cgi:0,introduc:[20,7,53],liter:[5,49],multlin:[49,25],vert:49,far:[0,29,37,15,18],varrho:49,"1px":[12,49,56],verb:49,mechan:[49,28,29,17,1,30,19,52,40],difficult:[46,44,52],loadcomplet:[49,0,39,41,7],veri:8,preferredfont:45,alterant:47,list:[2,30,49,6,8,9,38,7,16,19,20,25,22,24,27,28,32,33,36,37,10,39,5,45,31,47,48,1,50,51,11,54,55],"_html":53,emul:53,adjust:[45,3,51,11,8,38,7],plain:49,small:[45,42,18,49,25,54],dimens:[49,42],getalljax:[39,51],foreground:56,lll:49,tex:[2,3,5,6,7,8,9,10,13,14,42,43,19,20,25,22,23,26,27,15,34,35,37,38,39,41,49,44,45,47,1,51,53,54],zero:[6,17],design:[44,3,4,43,23,38],pass:[0,14,42,28,29,17,1,30,50,43,46,19,54,39,40,26],overlin:49,further:[17,54,41,1,53],what:[0,4,49,6,13,39,28,20,11,22,23,27,15,32,33,36,7,42,5,44,45,50,51,54],sub:34,section:[3,5,6,7,9,11,14,42,43,25,22,26,27,15,31,32,33,35,36,38,39,49,44,45,46,50,53,55],advanc:[16,13,23,7],abl:[19,14,45,28,2,20,49,3,51,43,6,44,22,8,23,37,38,7],delet:45,version:[13,14,37,42,15,51,30,3,4,34,43,20,41,7,36,48,53,10,39,24],sup:49,"public":[29,37],hasn:[0,10,14,24,18],full:[0,42,46,16,3,51,43,20,22,23,7],themselv:[34,30,43,20,21,39],geqslant:49,modular:[23,44],ggg:49,trunk:37,standard:[19,37,47,49,43,20,23,53,54,7,56],modifi:[13,14,2,51,49,18,43,20,41,7,19,39,24],valu:[0,30,49,6,9,12,42,17,19,21,22,25,26,27,28,31,32,33,36,39,40,5,44,45,46,56,50,51,11,54,55,1],search:[23,13,39,4],sender:19,prior:[49,53,44,22],amount:[49,6,25,28],action:[0,7,15,28,29,34,17,49,3,18,19,46,30,41,47,36,52,54,39,51,1],mathjax_wikipedia:3,mml_htmlormml:[14,2,3,43,20,8,53,38,7],llap:49,via:[0,2,30,5,6,14,42,18,19,20,41,48,26,28,3,33,36,37,7,40,43,44,45,1,54],shorthand:51,filenam:[46,14,3,7],href:[49,21,42],inappropri:19,emptyset:49,simbl:3,decrement:17,establish:43,select:[44,37,45,50,43,11,53,39],hexadecim:49,proceed:[1,21],x41:49,distinct:16,ctrl:22,stretchi:49,rightsquigarrow:49,taken:[19,49,1,51,53],imath:49,ispc:[39,30],toggl:49,vec:49,flat:49,diamond:49,desir:[43,40,3,37],mlongdiv:44,ital:[49,0,47,22,20],flag:22,aleph:49,particular:[12,0,7,37,15,28,46,47,17,56,49,20,29,22,52,53,54,39,40],known:1,upsilon:49,mathml3:44,cach:[19,7],showmathmenumsi:[11,42],none:[29,27,45,28,46,5,32,33,22,54,7],outlin:42,det:49,dev:4,histori:[19,29,30,47],remain:[43,47],paragraph:[49,6,54,51,20],ie6:45,caveat:[20,37],def:[49,25,40],deg:49,mathtip:49,scan:[39,22],myspan:21,challeng:43,registr:41,share:[20,7,37,4],templat:[38,7,2,8],succneqq:49,minimum:[39,45,42],unreli:14,explor:[0,42,3,50,18,49,46,22,53,54,26],phrase:[49,20,15],mathinput:51,huge:49,rowspan:44,goal:23,awkward:40,secur:[20,3,37],rather:[0,30,5,6,9,14,42,43,17,19,20,41,22,23,48,26,28,31,33,7,40,49,44,37,47,56,51,52,53,54,1],anoth:[49,37,29,17,1,18,19,52,10,51,54,26],showmathmath:11,csc:49,snippet:[12,13,27,32,49,4,5,6,33,21,22,39],ddagger:49,stix:[45,42,47,49,6,37,53,54,7],simpl:[53,21,22,18],css:[0,3,49,6,9,13,14,42,20,11,22,24,26,39,44,35,36,37,7,43,34,45,47,48,56,50,51,53,54,55],unabl:6,resourc:42,referenc:6,algebra:47,mtabl:43,variant:47,reflect:[30,51],vdash:49,mstack:44,impliedbi:49,associ:[11,45,28,48,51,49,46,41,10,39,24,54],welcom:4,lhd:49,footer:7,onto:[47,20,1,39,51],ambigu:16,caus:[0,49,6,39,18,19,20,25,22,48,15,29,46,33,34,7,41,5,44,37,1,50,51,54],callback:[0,34,28,29,16,17,1,30,51,19,46,41,47,52,39,48],firefox3:45,merror:56,unrhd:49,help:[13,14,37,4,20,50,53,7],soon:[7,3,22,51],trade:[53,7],through:[49,14,37,42,29,1,50,19,52,44,53,54,7,40,26],hierarchi:[7,37],suffer:53,paramet:[0,30,49,12,14,28,17,18,20,25,22,24,26,27,15,29,32,39,10,7,40,41,42,43,46,48,51],style:[0,30,49,6,12,13,42,18,20,21,22,48,33,36,39,5,45,47,56,50,11,54],arial:[49,45],border:[12,49,56],x221a:44,processupdatetim:39,x221e:54,late:[47,3],isreadi:[34,30],pend:17,amsmathaddit:1,processenviron:5,might:[0,14,37,46,1,4,19,20,25,7,54,44],alter:[5,51],cee:49,good:[1,3,4],"return":[12,0,44,40,28,29,17,1,52,18,19,46,41,51,48,10,39,24],textstyl:49,longleftarrow:49,getelementbyid:51,wilipedia:47,rlap:49,xtwoheadleftarrow:49,mathscr:49,instruct:[21,20,14,3,2],bigcup:49,ntriangleleft:49,iff:49,iint:49,fulli:[20,1,44],unicod:[49,6,44,45],x2211:54,subsystem:30,originaltext:48,weight:[21,40],hard:[37,42,4,43,20,7],realli:[46,22],nless:49,expect:[49,1,7,22],math2:49,math1:49,beyond:[49,4],orient:[16,40,34,30],"try":[37,4,19,20,41,40],looparrowright:49,shortcom:52,skiptag:[5,33],print:[23,53,56,37],occurr:52,msie:[11,39,55],difficulti:49,assist:43,safari3:45,ast:49,offsetx:45,symbian:42,mml:[34,55,43,20,53,10,7,48,54],reason:[0,44,15,46,1,3,50,18,49,20,25,39,41],base:[14,45,37,2,52,16,30,3,34,6,41,48,23,53,7,40],put:[0,14,37,15,52,49,20,7,26],mathr:49,offseti:45,basi:[53,7,55],succnapprox:49,stanard:49,drupal:2,msbm10:20,showprocessingmessag:[22,26],perhap:[46,7],bumpeq:49,perman:49,elementjax:[34,16,30,41,10,48],stixgener:[49,45],getelementsbytagnam:3,assign:[5,46,33],major:[23,53,7,3],notifi:19,boxplu:49,upper:49,feel:4,exchang:47,lastnam:46,number:[0,2,49,6,14,42,18,20,21,22,24,25,28,46,39,10,7,41,43,34,37,31,48,1,53],fadeoutstep:6,done:[17,1,30,49,20,54,7],least:[54,39,7,15],blank:[29,28],stabl:[20,7,37],miss:[49,15,28],differ:[49,7,37,28,46,1,51,19,20,52,54,39,40],script:[0,2,30,5,8,10,12,14,42,43,19,20,41,22,24,39,3,33,35,38,7,49,37,48,1,51,53,54],interact:[23,20,54,7,48],smoother:6,construct:[54,1],statement:[1,28],exten:15,illeg:[21,42,7],store:[12,29,14,45,42,28,48,1,51,46,34,35,7,10,39,24,54],xmln:20,option:[5,6,8,9,13,14,43,20,25,22,26,27,15,39,32,33,35,36,7,40,41,49,45,31,21,50,11,54,55],nleftarrow:49,triangleleft:49,ntrianglerighteq:49,selector:[56,22,18],tex2jax_process:5,part:[5,44,37,15,28,52,49,8,3,43,20,25,22,19,23,53,54,7,40,1],pars:[49,42,15],mmltoken:49,binom:49,cosh:49,kind:54,aaa:25,prebuilt:20,whenev:[29,44,37],remot:37,remov:[49,7,42,29,48,18,5,6,33,22,51,54,39,24],dtd:20,bridg:[14,48],arrang:28,markup:[0,44,15,47,49,20,54],ffff88:56,comput:[45,37,47,49,53,39],nleqslant:49,packag:[37,15,47,49,35,7],expir:12,"null":[12,0,34,45,42,28,29,40,3,18,6,41,22,51,48,10,39,24],built:[13,14,3,53],equival:[12,28,1,51,43,46,21],lim:49,self:[20,44,42],ell:49,also:[3,4,5,12,14,28,43,16,18,19,20,11,22,48,15,46,37,7,40,49,44,45,47,50,51,52,53,54],brack:49,build:20,brace:49,distribut:[20,38,14,37,7],appendchild:[12,3],addel:12,reach:7,ignoreclass:[5,33],react:29,most:[19,34,37,2,28,47,30,49,3,43,20,41,53,7,40,56,42],plan:20,rho:49,alpha:49,rhd:49,vardelta:49,renewenviron:49,clear:[29,45,28,30,18,19],tpl:2,h2o:49,exp:49,latest:[14,37,2,3,4,51,49,20,35,8,53,38,7],leftroot:49,cdata:42,nshortparallel:49,carefulli:[21,45,51],cdn:[49,14,37,42,2,3,51,43,20,35,8,53,38,7],finv:49,particularli:[43,37],rightleftarrow:49,font:[0,49,6,13,14,42,18,20,21,22,23,25,37,7,11,45,47,56,50,51,52,53,54],find:[7,4,51,49,6,35,8,54,39],preremoveclass:22,execut:[0,28,29,17,49,30,19,46,54,7,1],pretti:37,solut:[20,54,37,4],delayedx:28,queu:[17,1,7,28,29],factor:[11,45,22,42],noerror:[43,20,49],tagsid:[25,26],precnsim:49,express:[19,29,49,51,5,20,33,25,22,53,1],strut:49,nativ:[44,16,3,43,11,23,53,54,55],mainten:14,rest:[0,44,1,51,49,20,23,54],konqueror:[53,39],restart:[37,17,1,5,33,7],ie9:[53,37,42],ie8:[53,42],ie7:53,acut:49,vmatrix:49,common:[13,14,15,2,20,47,49,44,43,6,21,7,39,41],set:[0,30,5,6,7,9,12,14,15,43,18,19,20,25,22,48,26,27,28,29,3,31,32,33,35,36,37,39,40,42,49,34,45,46,47,21,56,50,51,52,11,54,55,1],overrightarrow:49,startup:[13,7,42,51,3,1,30,34,19,41,22,39],see:[0,30,4,5,6,7,8,10,14,28,43,17,19,20,11,22,26,27,15,29,32,33,35,36,37,38,39,42,49,44,45,46,47,56,50,51,52,53,54,1],barb:49,sec:49,arg:49,ams_hml:7,disadvantag:53,langl:49,inconveni:14,someth:[49,37,4,51,5,20,22],particip:4,won:[1,7,37,42],columnspan:44,subscript:[49,20,42],experi:22,altern:[0,15,49,46,54,40],numer:[39,44],complement:49,javascript:[0,2,3,49,6,8,11,13,14,16,19,20,21,22,23,48,25,26,28,46,36,38,7,40,43,34,45,47,56,50,51,52,53,54,1],isol:[49,42],mailbox:[19,47],bmatrix:49,consumpt:42,distinguish:10,longrightarrow:49,errat:7,classnam:3,popul:30,closur:[46,28,51],last:[0,37,28,17,56,49,39,26],delimit:[49,14,42,15,5,20,33,54,7],hyperlink:54,mathzoom:[43,56,36,26],nvdash:49,grei:49,context:[5,33,50,22,28],overset:49,hbar:49,whole:[52,39,51],load:[0,2,3,49,7,10,13,14,42,17,18,19,20,41,22,23,24,28,29,30,46,35,38,39,43,34,37,47,1,51,52,53,54],markdown:[49,20,54,47],simpli:[5,14,37,15,28,46,17,49,51,43,32,33,27,22,7,23,39,41,35],point:[49,17,7,31,20],instanti:40,schedul:46,usemathmlspac:9,fcolorbox:49,header:[7,37,2,8],suppli:[39,48,22,28],bigve:49,mistak:21,zeta:49,throughout:49,becom:[14,37,28,1,4,19,44,53,40],notaion:13,gneq:49,devic:[23,53,14,42,7],due:14,empti:[34,45,28,1,30,22,54],otherwis:[0,7,28,49,18,43,20,34,8,53,39,40],invis:[49,37],fire:[30,7,3,46],imag:[14,45,42,32,47,3,27,5,6,33,21,23,37,7],descib:15,coordin:[17,54,1],understand:[43,54],demand:43,urcorn:49,convers:[49,15],blacksquar:49,look:[12,49,44,45,28,2,29,56,15,4,18,5,20,33,51,8,37,54,39,26],bcancel:49,solid:[12,49,56],histor:53,pitchfork:49,lvert:49,"while":[12,0,14,37,20,55,49,3,31,19,6,44,22,52,54,7,29,1],blacktriangleleft:49,nprec:49,abov:[12,14,45,15,28,20,1,3,31,51,49,6,22,46,37,7,40,42],circlearrowright:49,bowti:49,everyon:19,loop:[25,48],pack:42,subsect:41,measuredangl:49,vartriangl:49,eqslantless:49,biguplu:49,itself:[49,14,37,1,28,29,17,56,30,34,19,44,22,7,48,54,39,40,41,26],overleftarrow:49,limit:[12,0,44,49,31,25,7],rightarrow:49,xleftarrow:49,shorten:18,shorter:42,am_htmlormml:[43,20,7],redisplai:18,conflict:[49,54,42],higher:7,upuparrow:49,optim:[53,42],wherea:49,domin:47,alert:[19,46,1,28],jsmath2jax:[27,35,26,42],temporari:7,user:[3,4,49,6,13,18,19,20,11,22,23,28,35,36,37,7,43,44,45,50,51,53,54],robust:[19,47],stack:25,recent:[23,3],lower:[34,42,16,30,18,49,22],task:49,older:[44,7],entri:[49,17,56,42,47],searchabl:23,ngeqq:49,textit:49,curvearrowleft:49,normals:49,scriptsiz:49,fallingdotseq:49,explan:[49,20],rvert:49,obscur:[42,18],press:22,amp:[49,42,15],regardless:51,cup:49,setscript:12,blacklozeng:49,endgroup:49,ffeeee:49,rgb:49,input:[3,49,8,9,38,14,42,19,20,41,22,24,25,26,15,31,39,34,35,10,7,40,43,44,47,48,1,51,53,54],subsequ:[49,41],sin:49,oslash:49,asciimath:[13,15,31,47,43,20,33,23,7,26],format:[13,14,45,15,47,48,49,11,43,20,21,22,23,53,10,44,24,54],big:[49,26],moodl:2,intuit:47,tomathml:[43,48],game:49,insert:[49,27,28,3,5,32,33,41,22,8,38,39,24,54],bit:[11,40],diagup:49,semi:56,varkappa:49,signal:[29,7,28,52,16,30,34,19,46,41,47,39],altough:46,resolv:42,collect:[28,47,56,46,48,1],api:[16,13,23,20],mathrel:49,swarrow:49,asciimath2jax_ignor:33,scrip:14,gtrless:49,creation:[10,30],some:[2,3,49,6,14,15,16,17,19,20,41,22,23,24,26,28,46,39,37,10,7,40,11,44,45,48,1,51,53,54,55],back:[37,15,20,49,6,33,48],endtoggl:49,global:[34,28,16,51,49,53],urgent:7,sampl:[37,52,56,30,51,19,20,22],instal:[13,14,45,42,20,37,49,6,8,23,53,7],scale:[45,42,49,11,22,23],substitut:25,mathemat:[0,3,5,6,8,10,11,7,42,43,19,20,25,22,23,24,27,15,32,33,35,36,37,38,39,41,49,44,45,47,48,1,50,51,53,54],larg:[49,0,14,7],prod:49,reproduc:51,sqsubseteq:49,tex2jax:[5,14,42,51,49,3,34,43,20,44,22,54,7,26],machin:[47,37],garamond:49,previou:[46,1,29,28,18],run:[0,3,5,6,9,39,17,19,20,25,22,27,28,30,31,32,33,37,7,29,44,45,46,1,51,52,11,54,55],doteqdot:49,odot:49,step:[6,54,30,2,20],hookleftarrow:49,varsubsetneq:49,carol:49,impos:37,ngeqslant:49,reappear:18,materi:[42,51],dialog:42,rangl:49,succcurlyeq:49,gamma:49,file3:1,file2:[0,1],file1:[0,1],file4:1,bmod:49,msam10:20,prec:49,notat:[15,47,49,20,23,54,7],isjax:39,chang:[49,14,45,42,2,31,3,50,18,43,20,25,7,37,53,54,39,48,51,11],announc:52,triangl:49,question:[20,41,4],submit:4,custom:[49,42,15,18,43,20,23,53],adjac:42,perp:49,includ:[0,1,2,3,5,6,7,9,11,14,15,16,19,20,25,22,23,26,27,28,30,31,32,33,34,35,36,37,10,39,41,42,43,44,45,46,47,21,49,50,51,53,54,55,56],suit:[14,6,31,44,7,20],nativemml:[44,47,55,50,43,11,53,54,24,26],overleftrightarrow:49,ulcorn:49,properli:[12,0,14,37,42,20,48,1,3,51,6,44,46,39,40],poster:29,atop:49,loadhook:[0,39,46],serif:[49,0,45],link:[14,37,42,2,20,16,49,6,52,7],translat:[54,10,41,24,42],delta:49,line:[49,14,37,42,2,31,47,30,3,5,20,33,27,53,54,7,26],enspac:49,rmoustach:49,qquad:49,divideontim:49,geqq:49,similar:[52,37,28],xmapsto:49,enlarg:36,constant:[19,25],doesn:[19,45,28,15,48,49,3,43,22,37,7,40],repres:[12,49,27,20,47,56,18,5,6,33,21,22,23,32,24,54],"char":49,mathdiv:[12,46,1,51],tbinom:49,home:[47,0,15],ebook:53,improv:[14,42,4,22,53,7],phantom:49,iiint:49,titl:[20,51],sequenti:[52,1,30],invalid:[49,21],llcorner:49,toaudibl:48,bracket:[49,21,22],shoveleft:49,xrightarrow:49,department:37,supseteq:49,nice:3,lozeng:49,delayclear:45,msup:[20,54],alttext:32,varsubsetneqq:49,eval:28,fisher:49,newcommand:49,svn:[20,14,37],rightharpoonup:49,land:49,mimetyp:[48,10,41,24],svg:[42,47,43,53,54,7],supseteqq:49,depth:49,dot:49,leak:48,aquamarin:49,scroll:38,prototyp:40,code:[0,3,4,5,7,8,12,13,14,43,17,19,20,21,22,27,28,29,30,32,33,39,49,34,46,47,56,51,52,11,1],partial:49,edg:53,queri:54,tiddlywiki:2,edu:37,privat:[52,41,37],elsewher:51,friendli:20,send:[19,29,7],becam:47,sens:54,sent:[19,29,39,47],actiontyp:45,unzip:37,gnsim:49,xxxxxxxx:[20,37],mous:[45,42,50,43,36,54],untouch:49,tri:[49,0,14,45],ischrom:39,mathit:49,button:37,geograph:7,fewer:43,nleq:49,xcancel:49,userscript:3,maction:[49,45,42],pleas:[21,4],impli:49,smaller:[43,0,42],fortun:19,arctan:49,natur:[23,20,49,37,54],varupsilon:49,download:[0,14,37,42,6,20,22,23,54,7],hspace:49,click:[49,45,50,43,11,22,36,8,54],append:[12,37],compat:[42,47,49,22,53,7],index:[20,37,2],compar:53,access:[49,37,42,2,46,48,1,50,43,20,29,23,53,7,40],acronym:47,mathjax:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56],backprim:49,vargamma:49,varsigma:49,leq:49,intercept:20,let:[14,37,44,3,50,49,20,21,22,39,55],sinh:49,vertic:[5,33],sinc:[0,49,14,28,43,17,19,20,11,22,25,15,39,7,40,42,29,44,56,51,52,53,54,1],tex4ht:54,rtime:49,convert:[13,44,15,28,49,3,18,5,35,23,54,24],sqcap:49,larger:[43,20,54,7,53],technolog:[43,23,4],zscale:22,circledast:49,typic:[49,37,15,5,20,10,7],honor:37,chanc:[5,19,33,29,20],firefox:[37,42,3,53,39,55],rgroup:49,bittersweet:49,appli:[49,37,7,40],iskonqueror:39,lessgtr:49,"boolean":39,smallmatrix:49,oval:49,cloud:[14,7],from:[0,2,30,5,7,10,13,14,42,43,18,19,20,25,22,24,27,15,29,3,32,33,35,37,38,39,40,41,49,34,45,46,48,1,50,51,53,54],zip:[20,37,42],commun:[19,13,4,20],chi:49,doubl:[43,49,25,22,36],upgrad:[6,37,4,13],varphi:49,cho:49,implic:37,few:[49,20,37,35,15],msqrt:[20,54],simpler:18,newmath:51,src:[5,14,2,20,49,3,27,51,43,32,33,21,35,7,8,53,38,39,1],nsubseteq:49,lippman:15,doublebarwedg:49,projlim:49,"4ac":20,actual:[12,0,44,15,28,17,49,51,19,46,22,7,10,39,24,1],versionatleast:39,account:12,alik:3,retriev:12,augment:[40,10,41,24],scalabl:[47,53],underwai:1,aperson:46,halt:52,thin:25,control:[5,6,9,11,39,43,20,25,22,27,32,33,36,37,7,49,45,31,56,50,53,55],tau:49,tar:37,process:[0,3,5,7,12,13,14,42,43,17,18,19,20,25,22,24,26,27,15,30,32,33,35,10,39,41,49,44,46,48,1,51,53,54,55],dfrac:49,preformat:42,high:[23,53,54],tag:[2,30,49,8,14,42,19,20,21,22,24,25,26,15,39,3,32,33,35,10,7,5,44,37,48,51,54],tab:37,tan:49,delai:[0,7,45,28,29,50,18,43,22,36,19,39],fontwarns:56,gcd:49,importat:16,getelementsbytagnamen:3,subdirectori:[37,10,24,48],instead:[49,14,37,42,15,46,17,1,51,19,20,54,7],class4:40,class2:[5,33,40],smallfrown:49,sim:49,class1:[5,33,40],simplesup:40,frac:49,overridden:[45,24,18,41,48,10,40],mspace:[49,20,44,42],"_svg":53,anothermethod:40,frak:49,filtertext:18,redund:[40,22],essenti:[43,49,54,40,15],light:[49,40],correspond:[39,45,35,7],element:[30,5,6,12,39,42,43,19,20,21,22,24,29,33,10,7,40,49,34,45,48,56,51,52,54,1],issu:[0,44,4,18,22,53,54,7],newextarrow:49,allow:[2,3,49,14,42,18,19,20,21,22,23,25,29,46,36,37,7,40,43,45,47,56,50,11,1],fallback:[37,45],mjx:12,fastest:53,move:[37,14,45],nsucc:49,comma:[56,3,49,22,7,26],dagger:49,mathjax_tooltip:45,movabl:[38,2],chosen:53,clickabl:49,coth:49,varxi:49,therefor:49,pixel:[47,45],multimap:49,crash:22,pure:44,handl:[0,14,42,15,52,47,49,3,11,34,19,6,44,7,53,1,39,55,41],supsetneq:49,nokia:42,innermost:21,dai:12,automat:[17,1,18,49,20,41,53,54,7,40],front:[43,42],successor:35,gggtr:49,sourceel:[19,48,24,51],anyth:[19,26,4],edit:[43,7,2,8],class3:[5,33,40],februari:13,mode:[49,45,42,5,20,35,37,53,54],varomega:49,"2em":49,genfrac:49,subset:49,delaypost:45,nointerest:29,meta:53,"static":40,our:[14,37,42,4,20,38],rightleftharpoon:49,helpurl:50,special:[5,44,15,46,49,43,20,33,22,7,52,23,53,54,39,56],out:[0,14,45,37,1,19,6,11,53,54],variabl:[34,28,16,3,30,51,49,46,53,40],lesseqqgtr:49,matrix:49,categori:1,suitabl:49,rel:[0,11,45,42],moveabl:[38,2],merg:[12,39],ref:49,red:[49,20,21],negthinspac:49,nsucceq:49,insid:[42,2],workflow:44,manipul:51,eqslantgtr:49,releas:[20,7,3,37],bleed:42,indent:[25,22],could:[0,14,15,46,16,49,4,51,19,20,44,7,54,39,48,1],ask:[4,51,20,25,54,7],succ:49,keep:[14,37,2,15,47,51,49,20,54,7],gtreqqless:49,length:3,outsid:[5,53],"0em":[56,22],uproot:49,softwar:[43,20,54,23],rbrace:49,blogger:2,rbrack:49,precapprox:49,spadesuit:49,date:[20,14,37,42,7],uplu:49,clubsuit:49,bigsqcup:49,suffic:20,"long":[49,20,1,42,50],start:[0,14,37,15,28,13,49,30,52,54,19,20,21,1,22,8,38,7,29,41],unknown:44,respond:[29,22,4],system:[45,37,2,20,16,4,49,6,23,53],messag:[0,14,37,47,20,16,49,30,52,18,43,6,34,41,22,19,39,29],attach:[19,49,52,29],attack:20,termin:[5,33],man:20,iota:49,rsh:49,supset:49,"1em":[56,44],gtreqless:49,hdashlin:49,xlongequ:49,ipad:42,preceq:49,gtrdot:49,subsetneq:49,structur:[0,7,28,46,47,51,19,20,34,39,26],charact:[49,44,45,42,15,31,47,56,5,6,33,25,22,53,54],htaccess:37,seriou:54,bet:37,exhibit:37,"function":[0,7,28,29,47,17,49,3,51,19,46,30,41,52,54,39,40,1],biggl:49,biggm:49,rrightarrow:49,unkown:39,lightli:53,close:[44,42,20,4,43,6,26],need:[0,1,2,3,4,5,6,7,8,10,14,15,17,18,19,20,25,22,23,24,28,30,46,33,37,38,39,40,41,42,43,44,45,31,47,48,49,11,51,52,53,54,56],turn:[12,5,14,28,29,43,33,44,11],biggr:49,gdef:49,min:49,mid:49,which:[2,30,5,7,10,14,15,43,18,19,20,21,22,24,25,26,27,28,29,3,32,33,34,35,36,37,38,39,40,42,49,44,45,46,48,56,51,53,54,1],hbox:49,mit:49,singl:[0,14,15,28,52,16,49,51,5,20,33,34,23,1,7,56,42],declaremathoper:49,mathjax_preview:[27,5,32,33,22,54],x22d6:49,unless:[20,42,28,53],who:[19,29,4],leftthreetim:49,why:49,underset:49,placement:42,url:[0,14,37,42,49,3,50,43,20,7],gather:49,request:[0,42,29,49,30,19,46,7,1],face:[45,4,49,6,25,37,26],inde:[53,3,26],movablelimit:42,nmid:49,determin:[7,45,2,30,49,31,11,22,39],flux:1,occasion:7,fact:[29,14,41],backsimeq:49,mathjax_messag:18,leftarrowtail:49,verbos:[47,46,22],bracevert:49,woth:44,curlyeqsucc:49,highest:53,locat:[0,14,37,6,49,30,51,5,32,33,27,22,7,19,54,39,24,20,35],jax:[30,49,9,14,42,16,19,25,22,24,26,15,3,31,39,35,10,7,40,41,43,34,45,47,48,56,11,51,53,54,55],vartriangleright:49,forev:3,should:[3,5,7,8,38,14,28,43,17,20,21,22,24,25,15,29,46,33,35,10,39,41,49,44,37,47,56,51,53,55,1],imagefont:[6,45],vartriangleleft:49,suppos:[46,14,7,51],"5px":[12,49],triangleright:49,"5pt":20,local:[49,37,28,20,1,3,51,43,6,22,7],hope:[6,14],precsim:49,liminf:49,woff:37,expres:49,increas:[14,42],bigstar:49,leqslant:49,smash:49,enabl:[49,14,15,2,5,20,33,8,38,7],organ:54,frown:49,stuff:39,she:53,contain:[0,2,3,5,6,12,39,43,16,17,18,19,20,41,22,48,27,28,29,32,33,37,7,49,34,45,46,56,51,54,1],view:[44,45,16,3,43,20,35,23,37,7],conform:20,frame:18,apolog:14,temporarili:18,troubl:20,issafari:39,asynchron:[0,34,28,29,47,17,1,51,19,46,52,39],statu:[0,37,46],error:[0,14,15,49,3,4,43,20,44,22,10,39,24,41],jmath:49,pattern:[5,33,22],thumb:1,gtrsim:49,favor:14,state:1,quickest:20,theta:49,neither:[6,21],equiv:[49,53],omicron:49,nshortmid:49,"2pt":49,kei:[12,0,28,29,17,19,22,39],texttip:49,"2px":49,entir:[39,22,7,51],closebox:6,ker:49,thank:15,skipstartuptypeset:22,plugin:[2,50,49,22,8,23,53,54],admin:[38,8],nabla:49,equal:[49,1,39,40],gnapprox:49,etc:[47,1,51,49,22,7],eta:49,equat:[5,27,45,42,20,37,49,31,51,43,32,33,25,22,23,53,54,48],eth:49,limiti:37,lmoustach:49,onchang:51,comment:[49,42,56,43,20,22,7],varnoth:49,arriv:[19,52],solv:[7,3],harpoon:49,arguement:46,sqcup:49,quit:[53,51],showfontmenu:50,"55em":49,quotat:56,bbb:49,defint:49,sqsupseteq:49,treat:[49,20,15],immedi:[0,17,1,30,51,19,7],smallsetminu:49,both:[0,14,42,15,46,47,49,30,43,20,44,22,7,8,53,38,39,40,1],alignat:49,varsupsetneq:49,otf:[37,42],psi:49,x_2:49,togeth:[14,28,1,43,44,39],x_1:49,injlim:49,present:[29,44,4,6,22,53,7],cot:49,twoheadrightarrow:49,multi:49,iscallback:28,displaylin:49,align:[49,20,56,44,22],contextu:[13,44,45,50,43,11,22,36,53,54,48],studentdisplai:51,defin:[30,49,6,14,20,25,22,26,15,3,46,39,36,7,40,41,43,45,56,50,11,1],glossari:[47,13],layer:[42,2],almost:49,curvearrowright:49,site:[49,14,37,2,43,20,22,23,38,7],archiv:[20,37],substanti:[53,14,7],revis:37,greater:[49,53,15],curlywedg:49,parti:[19,20],cross:37,sqrt:[49,20,54],getx:40,extensiondir:41,oint:49,android:42,cssid:[49,42],curlyve:49,phi:49,http:[14,37,2,3,50,51,49,20,35,8,53,38,7],d3eoax9i5htok0:20,lleftarrow:49,"8em":[49,25],effect:[17,1,3],student:51,php:[2,8],executehook:[29,28],off:[49,42,43,52,11,53,7],center:[49,20,56,22],well:[19,44,37,28,46,56,4,51,43,20,33,41,22,52,53,7],exampl:[0,3,4,49,6,7,9,11,12,14,15,17,19,20,25,22,24,26,27,28,29,31,32,33,34,35,36,37,10,39,40,42,5,44,45,46,21,56,50,51,52,48,53,54,55,1],command:[44,37,28,47,17,1,30,51,49,22,7,39],choos:[49,20,53],undefin:[49,20,28,46],setx:40,subsetneqq:49,sibl:42,usual:[28,15,46,1,49,6,41,22,54,7],curlyeqprec:49,paus:37,less:[49,37,15,5,20,33,54,39],obtain:[49,14,37,51,43,20,22,54,7,24],mistaken:54,mathclos:49,mathoutput:51,simultan:[1,30],web:[2,30,49,6,13,14,42,19,20,22,23,48,15,3,35,45,7,29,37,47,1,51,52,53,54],current_them:2,smith:46,textbf:49,cdotp:49,atopwithdelim:49,valid:[46,14],match:[5,29,33,45],webpag:35,piec:42,varpropto:49,punctuat:42,cpan:49,know:[49,46,3,19,20,29,10,7,24,54],cfrac:49,mathinn:49,redesign:53,tick:[49,20,33,15],recurs:[39,42],mho:49,nofont:6,like:[3,49,28,17,18,19,20,23,26,15,29,46,33,35,10,7,42,5,44,37,31,47,56,51,52,54,1],lost:46,messagehook:[19,29,39],necessari:[7,20,23,53,39,48],resiz:53,page:[2,30,5,6,7,8,12,13,14,42,43,16,18,19,20,11,22,23,48,27,15,29,3,32,33,35,37,38,39,49,44,45,46,47,1,50,51,52,53,54],didn:49,captur:47,linux:39,"export":48,superclass:40,proper:[29,39],guarante:[0,1,51,17],peter:15,librari:[16,1,34,37],glyph:[49,47],kern:49,rspace:49,assum:51,avoid:[14,42,15,49,21,22,53,54,44],tooltip:[49,45],checkmark:49,leav:[12,15,51,49,25,55],doublecap:49,supsetneqq:49,preload:[0,20],twoheadleftarrow:49,mpmous:43,daleth:49,upharpoonright:49,journal:47,usag:[49,13],host:[14,7],sphericalangl:49,although:[16,20,37,55,29],offset:45,panel:49,varepsilon:49,about:[4,49,6,14,28,19,20,11,22,15,29,31,39,37,7,42,43,45,46,51,52,54],ams_html:[49,14,51,43,35,7],rare:1,column:25,mathajx:14,mod_head:37,mapsto:49,constructor:40,fals:[49,45,42,29,3,50,5,31,11,22,9,39,40,26],bigoplu:49,eqalign:49,own:[49,14,37,42,20,16,1,31,4,43,6,52,53,10,7,24,54,26],amsmath:[49,14,1,43,20,25,7],circledr:49,maxbuff:25,bigtriangledown:49,guard:22,vphantom:49,circlearrowleft:49,transfer:[20,37],much:[31,47,19,52,53,7],bigcap:49,arg1:46,"var":[12,28,1,3,51,19,46,40],stai:[53,7],arg2:46,deliveri:[20,42],propto:49,unexpect:[11,22],precnapprox:49,studentansw:51,bodi:[0,14,51,20,10,7,24],gain:[53,50],lgroup:49,bug:[12,14,37,42,4,18,20,22,54,7],count:3,made:[37,1,4,52,54,48,26],bbbk:49,whether:[49,27,45,46,3,31,51,5,32,33,11,22,7,9,39,55,50],wish:[14,46,56,3,4,49,20,7,53,39],displai:[49,6,12,13,42,18,19,20,25,22,23,24,27,15,31,33,35,36,7,5,44,37,47,48,50,51,53,54],substack:49,underleftrightarrow:49,mathord:49,gtrapprox:49,below:[2,49,6,9,12,39,20,25,22,48,27,32,33,36,10,7,5,45,31,21,50,52,11,54,24,55],sideset:49,"_htmlormml":53,problem:[14,37,42,15,46,3,4,49,20,44,53,54,7],x03c0:54,"int":49,dure:[42,28,19,41,22,39,48],novemb:14,implement:[12,0,14,16,49,43,46,44,19,53,54,40,41],nolimit:49,inf:49,probabl:[19,46,7,15,2],oplu:49,mrow:[20,54],definecolor:49,immateri:1,percent:[11,45],detail:[0,5,6,7,8,13,14,28,43,17,19,20,11,22,27,15,29,32,33,35,36,37,38,39,42,49,44,45,1,50,51,52,53,54],lesseqgtr:49,other:[0,2,30,5,6,7,14,15,43,17,18,19,20,41,22,23,48,28,29,46,33,35,37,39,40,42,49,44,45,47,1,11,51,52,53,54,55],futur:[0,4,18,19,52,53,48],branch:[7,37],varieti:54,removeaft:6,repeat:[37,2],star:49,"class":[40,49,34,42,28,29,16,17,5,33,41,22,48,10,24,54,35],thicksim:49,msgroup:44,reflow:[53,42],sphinx:2,scientif:47,reliabl:[53,14,3,7],rule:[49,6,9,1,22],mathjax_mathml:3,portion:51,eot:37},objtypes:{"0":"py:method"},titles:["The MathJax.Ajax Object","Using Queues","Using MathJax in popular web platforms","Loading MathJax Dynamically","The MathJax Community","The tex2jax Preprocessor","The FontWarnings extension","Loading and Configuring MathJax","Installing MathJax in WordPress","The MathML input processor","The MathJax.InputJax Class","The NativeMML output processor","The MathJax.HTML Object","MathJax Documentation","Migrating from MathJax v1.0 to v1.1","MathJax AsciiMath Support","The MathJax API","The MathJax.Callback.Queue Class","The MathJax.Message Object","Using Signals","Getting Started","Describing HTML snippets","The Core Configuration Options","What is MathJax?","The MathJax.OutputJax Class","The TeX input processor","Configuration Objects","The jsMath2jax Preprocessor","The MathJax.Callback Class","The MathJax.Callback.Signal Class","The MathJax Startup Sequence","The AsciiMath input processor","The mml2jax Preprocessor","The asciimath2jax Preprocessor","The MathJax variable","Converting to MathJax from jsMath","The MathZoom extension","Installing and Testing MathJax","Using MathJax in Movable Type","The MathJax.Hub Object","The MathJax Object-Oriented Programming Model","The Base Jax Class","What’s New in MathJax v1.1","Common Configurations","MathJax MathML Support","The HTML-CSS output processor","Using Callbacks","Glossary","The MathJax.ElementJax Class","MathJax TeX and LaTeX Support","The MathMenu extension","Modifying Math on the Page","Synchronizing your code with MathJax","MathJax Output Formats","The MathJax Processing Model","The MMLorHTML configuration options","CSS Style Objects"],objnames:{"0":"Python method"},filenames:["api/ajax","queues","platforms/index","dynamic","community","options/tex2jax","options/FontWarnings","configuration","platforms/wordpress","options/MathML","api/inputjax","options/NativeMML","api/html","index","upgrade","asciimath","api/index","api/queue","api/message","signals","start","HTML-snippets","options/hub","mathjax","api/outputjax","options/TeX","options/index","options/jsMath2jax","api/callback","api/signal","startup","options/AsciiMath","options/mml2jax","options/asciimath2jax","api/variable","jsMath","options/MathZoom","installation","platforms/movable-type","api/hub","api/object","api/jax","whats-new","config-files","mathml","options/HTML-CSS","callbacks","glossary","api/elementjax","tex","options/MathMenu","typeset","synchronize","output","model","options/MMLorHTML","CSS-styles"]}) \ No newline at end of file diff --git a/docs/html/signals.html b/docs/html/signals.html index 3ab60b58b..bb2d61d82 100644 --- a/docs/html/signals.html +++ b/docs/html/signals.html @@ -6,13 +6,13 @@ - Using Signals — MathJax v1.1 documentation + Using Signals — MathJax v2.0 documentation - + @@ -41,7 +41,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Synchronizing your code with MathJax »
  • @@ -242,12 +242,12 @@ structure and methods of the signal object.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • Synchronizing your code with MathJax »
  • diff --git a/docs/html/start.html b/docs/html/start.html index d53559969..bde07a94c 100644 --- a/docs/html/start.html +++ b/docs/html/start.html @@ -6,13 +6,13 @@ - Getting Started — MathJax v1.1 documentation + Getting Started — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -52,14 +52,14 @@

    Getting StartedΒΆ

    MathJax allows you to include mathematics in your web pages, either -using TeX and LaTeX notation, or as MathML, and you can even use both -in the same document.

    +using TeX and LaTeX notation, MathML, or AsciiMath notation, and you +can even use all three in the same document.

    There are two ways to access MathJax: the easiest way is to use the copy of MathJax available from our distributed network service at cdn.mathjax.org, but you can also download and install a copy of -MathJax on your own server, or for use locally on your own hard disk -(with no need for network access). Both of these are described below, -with links to more detailed explanations. This page gives the +MathJax on your own server, or use it locally on your own hard disk +(with no need for network access). All three of these are described +below, with links to more detailed explanations. This page gives the quickest and easiest ways to get MathJax up and running on your web site, but you may want to read the details in order to customize the setup for your pages.

    @@ -82,12 +82,12 @@ it. load the latest version of MathJax from the distributed server, and configure it to recognize mathematics in both TeX and MathML notation, and ask it to generate its output using MathML if the browser supports -that, and otherwise use HTML-with-CSS to display the mathematics. -This is the most general configuration, and should suffice for most -people’s needs. Other configurations are available, however, and you -can also provide additional configuration parameters to taylor one of -the configurations to your needs. More details can be found in the -Loading and Configuring MathJax instructions.

    +that well enough, and otherwise use HTML-with-CSS to display the +mathematics. This is one of the most general configurations, and +should suffice for most people’s needs. Other configurations are +available, however, and you can also provide additional configuration +parameters to taylor one of the configurations to your needs. More +details can be found in the Loading and Configuring MathJax instructions.

    The use of cdn.mathjax.org is governed by its terms of service, so be sure to read that before linking to the MathJax CDN server.

    To see how to enter mathematics in your web pages, see Putting @@ -101,7 +101,7 @@ possible a hostile 3rd party could intercept the MathJax program data, and replace it. This is sometimes called a man-in-the-middle attack.

    To prevent such attacks, it is necessary to access the MathJax CDN -over a secure HTTPS connection. This can be easily done by using the +over a secure HTTPS connection. This can be done easily by using the following <script> tag instead of the one listed above:

    <script type="text/javascript"
       src="https://d3eoax9i5htok0.cloudfront.net/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
    @@ -109,8 +109,9 @@ following <script>

    Currently, the Amazon Cloudfront service used by the MathJax CDN does -not support the use of a human-friendly name like cdn.mathjax.org for -secure connections. However, this address is stable and safe to use.

    +not support the use of a human-friendly name like cdn.mathjax.org +for secure connections; however, the address given above is stable and +safe to use.

    @@ -118,8 +119,9 @@ secure connections. However, this address is stable and safe to use.

    We recommend using the CDN service if you can, but you can also install MathJax on your own server, or locally on your own hard disk. To do so you will need to do the following things:

    -
      -
    1. Obtain a copy of MathJax and make it available on your server.
    2. +

      1. Obtain a copy of MathJax and make it available on your server or +hard disk.

      +
      1. Configure MathJax to suit the needs of your site.
      2. Link MathJax into the web pages that are to include mathematics.
      3. Put mathematics into your web pages so that MathJax can display @@ -133,52 +135,53 @@ should obtain a file named something like mathjax-MathJax-v1.1-X-XXXXXXXX.zip, where the X’s are random-looking letters and numbers). This archive includes both the MathJax code and the MathJax webfonts, so it is the only file you -need. Note that this is different from earlier releases, which had -the fonts separate from the rest of the code.

        +need. Note that this is different from v1.0 and earlier releases, +which had the fonts separate from the rest of the code.

        Unpack the archive and place the resulting MathJax folder onto your web server at a convenient location where you can include it into your web pages. For example, making MathJax a top-level directory on your server would be one natural way to do this. That would let you refer to the main MathJax file via the URL /MathJax/MathJax.js from within any page on your server.

        -

        Note: While this is the easiest way to set up MathJax initially, there +

        Note: While this is the easiest way to set up MathJax initially, there is a better way to do it if you want to be able to keep your copy of MathJax up-to-date. That uses the Git version control system, and is described in the Installing MathJax document. If you prefer using Subversion, you can also use that to get a copy of MathJax (see Installing MathJax via SVN).

        Once you have MathJax set up on your server, you can test it using the -files in the MathJax/test directory. Load them in your browser -using its web address rather than opening them locally (i.e., use an -http:// URL rather than a file:// URL). When you view the -index.html file, after a few moments you should see a message -indicating that MathJax appears to be working. If not, check that the -files have been transferred to the server completely and that the -permissions allow the server to access the files and folders that are -part of the MathJax directory. (Be sure to verify the MathJax -folder’s permissions as well.) Check the server log files for any -errors that pertain to the MathJax installation; this may help locate -problems in the permission or locations of files.

        +files in the MathJax/test directory. If you are putting MathJax +on a server, load them in your browser using their web addresses +rather than opening them locally (i.e., use an http:// URL rather +than a file:// URL). When you view the index.html file, after +a few moments you should see a message indicating that MathJax appears +to be working. If not, check that the files have been transferred to +the server completely and that the permissions allow the server to +access the files and folders that are part of the MathJax directory. +(Be sure to verify the MathJax folder’s permissions as well.) Check +the server log files for any errors that pertain to the MathJax +installation; this may help locate problems in the permission or +locations of files.

    Configuring your copy of MathJaxΒΆ

    When you include MathJax into your web pages as described below, it will load the file config/TeX-AMS-MML_HTMLorMML.js (i.e., the file named TeX-AMS-MML_HTMLorMML.js in the config folder of the -main MathJax folder). This file preloads all the most commonly-used -components of MathJax, allowing it to process mathematics that is in -the TeX or LaTeX format, or in MathML notation. It will produce -output in MathML form if the user’s browser supports that, and will use -HTML-with-CSS to render the mathematics otherwise.

    +main MathJax folder). This file preloads all the most +commonly-used components of MathJax, allowing it to process +mathematics that is in the TeX or LaTeX format, or in MathML notation. +It will produce output in MathML form if the user’s browser supports +that sufficiently, and will use HTML-with-CSS to render the +mathematics otherwise.

    There are a number of other prebuilt configuration files that you can choose from as well, or you could use the config/default.js file and customize the settings yourself. The combined configuration files are described more fully in Common Configurations, and the configuration options are described in Configuration Options.

    -

    Note: The configuration process has changed in MathJax v1.1, so if you have -existing pages that use MathJax, you may need to modify the tag that -loads MathJax so that it conforms with the new configuration process. -See Installing and Configuring MathJax for more -details.

    +

    Note: The configuration process changed between MathJax v1.0 and v1.1, +so if you have existing pages that use MathJax v1.0, you may need to +modify the tag that loads MathJax so that it conforms with the new +configuration process. See Installing and Configuring MathJax for more details.

    Linking your copy of MathJax into a web pageΒΆ

    @@ -215,13 +218,15 @@ of MathJax.

    Putting mathematics in a web pageΒΆ

    -

    To put mathematics in your web page, you can use either TeX -and LaTeX notation or MathML notation or both within -the same page; the MathJax configuration tells MathJax which you want -to use, and how you plan to indicate the mathematics when you are -using TeX notation. The configuration file used in the examples above -tells MathJax to look for both TeX and MathML notation within your -pages. These two formats are described in more detail below.

    +

    To put mathematics in your web page, you can use TeX and +LaTeX notation, MathML notation, AsciiMath +notation, or a combination of all three within the same page; the +MathJax configuration tells MathJax which you want to use, and how you +plan to indicate the mathematics when you are using TeX notation. The +configuration file used in the examples above tells MathJax to look +for both TeX and MathML notation within your pages. Other +configuration files tell MathJax to use AsciiMath input. These three +formats are described in more detail below.

    TeX and LaTeX inputΒΆ

    Mathematics that is written in TeX or LaTeX format is @@ -255,9 +260,12 @@ options page, for additional configuration parameters that you can specify for the tex2jax preprocessor, which is the component of MathJax that identifies TeX notation within the page. See the TeX and LaTeX page for -more on MathJax’s support for TeX.

    -

    Here is a complete sample page containing TeX mathematics (also available -in the test/sample-tex.html file):

    +more on MathJax’s support for TeX, and in particular how to deal with +single dollar signs in your text when you have enabled single +dollar-sign delimiters.

    +

    Here is a complete sample page containing TeX mathematics (also +available in the test/sample-tex.html +file):

    <!DOCTYPE html>
     <html>
     <head>
    @@ -282,6 +290,15 @@ In particular, you need to be careful about the use of less-than
     signs, since those are what the browser uses to indicate the start of
     a tag in HTML.  Putting a space on both sides of the less-than sign
     should be sufficient, but see TeX and LaTeX support for details.

    +

    If you are using MathJax within a blog, wiki, or other content +management system, the markup language used by that system may +interfere with the TeX notation used by MathJax. For example, if your +blog uses Markdown notation for authoring your pages, the +underscores used by TeX to indicate subscripts may be confused with +the use of underscores by Markdown to indicate italics, and the two +uses may prevent your mathematics from being displayed. See TeX +and LaTeX support for some suggestions about how to +deal with the problem.

    There are a number of extensions for the TeX input processor that are loaded by the TeX-AMS-MML_HTMLorMML configuration. These include:

      @@ -294,10 +311,12 @@ an error message when there is a problem processing the TeX, and
    • TeX/noUndefined.js, which prevents undefined macros from producing an error message, and instead shows the macro name in red.
    -

    Other extensions may be loaded automatically when needed.

    +

    Other extensions may be loaded automatically when needed. See +TeX and LaTeX support for details on the other +TeX extensions that are available.

    -

    MathML inputΒΆ

    +

    MathML inputΒΆ

    For mathematics written in MathML notation, you mark your mathematics using standard <math> tags, where <math display="block"> represents displayed mathematics and <math @@ -307,9 +326,18 @@ works with both), and that the web page need not be served with any special MIME-type. Also note that, unless you are using XHTML rather than HTML, you should not include a namespace prefix for your <math> tags; for example, you should not use <m:math> except -in a file where you have tied the m namespace to the MathML DTD.

    +in a file where you have tied the m namespace to the MathML DTD by +adding the xmlns:m="http://www.w3.org/1998/Math/MathML" attribtue +to your file’s <html> tag.

    +

    Although it is not required, it is recommended that you include the +xmlns="http://www.w3.org/1998/Math/MathML" attribute on all +<math> tags in your document (and this is preferred to the use of +a namespace prefix like m: above, since those are deprecated in +HTML5) in order to make your MathML work in the widest range of +situations.

    Here is a complete sample page containing MathML mathematics (also -available in the test/sample-mml.html file):

    +available in the test/sample-mml.html +file):

    <!DOCTYPE html>
     <html>
     <head>
    @@ -320,13 +348,19 @@ available in the test/sample-mml.
     </head>
     <body>
     
    -When <math><mi>a</mi><mo>&#x2260;</mo><mn>0</mn></math>,
    -there are two solutions to <math>
    +<p>
    +When
    +<math xmlns="http://www.w3.org/1998/Math/MathML">
    +  <mi>a</mi><mo>&#x2260;</mo><mn>0</mn>
    +</math>,
    +there are two solutions to
    +<math xmlns="http://www.w3.org/1998/Math/MathML">
       <mi>a</mi><msup><mi>x</mi><mn>2</mn></msup>
       <mo>+</mo> <mi>b</mi><mi>x</mi>
       <mo>+</mo> <mi>c</mi> <mo>=</mo> <mn>0</mn>
    -</math> and they are
    -<math mode="display">
    +</math>
    +and they are
    +<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
       <mi>x</mi> <mo>=</mo>
       <mrow>
         <mfrac>
    @@ -345,6 +379,7 @@ there are two solutions to <math>
       </mrow>
       <mtext>.</mtext>
     </math>
    +</p>
     
     </body>
     </html>
    @@ -354,18 +389,57 @@ there are two solutions to <math>
     page), you should not use self-closing tags, but should use explicit
     open and close tags for all your math elements.  For example, you
     should use

    -
    <mspace width="thinmathspace"></mspace>
    +
    <mspace width="5pt"></mspace>
     
    -

    rather than <mspace width="5pt" /> in an HTML document. If you use the -self-closing form, some browsers will not build the math tree properly, and -MathJax will receive a damaged math structure, which will not be rendered -as the original notation would have been. Unfortunately, there is nothing -MathJax can do about that, since the browser has incorrectly interpreted -the tags long before MathJax has a chance to work with them.

    -

    The component of MathJax that recognizes MathML notation is called the -mml2jax extension, and it has only a few configuration options; see the -config/default.js file or the mml2jax configuration options page for more details. See the MathML page for more on MathJax’s MathML support.

    +

    rather than <mspace width="5pt" /> in an HTML document. If you +use the self-closing form, some browsers will not build the math tree +properly, and MathJax will receive a damaged math structure, which +will not be rendered as the original notation would have been. +Typically, this will cause parts of your expression to not be +displayed. Unfortunately, there is nothing MathJax can do about that, +since the browser has incorrectly interpreted the tags long before +MathJax has a chance to work with them.

    +

    The component of MathJax that recognizes MathML notation within the +page is called the mml2jax extension, and it has only a few +configuration options; see the config/default.js file or the +mml2jax configuration options page for more +details. See the MathML page for more on +MathJax’s MathML support.

    +
    +
    +

    AsciiMath inputΒΆ

    +

    MathJax v2.0 includes a new input format: AsciiMath notation. +For mathematics written in this form, you mark your mathematical +expressions by surrounding them in “back-ticks”, i.e., `...`.

    +

    Here is a complete sample page containing AsciiMath notation (also +available in the test/sample-asciimath.html +file):

    +
    <!DOCTYPE html>
    +<html>
    +<head>
    +<title>MathJax AsciiMath Test Page</title>
    +<script type="text/javascript"
    +  src="../MathJax.js?config=AM_HTMLorMML-full"></script>
    +</head>
    +<body>
    +
    +<p>When `a != 0`, there are two solutions to `ax^2 + bx + c = 0` and
    +they are</p>
    +<p style="text-align:center">
    +  `x = (-b +- sqrt(b^2-4ac))/(2a) .`
    +</p>
    +
    +</body>
    +</html>
    +
    +
    +

    The component of MathJax that recognizes asciimath notation within the +page is called the asciimath2jax extension, and it has only a few +configuration options; see the config/default.js file or the +asciimath2jax configuration options page for more +details. See the AsciiMath support page for more on +MathJax’s AsciiMath support.

    @@ -413,6 +487,7 @@ MathJax, you could visit the Putting mathematics in a web page
  • Where to go from here?
  • @@ -455,11 +530,11 @@ MathJax, you could visit the previous | -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/html/startup.html b/docs/html/startup.html index b3857888d..2571a54ff 100644 --- a/docs/html/startup.html +++ b/docs/html/startup.html @@ -6,13 +6,13 @@ - The MathJax Startup Sequence — MathJax v1.1 documentation + The MathJax Startup Sequence — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -237,11 +237,11 @@ complete, however, before 7 will be performed.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/html/synchronize.html b/docs/html/synchronize.html index 61a14e1cd..4d5bfb2ff 100644 --- a/docs/html/synchronize.html +++ b/docs/html/synchronize.html @@ -6,13 +6,13 @@ - Synchronizing your code with MathJax — MathJax v1.1 documentation + Synchronizing your code with MathJax — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -146,11 +146,11 @@ directory for a working example of using signals.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/html/tex.html b/docs/html/tex.html index c3ef77e3c..019c936a7 100644 --- a/docs/html/tex.html +++ b/docs/html/tex.html @@ -6,13 +6,13 @@ - MathJax TeX and LaTeX Support — MathJax v1.1 documentation + MathJax TeX and LaTeX Support — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -115,7 +115,7 @@ the page.

    Keep in mind that your mathematics is part of an HTML document, so you need to be aware of the special characters used by HTML as part of its markup. There cannot be HTML tags within the math delimiters (other -than <BR>) as TeX-formatted math does not include HTML tags. +than <br>) as TeX-formatted math does not include HTML tags. Also, since the mathematics is initially given as text on the page, you need to be careful that your mathematics doesn’t look like HTML tags to the browser (which parses the page before MathJax gets to see @@ -153,6 +153,126 @@ easier to enter <

    Keep in mind that the browser interprets your text before MathJax does.

    +

    Another source of difficulty is when MathJax is used in content +management systems that have their own document processing commands +that are interpreted before the HTML page is created. For example, +many blogs and wikis use formats like Markdown to allow you to +create the content of you pages. In Markdown, the underscore is used +to indicate italics, and this usage will conflict with MathJax’s ise +of the underscore to indicate a subscript. Since Markdown is applied +to the page first, it will convert your subscripts markers into +italics (inserting <i> tags into your mathematics, which will +cause MathJax to ignore the math).

    +

    Such systems need to be told not to modify the mathematics that +appears between math delimiters. That usually involves modifying the +content-management system itself, which is beyond the means of most +page authors. If you are lucky, someone else will already have done +this for you, and you can find a MathJax plugin for your system on the +MathJax-In-Use page page.

    +

    If there is no plugin for your system, or if it doesn’t handle the +subtleties of issolating the mathematics from the other markup that it +supports, then you may have to “trick” it into leaving your +mathematics untouched. Most content-management systems provide some +means of indicating text that should not be modified (“verbatim” +text), often for giving code snippets for computer languages. +You may be use that to enclose your mathematics so that the system +leaves it unchanged and MathJax can process it. For example, in +Markdown, the back-tick (`) is used to mark verbatim text, so

    +
    ... we have `\(x_1 = 132\)` and `\(x_2 = 370\)` and so ...
    +
    +
    +

    may be able to protect the underscores from being processed by +Markdown.

    +

    Some content-management systems use the backslash (\) as a special +character for “escaping” other characters, but TeX uses this character +to indicate a macro name. In such systems, you may have to double the +backslashes in order to obtain a single backslash in your HTML page. +For example, you may have to do

    +
    \\begin{array}{cc}
    +  a & b \\\\
    +  c & c
    +\\end{array}
    +
    +
    +

    to get an array with the four entries a, b, c, and d. Note in +particular that if you want \\ you will have to double both +backslashes, giving \\\\.

    +

    Finally, if you have enabled single dollar-signs as math delimiters, +and you want to include a literal dollar sign in your web page (one +that doesn’t represent a math delimiter), you will need to prevent +MathJax from using it as a math delimiter. If you also enable the +processEscapes configuration parameter, then you can use \$ in +the text of your page to get a dollar sign (without the backslash) in +the end. Alternatively, you use something like +<span>$</span> to isolate the dollar sign so that +MathJax will not use it as a delimiter.

    + +
    +

    Defining TeX macrosΒΆ

    +

    You can use the \def, \newcommand, \renewcommand, +\newenvironment, \renewenvironment, and \let commands to +create your own macros and environments. Unlike actual TeX, however, +in order for MathJax to process these, they must be enclosed in math +delimiters (since MathJax only processes macros in math-mode). For +example

    +
    \(
    +   \def\RR{\bf R}
    +   \def\bold#1{\bf #1}
    +\)
    +
    +
    +

    would define \RR to produce a bold-faced “R”, and \bold{...} +to put its argument into bold face. Both definitions would be +available throughout the rest of the page.

    +

    You can include macro definitions in the Macros section of the TeX +blocks of your configuration, but they must be represetned as +JavaScript objects. For example, the two macros above can be +pre-defined in the configuraiton by

    +
    MathJax.Hub.Config({
    +  TeX: {
    +    Macros: {
    +      RR: "{\\bf R}",
    +      bold: ["{\\bf #1}",1]
    +    }
    +  }
    +});
    +
    +
    +

    Here you give the macro as a name:value pair, where the name +is the name of the control sequence (without the backslash) that you +are defining, and value is either the replacement string for the +macro (when there are no arguments) or an array consisting of the +replacement string followed by the number of arguments for the macro.

    +

    Note that the replacement string is given as a JavaScript string +literal, and the backslash has special meaning in JavaScript strings. +So to get an actual backslash in the string you must double it, as int +he examples above.

    +

    If you have many such definitions that you want to use on more than +one page, you could put them into a configuration file that you can +load along with the main configuration file. For example, you could +create a file in MathJax/config/local called local.js that +contains your macro definitions:

    +
    MathJax.Hub.Config({
    +  TeX: {
    +    Macros: {
    +      RR: "{\\bf R}",
    +      bold: ["{\\bf #1}",1]
    +    }
    +  }
    +});
    +
    +MathJax.Ajax.loadComplete("[MathJax]/config/local/local.js");
    +
    +
    +

    and then load it along with your main configuration file on the script +that loads MathJax.js:

    +
    <script src="/MathJax/MathJax.js?config=TeX-AMS_HTML,local/local.js"></script>
    +
    +
    +

    If you are using the CDN, you can make a local configuration file on +your own server, and load MathJax itself from the CDN and your +configuration file from your server. See Using a Local +Configuration File with the CDN for details.

    TeX and LaTeX extensionsΒΆ

    @@ -182,7 +302,50 @@ script prior to loading MathJax. For example

    will load the autobold TeX extension in addition to those already included in the TeX-AMS_HTML configuration file.

    +

    You can also load these extensions from within a math expresion using +the non-standard \require{extension} macro. For example

    +
    \(\require{color}\)
    +
    +
    +

    would load the color extension into the page. This way you you can +load extensions into pages that didn’t load them in their +configurations (and prevents you from having to load all the +extensions into all pages even if they aren’t used).

    The main extensions are described below.

    +
    +

    ActionΒΆ

    +

    The action extension gives you access to the MathML <maction> +element. It defines three new non-standard macros:

    +
    +
    +\mathtip{math}{tip}
    +

    Use tip (in math mode) as tooltip for math.

    +
    + +
    +
    +\texttip{math}{tip}
    +

    Use tip (in text mode) as tooltip for math.

    +
    + +
    +
    +\toggle{math1}{math2}...\endtoggle
    +

    Show math1, and when clicked, show math2, and so on. +When the last one is clicked, go back to math1.

    +
    + +

    To use this extension in your own configurations, add it to the +extensions array in the TeX block.

    +
    TeX: {
    +  extensions: ["action.js"]
    +}
    +
    +
    +

    This extension is not included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands.

    +

    AMSmath and AMSsymbolsΒΆ

    The AMSmath extension implements AMS math environments and macros, and @@ -215,6 +378,268 @@ appears in a section of an HTML page that is in bold.

    This extension is not loaded by the combined configuration files.

    +
    +

    BBoxΒΆ

    +

    The bbox extension defines a new macro for adding background colors, +borders, and padding to your math expressions.

    +
    +
    +\bbox[options]{math}
    +

    puts a bounding box around math using the provided options. +The options can be one of the following:

    +
      +
    1. A color name used for the background color.
    2. +
    3. A dimension (e.g., 2px) to be used as a padding around the +mathematics (on all sides).
    4. +
    5. Style attributes to be applied to the mathematics (e.g., +border:1px solid red).
    6. +
    7. A combination of these separated by commas.
    8. +
    +
    + +

    Here are some examples:

    +
    \bbox[red]{x+y}      % a red box behind x+y
    +\bbox[2pt]{x+1}      % an invisible box around x+y with 2pt of extra space
    +\bbox[red,2pt]{x+1}  % a red box around x+y with 2pt of extra space
    +\bbox[5px,border:2px solid red]
    +                     % a 2px red border around the math 5px away
    +
    +
    +

    This extension is not included in any of the combined configurations, +but it will be loaded automatically, so you do not need to include it +in your extensions array.

    +
    +
    +

    BegingroupΒΆ

    +

    The begingroup extension implements commands that provide a +mechanism for localizing macro defintions so that they are not +permanent. This is useful if you have a blog site, for example, and +want to isolate changes that your readers make in their comments so +that they don’t affect later comments.

    +

    It defines two new non-standard macros, \begingroup and +\endgroup, that are used to start and stop a local namespace for +macros. Any macros that are defined between the \begingroup and +\endgroup will be removed after the \endgroup is executed. +For example, if you put \(\begingroup\) at the top of each reader’s +comments and \(\endgroup\) at the end, then any macros they define +within their response will be removed after it is processed.

    +

    In addition to these two macros, the begingroup extension defines +the standard \global and \gdef control sequences from TeX. +(The \let, \def, \newcommand, and \newenvironment +control sequences are already defined in the core TeX input jax.)

    +

    To use this extension in your own configurations, add it to the +extensions array in the TeX block.

    +
    TeX: {
    +  extensions: ["begingroup.js"]
    +}
    +
    +
    +

    This extension is not included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands.

    +
    +
    +

    CancelΒΆ

    +

    The cancel extension defines the following macros:

    +
    +
    +\cancel{math}
    +

    Strikeout math from lower left to upper right.

    +
    + +
    +
    +\bcancel{math}
    +

    Strikeout math from upper left to lower right.

    +
    + +
    +
    +\xcancel{math}
    +

    Strikeout math with an “X”.

    +
    + +
    +
    +\cancelto{value}{math}
    +

    Strikeout math with an arrow going to value.

    +
    + +

    To use this extension in your own configurations, add it to the +extensions array in the TeX block.

    +
    TeX: {
    +  extensions: ["cancel.js"]
    +}
    +
    +
    +

    This extension is not included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands.

    +
    +
    +

    ColorΒΆ

    +

    The \color command in the core TeX input jax is not standard in +that it takes the mathematics to be colored as one of its parameters, +whereas the LaTeX \color command is a switch that changes the +color of everything that follows it.

    +

    The color extension changes the \color command to be compatible +with the LaTeX implementation, and also defines \colorbox, +\fcolorbox, and \DefineColor, as in the LaTeX color package. +It defines the standard set of colors (Apricot, Aquamarine, +Bittersweet, and so on), and provides the RGB and grey-scale color +spaces in addition to named colors.

    +

    To use this extension in your own configurations, add it to the +extensions array in the TeX block.

    +
    TeX: {
    +  extensions: ["color.js"]
    +}
    +
    +
    +

    This extension is not included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands, +and have \color be compatible with LaTeX usage.

    +
    +
    +

    EncloseΒΆ

    +

    The enclose extension gives you access to the MathML <menclose> +element for adding boxes, ovals, strikethroughs, and other marks over +your mathematics. It defines the following non-standard macro:

    +
    +
    +\enclose{notation}[attributes]{math}
    +

    Where notation is a comma-separated list of MathML +<menclose> notations (e.g., circle, left, +updiagonalstrike, longdiv, etc.), attributes are +MathML attribute values allowed on the <menclose> element +(e.g., mathcolor="red", mathbackground="yellow"), and +math is the mathematics to be enclosed.

    +
    + +

    For example

    +
    \enclose{circle}[mathcolor="red"]{x}
    +\enclose{circle}[mathcolor="red"]{\color{black}{x}}
    +\enclose{circle,box}{x}
    +\enclose{circle}{\enclose{box}{x}}
    +
    +
    +

    To use this extension in your own configurations, add it to the +extensions array in the TeX block.

    +
    TeX: {
    +  extensions: ["action.js"]
    +}
    +
    +
    +

    This extension is not included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands.

    +
    +
    +

    ExtpfeilΒΆ

    +

    The extpfeil extension adds more macros for producing extensible +arrows, including \xtwoheadrightarrow, \xtwoheadleftarrow, +\xmapsto, \xlongequal, \xtofrom, and a non-standard +\Newextarrow for creating your own extensible arrows. The latter +has the form

    +
    +
    +\Newextarrow{\cs}{lspace,rspace}{unicode-char}
    +

    where \cs is the new control sequence name to be defined, +lspace and rspace are integers representing the amount of +space (in suitably small units) to use at the left and right of +text that is placed above or below the arrow, and unicode-char +is a number representing a unicode character position in either +decimal or hexadecimal notation.

    +
    + +

    For example

    +
    \Newextarrow{\xrightharpoonup}{5,10}{0x21C0}
    +
    +
    +

    defines an extensible right harpoon with barb up. Note that MathJax +knows how to stretch only a limited number of characters, so you may +not actually get a stretchy character this way.

    +

    To use this extension in your own configurations, add it to the +extensions array in the TeX block.

    +
    TeX: {
    +  extensions: ["extpfeil.js"]
    +}
    +
    +
    +

    This extension is not included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands.

    +
    +
    +

    HTMLΒΆ

    +

    The HTML extension gives you access to some HTML features like +styles, classes, element ID’s and clickable links. It defines the +following non-standard macros:

    +
    +
    +\href{url}{math}
    +

    Makes math be a link to the page given by url.

    +
    + +
    +
    +\class{name}{math}
    +

    Attaches the CSS class name to the output associated with +math when it is included in the HTML page. This allows your +CSS to style the element.

    +
    + +
    +
    +\cssId{id}{math}
    +

    Attaches an id attribute with value id to the output +associated with math when it is included in the HTML page. +This allows your CSS to style the element, or your javascript to +locate it on the page.

    +
    + +
    +
    +\style{css}{math}
    +

    Adds the give css declarations to the element associated with +math.

    +
    + +

    For example:

    +
    x \href{why-equal.html}{=} y^2 + 1
    +
    +(x+1)^2 = \class{hidden}{(x+1)(x+1)}
    +
    +(x+1)^2 = \cssId{step1}{\style{visibility:hidden}{(x+1)(x+1)}}
    +
    +
    +

    This extension is not included in any of the combined configurations, +but it will be loaded automatically when any of these macros is used, +so you do not need to include it explicitly in your configuration.

    +
    +
    +

    mhchemΒΆ

    +

    The mhchem extensions implements the \ce, \cf, and \cee +chemical equation macros of the LaTeX mhchem package. See the +mhchem CPAN page for more +information and a link to the documentation for mhchem.

    +

    For example

    +
    \ce{C6H5-CHO}
    +\ce{$A$ ->[\ce{+H2O}] $B$}
    +\ce{SO4^2- + Ba^2+ -> BaSO4 v}
    +
    +
    +

    To use this extension in your own configurations, add it to the +extensions array in the TeX block.

    +
    TeX: {
    +  extensions: ["mhchem.js"]
    +}
    +
    +
    +

    This extension is not included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands.

    +

    noErrorsΒΆ

    The noErrors extension prevents TeX error messages from being @@ -232,9 +657,10 @@ following to your inlineDelimiters: ["",""], // or ["$","$"] or ["\\(","\\)"] multiLine: true, // false for TeX on all one line style: { - "font-family": "serif", - "font-size": "80%", + "font-size": "90%", + "text-align": "left", "color": "black", + "padding": "1px 3px", "border": "1px solid" // add any additional CSS styles that you want // (be sure there is no extra comma at the end of the last item) @@ -340,6 +766,9 @@ array. You can configure the extension as follows:

    macro is defined in an extension, the name of the extension follows the macro name. If the extension is in brackets, the extension will be loaded automatically when the macro or environment is first used.

    +

    More complete details about how to use these macros, with examples and +explanations, is available at Carol Fisher’s TeX Commands Available +in MathJax page.

    SymbolsΒΆ

    #
    @@ -408,8 +837,11 @@ be loaded automatically when the macro or environment is first used.

    \barwedge AMSsymbols \Bbb \Bbbk AMSsymbols +\bbox [bbox] +\bcancel cancel \because AMSsymbols \begin +\begingroup begingroup non-standard \beta \beth AMSsymbols \between AMSsymbols @@ -474,13 +906,18 @@ be loaded automatically when the macro or environment is first used.

    CΒΆ

    \cal
    +\cancel                 cancel
    +\cancelto               cancel
     \cap
     \Cap                    AMSsymbols
     \cases
     \cdot
     \cdotp
     \cdots
    +\ce                     mhchem
    +\cee                    mhchem
     \centerdot              AMSsymbols
    +\cf                     mhchem
     \cfrac                  AMSmath
     \check
     \checkmark              AMSsymbols
    @@ -498,7 +935,8 @@ be loaded automatically when the macro or environment is first used.

    \class [HTML] non-standard \clubsuit \colon -\color +\color color +\colorbox color \complement AMSsymbols \cong \coprod @@ -577,12 +1015,15 @@ be loaded automatically when the macro or environment is first used.

    EΒΆ

    \ell
     \emptyset
    +\enclose                enclose         non-standard
     \end
    +\endgroup               begingroup      non-standard
     \enspace
     \epsilon
     \eqalign
     \eqalignno
     \eqcirc                 AMSsymbols
    +\eqref                 [AMSmath]
     \eqsim                  AMSsymbols
     \eqslantgtr             AMSsymbols
     \eqslantless            AMSsymbols
    @@ -598,6 +1039,7 @@ be loaded automatically when the macro or environment is first used.

    FΒΆ

    \fallingdotseq          AMSsymbols
     \fbox
    +\fcolorbox              color
     \Finv                   AMSsymbols
     \flat
     \forall
    @@ -614,6 +1056,7 @@ be loaded automatically when the macro or environment is first used.

    \Gamma \gamma \gcd +\gdef begingroup \ge \genfrac AMSmath \geq @@ -624,6 +1067,7 @@ be loaded automatically when the macro or environment is first used.

    \ggg AMSsymbols \gggtr AMSsymbols \gimel AMSsymbols +\global begingroup \gnapprox AMSsymbols \gneq AMSsymbols \gneqq AMSsymbols @@ -741,6 +1185,7 @@ be loaded automatically when the macro or environment is first used.

    \lesseqqgtr AMSsymbols \lessgtr AMSsymbols \lesssim AMSsymbols +\let [newcommand] \lfloor \lg \lgroup @@ -809,6 +1254,7 @@ be loaded automatically when the macro or environment is first used.

    \mathscr \mathsf \mathstrut +\mathtip action non-standard \mathtt \matrix \max @@ -816,9 +1262,11 @@ be loaded automatically when the macro or environment is first used.

    \measuredangle AMSsymbols \mho AMSsymbols \mid +\middle \min \mit \mkern +\mmlToken non-standard \mod \models \moveleft @@ -845,6 +1293,7 @@ be loaded automatically when the macro or environment is first used.

    \neq \newcommand [newcommand] \newenvironment [newcommand] +\Newextarrow extpfeil \newline \nexists AMSsymbols \ngeq AMSsymbols @@ -968,7 +1417,9 @@ be loaded automatically when the macro or environment is first used.

    \rbrack \rceil \Re +\ref [AMSmath] \renewcommand [newcommand] +\renewenvironment [newcommand] \require non-standard \restriction AMSsymbols \rfloor @@ -1089,6 +1540,7 @@ be loaded automatically when the macro or environment is first used.

    \textit \textrm \textstyle +\texttip action non-standard \tfrac AMSmath \therefore AMSsymbols \Theta @@ -1101,6 +1553,7 @@ be loaded automatically when the macro or environment is first used.

    \tiny \Tiny non-standard \to +\toggle action non-standard \top \triangle \triangledown AMSsymbols @@ -1205,8 +1658,14 @@ be loaded automatically when the macro or environment is first used.

    XΒΆ

    \Xi
     \xi
    +\xcancel                cancel
     \xleftarrow             AMSmath
    +\xlongequal             extpfeil
    +\xmapsto                extpfeil
     \xrightarrow            AMSmath
    +\xtofrom                extpfeil
    +\xtwoheadleftarrow      extpfeil
    +\xtwoheadrightarrow     extpfeil
     
    @@ -1277,9 +1736,19 @@ vmatrix
  • MathJax TeX and LaTeX Support
  • diff --git a/docs/html/typeset.html b/docs/html/typeset.html index ebe59da67..048a154df 100644 --- a/docs/html/typeset.html +++ b/docs/html/typeset.html @@ -6,13 +6,13 @@ - Modifying Math on the Page — MathJax v1.1 documentation + Modifying Math on the Page — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -310,11 +310,11 @@ You typed: ${}$
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/html/upgrade.html b/docs/html/upgrade.html index ae60fed1f..d4564b428 100644 --- a/docs/html/upgrade.html +++ b/docs/html/upgrade.html @@ -6,13 +6,13 @@ - Migrating from MathJax v1.0 to v1.1 — MathJax v1.1 documentation + Migrating from MathJax v1.0 to v1.1 — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -315,11 +315,11 @@ retired in favor of the GitHub site.

  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/html/whats-new.html b/docs/html/whats-new.html index 33ab049fb..8a6246359 100644 --- a/docs/html/whats-new.html +++ b/docs/html/whats-new.html @@ -6,13 +6,13 @@ - What’s New in MathJax v1.1 — MathJax v1.1 documentation + What’s New in MathJax v1.1 — MathJax v2.0 documentation - + @@ -40,7 +40,7 @@
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • @@ -70,7 +70,7 @@ and speeds up typesetting of the mathematics on the page.
  • Improved responsiveness to mouse events during typesetting.
  • Parallel downloading of files needed by MathJax, for faster startup times.
  • -
  • Shorter timeout for web fonts, so if they can’t be downlaoded, you don’t +
  • Shorter timeout for web fonts, so if they can’t be downloaded, you don’t have to wait so long.
  • Rollover to image fonts if a web font fails to load (so you don’t have to wait for every font to fail.
  • @@ -252,11 +252,11 @@ font menu (since Opera can’t display many of the characters).
  • previous |
  • -
  • MathJax v1.1 documentation »
  • +
  • MathJax v2.0 documentation »
  • diff --git a/docs/source/CSS-styles.rst b/docs/source/CSS-styles.rst index bf014f5c2..b7b8b0bbb 100644 --- a/docs/source/CSS-styles.rst +++ b/docs/source/CSS-styles.rst @@ -5,8 +5,8 @@ CSS Style Objects ***************** Many MathJax components allow you to specify CSS styles that control -the look of the elements they create. These are described using CSS -style objects, which are JavaScript objects that represent standard +the look of the elements they create. These are described using `CSS +style objects`, which are JavaScript objects that represent standard CSS declarations. The main CSS style object is a collection of `name:value` pairs where the `name` is the CSS selector that is being defined, and the `value` is an object that gives the style for that @@ -31,24 +31,26 @@ declaration: styles: { + ".MathJax_Display": { + "text-align": "center", + margin: "1em 0em" + }, + ".MathJax .merror": { "background-color": "#FFFF88", color: "#CC0000", border: "1px solid #CC0000", padding: "1px 3px", - "font-family": "serif", "font-style": "normal", "font-size": "90%" - }, - - ".MathJax_Preview": {color: "#888888"}, + } } -This defines two CSS styles, one for the selector ``.MathJax -.merror``, which specifies a background color, foreground color, -border, and so on, and a second for ``.MathJax_Preview`` that sets its -color. +This defines two CSS styles, one for the selector +``.MathJax_Display``, which specifies its text alignment and margin +settings, and a second for ``.MathJax .merror``, which specifies a +background color, foreground color, border, and so on. You can add as many such definitions to a ``styles`` object as you wish. Note, however, that since this is a JavaScript object, the diff --git a/docs/source/asciimath.rst b/docs/source/asciimath.rst new file mode 100644 index 000000000..bbfccea88 --- /dev/null +++ b/docs/source/asciimath.rst @@ -0,0 +1,127 @@ +.. _AsciiMath-support: + +************************* +MathJax AsciiMath Support +************************* + +The support for :term:`AsciiMath` in MathJax consists of two parts: +the `asciimath2jax` preprocessor, and the `AsciiMath` input processor. +The first of these looks for mathematics within your web page +(indicated by delimiters like ```...```) and marks the mathematics for +later processing by MathJax. The AsciiMath input processor is what +converts the AsciiMath notation into MathJax's internal format, where +one of MathJax's output processors then displays it in the web page. + +The AsciiMath input jax actually includes a copy of Peter Jipsen's +``ASCIIMathML.js`` file (see the `AsciiMath home page +`_ for +details), and is included by permission of the author. This means +that the results of MathJax's AsciiMath processing should be the same +as using the actual ``ASCIIMathML.js`` package (at least as far as the +MathML that it generates is concerned). Thanks go to David Lippman +for writing the initial version of the AsciiMath preprocessor and +input jax. + +The `asciimath2jax` preprocessor can be configured to look for whatever +markers you want to use for your math delimiters. See the +:ref:`asciimath2jax configuration options ` section for +details on how to customize the action of `asciimath2jax`. + +The AsciiMath input processor handles conversion of your mathematical +notation into MathJax's internal format (which is essentially MathML). +The AsciiMath input processor has few configuration options (see the +:ref:`AsciiMath options ` section for details). + +The AsciiMath input jax handles only the original ASCIIMathML notation +(from ASCIIMathML v1.4.7), not the extened LaTeXMathML notation added +in version 2.0 of ASCIIMathML, though the AsciiMath input jax does +expose the tables that define the symbols that AsciiMath processes, +and so it would be possible to extend them to include additional +symbols. In general, it is probably better to use MathJax's :ref:`TeX +input jax ` to handle LaTeX notation instead. + + +AsciiMath delimiters +==================== + +By default, the `asciimath2jax` preprocessor defines the back-tick +(`````) as the delimiters for mathematics in AsciiMath format. It +does **not** define ``$...$`` as math delimiters. That is because +dollar signs appear too often in non-mathematical settings, which +could cause some text to be treated as mathematics unexpectedly. For +example, with single-dollar delimiters, "... the cost is $2.50 for the +first one, and $2.00 for each additional one ..." would cause the +phrase "2.50 for the first one, and" to be treated as mathematics +since it falls between dollar signs. For this reason, if you want to +use single-dollars for AsciiMath notation, you must enable that +explicitly in your configuration: + +.. code-block:: javascript + + MathJax.Hub.Config({ + asciimath2jax: { + delimiters: [['$','$'], ['`','`']] + } + }); + +Note that the dollar signs are frequently used as a delimiter for +mathematics in the :term:`TeX` format, and you can not enable the +dollar-sign delimiter for both. It is probably best to leave dollar +signs for TeX notation. + +See the ``config/default.js`` file, or the :ref:`asiimath2jax +configuration options ` page, for additional +configuration parameters that you can specify for the `asciimath2jax` +preprocessor, which is the component of MathJax that identifies +AsciiMath notation within the page. + + +AsciiMath in HTML documents +=============================== + +The AsciiMath syntax is descibed in the `ASCIIMathML syntax page +`_. + +Keep in mind that your mathematics is part of an HTML document, so you +need to be aware of the special characters used by HTML as part of its +markup. There cannot be HTML tags within the math delimiters (other +than ``
    ``) as AsciiMath-formatted math does not include HTML tags. +Also, since the mathematics is initially given as text on the page, +you need to be careful that your mathematics doesn't look like HTML +tags to the browser (which parses the page before MathJax gets to see +it). In particular, that means that you have to be careful about +things like less-than and greater-than signs (``<`` and ``>``), and +ampersands (``&``), which have special meaning to the browsers. For +example, + +.. code-block:: html + + ... when `x`` in the document (typically the end of the next +actual tag in the HTML file), and you may notice that you are missing +part of the text of the document. In the example above, the "``we +have ...``" will not be displayed because the browser thinks it is +part of the tag starting at `` where ``path-to-MathJax`` is the URL to the MathJax directory on your -server or hard disk. +server or hard disk. If you are using MathJax from the CDN, you can +view the contents of `default.js +`_ as a +reference, but you will not be able to edit the CDN copy. It is +possible to use the CDN copy of MathJax with your own configuration +file, however; see :ref:`Using a Local Configuration File with the CDN +` for details. -The remaining files are combined configuration files that include not just -configuration parameters but also the files that MathJax would need to -load for those configurations. This means MathJax will have to load fewer -files, and since each file access requires establishing connections over -the network, it can be better to load one larger file than several smaller -ones. See :ref:`Loading and Configuring MathJax ` for more -details about how to load configurations, and how to modify the parameters -for a configuration file. +The remaining files in the `MathJax/config +`_ directory are +combined configuration files that include not just configuration +parameters but also the files that MathJax would need to load for +those configurations. This means MathJax will have to load fewer +files, and since each file access requires establishing connections +over the network, it can be faster to load one larger file than +several smaller ones. See :ref:`Loading and Configuring MathJax +` for more details about how to load configurations, and how +to modify the parameters for a configuration file. The following sections describe the contents of the combined configuration files. Each comes in two flavors: a standard version and a "full" version. The standard version simply defines the output processor(s) that are part of the configuration, but doesn't load the code that implements the output -processor; the full version loads the complete output processors, so +processor. The full version loads the complete output processors, so everything that MathJax needs for the page should be loaded up front, and there will be no delay once the page is ready to be processed. To obtain the "full" version, add ``-full`` to the end of the configuration file name. -The ``TeX-AMS-MML_HTMLorMML`` configuration file +The ``TeX-MML-AM_HTMLorMML`` configuration file ================================================ This configuration file is the most general of the pre-defined -configurations. It loads all the important MathJax components, including +configurations. It loads all the main MathJax components, including +the TeX, MathML, and AsciiMath preprocessors and input processors, the +AMSmath, AMSsymbols, noErrors, and noUndefined TeX extensions, both +the native MathML and HTML-with-CSS output processor definitions, and +the MathMenu and MathZoom extensions. It is equivalent to the +following configuration: + +.. code-block:: javascript + + MathJax.Hub.Config({ + config: ["MMLorHTML.js"], + jax: ["input/TeX","input/MathML","input/AsciiMath","output/HTML-CSS","output/NativeMML"], + extensions: ["tex2jax.js","mml2jax.js","asciimath2jax.js","MathMenu.js","MathZoom.js"], + TeX: { + extensions: ["AMSmath.js","AMSsymbols.js","noErrors.js","noUndefined.js"] + } + }); + +In addition, it loads the mml Element Jax, the TeX, MathML, and +AsciiMath input jax main code (not just the definition files), as well +as the `toMathML` extension, which is used by the Show Source option +in the MathJax contextual menu. The `-full` version also loads both the +HTML-CSS and NativeMML output jax main code, plus the HTML-CSS +`mtable` extension, which is normally loaded on demand. + +See the :ref:`tex2jax configuration ` section for +other configuration options for the ``tex2jax`` preprocessor, and the +:ref:`TeX input jax configuration ` section for options +that control the TeX input processor. +See the :ref:`mml2jax configuration ` section for +other configuration options for the ``mml2jax`` preprocessor, and the +:ref:`MathML input jax configuration ` section for +options that control the MathML input processor. +See the :ref:`asciimath2jax configuration ` section for +other configuration options for the ``asciimath2jax`` preprocessor, and the +:ref:`AsciiMath input jax configuration ` section for +options that control the AsciiMath input processor. +See :ref:`MathJax Output Formats ` for more +information on the NativeMML and HTML-CSS output processors. See the +:ref:`MMLorHTML configuration ` section for +details on the options that control the ``MMLorHTML`` configuration. + + +The ``TeX-AMS-MML_HTMLorMML`` configuration file +================================================ + +This configuration file is the most commonly used of the pre-defined +configurations. It loads all the main MathJax components, including the TeX and MathML preprocessors and input processors, the AMSmath, AMSsymbols, noErrors, and noUndefined TeX extensions, both the native -MathML and HTML-with-CSS output processor definitions, and the MathMenu and -MathZoom extensions. It is equivalent to the following configuration: +MathML and HTML-with-CSS output processor definitions, and the +MathMenu and MathZoom extensions. It is equivalent to the following +configuration: .. code-block:: javascript @@ -58,12 +114,12 @@ MathZoom extensions. It is equivalent to the following configuration: } }); -In addition, it loads the mml Element Jax, the TeX and MathML input jax -main code (not just the definition files), as well as the `toMathML` -extension, which is used by the Show Source option in the MathJax -contextual menu. The full version also loads both the HTML-CSS and -NativeMML output jax main code, plus the HTML-CSS `mtable` extension, which -is normally loaded on demand. +In addition, it loads the mml Element Jax, the TeX and MathML input +jax main code (not just the definition files), as well as the +`toMathML` extension, which is used by the Show Source option in the +MathJax contextual menu. The ``-full`` version also loads both the +HTML-CSS and NativeMML output jax main code, plus the HTML-CSS +`mtable` extension, which is normally loaded on demand. See the :ref:`tex2jax configuration ` section for other configuration options for the ``tex2jax`` preprocessor, and the @@ -106,7 +162,7 @@ extensions. It is equivalent to the following configuration: In addition, it loads the mml Element Jax and the TeX input jax main code (not just the definition file), as well as the `toMathML` extension, which -is used by the Show Source option in the MathJax contextual menu. The full +is used by the Show Source option in the MathJax contextual menu. The ``-full`` version also loads the HTML-CSS output jax main code, plus the HTML-CSS `mtable` extension, which is normally loaded on demand. @@ -123,7 +179,7 @@ The ``MML_HTMLorMML`` configuration file This configuration file is for sites that only use MathML format for their mathematics. It will use MathML output in browsers where that is -supported, and HTML-CSS output otherwise. The user can still use the +supported well, and HTML-CSS output otherwise. The user can still use the MathJax contextual menu to select the other output format if they desire. This file includes all the important MathJax components for MathML input @@ -142,7 +198,7 @@ and MathZoom extensions. It is equivalent to the following configuration: In addition, it loads the mml Element Jax and the MathML input jax main code (not just the definition file), as well as the `toMathML` extension, which is used by the Show Source option in the MathJax contextual menu. -The full version also loads both the HTML-CSS and NativeMML output jax main +The ``-full`` version also loads both the HTML-CSS and NativeMML output jax main code files, plus the HTML-CSS `mtable` extension, which is normally loaded on demand. @@ -156,13 +212,100 @@ information on the NativeMML and HTML-CSS output processors. See the details on the options that control the ``MMLorHTML`` configuration. +The ``AM_HTMLorMML`` configuration file +================================================ + +This configuration file is for sites that only use AsciiMath format for their +mathematics. It will use MathML output in browsers where that is +supported well, and HTML-CSS output otherwise. The user can still use the +MathJax contextual menu to select the other output format if they desire. + +This file includes all the important MathJax components for AsciiMath +input and output, including the `asciimath2jax` preprocessor and +AsciiMath input jax, the NativeMML and HTML-CSS output processor +definition files, and the MathMenu and MathZoom extensions. It is +equivalent to the following configuration: + +.. code-block:: javascript + + MathJax.Hub.Config({ + config: ["MMLorHTML.js"], + jax: ["input/AsciiMath","output/HTML-CSS","output/NativeMML"], + extensions: ["asciimath2jax.js","MathMenu.js","MathZoom.js"] + }); + +In addition, it loads the mml Element Jax and the TeX input jax main code +(not just the definition file), as well as the `toMathML` extension, which +is used by the Show Source option in the MathJax contextual menu. The ``-full`` +version also loads the HTML-CSS output jax main code, plus the HTML-CSS +`mtable` extension, which is normally loaded on demand. + +See the :ref:`asciimath2jax configuration ` +section for other configuration options for the ``asciimath2jax`` +preprocessor, and the :ref:`AsciiMath input jax configuration +` section for options that control the AsciiMath +input processor. See :ref:`MathJax Output Formats ` +for more information on the HTML-CSS and NativeMML output processors. +See the :ref:`MMLorHTML configuration ` section +for details on the options that control the ``MMLorHTML`` +configuration. + + +The ``TeX-AMS-MML_SVG`` configuration file +================================================ + +This configuration file is the same as `TeX-AMS-MML_HTMLorMML` except +that it uses the SVG output renderer rather than the NativeMML or +HTML-CSS ones. It loads all the main MathJax components, including +the TeX and MathML preprocessors and input processors, the AMSmath, +AMSsymbols, noErrors, and noUndefined TeX extensions, the SVG output +processor definitions, and the MathMenu and MathZoom extensions. It +is equivalent to the following configuration: + +.. code-block:: javascript + + MathJax.Hub.Config({ + jax: ["input/TeX","input/MathML","output/SVG"], + extensions: ["tex2jax.js","mml2jax.js","MathMenu.js","MathZoom.js"], + TeX: { + extensions: ["AMSmath.js","AMSsymbols.js","noErrors.js","noUndefined.js"] + } + }); + +In addition, it loads the mml Element Jax, the TeX and MathML input +jax main code (not just the definition files), as well as the +`toMathML` extension, which is used by the Show Source option in the +MathJax contextual menu. The ``-full`` version also loads both the +SVG output jax main code, plus the SVG `mtable` extension, which +is normally loaded on demand. + +See the :ref:`tex2jax configuration ` section for +other configuration options for the ``tex2jax`` preprocessor, and the +:ref:`TeX input jax configuration ` section for options +that control the TeX input processor. +See the :ref:`mml2jax configuration ` section for +other configuration options for the ``mml2jax`` preprocessor, and the +:ref:`MathML input jax configuration ` section for +options that control the MathML input processor. +See :ref:`MathJax Output Formats ` for more +information on the SVG output processor. + + The ``Accessible`` configuration file ================================================ This configuration file is essentially the same as ``TeX-AMS-MML_HTMLorMML`` except that it includes options that are designed for assistive technology, particularly for those with visual -challenges. It is equivalent to the following configuration: +challenged. *This file is deprecated* since the controls that make +MathJax work with screen readers are now available in the MathJax +contextual menu, and so there is no need to set them in the +configuration file any longer. So you can use any of the other +pre-defined configurations and readers with special needs should be +able to change the MathJax settings themselves to be appropriate for +their software. + +The Accessible configuration is equivalent to the following: .. code-block:: javascript @@ -173,20 +316,24 @@ challenges. It is equivalent to the following configuration: TeX: { extensions: ["AMSmath.js","AMSsymbols.js","noErrors.js","noUndefined.js"] }, - NativeMML: { showMathMenuMSIE: false }, - menuSettings: { zoom: "Double-Click" }, + menuSettings: { + zoom: "Double-Click", + mpContext: true, + mpMouse: true + }, errorSettings: { message: ["[Math Error]"] } }); -This turns off the MathJax contextual menu for Internet Explorer, since -it can interfere with some screen readers. It also sets the zoom trigger +This turns off the MathJax contextual menu for IE when MathPlayer is +active, and passes mouse events on to MathPlayer to allow screen +readers full access to MathPlayer. It also sets the zoom trigger to double-click, so that readers can see a larger version of the mathematics but double-clicking on any equation. In addition, it loads the mml Element Jax, the TeX and MathML input jax main code (not just the definition files), as well as the `toMathML` extension, which is used by the Show Source option in the MathJax -contextual menu. The full version also loads both the HTML-CSS and +contextual menu. The ``-full`` version also loads both the HTML-CSS and NativeMML output jax main code, plus the HTML-CSS `mtable` extension, which is normally loaded on demand. diff --git a/docs/source/configuration.rst b/docs/source/configuration.rst index 290fbf48c..5685d7876 100644 --- a/docs/source/configuration.rst +++ b/docs/source/configuration.rst @@ -52,14 +52,14 @@ typical invocation of MathJax would be src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"> -which loads MathJax with a configuration file that includes everything you -need in order to enter mathematics in either TeX, LaTeX, or MathML -notation, and produces output using MathML if the browser supports that, -or HTML-with-CSS otherwise. If you **don't** load an explicit -configuration file, you will need to include an in-line configuration -block in order to tell MathJax how to read and display the mathematics on -your pages. See the section below on :ref:`Using In-line Configuration -Options ` for details. +which loads MathJax with a configuration file that includes everything +you need in order to enter mathematics in either TeX, LaTeX, or MathML +notation, and produces output using MathML if the browser supports +that well enough, or HTML-with-CSS otherwise. If you **don't** load +an explicit configuration file, you will need to include an in-line +configuration block in order to tell MathJax how to read and display +the mathematics on your pages. See the section below on :ref:`Using +In-line Configuration Options ` for details. It is best to load MathJax in the document's ```` block, but it is also possible to load MathJax into the ```` section, if @@ -82,7 +82,7 @@ advanced topic, however; see :ref:`Loading MathJax Dynamically Loading MathJax from the CDN ============================ -MathJax is now available as a web service from ``cdn.mathjax.org``, so you +MathJax is available as a web service from ``cdn.mathjax.org``, so you can obtain MathJax from there without needing to install it on your own server. The CDN is part of a distributed "cloud" network, so it is handled by servers around the world. That means that you should get access @@ -100,19 +100,19 @@ get. The CDN has the following directory structure: mathjax/ # project-name 1.0-latest/ - 1.1-beta/ # temporary 1.1-latest/ # the 1.1 release with any ciritical patches + 2.0-beta/ # temporary + 2.0-latest/ # the 2.0 release with any ciritical patches ... - latest/ # the most current version (1.1-latest in this case) + latest/ # the most current version (2.0-latest in this case) Each directory corresponds to an official MathJax release; however, hotfixes (urgent bug fixes) will be applied in each release branch as necessary, even if new releases are not prepared. In other words, ``1.1-latest`` will initially point to v1.1, but over time may be updated with patches that would correspond to releases that might be numbers 1.1a, -1.1b, etc., even if such releases are not actually prepared for -distribution (they likely won't be). - +1.1b, etc., even if such releases are not actually packaged for +separate distribution (they likely won't be). We may occasionally introduce directories for betas, as indicated above, but they will be temporary, and will be removed after the official release. @@ -124,7 +124,7 @@ For example, -will load the stable v1.1 version, even if we release v1.2 or other later +will load the stable v1.1 version, even after we release v2.0 or other later versions, while .. code-block:: html @@ -132,7 +132,7 @@ versions, while will always be the most current stable release, so it will go from v1.1 to -v1.2 automatically when that is released. Note that all the versions +v2.0 automatically when that is released. Note that all the versions available on the CDN are stable versions; the development version is not hosted on the CDN. (If you wish to use the development version of MathJax, you will need to install your own copy; see :ref:`Installing @@ -143,8 +143,9 @@ The use of ``cdn.mathjax.org`` is governed by its `terms of service sure to read that before linking to the MathJax CDN server. If you wish to use the MathJax CDN but use your own configuration file -rather than one of the pre-defined ones, see the information at the end -of the :ref:`Using a configuration file ` section below. +rather than one of the pre-defined ones, see the information at the +end of the :ref:`Using a Local Configuration File +` section below. Configuring MathJax @@ -157,7 +158,7 @@ pre-defined configuration file, but include in-line commands to adjust the configuration to your needs. Note that you must use at least one of these two forms of configuration. -Unlike earlier versions of MathJax, version 1.1 does not load a default +Unlike MathJax v1.0, version 1.1 and higher does not load a default configuration file. If you have been using version 1.0's ``config/MathJax.js`` for your configuration, you will need to load that configuration file explicitly via a ``config`` parameter, as described @@ -180,28 +181,41 @@ stored in the ``MathJax/config`` directory. Among these are the following .. describe:: TeX-AMS-MML_HTMLorMML.js - Allows math to be specified in TeX, LaTeX, or MathML notation, with the - `AMSmath` and `AMSsymbols` packages included, producing output using - MathML if the browser supports it, and HTML-with-CSS otherwise. + Allows math to be specified in :term:`TeX`, :term:`LaTeX`, or + :term:`MathML` notation, with the `AMSmath` and `AMSsymbols` + packages included, producing output using MathML if the browser + supports it sufficiently, and HTML-with-CSS otherwise. .. describe:: TeX-AMS_HTML.js - Allows math to be specified in TeX or LaTeX notation, with the + Allows math to be specified in :term:`TeX` or :term:`LaTeX` notation, with the `AMSmath` and `AMSsymbols` packages included, and produces output using the HTML-CSS output processor. .. describe:: MML_HTMLorMML.js - Allows math to be specified using MathML notation, and produces MathML - output if the browser supports it, or HTML-CSS output otherwise. + Allows math to be specified using :term:`MathML` notation, and produces MathML + output if the browser supports it sufficiently, or HTML-CSS output otherwise. -.. describe:: Accessible.js +.. describe:: AM_HTMLorMML.js - Essentially the same as ``TeX-AMS-MML_HTMLorMML``, but with some - settings specified to make MathJax work better with assistive - technology (for the visually impaired). This includes setting the - zoom trigger to be a double-click, and removing the MathMenu in - Internet Explorer (which can interfere with some screen readers). + Allows math to be specified using :term:`AsciiMath` notation, + producing output in MathML if the browser supports it + sufficiently, or as HTML-with-CSS otherwise. + +.. describe:: TeX-AMS-MML_SVG.js + + Allows math to be specified in :term:`TeX`, :term:`LaTeX`, or + :term:`MathML` notation, with the `AMSmath` and `AMSsymbols` + packages included, producing output using SVG. + +.. describe:: TeX-MML-AM_HTMLorMML.js + + Allows math to be specified in :term:`TeX`, :term:`LaTeX`, + :term:`MathML`, or :term:`AsciiMath` notation, with the `AMSmath` + and `AMSsymbols` packages included, producing output using MathML + if the browser supports it sufficiently, and HTML-with-CSS + otherwise. The first of these is a file that you can edit to suit your needs. It contains nearly all the configuration options that MathJax allows, and has @@ -226,7 +240,7 @@ the main code, and a "full" version, that also includes the complete output processors. For example, with ``TeX-AMS_HTML.js`` and ``TeX-AMS_HTML-full.js``, the latter includes the complete HTML-CSS output processor. The "full" configuration files are substantially larger (on -the order of 70KB), so you need to decide whether it is worth loading the +the order of 70KB more), so you need to decide whether it is worth loading the full configuration for your pages. If most of your pages include mathematics, then it is to your advantage to @@ -271,8 +285,17 @@ can use to first load the main configuration, then the local modifications. -You can also load MathJax from the MathJax CDN server but use a configuration from -your own local server: + +.. _local-config-files: + +Using a local configuration file with the CDN +============================================= + +You can load MathJax from the MathJax CDN server but still use a +configuration from your own local server. For example, suppose you +have a configuration file called ``local.js`` on your own server, in a +directory called ``MathJax/config/local``. Then you can load MathJax +from the CDN and still use your configuration file as follows: .. code-block:: html @@ -285,7 +308,7 @@ the complete URL to the local configuration file. Note that you also have to edit the :meth:`loadComplete()` call that is at the bottom of the configuration file to change it from ``[MathJax]/config/local/local.js`` to the complete URL as you give it -in the ``config`` parameter: +in the ``config`` parameter. In the example above, it would be .. code-block:: javascript @@ -303,23 +326,24 @@ Using in-line configuration options =================================== The second way to configure MathJax is through `in-line configuration`, -that puts the configuration options within the web page itself. This -process has changed in version 1.1 to make it compatible with HTML5. +which puts the configuration options within the web page itself. This +process was changed in version 1.1 to make it compatible with HTML5. Earlier versions of MathJax had in-line configuration included within the content of the `` -in its footer, so that MathJax will delay setting up until the footer is -reached, but will not have to wait until images and other files are -loaded. If you have ``text/x-mathjax-config`` script tags within the main -body of the document, MathJax will read and process those before -continuing its startup. In this way you can use a default configuration -that can be modified on a page-by-page basis. +in its footer, so that MathJax will delay setting up until the footer +is reached, but will not have to wait until images and other files are +loaded. In this way, if you have ``text/x-mathjax-config`` script +tags within the main body of the document, MathJax will read and +process those before continuing its startup. In this way you can use +a default configuration that can be modified on a page-by-page basis. + +Note that :meth:`MathJax.Hub.Configured()` is not called by MathJax; +you must make that call somewhere within the page yourself after the +configuration blocks are set up. If you do not execute this function, +MathJax will not process any of the math on the page. Details of the MathJax configuration process ============================================ Since there are a number of different ways to configure MathJax, it is -important to know how they interact. The configuration process is the +important to know how they interact. The configuration actions are the following: 1. Process any configuration file explicitly specified as a script parameter. diff --git a/docs/source/glossary.rst b/docs/source/glossary.rst index 14e18cc93..6325bd82c 100644 --- a/docs/source/glossary.rst +++ b/docs/source/glossary.rst @@ -8,6 +8,16 @@ Glossary .. glossary:: + AsciiMath + A notation for mathematics that uses characters commonly + available on all computer keyboards to represent the math in + an algebra-like syntax that should be intuitive and easily + read. + + .. seealso:: + + `AsciiMath home page `_ + Callback A JavaScript function that is used to perform actions that must wait for other actions to complete before they are @@ -44,6 +54,18 @@ Glossary `LaTeX Wikipedia entry `_ + Markdown + A text format commonly used in blogs and wikis for creating + web pages without the need for complicated markup notation. + It is intended to be an easy-to-read and easy-to-write format + that still gives you the ability to specify a rich text result + (including things like bold, italics, bullet lists, and so + on). + + .. seealso:: + + `Markdown home page `_ + MathML An XML specification created to describe mathematical notations and capture both its structure and content. MathML @@ -62,6 +84,18 @@ Glossary `STIX project `_ + SVG + Acronym for `Scalable Vector Graphics`. SVG is a graphics + format that allows images to be described as a collection of + graphics objects (like lines, rectangles, etc) rather than as + a bitmap of colored pixels. MathJax can use this format to + display mathematics as an alterantive to its HTML-CSS or + NativeMML output. + + .. seealso:: + + `SVG Wilipedia entry `_ + TeX A document markup language with robust math markup commands developed by Donald Knuth in the late 1970's, but still in diff --git a/docs/source/index.rst b/docs/source/index.rst index 80df118de..6c940b0ae 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -2,8 +2,8 @@ MathJax Documentation ##################### -MathJax is an open-source JavaScript display engine for LaTeX and -MathML that works in all modern browsers. +MathJax is an open-source JavaScript display engine for LaTeX, +MathML, and AsciiMath notaion that works in all modern browsers. Basic Usage =========== @@ -24,6 +24,7 @@ Basic Usage MathJax TeX and LaTeX Support MathJax MathML Support + MathJax AsciiMath Support MathJax Output Formats .. toctree:: diff --git a/docs/source/installation.rst b/docs/source/installation.rst index 97b518c6b..9ddf4f421 100644 --- a/docs/source/installation.rst +++ b/docs/source/installation.rst @@ -10,11 +10,12 @@ distributed network service (see :ref:`Using the MathJax CDN yourself, and you can begin using MathJax right away; skip this document on installation and go directly to :ref:`Configuring MathJax `. -MathJax can be loaded from a public web server or privately from your hard drive -or other local media. To use MathJax in either way, you will need to obtain a -copy of MathJax and its font package. There are three ways to do this: via -``git``, ``svn``, or via a pre-packaged archive. We recommend git or svn, as it -is easier to keep your installation up to date with these tools. +MathJax can be loaded from a public web server or privately from your +hard drive or other local media. To use MathJax in either way, you +will need to obtain a copy of MathJax. There are three ways to do +this: via ``git``, ``svn``, or via a pre-packaged archive. We +recommend ``git`` or ``svn``, as it is easier to keep your +installation up to date with these tools. .. _getting-mathjax-git: @@ -30,9 +31,9 @@ The easiest way to get MathJax and keep it up to date is to use the `Git git clone git://github.com/mathjax/MathJax.git MathJax -to obtain and set up a copy of MathJax. Note that there is no longer -a ``fonts.zip`` file, and that the ``fonts`` directory is now part of -the repository itself. +to obtain and set up a copy of MathJax. (Note that there is no longer +a ``fonts.zip`` file, as there was in v1.0, and that the ``fonts`` +directory is now part of the repository itself.) Whenever you want to update MathJax, you can now use @@ -123,11 +124,11 @@ latest revision using ``svn``, use the command .. code-block:: sh - svn checkout http://svn.github.com/mathjax/MathJax.git MathJax + svn checkout http://github.com/mathjax/MathJax/trunk MathJax -to obtain and set up a copy of MathJax. Note that there is no longer -a ``fonts.zip`` file, and that the ``fonts`` directory is now part of -the repository itself. +to obtain and set up a copy of MathJax. (Note that there is no longer +a ``fonts.zip`` file as of v1.1, and that the ``fonts`` directory is +now part of the repository itself.) Whenever you want to update MathJax, you can now use @@ -152,18 +153,17 @@ This gets you the current development copy of MathJax, which is the version that contains all the latest changes to MathJax. Although we try to make sure this version is a stable and usable version of MathJax, it is under active development, and at times it may be less stable than the "release" -version. If you prefer to use one of the tagged releases instead, then -either use ``git`` as described above, or one of the archive files as -described below. You can use +version. If you prefer to use one of the tagged releases instead, +then use .. code-block:: sh - svn checkout http://svn.github.com/mathjax/MathJax.git@nnn mathjax + svn checkout http://github.com/mathjax/MathJax/branch/[name] MathJax -to check out revision number `nnn`, but it is not easy to tell what -svn revision number is associated with a particular release. GitHub's -``svn`` service doesn't appear to allow you to specify a particular -tagged version. +where ``[name]`` is replaced by the name of the branch you want to +check out; e.g., ``2.0-latest``. The branch names can be found on the +`GitHub MathJax page `_ under the +`branches `_ tab. .. _getting-mathjax-zip: @@ -173,12 +173,12 @@ Obtaining MathJax via an archive Release versions of MathJax are available in archive files from the `MathJax download page `_ or the -`GitHub downloads `_ (click the -big download button on the right), where you can download the archive +`MathJax GitHub page `_ (via the +"zip" button, or the "downloads" tab), where you can download the archive that you need. -You should download the v1.1 archive (which will get you a file with a -name like ``mathjax-MathJax-v1.1-X-XXXXXXXX.zip``, where the X's are +You should download the v2.0 archive (which will get you a file with a +name like ``mathjax-MathJax-v2.0-X-XXXXXXXX.zip``, where the X's are some sequence of random-looking letters and numbers), then simply unzip it. Once the MathJax directory is unpacked, you should move it to the desired location on your server (or your hard disk, if you are using @@ -188,11 +188,10 @@ let you refer to the main MathJax file as ``/MathJax/MathJax.js`` from within any page on your server. From the `MathJax GitHub download link -`_ (the download button at the -right), you can also select the ``Download .tar.gz`` or ``Download -.zip`` buttons to get a copy of the current development version of -MathJax that contains all the latest changes and bug-fixes. You can -also get older tagged versions (if there are any). +`_, you can also select +the ``Download .tar.gz`` or ``Download .zip`` buttons to get a copy of +the current development version of MathJax that contains all the +latest changes and bug-fixes. If a packaged release receives any important updates, then those updates will be part of the `branch` for that version. The link to @@ -200,9 +199,8 @@ the ``.zip`` file in the download list will be the original release version, not the patched version. To obtain the patched version, use the `Branches` drop down menu (at the far left of the menus within the page) to select the release branch that you want (for example -``v1.1-latest``), and then use the download button and the ``Download -.tar.gz`` or ``Download .zip`` button to get the latest patched -version of that release. +``v2.0-latest``), and then use the "zip" button just above it to get +the latest patched version of that release. Testing your installation @@ -263,7 +261,7 @@ server `_. In the remote server's ``.htaccess`` that contains the following lines: :: - + Header set Access-Control-Allow-Origin "*" @@ -328,7 +326,7 @@ IE9 and remote fonts IE9's same-origin policy affects its ability to load web-based fonts, as described above. This has implications not ony to cross-domain loading of MathJax, but also to the case where you view a local page (with a -``file://`` URL) that accesses MathJax from a remote site, like the MathJax +``file://`` URL) that accesses MathJax from a remote site such as the MathJax CDN service. In this case, IE9 does **not** honor the ``Access-Control-Allow-Origin`` setting of the remote server (as it would if the web page came from an ``http://`` URL), and so it **never** allows the diff --git a/docs/source/mathjax.rst b/docs/source/mathjax.rst index c9dae62b2..836125c32 100644 --- a/docs/source/mathjax.rst +++ b/docs/source/mathjax.rst @@ -2,16 +2,17 @@ What is MathJax? **************** -MathJax is an open-source JavaScript display engine for LaTeX and -MathML that works in all modern browsers. It was designed with the -goal of consolidating the recent advances in web technologies into a -single, definitive, math-on-the-web platform supporting the major -browsers and operating systems. It requires no setup on the part of -the user (no plugins to downlaod or software to install), so the page -author can write web documents that include mathematics and be -confident that users will be able to view it naturally and easily. -One simply includes MathJax and some mathematics in a web page, and -MathJax does the rest. +MathJax is an open-source JavaScript display engine for LaTeX, MathML, +and AsciiMath notation that works in all modern browsers. It was +designed with the goal of consolidating the recent advances in web +technologies into a single, definitive, math-on-the-web platform +supporting the major browsers and operating systems, including those +on mobile devices. It requires no setup on the part of the user (no +plugins to download or software to install), so the page author can +write web documents that include mathematics and be confident that +users will be able to view it naturally and easily. One simply +includes MathJax and some mathematics in a web page, and MathJax does +the rest. MathJax uses web-based fonts (in those browsers that support it) to produce high-quality typesetting that scales and prints at full @@ -21,11 +22,12 @@ impaired. With MathJax, mathematics is text-based rather than image-based, and so it is available for search engines, meaning that your equations can be searchable, just like the text of your pages. MathJax allows page authors to write formulas using TeX and LaTeX -notation, or `MathML `_, a World Wide -Web Consortium standard for representing mathematics in XML format. -MathJax will even convert TeX notation into MathML, so that it can be -rendered more quickly by those browsers that support MathML natively, -or so that you can copy and paste it into other programs. +notation, `MathML `_, a World Wide Web +Consortium standard for representing mathematics in XML format, or +`AsciiMath `_ +notation. MathJax will even convert TeX notation into MathML, so that +it can be rendered more quickly by those browsers that support MathML +natively, or so that you can copy and paste it into other programs. MathJax is modular, so it loads components only when necessary, and can be extended to include new capabilities as needed. MathJax is diff --git a/docs/source/mathml.rst b/docs/source/mathml.rst index 8bcc40f79..415c56da6 100644 --- a/docs/source/mathml.rst +++ b/docs/source/mathml.rst @@ -20,10 +20,10 @@ displayed as MathML. Or you could use the `mml2jax` preprocessor and MathML input processor with the HTML-CSS output processor to make MathML available in browsers that don't have native MathML support. It is also possible to have MathJax select the output processor for -you so that MathML is used in those browsers that support it, while -HTML-CSS is used for those that don't. See the :ref:`common -configurations ` section for details and -examples. +you so that MathML is used in those browsers that support it well +enough, while HTML-CSS is used for those that don't. See the +:ref:`common configurations ` section for +details and examples. Of course it is also possible to use all three components together. It may seem strange to go through an internal format just to return to @@ -43,7 +43,7 @@ MathML in HTML pages ==================== For MathML that is handled via the preprocessor, you should not use -the named MathML entities, but rather use the numeric entities like +named MathML entities, but rather use numeric entities like ``√`` or unicode characters embedded in the page itself. The reason is that entities are replaced by the browser before MathJax runs, and some browsers report errors for unknown entities. For @@ -64,12 +64,16 @@ tags. That is, use rather than ````, since there is no closing tag, the rest of -the mathematics will become the content of the ```` tag; but -since ```` should have no content, the rest of the mathematics -will not be displayed. This is a common error that should be avoided. +(prior to HTML5) does not have self-closing tags, and some browsers +will get the nesting of tags wrong if you attempt to use them. For +example, with ````, since there is no closing +tag, the rest of the mathematics will become the content of the +```` tag; but since ```` should have no content, the +rest of the mathematics will not be displayed. This is a common error +that should be avoided. Modern browsers that support HTML5 should be +able to handle self-closing tags, but older browsers have problems +with them, so if you want your mathematics to be visible to the widest +audience, do not use the self-closing form in HTML documents. Supported MathML commands @@ -86,12 +90,12 @@ The deficiencies include: - No support for the elementary math tags: ``mstack``, ``mlongdiv``, ``msgroup``, ``msrow``, ``mscarries``, and ``mscarry``. -- Limited support for line breaking (they are only allowed in direct - children of ``mrow`` or implied ``mrow`` elements). - -- No support for alignment groups in table. +- No support for alignment groups in tables. - No support for right-to-left rendering. +- Not all attributes are supported for tables. E.g., ``columnspan`` + and ``rowspan`` are not implemented yet. + See the `results of the MathML3.0 test suite `_ for details. diff --git a/docs/source/options/AsciiMath.rst b/docs/source/options/AsciiMath.rst new file mode 100644 index 000000000..981815b72 --- /dev/null +++ b/docs/source/options/AsciiMath.rst @@ -0,0 +1,40 @@ +.. _configure-AsciiMath: + +***************************** +The AsciiMath input processor +***************************** + +The options below control the operation of the AsciiMath input +processor that is run when you include ``"input/AsciiMath"`` in the +`jax` array of your configuration or use a combined configuration file +that includes AsciiMath input. They are listed with their default +values. To set any of these options, include a ``AsciiMath`` section +in your :meth:`MathJax.Hub.Config()` call. For example + +.. code-block:: javascript + + MathJax.Hub.Config({ + AsciiMath: { + displaystyle: false + } + }); + +would set the ``displaystyle`` configuration option so that the limits +for operators like summation symbols will appear next to them rather +than above and below. + +.. describe:: displaystyle: true + + Determines whether operators like summation symbols will have + their limits above and below the operators (true) or to their + right (false). The former is how they would appear in displayed + equations that appear on their own lines, while the latter is + better suited to in-line equations so that they don't interfere + with the line spacing so much. + +.. describe:: decimal: "." + + This is the character to be used for decimal points in numbers. + if you change this to ``","``, then you need to be careful about + entering points or intervals. E.g., use ``(1, 2)`` rather than + ``(1,2)`` in that case. diff --git a/docs/source/options/asciimath2jax.rst b/docs/source/options/asciimath2jax.rst new file mode 100644 index 000000000..cb899efa7 --- /dev/null +++ b/docs/source/options/asciimath2jax.rst @@ -0,0 +1,110 @@ +.. _configure-asciimath2jax: + +****************************** +The asciimath2jax Preprocessor +****************************** + +The options below control the operation of the `asciimath2jax` preprocessor +that is run when you include ``"asciimath2jax.js"`` in the `extensions` array +of your configuration. They are listed with their default values. To +set any of these options, include a ``asciimath2jax`` section in your +:meth:`MathJax.Hub.Config()` call. For example + +.. code-block:: javascript + + MathJax.Hub.Config({ + asciimath2jax: { + delimiters: [['`','`'], ['$','$']] + } + }); + +would set the ASCIIMath delimiters for the `asciimath2jax` +preprocessor to include dollar signs as well as back-ticks. + + +.. describe:: delimiters: [['`','`']] + + Array of pairs of strings that are to be used as math + delimiters. The first in each pair is the initial delimiter and + the second is the terminal delimiter. You can have as many pairs + as you want. For example, + + .. code-block:: javascript + + inlineMath: [ ['$','$'], ['`','`'] ] + + would cause `asciimath2jax` to look for ``$...$`` and ```...``` as + delimiters for inline mathematics. (Note that the single dollar + signs are not enabled by default because they are used too + frequently in normal text, so if you want to use them for math + delimiters, you must specify them explicitly.) + + Note that the delimiters can't look like HTML tags (i.e., can't + include the less-than sign), as these would be turned into tags by + the browser before MathJax has the chance to run. You can only + include text, not tags, as your math delimiters. + +.. describe:: preview: "AsciiMath" + + This controls whether `asciimath2jax` inserts ``MathJax_Preview`` + spans to make a preview available, and what preview to use, when + it locates in-line or display mathematics in the page. The + default is ``"AsciiMath"``, which means use the ASCIIMath code as + the preview (which will be visible until it is processed by + MathJax). Set to ``"none"`` to prevent previews from being + inserted (the math will simply disappear until it is typeset). + Set to an array containing the description of an HTML snippet in + order to use the same preview for all equations on the page. + + Examples: + + .. code-block:: javascript + + preview: ["[math]"], // insert the text "[math]" as the preview + + .. code-block:: javascript + + preview: [["img",{src: "/images/mypic.jpg"}]], // insert an image as the preview + + See the :ref:`description of HTML snippets ` for + details on how to represent HTML code in this way. + +.. describe:: skipTags: ["script","noscript","style","textarea","pre","code"] + + This array lists the names of the tags whose contents should not + be processed by `asciimath2jax` (other than to look for + ignore/process classes as listed below). You can add to (or + remove from) this list to prevent MathJax from processing + mathematics in specific contexts. + +.. describe:: ignoreClass: "asciimath2jax_ignore" + + This is the class name used to mark elements whose contents should + not be processed by asciimath2jax (other than to look for the + ``processClass`` pattern below). Note that this is a regular + expression, and so you need to be sure to quote any `regexp` + special characters. The pattern is inserted into one that + requires your pattern to match a complete word, so setting + ``ignoreClass: "class2"`` would cause it to match an element with + ``class="class1 class2 class3"``. Note that you can assign + several classes by separating them by the vertical line character + (``|``). For instance, with ``ignoreClass: "class1|class2"`` + any element assigned a class of either ``class1`` or ``class2`` + will be skipped. + +.. describe:: processClass: "asciimath2jax_process" + + This is the class name used to mark elements whose contents + *should* be processed by `asciimath2jax`. This is used to restart + processing within tags that have been marked as ignored via the + ``ignoreClass`` or to cause a tag that appears in the ``skipTags`` + list to be processed rather than skipped. Note that this is a + regular expression, and so you need to be sure to quote any + `regexp` special characters. The pattern is inserted into one + that requires your pattern to match a complete word, so setting + ``processClass: "class2"`` would cause it to match an element with + ``class="class1 class2 class3"``. Note that you can assign + several classes by separating them by the vertical line character + (``|``). For instance, with ``processClass: "class1|class2"`` any + element assigned a class of either ``class1`` or ``class2`` will + have its contents processed. diff --git a/docs/source/options/index.rst b/docs/source/options/index.rst index 9d68d1b55..f73fca1ce 100644 --- a/docs/source/options/index.rst +++ b/docs/source/options/index.rst @@ -21,7 +21,7 @@ configuration if you do. The MathJax components, like the TeX input processor, have their own sections in the configuration object, labeled by the component name, -and using a configuration object as its value. The object is itself +and using an object as its value. That object is itself a configuration object made up of name-value pairs that give the configuration options for the component. @@ -70,6 +70,7 @@ are categorized by the component they affect. The tex2jax preprocessor options The mml2jax preprocessor options + The asciimath2jax preprocessor options The jsMath2jax preprocessor options .. toctree:: @@ -77,6 +78,7 @@ are categorized by the component they affect. The TeX input processor options The MathML input processor options + The AsciiMath input processor options The HTML-CSS output processor options The NativeMML output processor options The MMLorHTML configuration options diff --git a/docs/source/output.rst b/docs/source/output.rst index 2affa7edd..26d1e767f 100644 --- a/docs/source/output.rst +++ b/docs/source/output.rst @@ -4,24 +4,26 @@ MathJax Output Formats ********************** -Currently, MathJax can render math in two ways: +Currently, MathJax can render math in three ways: -- Using HTML-with-CSS to lay out the mathematics, or +- Using HTML-with-CSS to lay out the mathematics, +- Using :term:`SVG` to lay out the mathematics, or - Using a browser's native MathML support. -These are implemented by the `HTML-CSS` and `NativeMML` output +These are implemented by the `HTML-CSS`, `SVG` and `NativeMML` output processors. If you are using one of the combined configuration files, then this will select one of these output processors for you. If the config file ends in -``_HTML``, then it is the HTML-CSS output processor, and if it ends in +``_HTML``, then it is the HTML-CSS output processor, and if it ends in +``_SVG`` then the SVG output processor will be used. If it ends in ``_HTMLorMML``, then the NativeMML output processor will be chosen if the -browser supports it, otherwise HTML-CSS output will be used. +browser supports it well enough, otherwise HTML-CSS output will be used. -If you are performing your own in-line or file-based configuration, you -select which one you want to use by including either ``"output/HTML-CSS"`` -or ``"output/NativeMML"`` in the `jax` array of your MathJax configuration. -For example +If you are performing your own in-line or file-based configuration, +you select which one you want to use by including either +``"output/HTML-CSS"``, ``"output/SVG"``, or ``"output/NativeMML"`` in +the `jax` array of your MathJax configuration. For example .. code-block:: javascript @@ -34,35 +36,57 @@ The HTML-CSS output processor produces high-quality output in all major browsers, with results that are consistent across browsers and operating systems. This is MathJax's primary output mode. Its major advantage is its quality and consistency; its drawback is that it is -slower than the NativeMML mode at rendering the mathematics. (The -HTML-CSS processor has not yet been optimized for speed, so you can -expect some improvement in the future. Note that IE8 in "IE8 -standards mode" is an order of magnitude slower than any other browser -when processing math through the HTML-CSS output processor; see -:ref:`HTML-CSS with IE8 ` below for some strategies -to deal with this.) +slower than the NativeMML mode at rendering the mathematics. +Historically, the performance in Internet Explorer (and IE8 in +particular) was quite poor, with the page getting slower and slower as +more math is processed. MathJax version 2.0 includes a number of +optimizations to improve the display performance in IE, and it is now +more comparable to other browsers. The HTML-CSS output uses web-based +fonts so that users don't have to have math fonts installed on their +computers; but this does introduce some printing issues in some +browsers. -The NativeMML output processor uses the browser's internal MathML support (if -any) to render the mathematics. Currently, Firefox has native support -for MathML, and IE has the `MathPlayer plugin +The SVG output processor is new in MathJax version 2.0, and it uses +`Scalable Vector Graphics` to render the mathematics on the page. SVG +is supported in all the major browsers and most mobile devices; note, +however, that Internet Explorer prior to IE9 does not support SVG, and +IE9 only does in "IE9 standards mode", not its emulation modes for +earlier versions. The SVG output mode is high quality and slightly +faster than HTML-CSS, and it does not suffer from some of the +font-related issues that HTML-CSS does, so prints well in all +browsers. This format also works well in some ebook readers (e.g., +iBooks). The disadvantage of this mode is that it does not take +advantage of STIX fonts, and so only has access to the characters in +the web-based fonts, and it variable-width tables become fixed size +once they are typeset, and don't rescale if the window size changes +(for example). Since equation numbers are handled through +variable-width tables, that means equation numbers may not stay at the +edge of the window if it is resized. + +The NativeMML output processor uses the browser's internal MathML +support (if any) to render the mathematics. Currently, Firefox has +native support for MathML, and IE has the `MathPlayer plugin `_ for rendering MathML. Opera has some built-in support for MathML that works well with simple equations, but fails with more complex formulas, so we -don't recommend using the NativeMML output processor with Opera. Safari, +don't recommend using the NativeMML output processor with Opera. +Safari has some support for MathML since version 5.1, but the quality +is not as high as either Firefox's implementation or IE with MathPlayer. Chrome, Konqueror, and most other browsers don't support MathML -natively, but may in the future, since MathML is part of the HTML5 +natively, but may in the future, since MathML is part of the HTML5 specification. -The advantage of the NativeMML output Processor is its speed, since native -MathML support is much faster than using complicated HTML and CSS to lay -out mathematics, as the HTML-CSS output processor does. The disadvantage -is that you are dependent on the browser's MathML implementation for your -rendering, and these vary in quality of output and completeness of -implementation. MathJax may rely on features that are not available in -some renderers (for example, Firefox's MathML support does not implement -some of the named widths, such as ``negativethinmathspace``). The results -using the NativeMML output processor may have spacing or other rendering -problems that are outside of MathJax's control. +The advantage of the NativeMML output Processor is its speed, since +native MathML support is much faster than using complicated HTML and +CSS to lay out mathematics, as the HTML-CSS output processor does. +The disadvantage is that you are dependent on the browser's MathML +implementation for your rendering, and these vary in quality of output +and completeness of implementation. MathJax relies on features that +are not available in some renderers (for example, Firefox's MathML +support does not implement the features needed for labeled equations). +The results using the NativeMML output processor may have spacing or +other rendering problems that are outside of MathJax's control. + Automatic Selection of the Output Processor =========================================== @@ -70,9 +94,10 @@ Automatic Selection of the Output Processor Since not all browsers support MathML natively, it would be unwise to choose the NativeMML output processor unless you are sure of your audience's browser capabilities. MathJax can help with that, however, -since a number of its combined configuration files will select NativeMML -output when the browser supports it, and HTML-CSS output otherwise. These -are the configuration files that end in ``_HTMLorMML``. +since a number of its combined configuration files will select +NativeMML output when the browser supports it well enough, and +HTML-CSS output otherwise. These are the configuration files that end +in ``_HTMLorMML``. If you are doing your own configuration, there is a special configuration file that you can include that will choose between NativeMML and HTML-CSS @@ -86,28 +111,37 @@ the abilities of your user's browser. config: ["MMLorHTML.js"], jax: ["input/TeX"] -You can customize which choice to make on a browser-by-browser basis -or a global basis. See the ``config/default.js`` file or the + +By default, MathJax will choose HTML-CSS in all browsers except for +one case: Internet Explorer when the MathPlayer plugin is present. +In the past, MathJax selected NativeMML output for Firefox as well, +but we have found that there are too many rendering issues with +Firefox's native MathML implementation, and so MathJax now selects +HTML-CSS output for Firefox by default as well. Users can still use +the Mathjax contextual menu to select the NativeMML renderer if they +wish to choose greater speed at the expense of some quality. + +You can customize which choice MathJax makes on a browser-by-browser +basis or a global basis. See the ``config/default.js`` file or the :ref:`Configuring MMLorHTML ` section for further -details. As an example, this configuration tells MathJax to use HTML-CSS -output rather than native MathML support for Firefox: +details. As an example, this configuration tells MathJax to use +native MathML support rather than HTML-CSS output for Firefox: .. code-block:: html -With this configuration, MathML output will be used only for IE with the -MathPlayer plugin (Firefox is the only other browser to have native MathML -support that is sufficient for use with MathJax). Note, however, that a -user can employ the MathJax contextual menu to select the other renderer if -he or she wishes. +With this configuration, MathML output will be used for both Firefox +and IE with the MathPlayer plugin. Note, however, that a user can +employ the MathJax contextual menu to select the other renderer if he +or she wishes. MathJax produces MathML that models the underlying mathematics as best it can, rather than using complicated hacks to improve output for a @@ -119,41 +153,29 @@ be taken lightly. .. _html-css-with-ie8: -HTML-CSS with IE8 -================= +HTML-CSS with IE8 and IE9 +========================= -Internet Explorer 8 has at least eight different rendering modes in which -it can operate, and that are triggered by the `DOCTYPE` of the document -being viewed. Its "quirks" mode is its fastest mode, and its "IE8 -standards" mode is its slowest. This is the mode triggered by strict HTML -document types, and since most modern content management systems now -include a `DOCTYPE` that activates "standards" mode, IE8 will operate in -its slowest manner. This is particularly apparent when MathJax is used, -since IE8 in standards mode runs 20 to 30 times slower than it does in its -IE7 emulation mode, and 60 times slower than in quirks mode, on the sample -equations page in ``test/sample.html``. +The performance of MathJax in Internet Explorer 8 and 9 has been +substantially improved in version 2.0. The HTML-CSS output processing +was redesigned to avoid the page reflows that were the main source of +the speed problem in I8 and IE9. For test pages having between 20 and +50 typeset expressions, we see an 80% reduction in output processing +time for IE8, a 50% reduction for IE9, and between 15% and 25% +reduction for most other browsers over the v1.1a times. Since the +processing time in v1.1a grows non-linearly in IE, you should see even +larger savings for pages with more equations when using v2.0. -Most users find this speed reduction unacceptable when there is much -mathematics on the page. To overcome this problem, you may wish to -tell IE8 to use its IE7 emulation mode rather than its IE8 standards -mode. You can accomplish this by including the line +In the past, we recommended forcing IE8 and IE9 into IE7-emulation +mode in order to get better performance. That is no longer necessary. +Indeed, the fastest modes in IE8 and IE9 now are their IE8 standards +and IE9 standards modes, so it is best to force the highest mode +possible. That can be accomplished by adding .. code-block:: html - + -at the top of the ```` section of your HTML documents. This -lets you keep the strict `DOCTYPE` for validation purposes, while -still managing to get reasonable performance from Internet Explorer -8. Note that this line must come at the beginning of the ````, -before any stylesheets or other content are loaded. - -Alternatively, you can use the `MMLorHTML` configuration file -described above to select NativeMML output when possible, and request -that your users install the `MathPlayer plugin -`_, which will render -the mathematics much more quickly. - -It appears that IE9 in IE9 standards mode may perform better than IE8, but -since IE9 is still in beta testing as of this writing, we have yet to see -exactly what the performance of MathJax in IE9 will be like. +at the top of the ```` section of your HTML documents. Note +that this line must come at the beginning of the ````, before +any stylesheets, scripts, or other content are loaded. diff --git a/docs/source/platforms/index.rst b/docs/source/platforms/index.rst index 4976868c8..0f0b3b23f 100644 --- a/docs/source/platforms/index.rst +++ b/docs/source/platforms/index.rst @@ -4,15 +4,16 @@ Using MathJax in popular web platforms ====================================== -MathJax plugins are available for a growing number of wikis, blogs, and -other content-management systems. These include WordPress, Blogger, -Sphinx, TiddlyWiki, and MathEL-Wiki. A list of these is available in the -`web applications and integrations -`_ list of the +MathJax plugins are available for a growing number of wikis, blogs, +and other content-management systems. These include WordPress, +Blogger, Sphinx, TiddlyWiki, and MathEL-Wiki. A list of these is +available in the `web applications +`_ list of the `MathJax web site `_. If the program you are using is not one of these, you may still be able to -use MathJax by modifying the theme or template for your wiki or blog. +use MathJax by modifying the theme or template for your wiki or blog, +as explained below. Using MathJax in a Theme File diff --git a/docs/source/start.rst b/docs/source/start.rst index 8109dd73e..c484bbc42 100644 --- a/docs/source/start.rst +++ b/docs/source/start.rst @@ -5,15 +5,15 @@ Getting Started *************** MathJax allows you to include mathematics in your web pages, either -using TeX and LaTeX notation, or as MathML, and you can even use both -in the same document. +using TeX and LaTeX notation, MathML, or AsciiMath notation, and you +can even use all three in the same document. There are two ways to access MathJax: the easiest way is to use the copy of MathJax available from our distributed network service at ``cdn.mathjax.org``, but you can also download and install a copy of -MathJax on your own server, or for use locally on your own hard disk -(with no need for network access). Both of these are described below, -with links to more detailed explanations. This page gives the +MathJax on your own server, or use it locally on your own hard disk +(with no need for network access). All three of these are described +below, with links to more detailed explanations. This page gives the quickest and easiest ways to get MathJax up and running on your web site, but you may want to read the details in order to customize the setup for your pages. @@ -43,12 +43,13 @@ into the ```` block of your document. (It can also go in the load the latest version of MathJax from the distributed server, and configure it to recognize mathematics in both TeX and MathML notation, and ask it to generate its output using MathML if the browser supports -that, and otherwise use HTML-with-CSS to display the mathematics. -This is the most general configuration, and should suffice for most -people's needs. Other configurations are available, however, and you -can also provide additional configuration parameters to taylor one of -the configurations to your needs. More details can be found in the -:ref:`Loading and Configuring MathJax ` instructions. +that well enough, and otherwise use HTML-with-CSS to display the +mathematics. This is one of the most general configurations, and +should suffice for most people's needs. Other configurations are +available, however, and you can also provide additional configuration +parameters to taylor one of the configurations to your needs. More +details can be found in the :ref:`Loading and Configuring MathJax +` instructions. The use of ``cdn.mathjax.org`` is governed by its `terms of service `_, so be @@ -68,7 +69,7 @@ and replace it. This is sometimes called a `man-in-the-middle `_ attack. To prevent such attacks, it is necessary to access the MathJax CDN -over a secure HTTPS connection. This can be easily done by using the +over a secure HTTPS connection. This can be done easily by using the following `` Currently, the Amazon Cloudfront service used by the MathJax CDN does -not support the use of a human-friendly name like cdn.mathjax.org for -secure connections. However, this address is stable and safe to use. +not support the use of a human-friendly name like ``cdn.mathjax.org`` +for secure connections; however, the address given above is stable and +safe to use. Installing Your Own Copy of MathJax @@ -89,7 +91,8 @@ We recommend using the CDN service if you can, but you can also install MathJax on your own server, or locally on your own hard disk. To do so you will need to do the following things: -1. Obtain a copy of MathJax and make it available on your server. +1. Obtain a copy of MathJax and make it available on your server or +hard disk. 2. Configure MathJax to suit the needs of your site. @@ -108,8 +111,8 @@ should obtain a file named something like ``mathjax-MathJax-v1.1-X-XXXXXXXX.zip``, where the X's are random-looking letters and numbers). This archive includes both the MathJax code and the MathJax webfonts, so it is the only file you -need. Note that this is different from earlier releases, which had -the fonts separate from the rest of the code. +need. Note that this is different from v1.0 and earlier releases, +which had the fonts separate from the rest of the code. Unpack the archive and place the resulting MathJax folder onto your web server at a convenient location where you can include it into your @@ -118,7 +121,7 @@ your server would be one natural way to do this. That would let you refer to the main MathJax file via the URL ``/MathJax/MathJax.js`` from within any page on your server. -Note: While this is the easiest way to set up MathJax initially, there +**Note:** While this is the easiest way to set up MathJax initially, there is a better way to do it if you want to be able to keep your copy of MathJax up-to-date. That uses the `Git `_ version control system, and is described in the :ref:`Installing MathJax @@ -128,17 +131,18 @@ of MathJax (see :ref:`Installing MathJax via SVN `). Once you have MathJax set up on your server, you can test it using the -files in the ``MathJax/test`` directory. Load them in your browser -using its web address rather than opening them locally (i.e., use an -``http://`` URL rather than a ``file://`` URL). When you view the -``index.html`` file, after a few moments you should see a message -indicating that MathJax appears to be working. If not, check that the -files have been transferred to the server completely and that the -permissions allow the server to access the files and folders that are -part of the MathJax directory. (Be sure to verify the MathJax -folder's permissions as well.) Check the server log files for any -errors that pertain to the MathJax installation; this may help locate -problems in the permission or locations of files. +files in the ``MathJax/test`` directory. If you are putting MathJax +on a server, load them in your browser using their web addresses +rather than opening them locally (i.e., use an ``http://`` URL rather +than a ``file://`` URL). When you view the ``index.html`` file, after +a few moments you should see a message indicating that MathJax appears +to be working. If not, check that the files have been transferred to +the server completely and that the permissions allow the server to +access the files and folders that are part of the MathJax directory. +(Be sure to verify the MathJax folder's permissions as well.) Check +the server log files for any errors that pertain to the MathJax +installation; this may help locate problems in the permission or +locations of files. Configuring your copy of MathJax @@ -147,11 +151,12 @@ Configuring your copy of MathJax When you include MathJax into your web pages as described below, it will load the file ``config/TeX-AMS-MML_HTMLorMML.js`` (i.e., the file named ``TeX-AMS-MML_HTMLorMML.js`` in the ``config`` folder of the -main ``MathJax`` folder). This file preloads all the most commonly-used -components of MathJax, allowing it to process mathematics that is in -the TeX or LaTeX format, or in MathML notation. It will produce -output in MathML form if the user's browser supports that, and will use -HTML-with-CSS to render the mathematics otherwise. +main ``MathJax`` folder). This file preloads all the most +commonly-used components of MathJax, allowing it to process +mathematics that is in the TeX or LaTeX format, or in MathML notation. +It will produce output in MathML form if the user's browser supports +that sufficiently, and will use HTML-with-CSS to render the +mathematics otherwise. There are a number of other prebuilt configuration files that you can choose from as well, or you could use the ``config/default.js`` file and @@ -160,11 +165,11 @@ described more fully in :ref:`Common Configurations `, and the configuration options are described in :ref:`Configuration Options `. -Note: The configuration process has changed in MathJax v1.1, so if you have -existing pages that use MathJax, you may need to modify the tag that -loads MathJax so that it conforms with the new configuration process. -See :ref:`Installing and Configuring MathJax ` for more -details. +Note: The configuration process changed between MathJax v1.0 and v1.1, +so if you have existing pages that use MathJax v1.0, you may need to +modify the tag that loads MathJax so that it conforms with the new +configuration process. See :ref:`Installing and Configuring MathJax +` for more details. Linking your copy of MathJax into a web page @@ -210,13 +215,15 @@ of MathJax. Putting mathematics in a web page ================================= -To put mathematics in your web page, you can use either :term:`TeX` -and :term:`LaTeX` notation or :term:`MathML` notation or both within -the same page; the MathJax configuration tells MathJax which you want -to use, and how you plan to indicate the mathematics when you are -using TeX notation. The configuration file used in the examples above -tells MathJax to look for both TeX and MathML notation within your -pages. These two formats are described in more detail below. +To put mathematics in your web page, you can use :term:`TeX` and +:term:`LaTeX` notation, :term:`MathML` notation, :term:`AsciiMath` +notation, or a combination of all three within the same page; the +MathJax configuration tells MathJax which you want to use, and how you +plan to indicate the mathematics when you are using TeX notation. The +configuration file used in the examples above tells MathJax to look +for both TeX and MathML notation within your pages. Other +configuration files tell MathJax to use AsciiMath input. These three +formats are described in more detail below. .. _tex-and-latex-input: @@ -258,10 +265,14 @@ options ` page, for additional configuration parameters that you can specify for the `tex2jax` preprocessor, which is the component of MathJax that identifies TeX notation within the page. See the :ref:`TeX and LaTeX ` page for -more on MathJax's support for TeX. +more on MathJax's support for TeX, and in particular how to deal with +single dollar signs in your text when you have enabled single +dollar-sign delimiters. -Here is a complete sample page containing TeX mathematics (also available -in the ``test/sample-tex.html`` file): +Here is a complete sample page containing TeX mathematics (also +available in the `test/sample-tex.html +`_ +file): .. code-block:: html @@ -290,6 +301,16 @@ a tag in HTML. Putting a space on both sides of the less-than sign should be sufficient, but see :ref:`TeX and LaTeX support ` for details. +If you are using MathJax within a blog, wiki, or other content +management system, the markup language used by that system may +interfere with the TeX notation used by MathJax. For example, if your +blog uses :term:`Markdown` notation for authoring your pages, the +underscores used by TeX to indicate subscripts may be confused with +the use of underscores by Markdown to indicate italics, and the two +uses may prevent your mathematics from being displayed. See :ref:`TeX +and LaTeX support ` for some suggestions about how to +deal with the problem. + There are a number of extensions for the TeX input processor that are loaded by the ``TeX-AMS-MML_HTMLorMML`` configuration. These include: @@ -305,9 +326,13 @@ loaded by the ``TeX-AMS-MML_HTMLorMML`` configuration. These include: - `TeX/noUndefined.js`, which prevents undefined macros from producing an error message, and instead shows the macro name in red. -Other extensions may be loaded automatically when needed. +Other extensions may be loaded automatically when needed. See +:ref:`TeX and LaTeX support ` for details on the other +TeX extensions that are available. +.. _mathml-input: + MathML input ------------ @@ -321,10 +346,21 @@ works with both), and that the web page need not be served with any special MIME-type. Also note that, unless you are using XHTML rather than HTML, you should not include a namespace prefix for your ```` tags; for example, you should not use ```` except -in a file where you have tied the ``m`` namespace to the MathML DTD. +in a file where you have tied the ``m`` namespace to the MathML DTD by +adding the ``xmlns:m="http://www.w3.org/1998/Math/MathML"`` attribtue +to your file's ```` tag. -Here is a complete sample page containing MathML mathematics (also -available in the ``test/sample-mml.html`` file): +Although it is not required, it is recommended that you include the +``xmlns="http://www.w3.org/1998/Math/MathML"`` attribute on all +```` tags in your document (and this is preferred to the use of +a namespace prefix like ``m:`` above, since those are deprecated in +HTML5) in order to make your MathML work in the widest range of +situations. + +Here is a complete sample page containing MathML mathematics (also +available in the `test/sample-mml.html +`_ +file): .. code-block:: html @@ -338,13 +374,19 @@ available in the ``test/sample-mml.html`` file): - When a0, - there are two solutions to +

    + When + + a0 + , + there are two solutions to + ax2 + bx + c = 0 - and they are - + + and they are + x = @@ -363,6 +405,7 @@ available in the ``test/sample-mml.html`` file): . +

    @@ -374,20 +417,66 @@ should use .. code-block:: html - + -rather than ```` in an HTML document. If you use the -self-closing form, some browsers will not build the math tree properly, and -MathJax will receive a damaged math structure, which will not be rendered -as the original notation would have been. Unfortunately, there is nothing -MathJax can do about that, since the browser has incorrectly interpreted -the tags long before MathJax has a chance to work with them. +rather than ```` in an HTML document. If you +use the self-closing form, some browsers will not build the math tree +properly, and MathJax will receive a damaged math structure, which +will not be rendered as the original notation would have been. +Typically, this will cause parts of your expression to not be +displayed. Unfortunately, there is nothing MathJax can do about that, +since the browser has incorrectly interpreted the tags long before +MathJax has a chance to work with them. + +The component of MathJax that recognizes MathML notation within the +page is called the `mml2jax` extension, and it has only a few +configuration options; see the ``config/default.js`` file or the +:ref:`mml2jax configuration options ` page for more +details. See the :ref:`MathML ` page for more on +MathJax's MathML support. + + +.. _asciimath-input: + +AsciiMath input +--------------- + +MathJax v2.0 includes a new input format: :term:`AsciiMath` notation. +For mathematics written in this form, you mark your mathematical +expressions by surrounding them in "back-ticks", i.e., ```...```. + +Here is a complete sample page containing AsciiMath notation (also +available in the `test/sample-asciimath.html +`_ +file): + +.. code-block:: html + + + + + MathJax AsciiMath Test Page + + + + +

    When `a != 0`, there are two solutions to `ax^2 + bx + c = 0` and + they are

    +

    + `x = (-b +- sqrt(b^2-4ac))/(2a) .` +

    + + + + +The component of MathJax that recognizes asciimath notation within the +page is called the `asciimath2jax` extension, and it has only a few +configuration options; see the ``config/default.js`` file or the +:ref:`asciimath2jax configuration options ` page for more +details. See the :ref:`AsciiMath support ` page for more on +MathJax's AsciiMath support. -The component of MathJax that recognizes MathML notation is called the -`mml2jax` extension, and it has only a few configuration options; see the -``config/default.js`` file or the :ref:`mml2jax configuration options -` page for more details. See the :ref:`MathML -` page for more on MathJax's MathML support. Where to go from here? diff --git a/docs/source/tex.rst b/docs/source/tex.rst index 5bf2e8324..7452360b0 100644 --- a/docs/source/tex.rst +++ b/docs/source/tex.rst @@ -81,7 +81,7 @@ TeX and LaTeX in HTML documents Keep in mind that your mathematics is part of an HTML document, so you need to be aware of the special characters used by HTML as part of its markup. There cannot be HTML tags within the math delimiters (other -than ``
    ``) as TeX-formatted math does not include HTML tags. +than ``
    ``) as TeX-formatted math does not include HTML tags. Also, since the mathematics is initially given as text on the page, you need to be careful that your mathematics doesn't look like HTML tags to the browser (which parses the page before MathJax gets to see @@ -129,6 +129,151 @@ easier to enter ``<`` and ``>`` using TeX-like syntax: Keep in mind that the browser interprets your text before MathJax does. +Another source of difficulty is when MathJax is used in content +management systems that have their own document processing commands +that are interpreted before the HTML page is created. For example, +many blogs and wikis use formats like :term:`Markdown` to allow you to +create the content of you pages. In Markdown, the underscore is used +to indicate italics, and this usage will conflict with MathJax's ise +of the underscore to indicate a subscript. Since Markdown is applied +to the page first, it will convert your subscripts markers into +italics (inserting ```` tags into your mathematics, which will +cause MathJax to ignore the math). + +Such systems need to be told not to modify the mathematics that +appears between math delimiters. That usually involves modifying the +content-management system itself, which is beyond the means of most +page authors. If you are lucky, someone else will already have done +this for you, and you can find a MathJax plugin for your system on the +`MathJax-In-Use page +`_ page. + +If there is no plugin for your system, or if it doesn't handle the +subtleties of issolating the mathematics from the other markup that it +supports, then you may have to "trick" it into leaving your +mathematics untouched. Most content-management systems provide some +means of indicating text that should not be modified ("verbatim" +text), often for giving code snippets for computer languages. +You may be use that to enclose your mathematics so that the system +leaves it unchanged and MathJax can process it. For example, in +Markdown, the back-tick (`````) is used to mark verbatim text, so + +.. code-block:: latex + + ... we have `\(x_1 = 132\)` and `\(x_2 = 370\)` and so ... + +may be able to protect the underscores from being processed by +Markdown. + +Some content-management systems use the backslash (``\``) as a special +character for "escaping" other characters, but TeX uses this character +to indicate a macro name. In such systems, you may have to double the +backslashes in order to obtain a single backslash in your HTML page. +For example, you may have to do + +.. code-block:: latex + + \\begin{array}{cc} + a & b \\\\ + c & c + \\end{array} + +to get an array with the four entries *a*, *b*, *c*, and *d*. Note in +particular that if you want ``\\`` you will have to double *both* +backslashes, giving ``\\\\``. + +Finally, if you have enabled single dollar-signs as math delimiters, +and you want to include a literal dollar sign in your web page (one +that doesn't represent a math delimiter), you will need to prevent +MathJax from using it as a math delimiter. If you also enable the +``processEscapes`` configuration parameter, then you can use ``\$`` in +the text of your page to get a dollar sign (without the backslash) in +the end. Alternatively, you use something like +``$`` to isolate the dollar sign so that +MathJax will not use it as a delimiter. + + +.. _tex-macros: + +Defining TeX macros +=================== + +You can use the ``\def``, ``\newcommand``, ``\renewcommand``, +``\newenvironment``, ``\renewenvironment``, and ``\let`` commands to +create your own macros and environments. Unlike actual TeX, however, +in order for MathJax to process these, they must be enclosed in math +delimiters (since MathJax only processes macros in math-mode). For +example + +.. code-block:: latex + + \( + \def\RR{\bf R} + \def\bold#1{\bf #1} + \) + +would define ``\RR`` to produce a bold-faced "R", and ``\bold{...}`` +to put its argument into bold face. Both definitions would be +available throughout the rest of the page. + +You can include macro definitions in the `Macros` section of the `TeX` +blocks of your configuration, but they must be represetned as +JavaScript objects. For example, the two macros above can be +pre-defined in the configuraiton by + +.. code-block:: javascript + + MathJax.Hub.Config({ + TeX: { + Macros: { + RR: "{\\bf R}", + bold: ["{\\bf #1}",1] + } + } + }); + +Here you give the macro as a `name:value` pair, where the `name` +is the name of the control sequence (without the backslash) that you +are defining, and `value` is either the replacement string for the +macro (when there are no arguments) or an array consisting of the +replacement string followed by the number of arguments for the macro. + +Note that the replacement string is given as a JavaScript string +literal, and the backslash has special meaning in JavaScript strings. +So to get an actual backslash in the string you must double it, as int +he examples above. + +If you have many such definitions that you want to use on more than +one page, you could put them into a configuration file that you can +load along with the main configuration file. For example, you could +create a file in ``MathJax/config/local`` called ``local.js`` that +contains your macro definitions: + +.. code-block:: javascript + + MathJax.Hub.Config({ + TeX: { + Macros: { + RR: "{\\bf R}", + bold: ["{\\bf #1}",1] + } + } + }); + + MathJax.Ajax.loadComplete("[MathJax]/config/local/local.js"); + +and then load it along with your main configuration file on the script +that loads ``MathJax.js``: + +.. code-block:: html + + + +If you are using the CDN, you can make a local configuration file on +your own server, and load MathJax itself from the CDN and your +configuration file from your server. See :ref:`Using a Local +Configuration File with the CDN ` for details. + .. _tex-extensions: @@ -165,7 +310,53 @@ script prior to loading MathJax. For example will load the `autobold` TeX extension in addition to those already included in the ``TeX-AMS_HTML`` configuration file. -The main extensions are described below. +You can also load these extensions from within a math expresion using +the non-standard ``\require{extension}`` macro. For example + +.. code-block:: latex + + \(\require{color}\) + +would load the `color` extension into the page. This way you you can +load extensions into pages that didn't load them in their +configurations (and prevents you from having to load all the +extensions into all pages even if they aren't used). + +The main extensions are described below. + + +Action +------ + +The `action` extension gives you access to the MathML ```` +element. It defines three new non-standard macros: + +.. describe:: \\mathtip{math}{tip} + + Use ``tip`` (in math mode) as tooltip for ``math``. + +.. describe:: \\texttip{math}{tip} + + Use ``tip`` (in text mode) as tooltip for ``math``. + +.. describe:: \\toggle{math1}{math2}...\\endtoggle + + Show ``math1``, and when clicked, show ``math2``, and so on. + When the last one is clicked, go back to math1. + +To use this extension in your own configurations, add it to the +`extensions` array in the TeX block. + +.. code-block:: javascript + + TeX: { + extensions: ["action.js"] + } + +This extension is **not** included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands. + AMSmath and AMSsymbols ---------------------- @@ -208,6 +399,295 @@ appears in a section of an HTML page that is in bold. This extension is **not** loaded by the combined configuration files. +BBox +---- + +The `bbox` extension defines a new macro for adding background colors, +borders, and padding to your math expressions. + +.. describe:: \\bbox[options]{math} + + puts a bounding box around ``math`` using the provided ``options``. + The options can be one of the following: + + 1. A color name used for the background color. + 2. A dimension (e.g., ``2px``) to be used as a padding around the + mathematics (on all sides). + 3. Style attributes to be applied to the mathematics (e.g., + ``border:1px solid red``). + 4. A combination of these separated by commas. + +Here are some examples: + +.. code-block:: latex + + \bbox[red]{x+y} % a red box behind x+y + \bbox[2pt]{x+1} % an invisible box around x+y with 2pt of extra space + \bbox[red,2pt]{x+1} % a red box around x+y with 2pt of extra space + \bbox[5px,border:2px solid red] + % a 2px red border around the math 5px away + +This extension is **not** included in any of the combined configurations, +but it will be loaded automatically, so you do not need to include it +in your `extensions` array. + + +Begingroup +---------- + +The `begingroup` extension implements commands that provide a +mechanism for localizing macro defintions so that they are not +permanent. This is useful if you have a blog site, for example, and +want to isolate changes that your readers make in their comments so +that they don't affect later comments. + +It defines two new non-standard macros, ``\begingroup`` and +``\endgroup``, that are used to start and stop a local namespace for +macros. Any macros that are defined between the ``\begingroup`` and +``\endgroup`` will be removed after the ``\endgroup`` is executed. +For example, if you put ``\(\begingroup\)`` at the top of each reader's +comments and ``\(\endgroup\)`` at the end, then any macros they define +within their response will be removed after it is processed. + +In addition to these two macros, the `begingroup` extension defines +the standard ``\global`` and ``\gdef`` control sequences from TeX. +(The ``\let``, ``\def``, ``\newcommand``, and ``\newenvironment`` +control sequences are already defined in the core TeX input jax.) + +To use this extension in your own configurations, add it to the +`extensions` array in the TeX block. + +.. code-block:: javascript + + TeX: { + extensions: ["begingroup.js"] + } + +This extension is **not** included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands. + + +Cancel +------ + +The `cancel` extension defines the following macros: + +.. describe:: \\cancel{math} + + Strikeout ``math`` from lower left to upper right. + +.. describe:: \\bcancel{math} + + Strikeout ``math`` from upper left to lower right. + +.. describe:: \\xcancel{math} + + Strikeout ``math`` with an "X". + +.. describe:: \\cancelto{value}{math} + + Strikeout ``math`` with an arrow going to ``value``. + +To use this extension in your own configurations, add it to the +`extensions` array in the TeX block. + +.. code-block:: javascript + + TeX: { + extensions: ["cancel.js"] + } + +This extension is **not** included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands. + + +Color +----- + +The ``\color`` command in the core TeX input jax is not standard in +that it takes the mathematics to be colored as one of its parameters, +whereas the LaTeX ``\color`` command is a switch that changes the +color of everything that follows it. + +The `color` extension changes the ``\color`` command to be compatible +with the LaTeX implementation, and also defines ``\colorbox``, +``\fcolorbox``, and ``\DefineColor``, as in the LaTeX color package. +It defines the standard set of colors (Apricot, Aquamarine, +Bittersweet, and so on), and provides the RGB and grey-scale color +spaces in addition to named colors. + +To use this extension in your own configurations, add it to the +`extensions` array in the TeX block. + +.. code-block:: javascript + + TeX: { + extensions: ["color.js"] + } + +This extension is **not** included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands, +and have ``\color`` be compatible with LaTeX usage. + + +Enclose +------- + +The `enclose` extension gives you access to the MathML ```` +element for adding boxes, ovals, strikethroughs, and other marks over +your mathematics. It defines the following non-standard macro: + +.. describe:: \\enclose{notation}[attributes]{math} + + Where ``notation`` is a comma-separated list of MathML + ```` notations (e.g., ``circle``, ``left``, + ``updiagonalstrike``, ``longdiv``, etc.), ``attributes`` are + MathML attribute values allowed on the ```` element + (e.g., ``mathcolor="red"``, ``mathbackground="yellow"``), and + ``math`` is the mathematics to be enclosed. + +For example + +.. code-block:: latex + + \enclose{circle}[mathcolor="red"]{x} + \enclose{circle}[mathcolor="red"]{\color{black}{x}} + \enclose{circle,box}{x} + \enclose{circle}{\enclose{box}{x}} + +To use this extension in your own configurations, add it to the +`extensions` array in the TeX block. + +.. code-block:: javascript + + TeX: { + extensions: ["action.js"] + } + +This extension is **not** included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands. + + +Extpfeil +-------- + +The `extpfeil` extension adds more macros for producing extensible +arrows, including ``\xtwoheadrightarrow``, ``\xtwoheadleftarrow``, +``\xmapsto``, ``\xlongequal``, ``\xtofrom``, and a non-standard +``\Newextarrow`` for creating your own extensible arrows. The latter +has the form + +.. describe:: \\Newextarrow{\\cs}{lspace,rspace}{unicode-char} + + where ``\cs`` is the new control sequence name to be defined, + ``lspace`` and ``rspace`` are integers representing the amount of + space (in suitably small units) to use at the left and right of + text that is placed above or below the arrow, and ``unicode-char`` + is a number representing a unicode character position in either + decimal or hexadecimal notation. + +For example + +.. code-block:: latex + + \Newextarrow{\xrightharpoonup}{5,10}{0x21C0} + +defines an extensible right harpoon with barb up. Note that MathJax +knows how to stretch only a limited number of characters, so you may +not actually get a stretchy character this way. + +To use this extension in your own configurations, add it to the +`extensions` array in the TeX block. + +.. code-block:: javascript + + TeX: { + extensions: ["extpfeil.js"] + } + +This extension is **not** included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands. + + +HTML +---- + +The `HTML` extension gives you access to some HTML features like +styles, classes, element ID's and clickable links. It defines the +following non-standard macros: + +.. describe:: \\href{url}{math} + + Makes ``math`` be a link to the page given by ``url``. + +.. describe:: \\class{name}{math} + + Attaches the CSS class ``name`` to the output associated with + ``math`` when it is included in the HTML page. This allows your + CSS to style the element. + +.. describe:: \\cssId{id}{math} + + Attaches an id attribute with value ``id`` to the output + associated with ``math`` when it is included in the HTML page. + This allows your CSS to style the element, or your javascript to + locate it on the page. + +.. describe:: \\style{css}{math} + + Adds the give ``css`` declarations to the element associated with + ``math``. + +For example: + +.. code-block:: latex + + x \href{why-equal.html}{=} y^2 + 1 + + (x+1)^2 = \class{hidden}{(x+1)(x+1)} + + (x+1)^2 = \cssId{step1}{\style{visibility:hidden}{(x+1)(x+1)}} + +This extension is **not** included in any of the combined configurations, +but it will be loaded automatically when any of these macros is used, +so you do not need to include it explicitly in your configuration. + + +mhchem +------ + +The `mhchem` extensions implements the ``\ce``, ``\cf``, and ``\cee`` +chemical equation macros of the LaTeX `mhchem` package. See the +`mhchem CPAN page `_ for more +information and a link to the documentation for `mhchem`. + +For example + +.. code-block:: latex + + \ce{C6H5-CHO} + \ce{$A$ ->[\ce{+H2O}] $B$} + \ce{SO4^2- + Ba^2+ -> BaSO4 v} + +To use this extension in your own configurations, add it to the +`extensions` array in the TeX block. + +.. code-block:: javascript + + TeX: { + extensions: ["mhchem.js"] + } + +This extension is **not** included in any of the combined configurations, +and will not be loaded automatically, so you must include it +explicitly in your configuration if you wish to use these commands. + + noErrors -------- @@ -230,10 +710,11 @@ following to your :meth:`MathJax.Hub.Config()` call: inlineDelimiters: ["",""], // or ["$","$"] or ["\\(","\\)"] multiLine: true, // false for TeX on all one line style: { - "font-family": "serif", - "font-size": "80%", + "font-size": "90%", + "text-align": "left", "color": "black", - "border": "1px solid" + "padding": "1px 3px", + "border": "1px solid" // add any additional CSS styles that you want // (be sure there is no extra comma at the end of the last item) } @@ -358,6 +839,11 @@ macro is defined in an extension, the name of the extension follows the macro name. If the extension is in brackets, the extension will be loaded automatically when the macro or environment is first used. +More complete details about how to use these macros, with examples and +explanations, is available at Carol Fisher's `TeX Commands Available +in MathJax +`_ page. + Symbols ------- @@ -431,8 +917,11 @@ B \barwedge AMSsymbols \Bbb \Bbbk AMSsymbols + \bbox [bbox] + \bcancel cancel \because AMSsymbols \begin + \begingroup begingroup non-standard \beta \beth AMSsymbols \between AMSsymbols @@ -498,13 +987,18 @@ C .. code-block:: latex \cal + \cancel cancel + \cancelto cancel \cap \Cap AMSsymbols \cases \cdot \cdotp \cdots + \ce mhchem + \cee mhchem \centerdot AMSsymbols + \cf mhchem \cfrac AMSmath \check \checkmark AMSsymbols @@ -522,7 +1016,8 @@ C \class [HTML] non-standard \clubsuit \colon - \color + \color color + \colorbox color \complement AMSsymbols \cong \coprod @@ -603,12 +1098,15 @@ E \ell \emptyset + \enclose enclose non-standard \end + \endgroup begingroup non-standard \enspace \epsilon \eqalign \eqalignno \eqcirc AMSsymbols + \eqref [AMSmath] \eqsim AMSsymbols \eqslantgtr AMSsymbols \eqslantless AMSsymbols @@ -625,6 +1123,7 @@ F \fallingdotseq AMSsymbols \fbox + \fcolorbox color \Finv AMSsymbols \flat \forall @@ -642,6 +1141,7 @@ G \Gamma \gamma \gcd + \gdef begingroup \ge \genfrac AMSmath \geq @@ -652,6 +1152,7 @@ G \ggg AMSsymbols \gggtr AMSsymbols \gimel AMSsymbols + \global begingroup \gnapprox AMSsymbols \gneq AMSsymbols \gneqq AMSsymbols @@ -774,6 +1275,7 @@ L \lesseqqgtr AMSsymbols \lessgtr AMSsymbols \lesssim AMSsymbols + \let [newcommand] \lfloor \lg \lgroup @@ -843,6 +1345,7 @@ M \mathscr \mathsf \mathstrut + \mathtip action non-standard \mathtt \matrix \max @@ -850,9 +1353,11 @@ M \measuredangle AMSsymbols \mho AMSsymbols \mid + \middle \min \mit \mkern + \mmlToken non-standard \mod \models \moveleft @@ -880,6 +1385,7 @@ N \neq \newcommand [newcommand] \newenvironment [newcommand] + \Newextarrow extpfeil \newline \nexists AMSsymbols \ngeq AMSsymbols @@ -1007,7 +1513,9 @@ R \rbrack \rceil \Re + \ref [AMSmath] \renewcommand [newcommand] + \renewenvironment [newcommand] \require non-standard \restriction AMSsymbols \rfloor @@ -1130,6 +1638,7 @@ T \textit \textrm \textstyle + \texttip action non-standard \tfrac AMSmath \therefore AMSsymbols \Theta @@ -1142,6 +1651,7 @@ T \tiny \Tiny non-standard \to + \toggle action non-standard \top \triangle \triangledown AMSsymbols @@ -1250,8 +1760,14 @@ X \Xi \xi + \xcancel cancel \xleftarrow AMSmath + \xlongequal extpfeil + \xmapsto extpfeil \xrightarrow AMSmath + \xtofrom extpfeil + \xtwoheadleftarrow extpfeil + \xtwoheadrightarrow extpfeil Y - diff --git a/docs/source/whats-new.rst b/docs/source/whats-new.rst index 5c4b694fa..0a5419fc5 100644 --- a/docs/source/whats-new.rst +++ b/docs/source/whats-new.rst @@ -29,7 +29,7 @@ Optimization * Parallel downloading of files needed by MathJax, for faster startup times. -* Shorter timeout for web fonts, so if they can't be downlaoded, you don't +* Shorter timeout for web fonts, so if they can't be downloaded, you don't have to wait so long. * Rollover to image fonts if a web font fails to load (so you don't have diff --git a/test/sample-asciimath.html b/test/sample-asciimath.html new file mode 100644 index 000000000..f10ba0935 --- /dev/null +++ b/test/sample-asciimath.html @@ -0,0 +1,22 @@ + + + +MathJax AsciiMath Test Page + + + + + + + + + +

    +When `a != 0`, there are two solutions to `ax^2 + bx + c = 0` and they are +

    +

    +`x = (-b +- sqrt(b^2-4ac))/(2a) .` +

    + + + diff --git a/test/sample-mml.html b/test/sample-mml.html index 31d025253..0e871b420 100644 --- a/test/sample-mml.html +++ b/test/sample-mml.html @@ -2,9 +2,9 @@ MathJax MathML Test Page - + - + @@ -12,14 +12,18 @@

    -When a0, +When + + a0 +, there are two solutions to - + ax2 + bx - + c = 0 + + c = 0 + and they are - + x = diff --git a/test/sample-tex.html b/test/sample-tex.html index c62334438..599533a35 100644 --- a/test/sample-tex.html +++ b/test/sample-tex.html @@ -2,9 +2,9 @@ MathJax TeX Test Page - + - +