default.js (43383B)
1 /* -*- Mode: Javascript; indent-tabs-mode:nil; js-indent-level: 2 -*- */ 2 /* vim: set ts=2 et sw=2 tw=80: */ 3 4 /************************************************************* 5 * 6 * MathJax/config/default.js 7 * 8 * This configuration file is loaded when you load MathJax 9 * via <script src="MathJax.js?config=default"></script> 10 * 11 * Use it to customize the MathJax settings. See comments below. 12 * 13 * --------------------------------------------------------------------- 14 * 15 * Copyright (c) 2009-2015 The MathJax Consortium 16 * 17 * Licensed under the Apache License, Version 2.0 (the "License"); 18 * you may not use this file except in compliance with the License. 19 * You may obtain a copy of the License at 20 * 21 * http://www.apache.org/licenses/LICENSE-2.0 22 * 23 * Unless required by applicable law or agreed to in writing, software 24 * distributed under the License is distributed on an "AS IS" BASIS, 25 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 26 * See the License for the specific language governing permissions and 27 * limitations under the License. 28 */ 29 30 31 /* 32 * This file lists most, but not all, of the options that can be set for 33 * MathJax and its various components. Some additional options are 34 * available, however, and are listed in the various links at: 35 * 36 * http://www.mathjax.org/resources/docs/?configuration.html#configuration-options-by-component 37 * 38 * You can add these to the configuration object below if you 39 * want to change them from their default values. 40 */ 41 42 MathJax.Hub.Config({ 43 44 // 45 // A comma-separated list of configuration files to load 46 // when MathJax starts up. E.g., to define local macros, etc. 47 // The default directory is the MathJax/config directory. 48 // 49 // Example: config: ["local/local.js"], 50 // Example: config: ["local/local.js","MMLtoHTML.js"], 51 // 52 config: [], 53 54 // 55 // A comma-separated list of CSS stylesheet files to be loaded 56 // when MathJax starts up. The default directory is the 57 // MathJax/config directory. 58 // 59 // Example: styleSheets: ["MathJax.css"], 60 // 61 styleSheets: [], 62 63 // 64 // Styles to be defined dynamically at startup time. 65 // 66 // Example: 67 // styles: { 68 // ".MathJax_Preview": { 69 // color: "#888" 70 // } 71 // }, 72 // 73 styles: {}, 74 75 // 76 // A comma-separated list of input and output jax to initialize at startup. 77 // Their main code is loaded only when they are actually used, so it is not 78 // inefficient to include jax that may not actually be used on the page. These 79 // are found in the MathJax/jax directory. The choices include 80 // 81 // input/TeX 82 // input/MathML 83 // input/AsciiMath 84 // 85 // output/HTML-CSS 86 // output/NativeMML 87 // output/SVG 88 // 89 // If you change the input jax, you may need to include the appropriate 90 // preprocessor in the extensions array below. 91 // 92 jax: ["input/TeX", "output/HTML-CSS"], 93 94 // 95 // A comma-separated list of extensions to load at startup. The default 96 // directory is MathJax/extensions. 97 // 98 // Example: extensions: ["tex2jax.js","TeX/AMSmath.js","TeX/AMSsymbols.js"], 99 // 100 // You may wish to include "mml2jax.js" if you are using "input/MathML" in the 101 // jax array above, and "asciimath2jax.js" if you using "input/AsciiMath". 102 // Include "jsmath2jax.js" if you are converting from using jsMath to MathJax. 103 // 104 extensions: ["tex2jax.js","TeX/AMSmath.js","TeX/AMSsymbols.js"], 105 106 // 107 // Patterns to remove from before and after math script tags. If you are not 108 // using one of the preprocessors (e.g., tex2jax), you need to insert something 109 // extra into your HTML file in order to avoid a bug in Internet Explorer. IE 110 // removes spaces from the DOM that it thinks are redundent, and since a SCRIPT 111 // tag usually doesn't add content to the page, if there is a space before and after 112 // a MathJax SCRIPT tag, IE will remove the first space. When MathJax inserts 113 // the typeset mathematics, this means there will be no space before it and the 114 // preceeding text. In order to avoid this, you should include some "guard characters" 115 // before or after the math SCRIPT tag; define the patterns you want to use below. 116 // Note that these are used as regular expressions, so you will need to quote 117 // special characters. Furthermore, since they are javascript strings, you must 118 // quote javascript special characters as well. So to obtain a backslash, you must 119 // use \\ (doubled for javascript). For example, "\\[" is the pattern \[ in the 120 // regular expression. That means that if you want an actual backslash in your 121 // guard characters, you need to use "\\\\" in order to get \\ in the regular 122 // expression, and \ in the actual text. If both preJax and postJax are defined, 123 // both must be present in order to be removed. 124 // 125 // See also the preRemoveClass comments below. 126 // 127 // Example: 128 // preJax: "\\\\\\\\", // makes a double backslash the preJax text 129 // or 130 // preJax: "\\[\\[", // jax scripts must be enclosed in double brackets 131 // postJax: "\\]\\]", 132 // 133 preJax: null, 134 postJax: null, 135 136 // 137 // The CSS class for a math preview to be removed preceeding a MathJax 138 // SCRIPT tag. If the tag just before the MathJax SCRIPT tag is of this 139 // class, its contents are removed when MathJax processes the SCRIPT 140 // tag. This allows you to include a math preview in a form that will 141 // be displayed prior to MathJax performing its typesetting. It also 142 // avoids the Internet Explorer space-removal bug, and can be used in 143 // place of preJax and postJax if that is more convenient. 144 // 145 // For example 146 // 147 // <span class="MathJax_Preview">[math]</span><script type="math/tex">...</script> 148 // 149 // would display "[math]" in place of the math until MathJax is able to typeset it. 150 // 151 preRemoveClass: "MathJax_Preview", 152 153 // 154 // This value controls whether the "Processing Math: nn%" message are displayed 155 // in the lower left-hand corner. Set to "false" to prevent those messages (though 156 // file loading and other messages will still be shown). 157 // 158 showProcessingMessages: true, 159 160 // 161 // This value controls the verbosity of the messages in the lower left-hand corner. 162 // Set it to "none" to eliminate all messages, or set it to "simple" to show 163 // "Loading..." and "Processing..." rather than showing the full file name and the 164 // percentage of the mathematics processed. 165 // 166 messageStyle: "normal", 167 168 // 169 // These two parameters control the alignment and shifting of displayed equations. 170 // The first can be "left", "center", or "right", and determines the alignment of 171 // displayed equations. When the alignment is not "center", the second determines 172 // an indentation from the left or right side for the displayed equations. When 173 // the alignment is "center", the indent allows you to shift the center to the right 174 // or left (negative is left). 175 // 176 displayAlign: "center", 177 displayIndent: "0", 178 179 // 180 // Normally MathJax will perform its starup commands (loading of 181 // configuration, styles, jax, and so on) as soon as it can. If you 182 // expect to be doing additional configuration on the page, however, you 183 // may want to have it wait until the page's onload hander is called. If so, 184 // set this to "onload". 185 // 186 delayStartupUntil: "none", 187 188 // 189 // Normally MathJax will typeset the mathematics on the page as soon as 190 // the page is loaded. If you want to delay that process, in which case 191 // you will need to call MathJax.Hub.Typeset() yourself by hand, set 192 // this value to true. 193 // 194 skipStartupTypeset: false, 195 196 // 197 // A list of element ID's that are the ones to process for mathematics 198 // when any of the Hub typesetting calls (Typeset, Process, Update, etc) 199 // are called with no element specified. This lets you restrict the 200 // processing to particular containers rather than scanning the entire 201 // document for mathematics. If none are supplied, the entire document 202 // is processed. 203 // 204 elements: [], 205 206 // 207 // Since typesetting usually changes the vertical dimensions of the 208 // page, if the URL contains an anchor position you may no longer be 209 // positioned at the correct position on the page, so MathJax can 210 // reposition to that location after it completes its initial 211 // typesetting of the page. This value controls whether MathJax will 212 // reposition the browser to the #hash location from the page URL after 213 // typesetting for the page. 214 // 215 positionToHash: true, 216 217 // 218 // These control whether to attach the MathJax contextual menu to the 219 // expressions typeset by MathJax. Since the code for handling 220 // MathPlayer in Internet Explorer is somewhat delicate, it is 221 // controlled separately via (showMathMenuMSIE). The latter is now 222 // deprecated in favor of the MathJax contextual menu settings for 223 // MathPlayer. 224 // 225 // These values used to be listed in the separate output jax, but 226 // have been moved to this more central location since they are shared 227 // by all output jax. 228 // 229 showMathMenu: true, 230 showMathMenuMSIE: true, 231 232 233 // 234 // The default settings for the MathJax contextual menu (overridden by 235 // the MathJax cookie when users change the menu settings). 236 // 237 menuSettings: { 238 zoom: "None", // when to do MathZoom 239 CTRL: false, // require CTRL for MathZoom? 240 ALT: false, // require Alt or Option? 241 CMD: false, // require CMD? 242 Shift: false, // require Shift? 243 discoverable: false, // make math menu discoverable on hover? 244 zscale: "200%", // the scaling factor for MathZoom 245 renderer: null, // set when Jax are loaded 246 font: "Auto", // what font HTML-CSS should use 247 context: "MathJax", // or "Browser" for pass-through to browser menu 248 locale: null, // the language to use for messages 249 mpContext: false, // true means pass menu events to MathPlayer in IE 250 mpMouse: false, // true means pass mouse events to MathPlayer in IE 251 texHints: true, // include class names for TeXAtom elements 252 FastPreview: null, // use PreviewHTML output as preview? 253 assistiveMML: null, // include hidden MathML for screen readers? 254 inTabOrder: true, // set to true if math elements should be included in the tabindex 255 semantics: false // add semantics tag with original form in MathML output 256 }, 257 258 // 259 // The message and style for when there is a processing error handling 260 // the mathematics (something has gone wrong with the input or output 261 // jax that prevents it from operating properly). 262 // 263 errorSettings: { 264 message: ["[",["MathProcessingError","Math Processing Error"],"]"], 265 style: {color: "#CC0000", "font-style":"italic"} // style for message 266 }, 267 268 269 //============================================================================ 270 // 271 // These parameters control the tex2jax preprocessor (when you have included 272 // "tex2jax.js" in the extensions list above). 273 // 274 tex2jax: { 275 276 // 277 // The delimiters that surround in-line math expressions. The first in each 278 // pair is the initial delimiter and the second is the terminal delimiter. 279 // Comment out any that you don't want, but be sure there is no extra 280 // comma at the end of the last item in the list -- some browsers won't 281 // be able to handle that. 282 // 283 inlineMath: [ 284 // ['$','$'], // uncomment this for standard TeX math delimiters 285 ['\\(','\\)'] 286 ], 287 288 // 289 // The delimiters that surround displayed math expressions. The first in each 290 // pair is the initial delimiter and the second is the terminal delimiter. 291 // Comment out any that you don't want, but be sure there is no extra 292 // comma at the end of the last item in the list -- some browsers won't 293 // be able to handle that. 294 // 295 displayMath: [ 296 ['$$','$$'], 297 ['\\[','\\]'] 298 ], 299 300 // 301 // This value determines whether tex2jax requires braces to be 302 // balanced within math delimiters (which allows for nested dollar 303 // signs). Set to false to get pre-v2.0 compatibility. When true, 304 // 305 // $y = x^2 \hbox{ when $x > 2$}$. 306 // 307 // will be properly handled as a single expression. When false, it 308 // would be interpreted as two searpate expressions, each with 309 // improperly balanced braces. 310 // 311 balanceBraces: true, 312 313 // 314 // This array lists the names of the tags whose contents should not be 315 // processed by tex2jax (other than to look for ignore/process classes 316 // as listed below). You can add to (or remove from) this list to prevent 317 // MathJax from processing mathematics in specific contexts. 318 // 319 skipTags: ["script","noscript","style","textarea","pre","code","annotation","annotation-xml"], 320 321 // 322 // This is the class name used to mark elements whose contents should 323 // not be processed by tex2jax (other than to look for the 324 // processClass pattern below). Note that this is a regular 325 // expression, and so you need to be sure to quote any regexp special 326 // characters. The pattern is automatically preceeded by '(^| )(' and 327 // followed by ')( |$)', so your pattern will have to match full words 328 // in the class name. Assigning an element this class name will 329 // prevent `tex2jax` from processing its contents. 330 // 331 ignoreClass: "tex2jax_ignore", 332 333 // 334 // This is the class name used to mark elements whose contents SHOULD 335 // be processed by tex2jax. This is used to turn on processing within 336 // tags that have been marked as ignored or skipped above. Note that 337 // this is a regular expression, and so you need to be sure to quote 338 // any regexp special characters. The pattern is automatically 339 // preceeded by '(^| )(' and followed by ')( |$)', so your pattern 340 // will have to match full words in the class name. Use this to 341 // restart processing within an element that has been marked as 342 // ignored above. 343 // 344 processClass: "tex2jax_process", 345 346 // 347 // Set to "true" to allow \$ to produce a dollar without starting in-line 348 // math mode. If you uncomment the ['$','$'] line above, you should change 349 // this to true so that you can insert plain dollar signs into your documents 350 // 351 processEscapes: false, 352 353 // 354 // Controls whether tex2jax processes LaTeX environments outside of math 355 // mode. Set to "false" to prevent processing of environments except within 356 // math mode. 357 // 358 processEnvironments: true, 359 360 // 361 // Controls whether tex2jax processes \ref{...} commands outside 362 // of math mode. Set to "false" to prevent processing of \ref 363 // except within math mode. 364 // 365 processRefs: true, 366 367 // 368 // Controls whether tex2jax inserts MathJax_Preview spans to make a 369 // preview available, and what preview to use, when it locates in-line 370 // and display mathetics on the page. The default is "TeX", which 371 // means use the TeX code as the preview (until it is processed by 372 // MathJax). Set to "none" to prevent the previews from being 373 // inserted (the math will simply disappear until it is typeset). Set 374 // to an array containing the description of an HTML snippet in order 375 // to use the same preview for all equations on the page (e.g., you 376 // could have it say "[math]" or load an image). 377 // 378 // E.g., preview: ["[math]"], 379 // or preview: [["img",{src: "http://myserver.com/images/mypic.jpg"}]] 380 // 381 preview: "TeX" 382 383 }, 384 385 //============================================================================ 386 // 387 // These parameters control the asciimath2jax preprocessor (when you have included 388 // "asciimath2jax.js" in the extensions list above). 389 // 390 asciimath2jax: { 391 392 // 393 // The delimiters that surround asciimath expressions. The first in each 394 // pair is the initial delimiter and the second is the terminal delimiter. 395 // 396 delimiters: [ 397 ['`','`'] 398 ], 399 400 // 401 // This array lists the names of the tags whose contents should not be 402 // processed by asciimath2jax (other than to look for ignore/process classes 403 // as listed below). You can add to (or remove from) this list to prevent 404 // MathJax from processing mathematics in specific contexts. 405 // 406 skipTags: ["script","noscript","style","textarea","pre","code","annotation","annotation-xml"], 407 408 // 409 // This is the class name used to mark elements whose contents should 410 // not be processed by asciimath2jax (other than to look for the 411 // processClass pattern below). Note that this is a regular 412 // expression, and so you need to be sure to quote any regexp special 413 // characters. The pattern is automatically preceeded by '(^| )(' and 414 // followed by ')( |$)', so your pattern will have to match full words 415 // in the class name. Assigning an element this class name will 416 // prevent `asciimath2jax` from processing its contents. 417 // 418 ignoreClass: "asciimath2jax_ignore", 419 420 // 421 // This is the class name used to mark elements whose contents SHOULD 422 // be processed by asciimath2jax. This is used to turn on processing 423 // within tags that have been marked as ignored or skipped above. 424 // Note that this is a regular expression, and so you need to be sure 425 // to quote any regexp special characters. The pattern is 426 // automatically preceeded by '(^| )(' and followed by ')( |$)', so 427 // your pattern will have to match full words in the class name. Use 428 // this to restart processing within an element that has been marked 429 // as ignored above. 430 // 431 processClass: "asciimath2jax_process", 432 433 // Controls whether asciimath2jax inserts MathJax_Preview spans to make a 434 // preview available, and what preview to use, when it locates in-line 435 // and display mathetics on the page. The default is "AsciiMath", which 436 // means use the AsciiMath code as the preview (until it is processed by 437 // MathJax). Set to "none" to prevent the previews from being 438 // inserted (the math will simply disappear until it is typeset). Set 439 // to an array containing the description of an HTML snippet in order 440 // to use the same preview for all equations on the page (e.g., you 441 // could have it say "[math]" or load an image). 442 // 443 // E.g., preview: ["[math]"], 444 // or preview: [["img",{src: "http://myserver.com/images/mypic.jpg"}]] 445 // 446 preview: "AsciiMath" 447 448 }, 449 450 //============================================================================ 451 // 452 // These parameters control the mml2jax preprocessor (when you have included 453 // "mml2jax.js" in the extensions list above). 454 // 455 mml2jax: { 456 457 // 458 // Controls whether mml2jax inserts MathJax_Preview spans to make a 459 // preview available, and what preview to use, when it locates 460 // mathematics on the page. The default is "mathml" which means use 461 // the <math> tag as the preview (until it is processed by MathJax). 462 // Set to "alttext", to use the <math> tag's alttext attribute as the 463 // preview, if the tag has one. Set to "none" to 464 // prevent the previews from being inserted (the math will simply 465 // disappear until it is typeset). Set to "altimg" to use an image 466 // described by the altimg* attributes of the <math> element. 467 // Set to an array containing the 468 // description of an HTML snippet in order to use the same preview for 469 // all equations on the page (e.g., you could have it say "[math]" or 470 // load an image). 471 // 472 // E.g., preview: ["[math]"], 473 // or preview: [["img",{src: "http://myserver.com/images/mypic.jpg"}]] 474 // 475 preview: "mathml" 476 477 }, 478 479 //============================================================================ 480 // 481 // These parameters control the jsMath2jax preprocessor (when you have included 482 // "jsMath2jax.js" in the extensions list above). 483 // 484 jsMath2jax: { 485 486 // 487 // Controls whether jsMath2jax inserts MathJax_Preview spans to make a 488 // preview available, and what preview to use, when it locates 489 // mathematics on the page. The default is "TeX", which means use the 490 // TeX code as the preview (until it is processed by MathJax). Set to 491 // "none" to prevent the previews from being inserted (the math will 492 // simply disappear until it is typeset). Set to an array containing 493 // the description of an HTML snippet in order to use the same preview 494 // for all equations on the page (e.g., you could have it say "[math]" 495 // or load an image). 496 // 497 // E.g., preview: ["[math]"], 498 // or preview: [["img",{src: "http://myserver.com/images/mypic.jpg"}]] 499 // 500 preview: "TeX" 501 502 }, 503 504 //============================================================================ 505 // 506 // These parameters control the TeX input jax. 507 // 508 TeX: { 509 510 // 511 // This specifies the side on which \tag{} macros will place the tags. 512 // Set to "left" to place on the left-hand side. 513 // 514 TagSide: "right", 515 516 // 517 // This is the amound of indentation (from right or left) for the tags. 518 // 519 TagIndent: "0.8em", 520 521 // 522 // This is the width to use for the multline environment 523 // 524 MultLineWidth: "85%", 525 526 // 527 // List of macros to define. These are of the form 528 // name: value 529 // where 'value' is the replacement text for the macro \name. 530 // The 'value' can also be [value,n] where 'value' is the replacement 531 // text and 'n' is the number of parameters for the macro. 532 // Note that backslashes must be doubled in the replacement string. 533 // 534 // E.g., 535 // 536 // Macros: { 537 // RR: '{\\bf R}', 538 // bold: ['{\\bf #1}', 1] 539 // } 540 // 541 Macros: {}, 542 543 // 544 // Equation numbering parameters. 545 // 546 equationNumbers: { 547 autoNumber: "none", // "AMS" for standard AMS environment numbering, 548 // or "all" to number all displayed equations 549 // formatNumber: function (n) {return n}, // format for equation number n 550 // formatTag: function (n) {return '('+n+')'}, // format for \tag and \eqref 551 // formatID: function (n) {return 'mjx-eqn-'+String(n).replace(/[:'"<>&]/g,"")}, 552 // // element ID to use for reference 553 // formatURL: function (id) {return '#'+escape(id)}, // URL to use for references 554 useLabelIds: true // make element ID's use \label name rather than equation number 555 }, 556 557 // 558 // Controls the TeX/noErrors extension 559 // 560 noErrors: { 561 disabled: false, // set to true to return to original error messages 562 multiLine: true, // false to not include original line breaks 563 inlineDelimiters: ["",""], // or use ["$","$"] or ["\\(","\\)"] to put back delimiters 564 style: { 565 "font-size": "90%", 566 "text-align": "left", 567 "color": "black", 568 "padding": "1px 3px", 569 "border": "1px solid" 570 } 571 }, 572 573 // 574 // Controls the TeX/noUndefined extension 575 // 576 noUndefined: { 577 disabled: false, // set to true to return to original error messages 578 attributes: { // attributes to set for the undefined control sequence 579 mathcolor: "red" 580 } 581 }, 582 583 // 584 // Controls the TeX/unicode extension 585 unicode: { 586 fonts: "STIXGeneral,'Arial Unicode MS'" // the default font list for unknown characters 587 } 588 589 }, 590 591 //============================================================================ 592 // 593 // These parameters control the AsciiMath input jax. 594 // 595 AsciiMath: { 596 // 597 // Determines whether the unicode positions for phi and varphi are 598 // to be swapped or not. (Unicode originally had these reversed, and 599 // many fonts have them reversed as well.) When set to true, phi 600 // and varphi will correspond to the LaTeX macros of the same name. 601 // 602 fixphi: true, 603 604 // 605 // Determines whether the MathML should be marked so that the HTML-CSS 606 // and SVG output jax will use MathML spacing rules rather than TeX 607 // spacing rules. Since AsciiMath was designed for MathML output, the 608 // MathML rules are used by default. 609 // 610 useMathMLspacing: true, 611 612 // 613 // Determines whether limits are placed above and below operators, 614 // or next to them. (AsciiMath doesn't have separate in-line and 615 // display modes like TeX and MathML do, so this is the only control 616 // you have over its output) 617 // 618 displaystyle: true, 619 620 // 621 // The character to use for decimal places when scanning for a number. 622 // If you change it to ",", beware of things like "(1,2)" which would need 623 // to be changed to "(1, 2)" to be parsed correctly. 624 // 625 decimal: "." 626 }, 627 628 //============================================================================ 629 // 630 // These parameters control the MathML input jax. 631 // 632 MathML: { 633 // 634 // This specifies whether to use TeX spacing or MathML spacing when the 635 // HTML-CSS output jax is used. 636 // 637 useMathMLspacing: false 638 }, 639 640 //============================================================================ 641 // 642 // These parameters control the HTML-CSS output jax. 643 // 644 "HTML-CSS": { 645 646 // 647 // This controls the global scaling of mathematics as compared to the 648 // surrounding text. Values between 100 and 133 are usually good choices. 649 // 650 scale: 100, 651 652 // 653 // Don't allow the matching of math text to surrounding text to use a scaling 654 // factor smaller than this. 655 // 656 minScaleAdjust: 50, 657 658 // 659 // This is a list of the fonts to look for on a user's computer in 660 // preference to using MathJax's web-based fonts. These must 661 // correspond to directories available in the jax/output/HTML-CSS/fonts 662 // directory, where MathJax stores data about the characters available 663 // in the fonts. Set this to ["TeX"], for example, to prevent the 664 // use of the STIX fonts, or set it to an empty list, [], if 665 // you want to force MathJax to use web-based or image fonts. 666 // 667 availableFonts: ["STIX","TeX"], 668 669 // 670 // This is the preferred font to use when more than one of those 671 // listed above is available. 672 // 673 preferredFont: "TeX", 674 675 // 676 // This is the web-based font to use when none of the fonts listed 677 // above are available on the user's computer. Note that currently 678 // only the TeX font is available in a web-based form. Set this to 679 // 680 // webFont: null, 681 // 682 // if you want to prevent the use of web-based fonts. 683 // 684 webFont: "TeX", 685 686 // 687 // This is the font to use for image fallback mode (when none of the 688 // fonts listed above are available and the browser doesn't support 689 // web-fonts via the @font-face CSS directive). Note that currently 690 // only the TeX font is available as an image font. Set this to 691 // 692 // imageFont: null, 693 // 694 // if you want to prevent the use of image fonts (e.g., you have not 695 // installed the image fonts on your server). In this case, only 696 // browsers that support web-based fonts will be able to view your pages 697 // without having the fonts installed on the client computer. The browsers 698 // that support web-based fonts include: IE6 and later, Chrome, Safari3.1 699 // and above, Firefox3.5 and later, and Opera10 and later. Note that 700 // Firefox3.0 is NOT on this list, so without image fonts, FF3.0 users 701 // will be required to to download and install either the STIX fonts or the 702 // MathJax TeX fonts. 703 // 704 imageFont: "TeX", 705 706 // 707 // This is the font-family CSS value used for characters that are not 708 // in the selected font (e.g., for web-based fonts, this is where to 709 // look for characters not included in the MathJax_* fonts). IE will 710 // stop looking after the first font that exists on the system (even 711 // if it doesn't contain the needed character), so order these carefully. 712 // 713 undefinedFamily: "STIXGeneral,'Arial Unicode MS',serif", 714 715 // 716 // This setting controls whether <mtext> elements will be typeset 717 // using the math fonts or the font of the surrounding text. When 718 // false, the mathvariant="normal" font will be used; when true, 719 // the font will be inherited from the surrounding paragraph. 720 // 721 mtextFontInherit: false, 722 723 // 724 // These values control how "chunky" the display of mathematical 725 // expressions will be. 726 // 727 // EqnChunk is the number of equations that will be typeset before 728 // they appear on screen. Larger values make for less visual flicker 729 // as the equations are drawn, but also mean longer delays before the 730 // reader sees anything. 731 // 732 // EqChunkFactor is the factor by which the EqnChunk will grow after each 733 // chunk is displayed. 734 // 735 // EqChunkDelay is the time (in milliseconds) to delay between chunks 736 // (to allow the browser to respond to other user interaction). 737 // 738 // Set EqnChunk to 1, EqnChunkFactor to 1, and EqnChunkDelay to 10 to get 739 // the behavior from MathJax v1.1 and below. 740 // 741 EqnChunk: 50, 742 EqnChunkFactor: 1.5, 743 EqnChunkDelay: 100, 744 745 // 746 // This option indicates whether MathJax should try to correct the 747 // x-height of equations to match the size of the surrounding text. 748 // 749 matchFontHeight: true, 750 751 // 752 // When true, MathJax will not measure the widths or heights of the 753 // subexpressions as it creates its output, but instead will rely on 754 // its internal calculautions based on teh bounding boxes of the 755 // characters it uses, and will only take measurements when it 756 // absolutely has to. Since measurements cause display reflows, they 757 // slows down MathJax considerably, so without them MathJax runs 758 // faster, but can produce slightly less accurate character placements, 759 // especially in width fractions or roots. 760 // 761 noReflows: true, 762 763 764 // 765 // These settings control automatic line breaking. It is off by 766 // default, so only explicit line breaks are performed (via 767 // linebreak="newline" attributes on <mo> and <mspace> elements). To 768 // perform automatic line breaking on line expressions, set 769 // 'automatic' to 'true' below. The line breaks will be applied via a 770 // penalty-based heuristic, which does well, but isn't perfect. You 771 // might need to use linebreak="goodbreak" or linebreak="badbreak" by 772 // hand in order to get better effects. It is also possible to modify 773 // the penalty values; contact the MathJax user's forum for details. 774 // 775 linebreaks: { 776 777 // 778 // This controls the automatic breaking of expressions: 779 // when false, only process linebreak="newline", 780 // when true, line breaks are inserted automatically in long expressions. 781 // 782 automatic: false, 783 784 // 785 // This controls how wide the lines of mathematics can be 786 // 787 // Use an explicit width like "30em" for a fixed width. 788 // Use "container" to compute the size from the containing element. 789 // Use "nn% container" for a portion of the container. 790 // Use "nn%" for a portion of the window size. 791 // 792 // The container-based widths may be slower, and may not produce the 793 // expected results if the layout width changes due to the removal 794 // of previews or inclusion of mathematics during typesetting. 795 // 796 width: "container" 797 }, 798 799 // 800 // This allows you to define or modify the styles used to display 801 // various math elements created by MathJax. 802 // 803 // Example: 804 // styles: { 805 // ".MathJax .merror": { 806 // color: "#CC0000", 807 // border: "1px solid #CC0000" 808 // } 809 // } 810 // 811 styles: {}, 812 813 // 814 // Configuration for <maction> tooltips 815 // (see also the #MathJax_Tooltip CSS in MathJax/jax/output/HTML-CSS/config.js, 816 // which can be overriden using the styles values above). 817 // 818 tooltip: { 819 delayPost: 600, // milliseconds delay before tooltip is posted after mouseover 820 delayClear: 600, // milliseconds delay before tooltip is cleared after mouseout 821 offsetX: 10, offsetY: 5 // pixels to offset tooltip from mouse position 822 } 823 }, 824 825 //============================================================================ 826 // 827 // These parameters control the NativeMML output jax. 828 // 829 NativeMML: { 830 831 // 832 // This controls the global scaling of mathematics as compared to the 833 // surrounding text. Values between 100 and 133 are usually good choices. 834 // 835 scale: 100, 836 837 // 838 // Don't allow the matching of math text to surrounding text to use a scaling 839 // factor smaller than this. 840 // 841 minScaleAdjust: 50, 842 843 // This option indicates whether MathJax should try to correct the 844 // x-height of equations to match the size of the surrounding text. 845 matchFontHeight: true, 846 847 // 848 // This allows you to define or modify the styles used to display 849 // various math elements created by MathJax. 850 // 851 // Example: 852 // styles: { 853 // ".MathJax_MathML": { 854 // color: "red" // MathML is in red 855 // } 856 // } 857 // 858 styles: {} 859 }, 860 861 //============================================================================ 862 // 863 // These parameters control the SVG output jax. 864 // 865 "SVG": { 866 867 // 868 // This controls the global scaling of mathematics as compared to the 869 // surrounding text. Values between 100 and 133 are usually good choices. 870 // 871 scale: 100, 872 873 // 874 // Don't allow the matching of math text to surrounding text to use a scaling 875 // factor smaller than this. 876 // 877 minScaleAdjust: 50, 878 879 // 880 // This specifies the font to use for SVG output (currently the only 881 // one available) 882 // 883 font: "TeX", 884 885 // 886 // This is the stroke width to use for all character paths (1em = 1000 887 // units). This is a cheap way of getting slightly lighter or darker 888 // characters 889 // 890 blacker: 10, 891 892 // 893 // This is the font-family CSS value used for characters that are not 894 // in the selected font. IE will stop looking after the first font 895 // that exists on the system (even if it doesn't contain the needed 896 // character), so order these carefully. 897 // 898 undefinedFamily: "STIXGeneral,'Arial Unicode MS',serif", 899 900 // 901 // This setting controls whether <mtext> elements will be typeset 902 // using the math fonts or the font of the surrounding text. When 903 // false, the mathvariant="normal" font will be used; when true, 904 // the font will be inherited from the surrounding paragraph. 905 // 906 mtextFontInherit: false, 907 908 // 909 // This controls whether the MathML structure is retained and CSS 910 // classes are added to mark the original MathML elements (as in the 911 // HTML-CSS output). By default, the SVG output jax removes unneeded 912 // nesting in order to produce a more efficient markup, but if you 913 // want to use CSS to style the elements as if they were MathML, you 914 // might need to set this to true. 915 // 916 addMMLclasses: false, 917 918 // 919 // These values control how "chunky" the display of mathematical 920 // expressions will be. 921 // 922 // EqnChunk is the number of equations that will be typeset before 923 // they appear on screen. Larger values make for less visual flicker 924 // as the equations are drawn, but also mean longer delays before the 925 // reader sees anything. 926 // 927 // EqChunkFactor is the factor by which the EqnChunk will grow after each 928 // chunk is displayed. 929 // 930 // EqChunkDelay is the time (in milliseconds) to delay between chunks 931 // (to allow the browser to respond to other user interaction). 932 // 933 // Set EqnChunk to 1, EqnChunkFactor to 1, and EwnChunkDelay to 10 to get 934 // the behavior from MathJax v1.1 and below. 935 // 936 EqnChunk: 50, 937 EqnChunkFactor: 1.5, 938 EqnChunkDelay: 100, 939 940 // This option indicates whether MathJax should try to correct the 941 // x-height of equations to match the size of the surrounding text. 942 matchFontHeight: true, 943 944 // 945 // These settings control automatic line breaking. It is off by 946 // default, so only explicit line breaks are performed (via 947 // linebreak="newline" attributes on <mo> and <mspace> elements). To 948 // perform automatic line breaking on line expressions, set 949 // 'automatic' to 'true' below. The line breaks will be applied via a 950 // penalty-based heuristic, which does well, but isn't perfect. You 951 // might need to use linebreak="goodbreak" or linebreak="badbreak" by 952 // hand in order to get better effects. It is also possible to modify 953 // the penalty values; contact the MathJax user's forum for details. 954 // 955 linebreaks: { 956 957 // 958 // This controls the automatic breaking of expressions: 959 // when false, only process linebreak="newline", 960 // when true, line breaks are inserted automatically in long expressions. 961 // 962 automatic: false, 963 964 // 965 // This controls how wide the lines of mathematics can be 966 // 967 // Use an explicit width like "30em" for a fixed width. 968 // Use "container" to compute the size from the containing element. 969 // Use "nn% container" for a portion of the container. 970 // Use "nn%" for a portion of the window size. 971 // 972 // The container-based widths may be slower, and may not produce the 973 // expected results if the layout width changes due to the removal 974 // of previews or inclusion of mathematics during typesetting. 975 // 976 width: "container" 977 }, 978 979 // 980 // These are the styles used for merror elements in SVG output. Note 981 // that only a limited number of style attributes are supported by 982 // SVG, but you can at least change the colors and borders. 983 // 984 // 985 merrorStyle: { 986 fontSize:"90%", color:"#C00", background:"#FF8", 987 border: "1px solid #C00", padding:"3px" 988 }, 989 990 // 991 // This allows you to define or modify the styles used to display 992 // various math elements created by MathJax. 993 // 994 // Example: 995 // styles: { 996 // ".MathJax .merror": { 997 // color: "#CC0000", 998 // border: "1px solid #CC0000" 999 // } 1000 // } 1001 // 1002 styles: {}, 1003 1004 // 1005 // Configuration for <maction> tooltips 1006 // (see also the #MathJax_Tooltip CSS in MathJax/jax/output/SVG/config.js, 1007 // which can be overriden using the styles values above). 1008 // 1009 tooltip: { 1010 delayPost: 600, // milliseconds delay before tooltip is posted after mouseover 1011 delayClear: 600, // milliseconds delay before tooltip is cleared after mouseout 1012 offsetX: 10, offsetY: 5 // pixels to offset tooltip from mouse position 1013 } 1014 }, 1015 1016 //============================================================================ 1017 // 1018 // These parameters control the contextual menus that are available on the 1019 // mathematics within the page (provided the showMathMenu value is true above). 1020 // 1021 MathMenu: { 1022 // 1023 // This is the hover delay for the display of submenus in the 1024 // contextual menu. When the mouse is still over a submenu label for 1025 // this long, the menu will appear. (The menu also will appear if you 1026 // click on the label.) It is in milliseconds. 1027 // 1028 delay: 150, 1029 1030 // 1031 // This is the URL for the MathJax Help menu item. 1032 // 1033 helpURL: "http://www.mathjax.org/help-v2/user/", 1034 1035 // 1036 // These control whether the "Math Renderer", "MathPlayer", "Font 1037 // Preferences", "Contextual Menu", and "Discoverable" menu items will 1038 // be displayed or not. 1039 // 1040 showRenderer: true, 1041 showMathPlayer: true, 1042 showFontMenu: false, 1043 showContext: false, 1044 showDiscoverable: false, 1045 1046 // 1047 // These are the settings for the Annotation menu. If the <math> root has 1048 // a <semantics> child that contains one of the following annotation 1049 // formats, the source will be available via the "Show Math As" menu. 1050 // Each format has a list of possible encodings. 1051 // 1052 semanticsAnnotations: { 1053 "TeX": ["TeX", "LaTeX", "application/x-tex"], 1054 "StarMath": ["StarMath 5.0"], 1055 "Maple": ["Maple"], 1056 "ContentMathML": ["MathML-Content", "application/mathml-content+xml"], 1057 "OpenMath": ["OpenMath"] 1058 }, 1059 1060 // 1061 // These are the settings for the Show Source window. The initial 1062 // width and height will be reset after the source is shown in an 1063 // attempt to make the window fit the output better. 1064 // 1065 windowSettings: { 1066 status: "no", toolbar: "no", locationbar: "no", menubar: "no", 1067 directories: "no", personalbar: "no", resizable: "yes", scrollbars: "yes", 1068 width: 100, height: 50 1069 }, 1070 1071 // 1072 // This allows you to change the CSS that controls the menu 1073 // appearance. See the extensions/MathMenu.js file for details 1074 // of the default settings. 1075 // 1076 styles: {} 1077 1078 }, 1079 1080 //============================================================================ 1081 // 1082 // These parameters control the contextual menus that are available on the 1083 // mathematics within the page (provided the showMathMenu value is true above). 1084 // 1085 MathEvents: { 1086 // 1087 // This is the time required for the mouse to be held still over a 1088 // typeset equation in order for it to count as a hover (used when the 1089 // zoom trigger is "Hover"). It is in milliseconds. 1090 // 1091 hover: 500 1092 }, 1093 1094 //============================================================================ 1095 // 1096 // These parameters control the MMLorHTML configuration file. 1097 // NOTE: if you add MMLorHTML.js to the config array above, 1098 // you must REMOVE the output jax from the jax array. 1099 // 1100 MMLorHTML: { 1101 // 1102 // The output jax that is to be preferred when both are possible 1103 // (set to "MML" for native MathML, "HTML" for MathJax's HTML-CSS output jax). 1104 // 1105 prefer: { 1106 MSIE: "MML", 1107 Firefox: "HTML", 1108 Opera: "HTML", 1109 Safari: "HTML", 1110 Chrome: "HTML", 1111 other: "HTML" 1112 } 1113 } 1114 }); 1115 1116 MathJax.Ajax.loadComplete("[MathJax]/config/default.js");