default.js 42 KB

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