gollum 1.0.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of gollum might be problematic. Click here for more details.

Files changed (463) hide show
  1. data/HISTORY.md +3 -0
  2. data/LICENSE +21 -0
  3. data/README.md +435 -0
  4. data/Rakefile +146 -0
  5. data/bin/gollum +41 -0
  6. data/docs/sanitization.md +32 -0
  7. data/gollum.gemspec +506 -0
  8. data/lib/gollum.rb +58 -0
  9. data/lib/gollum/albino.rb +17 -0
  10. data/lib/gollum/file.rb +60 -0
  11. data/lib/gollum/frontend/app.rb +154 -0
  12. data/lib/gollum/frontend/public/css/editbar.css +194 -0
  13. data/lib/gollum/frontend/public/css/gollum.css +55 -0
  14. data/lib/gollum/frontend/public/css/screen.css +726 -0
  15. data/lib/gollum/frontend/public/css/syntax.css +61 -0
  16. data/lib/gollum/frontend/public/images/buttons.png +0 -0
  17. data/lib/gollum/frontend/public/images/editbar-buttons.png +0 -0
  18. data/lib/gollum/frontend/public/images/example.png +0 -0
  19. data/lib/gollum/frontend/public/images/twiddle-down.png +0 -0
  20. data/lib/gollum/frontend/public/images/twiddle-right.png +0 -0
  21. data/lib/gollum/frontend/public/images/txt.png +0 -0
  22. data/lib/gollum/frontend/public/javascript/MathJax/COPYING.txt +202 -0
  23. data/lib/gollum/frontend/public/javascript/MathJax/MathJax.js +1704 -0
  24. data/lib/gollum/frontend/public/javascript/MathJax/README.txt +480 -0
  25. data/lib/gollum/frontend/public/javascript/MathJax/config/MMLorHTML.js +63 -0
  26. data/lib/gollum/frontend/public/javascript/MathJax/config/MathJax.js +351 -0
  27. data/lib/gollum/frontend/public/javascript/MathJax/config/local/local.js +37 -0
  28. data/lib/gollum/frontend/public/javascript/MathJax/extensions/TeX/AMSmath.js +376 -0
  29. data/lib/gollum/frontend/public/javascript/MathJax/extensions/TeX/AMSsymbols.js +385 -0
  30. data/lib/gollum/frontend/public/javascript/MathJax/extensions/TeX/autobold.js +43 -0
  31. data/lib/gollum/frontend/public/javascript/MathJax/extensions/TeX/boldsymbol.js +109 -0
  32. data/lib/gollum/frontend/public/javascript/MathJax/extensions/TeX/mathchoice.js +65 -0
  33. data/lib/gollum/frontend/public/javascript/MathJax/extensions/TeX/newcommand.js +185 -0
  34. data/lib/gollum/frontend/public/javascript/MathJax/extensions/TeX/noErrors.js +169 -0
  35. data/lib/gollum/frontend/public/javascript/MathJax/extensions/TeX/unicode.js +131 -0
  36. data/lib/gollum/frontend/public/javascript/MathJax/extensions/TeX/verb.js +53 -0
  37. data/lib/gollum/frontend/public/javascript/MathJax/extensions/jsMath2jax.js +77 -0
  38. data/lib/gollum/frontend/public/javascript/MathJax/extensions/mml2jax.js +101 -0
  39. data/lib/gollum/frontend/public/javascript/MathJax/extensions/tex2jax.js +242 -0
  40. data/lib/gollum/frontend/public/javascript/MathJax/extensions/toMathML.js +140 -0
  41. data/lib/gollum/frontend/public/javascript/MathJax/jax/element/mml/jax.js +1474 -0
  42. data/lib/gollum/frontend/public/javascript/MathJax/jax/element/mml/optable/Arrows.js +122 -0
  43. data/lib/gollum/frontend/public/javascript/MathJax/jax/element/mml/optable/BasicLatin.js +58 -0
  44. data/lib/gollum/frontend/public/javascript/MathJax/jax/element/mml/optable/CombDiacritMarks.js +35 -0
  45. data/lib/gollum/frontend/public/javascript/MathJax/jax/element/mml/optable/CombDiactForSymbols.js +35 -0
  46. data/lib/gollum/frontend/public/javascript/MathJax/jax/element/mml/optable/Dingbats.js +35 -0
  47. data/lib/gollum/frontend/public/javascript/MathJax/jax/element/mml/optable/GeneralPunctuation.js +40 -0
  48. data/lib/gollum/frontend/public/javascript/MathJax/jax/element/mml/optable/GeometricShapes.js +66 -0
  49. data/lib/gollum/frontend/public/javascript/MathJax/jax/element/mml/optable/GreekAndCoptic.js +35 -0
  50. data/lib/gollum/frontend/public/javascript/MathJax/jax/element/mml/optable/Latin1Supplement.js +37 -0
  51. data/lib/gollum/frontend/public/javascript/MathJax/jax/element/mml/optable/LetterlikeSymbols.js +39 -0
  52. data/lib/gollum/frontend/public/javascript/MathJax/jax/element/mml/optable/MathOperators.js +228 -0
  53. data/lib/gollum/frontend/public/javascript/MathJax/jax/element/mml/optable/MiscMathSymbolsA.js +38 -0
  54. data/lib/gollum/frontend/public/javascript/MathJax/jax/element/mml/optable/MiscMathSymbolsB.js +167 -0
  55. data/lib/gollum/frontend/public/javascript/MathJax/jax/element/mml/optable/MiscTechnical.js +38 -0
  56. data/lib/gollum/frontend/public/javascript/MathJax/jax/element/mml/optable/SpacingModLetters.js +36 -0
  57. data/lib/gollum/frontend/public/javascript/MathJax/jax/element/mml/optable/SuppMathOperators.js +289 -0
  58. data/lib/gollum/frontend/public/javascript/MathJax/jax/element/mml/optable/SupplementalArrowsB.js +162 -0
  59. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/config.js +39 -0
  60. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/a.js +87 -0
  61. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/b.js +114 -0
  62. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/c.js +111 -0
  63. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/d.js +112 -0
  64. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/e.js +88 -0
  65. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/f.js +58 -0
  66. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/fr.js +79 -0
  67. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/g.js +82 -0
  68. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/h.js +52 -0
  69. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/i.js +85 -0
  70. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/j.js +36 -0
  71. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/k.js +36 -0
  72. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/l.js +175 -0
  73. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/m.js +61 -0
  74. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/n.js +219 -0
  75. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/o.js +88 -0
  76. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/opf.js +79 -0
  77. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/p.js +84 -0
  78. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/q.js +34 -0
  79. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/r.js +134 -0
  80. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/s.js +168 -0
  81. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/scr.js +79 -0
  82. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/t.js +82 -0
  83. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/u.js +91 -0
  84. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/v.js +73 -0
  85. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/w.js +35 -0
  86. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/x.js +47 -0
  87. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/y.js +41 -0
  88. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/entities/z.js +39 -0
  89. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/MathML/jax.js +590 -0
  90. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/TeX/config.js +40 -0
  91. data/lib/gollum/frontend/public/javascript/MathJax/jax/input/TeX/jax.js +1652 -0
  92. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/autoload/menclose.js +61 -0
  93. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/autoload/mglyph.js +98 -0
  94. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/autoload/ms.js +49 -0
  95. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/blank.gif +0 -0
  96. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/config.js +127 -0
  97. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/AlphaPresentForms.js +32 -0
  98. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/Arrows.js +109 -0
  99. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/BoldFraktur.js +79 -0
  100. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/BoxDrawing.js +67 -0
  101. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/CombDiacritMarks.js +98 -0
  102. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/CombDiactForSymbols.js +49 -0
  103. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/ControlPictures.js +28 -0
  104. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/CurrencySymbols.js +31 -0
  105. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/Cyrillic.js +129 -0
  106. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/EnclosedAlphanum.js +89 -0
  107. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/GeneralPunctuation.js +67 -0
  108. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/GeometricShapes.js +33 -0
  109. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/GreekAndCoptic.js +109 -0
  110. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/GreekBold.js +85 -0
  111. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/GreekSSBold.js +85 -0
  112. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/IPAExtensions.js +116 -0
  113. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/Latin1Supplement.js +123 -0
  114. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/LatinExtendedA.js +155 -0
  115. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/LatinExtendedAdditional.js +35 -0
  116. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/LatinExtendedB.js +59 -0
  117. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/LetterlikeSymbols.js +69 -0
  118. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/Main.js +172 -0
  119. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/MathBold.js +89 -0
  120. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/MathOperators.js +260 -0
  121. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/MathSSBold.js +89 -0
  122. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/MiscMathSymbolsA.js +31 -0
  123. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/MiscMathSymbolsB.js +37 -0
  124. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/MiscSymbols.js +30 -0
  125. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/MiscTechnical.js +42 -0
  126. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/NumberForms.js +39 -0
  127. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/PhoneticExtensions.js +30 -0
  128. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/SpacingModLetters.js +87 -0
  129. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/SuperAndSubscripts.js +28 -0
  130. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/SuppMathOperators.js +84 -0
  131. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/AlphaPresentForms.js +32 -0
  132. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/BasicLatin.js +122 -0
  133. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/BoxDrawing.js +67 -0
  134. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/CombDiactForSymbols.js +28 -0
  135. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/ControlPictures.js +28 -0
  136. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/CurrencySymbols.js +31 -0
  137. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/Cyrillic.js +129 -0
  138. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/EnclosedAlphanum.js +89 -0
  139. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/GeneralPunctuation.js +50 -0
  140. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/GreekAndCoptic.js +119 -0
  141. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/GreekBoldItalic.js +85 -0
  142. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/GreekSSBoldItalic.js +85 -0
  143. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/IPAExtensions.js +116 -0
  144. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/Latin1Supplement.js +123 -0
  145. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/LatinExtendedA.js +155 -0
  146. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/LatinExtendedAdditional.js +35 -0
  147. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/LatinExtendedB.js +59 -0
  148. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/LetterlikeSymbols.js +56 -0
  149. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/Main.js +56 -0
  150. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/MathBoldItalic.js +79 -0
  151. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/MathBoldScript.js +79 -0
  152. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/MathOperators.js +29 -0
  153. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/MathSSItalicBold.js +79 -0
  154. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/SpacingModLetters.js +54 -0
  155. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/AlphaPresentForms.js +32 -0
  156. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/BoxDrawing.js +67 -0
  157. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/CombDiactForSymbols.js +47 -0
  158. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/ControlPictures.js +28 -0
  159. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/CurrencySymbols.js +31 -0
  160. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/Cyrillic.js +129 -0
  161. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/EnclosedAlphanum.js +89 -0
  162. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/GeneralPunctuation.js +50 -0
  163. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/GreekAndCoptic.js +78 -0
  164. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/GreekItalic.js +85 -0
  165. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/IPAExtensions.js +116 -0
  166. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/Latin1Supplement.js +123 -0
  167. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/LatinExtendedA.js +154 -0
  168. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/LatinExtendedAdditional.js +35 -0
  169. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/LatinExtendedB.js +58 -0
  170. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/LetterlikeSymbols.js +56 -0
  171. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/Main.js +192 -0
  172. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/MathItalic.js +78 -0
  173. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/MathOperators.js +29 -0
  174. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/MathSSItalic.js +79 -0
  175. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/MathScript.js +68 -0
  176. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/SpacingModLetters.js +54 -0
  177. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/ij.js +29 -0
  178. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/AlphaPresentForms.js +32 -0
  179. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/Arrows.js +106 -0
  180. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/BBBold.js +82 -0
  181. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/BlockElements.js +35 -0
  182. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/BoldFraktur.js +79 -0
  183. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/BoxDrawing.js +72 -0
  184. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/CJK.js +29 -0
  185. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/CombDiacritMarks.js +86 -0
  186. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/CombDiactForSymbols.js +50 -0
  187. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/ControlPictures.js +28 -0
  188. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/CurrencySymbols.js +31 -0
  189. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/Cyrillic.js +129 -0
  190. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/Dingbats.js +57 -0
  191. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/EnclosedAlphanum.js +89 -0
  192. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/Fraktur.js +74 -0
  193. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/GeneralPunctuation.js +68 -0
  194. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/GeometricShapes.js +118 -0
  195. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/GreekAndCoptic.js +109 -0
  196. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/GreekBold.js +85 -0
  197. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/GreekBoldItalic.js +85 -0
  198. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/GreekItalic.js +85 -0
  199. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/GreekSSBold.js +85 -0
  200. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/GreekSSBoldItalic.js +85 -0
  201. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/Hiragana.js +28 -0
  202. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/IPAExtensions.js +118 -0
  203. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/Latin1Supplement.js +115 -0
  204. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/LatinExtendedA.js +154 -0
  205. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/LatinExtendedAdditional.js +35 -0
  206. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/LatinExtendedB.js +63 -0
  207. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/LatinExtendedD.js +28 -0
  208. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/LetterlikeSymbols.js +82 -0
  209. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/Main.js +380 -0
  210. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/MathBold.js +89 -0
  211. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/MathBoldItalic.js +79 -0
  212. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/MathBoldScript.js +79 -0
  213. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/MathItalic.js +78 -0
  214. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/MathOperators.js +207 -0
  215. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/MathSS.js +89 -0
  216. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/MathSSBold.js +90 -0
  217. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/MathSSItalic.js +79 -0
  218. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/MathSSItalicBold.js +79 -0
  219. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/MathScript.js +68 -0
  220. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/MathTT.js +88 -0
  221. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/MiscMathSymbolsA.js +66 -0
  222. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/MiscMathSymbolsB.js +154 -0
  223. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/MiscSymbols.js +74 -0
  224. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/MiscSymbolsAndArrows.js +91 -0
  225. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/MiscTechnical.js +80 -0
  226. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/NumberForms.js +39 -0
  227. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/PhoneticExtensions.js +36 -0
  228. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/SpacingModLetters.js +79 -0
  229. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/Specials.js +28 -0
  230. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/SuperAndSubscripts.js +28 -0
  231. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/SuppMathOperators.js +271 -0
  232. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/SupplementalArrowsA.js +35 -0
  233. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/SupplementalArrowsB.js +155 -0
  234. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/ij.js +29 -0
  235. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsD/Bold/All.js +55 -0
  236. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsD/Regular/All.js +54 -0
  237. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsD/Regular/Main.js +36 -0
  238. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsSm/Bold/All.js +55 -0
  239. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsSm/Regular/All.js +54 -0
  240. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsSm/Regular/Main.js +36 -0
  241. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUp/Bold/All.js +55 -0
  242. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUp/Regular/All.js +54 -0
  243. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUp/Regular/Main.js +36 -0
  244. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUpD/Bold/All.js +55 -0
  245. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUpD/Regular/All.js +54 -0
  246. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUpD/Regular/Main.js +36 -0
  247. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUpSm/Bold/All.js +55 -0
  248. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUpSm/Regular/All.js +54 -0
  249. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUpSm/Regular/Main.js +36 -0
  250. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Bold/All.js +29 -0
  251. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Bold/Main.js +35 -0
  252. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Bold/PrivateUse.js +182 -0
  253. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/BoldItalic/All.js +29 -0
  254. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/BoldItalic/Main.js +36 -0
  255. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/BoldItalic/PrivateUse.js +215 -0
  256. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Italic/All.js +29 -0
  257. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Italic/Main.js +60 -0
  258. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Italic/PrivateUse.js +242 -0
  259. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Regular/All.js +29 -0
  260. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Regular/Main.js +57 -0
  261. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Regular/PrivateUse.js +387 -0
  262. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeFiveSym/Regular/All.js +51 -0
  263. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeFiveSym/Regular/Main.js +43 -0
  264. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeFourSym/Bold/Main.js +46 -0
  265. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeFourSym/Regular/All.js +63 -0
  266. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeFourSym/Regular/Main.js +62 -0
  267. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeOneSym/Bold/All.js +28 -0
  268. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeOneSym/Bold/Main.js +52 -0
  269. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeOneSym/Regular/All.js +77 -0
  270. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeOneSym/Regular/Main.js +105 -0
  271. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeThreeSym/Bold/Main.js +46 -0
  272. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeThreeSym/Regular/All.js +63 -0
  273. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeThreeSym/Regular/Main.js +62 -0
  274. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeTwoSym/Bold/Main.js +46 -0
  275. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeTwoSym/Regular/All.js +64 -0
  276. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeTwoSym/Regular/Main.js +63 -0
  277. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/Variants/Bold/All.js +60 -0
  278. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/Variants/Bold/Main.js +44 -0
  279. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/Variants/Regular/All.js +120 -0
  280. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/Variants/Regular/Main.js +49 -0
  281. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/fontdata-beta.js +373 -0
  282. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/STIX/fontdata.js +1403 -0
  283. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/Arrows.js +65 -0
  284. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/BBBold.js +55 -0
  285. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/BoxDrawing.js +33 -0
  286. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/CombDiacritMarks.js +29 -0
  287. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/Dingbats.js +29 -0
  288. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/EnclosedAlphanum.js +28 -0
  289. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/GeneralPunctuation.js +28 -0
  290. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/GeometricShapes.js +36 -0
  291. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/GreekAndCoptic.js +29 -0
  292. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/Latin1Supplement.js +31 -0
  293. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/LatinExtendedA.js +28 -0
  294. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/LetterlikeSymbols.js +34 -0
  295. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/Main.js +51 -0
  296. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/MathOperators.js +138 -0
  297. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/MiscMathSymbolsB.js +28 -0
  298. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/MiscSymbols.js +28 -0
  299. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/MiscTechnical.js +29 -0
  300. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/PUA.js +43 -0
  301. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/SpacingModLetters.js +29 -0
  302. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/SuppMathOperators.js +50 -0
  303. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Caligraphic/Bold/Main.js +96 -0
  304. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Caligraphic/Regular/Main.js +95 -0
  305. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Bold/BasicLatin.js +109 -0
  306. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Bold/Main.js +36 -0
  307. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Bold/Other.js +30 -0
  308. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Bold/PUA.js +34 -0
  309. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Regular/BasicLatin.js +109 -0
  310. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Regular/Main.js +35 -0
  311. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Regular/Other.js +30 -0
  312. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Regular/PUA.js +35 -0
  313. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Greek/Bold/Main.js +43 -0
  314. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Greek/BoldItalic/Main.js +110 -0
  315. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Greek/Italic/Main.js +109 -0
  316. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Greek/Regular/Main.js +42 -0
  317. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/Arrows.js +51 -0
  318. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/CombDiacritMarks.js +39 -0
  319. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/CombDiactForSymbols.js +28 -0
  320. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/GeneralPunctuation.js +44 -0
  321. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/GeometricShapes.js +32 -0
  322. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/GreekAndCoptic.js +38 -0
  323. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/Latin1Supplement.js +36 -0
  324. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/LatinExtendedA.js +28 -0
  325. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/LatinExtendedB.js +28 -0
  326. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/LetterlikeSymbols.js +33 -0
  327. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/Main.js +161 -0
  328. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/MathOperators.js +94 -0
  329. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/MiscMathSymbolsA.js +29 -0
  330. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/MiscSymbols.js +34 -0
  331. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/MiscTechnical.js +33 -0
  332. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/SpacingModLetters.js +36 -0
  333. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/SuppMathOperators.js +30 -0
  334. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/SupplementalArrowsA.js +34 -0
  335. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Italic/CombDiacritMarks.js +38 -0
  336. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Italic/GeneralPunctuation.js +33 -0
  337. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Italic/GreekAndCoptic.js +38 -0
  338. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Italic/Latin1Supplement.js +28 -0
  339. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Italic/LatinExtendedA.js +28 -0
  340. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Italic/LatinExtendedB.js +28 -0
  341. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Italic/LetterlikeSymbols.js +28 -0
  342. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Italic/Main.js +137 -0
  343. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/Arrows.js +51 -0
  344. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/CombDiacritMarks.js +39 -0
  345. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/CombDiactForSymbols.js +28 -0
  346. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/GeneralPunctuation.js +38 -0
  347. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/GeometricShapes.js +32 -0
  348. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/GreekAndCoptic.js +38 -0
  349. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/Latin1Supplement.js +32 -0
  350. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/LatinExtendedA.js +28 -0
  351. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/LatinExtendedB.js +28 -0
  352. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/LetterlikeSymbols.js +33 -0
  353. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/Main.js +304 -0
  354. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/MathOperators.js +94 -0
  355. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/MiscMathSymbolsA.js +31 -0
  356. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/MiscSymbols.js +34 -0
  357. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/MiscTechnical.js +35 -0
  358. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/SpacingModLetters.js +28 -0
  359. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/SuppMathOperators.js +30 -0
  360. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/SupplementalArrowsA.js +34 -0
  361. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Math/BoldItalic/Main.js +205 -0
  362. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Math/Italic/Main.js +204 -0
  363. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Bold/BasicLatin.js +115 -0
  364. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Bold/CombDiacritMarks.js +38 -0
  365. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Bold/Main.js +36 -0
  366. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Bold/Other.js +47 -0
  367. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Italic/BasicLatin.js +115 -0
  368. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Italic/CombDiacritMarks.js +38 -0
  369. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Italic/Main.js +36 -0
  370. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Italic/Other.js +47 -0
  371. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Regular/BasicLatin.js +115 -0
  372. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Regular/CombDiacritMarks.js +38 -0
  373. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Regular/Main.js +35 -0
  374. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Regular/Other.js +47 -0
  375. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Script/Regular/BasicLatin.js +54 -0
  376. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Script/Regular/Main.js +62 -0
  377. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Script/Regular/Other.js +28 -0
  378. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Size1/Regular/Main.js +74 -0
  379. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Size2/Regular/Main.js +66 -0
  380. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Size3/Regular/Main.js +50 -0
  381. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Size4/Regular/Main.js +77 -0
  382. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Typewriter/Regular/BasicLatin.js +123 -0
  383. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Typewriter/Regular/CombDiacritMarks.js +36 -0
  384. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Typewriter/Regular/Main.js +35 -0
  385. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/Typewriter/Regular/Other.js +44 -0
  386. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/WinChrome/Regular/Main.js +43 -0
  387. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/WinIE6/Regular/AMS.js +56 -0
  388. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/WinIE6/Regular/Bold.js +82 -0
  389. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/WinIE6/Regular/Main.js +111 -0
  390. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/fonts/TeX/fontdata.js +1691 -0
  391. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/imageFonts.js +185 -0
  392. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/HTML-CSS/jax.js +1991 -0
  393. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/NativeMML/config.js +51 -0
  394. data/lib/gollum/frontend/public/javascript/MathJax/jax/output/NativeMML/jax.js +230 -0
  395. data/lib/gollum/frontend/public/javascript/MathJax/test/index-images.html +119 -0
  396. data/lib/gollum/frontend/public/javascript/MathJax/test/index.html +127 -0
  397. data/lib/gollum/frontend/public/javascript/MathJax/test/sample.html +99 -0
  398. data/lib/gollum/frontend/public/javascript/gollum.js +244 -0
  399. data/lib/gollum/frontend/public/javascript/jquery-1.4.2.min.js +154 -0
  400. data/lib/gollum/frontend/public/javascript/jquery.previewable_comment_form.js +57 -0
  401. data/lib/gollum/frontend/public/javascript/jquery.tabs.js +59 -0
  402. data/lib/gollum/frontend/public/javascript/jquery.text_selection-1.0.0.min.js +1 -0
  403. data/lib/gollum/frontend/templates/compare.mustache +33 -0
  404. data/lib/gollum/frontend/templates/create.mustache +39 -0
  405. data/lib/gollum/frontend/templates/edit.mustache +38 -0
  406. data/lib/gollum/frontend/templates/editbar.mustache +1196 -0
  407. data/lib/gollum/frontend/templates/history.mustache +37 -0
  408. data/lib/gollum/frontend/templates/layout.mustache +33 -0
  409. data/lib/gollum/frontend/templates/page.mustache +27 -0
  410. data/lib/gollum/frontend/views/compare.rb +90 -0
  411. data/lib/gollum/frontend/views/create.rb +21 -0
  412. data/lib/gollum/frontend/views/edit.rb +13 -0
  413. data/lib/gollum/frontend/views/editable.rb +13 -0
  414. data/lib/gollum/frontend/views/history.rb +44 -0
  415. data/lib/gollum/frontend/views/layout.rb +14 -0
  416. data/lib/gollum/frontend/views/page.rb +38 -0
  417. data/lib/gollum/markup.rb +331 -0
  418. data/lib/gollum/page.rb +354 -0
  419. data/lib/gollum/pagination.rb +61 -0
  420. data/lib/gollum/wiki.rb +335 -0
  421. data/templates/formatting.html +92 -0
  422. data/test/examples/lotr.git/HEAD +1 -0
  423. data/test/examples/lotr.git/config +5 -0
  424. data/test/examples/lotr.git/description +1 -0
  425. data/test/examples/lotr.git/hooks/applypatch-msg.sample +15 -0
  426. data/test/examples/lotr.git/hooks/commit-msg.sample +24 -0
  427. data/test/examples/lotr.git/hooks/post-commit.sample +8 -0
  428. data/test/examples/lotr.git/hooks/post-receive.sample +15 -0
  429. data/test/examples/lotr.git/hooks/post-update.sample +8 -0
  430. data/test/examples/lotr.git/hooks/pre-applypatch.sample +14 -0
  431. data/test/examples/lotr.git/hooks/pre-commit.sample +46 -0
  432. data/test/examples/lotr.git/hooks/pre-rebase.sample +169 -0
  433. data/test/examples/lotr.git/hooks/prepare-commit-msg.sample +36 -0
  434. data/test/examples/lotr.git/hooks/update.sample +128 -0
  435. data/test/examples/lotr.git/info/exclude +6 -0
  436. data/test/examples/lotr.git/info/refs +1 -0
  437. data/test/examples/lotr.git/objects/06/131480411710c92a82fe2d1e76932c70feb2e5 +0 -0
  438. data/test/examples/lotr.git/objects/0a/de1e2916346d4c1f2fb63b863fd3c16808fe44 +0 -0
  439. data/test/examples/lotr.git/objects/0e/d8cbe0a25235bd867e65193c7d837c66b328ef +3 -0
  440. data/test/examples/lotr.git/objects/24/49c2681badfd3c189e8ed658dacffe8ba48fe5 +0 -0
  441. data/test/examples/lotr.git/objects/2c/b9156ad383914561a8502fc70f5a1d887e48ad +4 -0
  442. data/test/examples/lotr.git/objects/5d/cac289a8603188d2c5caf481dcba2985126aaa +0 -0
  443. data/test/examples/lotr.git/objects/60/f12f4254f58801b9ee7db7bca5fa8aeefaa56b +0 -0
  444. data/test/examples/lotr.git/objects/71/4323c104239440a5c66ab12a67ed07a83c404f +0 -0
  445. data/test/examples/lotr.git/objects/93/6b83ee0dd8837adb82511e40d5e4ebe59bb675 +0 -0
  446. data/test/examples/lotr.git/objects/94/523d7ae48aeba575099dd12926420d8fd0425d +2 -0
  447. data/test/examples/lotr.git/objects/96/97dc65e095658bbd1b8e8678e08881e86d32f1 +0 -0
  448. data/test/examples/lotr.git/objects/aa/b61fe89d56f8614c0a8151da34f939dcedfa68 +0 -0
  449. data/test/examples/lotr.git/objects/c3/b43e9f08966b088e7a0192e436b7a884542e05 +0 -0
  450. data/test/examples/lotr.git/objects/dc/596d6b2dd89ab05c66f4abd7d5eb706bc17f19 +0 -0
  451. data/test/examples/lotr.git/objects/ec/da3205bee14520aab5a7bb307392064b938e83 +0 -0
  452. data/test/examples/lotr.git/objects/fa/e7ef5344202bba4129abdc13060d9297d99465 +3 -0
  453. data/test/examples/lotr.git/objects/info/packs +2 -0
  454. data/test/examples/lotr.git/objects/pack/pack-dcbeaf3f6ff6c5eb08ea2b0a2d83626e8763546b.idx +0 -0
  455. data/test/examples/lotr.git/objects/pack/pack-dcbeaf3f6ff6c5eb08ea2b0a2d83626e8763546b.pack +0 -0
  456. data/test/examples/lotr.git/packed-refs +2 -0
  457. data/test/examples/lotr.git/refs/heads/master +1 -0
  458. data/test/helper.rb +38 -0
  459. data/test/test_file.rb +18 -0
  460. data/test/test_markup.rb +348 -0
  461. data/test/test_page.rb +112 -0
  462. data/test/test_wiki.rb +201 -0
  463. metadata +626 -0
@@ -0,0 +1,140 @@
1
+ /*************************************************************
2
+ *
3
+ * MathJax/extensions/toMathML.js
4
+ *
5
+ * Implements a toMathML() method for the mml Element Jax that returns
6
+ * a MathML string from a given math expression.
7
+ *
8
+ * ---------------------------------------------------------------------
9
+ *
10
+ * Copyright (c) 2010 Design Science, Inc.
11
+ *
12
+ * Licensed under the Apache License, Version 2.0 (the "License");
13
+ * you may not use this file except in compliance with the License.
14
+ * You may obtain a copy of the License at
15
+ *
16
+ * http://www.apache.org/licenses/LICENSE-2.0
17
+ *
18
+ * Unless required by applicable law or agreed to in writing, software
19
+ * distributed under the License is distributed on an "AS IS" BASIS,
20
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21
+ * See the License for the specific language governing permissions and
22
+ * limitations under the License.
23
+ */
24
+
25
+ MathJax.Hub.Register.LoadHook("[MathJax]/jax/element/mml/jax.js",function () {
26
+ var MML = MathJax.ElementJax.mml;
27
+
28
+ MML.mbase.Augment({
29
+
30
+ toMathML: function (space) {
31
+ var inferred = (this.inferred && this.parent.inferRow);
32
+ if (space == null) {space = ""}
33
+ var tag = this.type, attr = this.MathMLattributes();
34
+ if (tag === "mspace") {return space + "<"+tag+attr+" />"}
35
+ var data = []; var SPACE = (this.isToken ? "" : space+(inferred ? "" : " "));
36
+ for (var i = 0, m = this.data.length; i < m; i++) {
37
+ if (this.data[i]) {data.push(this.data[i].toMathML(SPACE))}
38
+ else if (!this.isToken) {data.push(SPACE+"<mrow />")}
39
+ }
40
+ if (this.isToken) {return space + "<"+tag+attr+">"+data.join("")+"</"+tag+">"}
41
+ if (inferred) {return data.join("\n")}
42
+ if (data.length === 0 || (data.length === 1 && data[0] === ""))
43
+ {return space + "<"+tag+attr+" />"}
44
+ return space + "<"+tag+attr+">\n"+data.join("\n")+"\n"+ space +"</"+tag+">";
45
+ },
46
+
47
+ MathMLattributes: function () {
48
+ var attr = [], defaults = this.defaults;
49
+ var copy = this.copyAttributes,
50
+ skip = this.skipAttributes;
51
+
52
+ if (this.type === "mstyle") {defaults = MML.math.prototype.defaults}
53
+ for (var id in defaults) {if (!skip[id] && defaults.hasOwnProperty(id)) {
54
+ var force = (id === "open" || id === "close");
55
+ if (this[id] != null && (force || this[id] !== defaults[id])) {
56
+ var value = this[id]; delete this[id];
57
+ if (force || this.Get(id) !== value)
58
+ {attr.push(id+'="'+this.quoteHTML(value)+'"')}
59
+ this[id] = value;
60
+ }
61
+ }}
62
+ for (var i = 0, m = copy.length; i < m; i++) {
63
+ if (this[copy[i]] != null) {attr.push(copy[i]+'="'+this.quoteHTML(this[copy[i]])+'"')}
64
+ }
65
+ if (attr.length) {return " "+attr.join(" ")} else {return ""}
66
+ },
67
+ copyAttributes: [
68
+ "fontfamily","fontsize","fontweight","fontstyle",
69
+ "color","background",
70
+ "id","class","href","style"
71
+ ],
72
+ skipAttributes: {texClass: 1, useHeight: 1, texprimestyle: 1},
73
+
74
+ quoteHTML: function (string) {
75
+ string = String(string).split("");
76
+ for (var i = 0, m = string.length; i < m; i++) {
77
+ var n = string[i].charCodeAt(0);
78
+ if (n < 0x20 || n > 0x7E) {
79
+ string[i] = "&#x"+n.toString(16).toUpperCase()+";";
80
+ } else {
81
+ var c = {'&':'&amp;', '<':'&lt;', '>':'&gt;', '"':'&quot;'}[string[i]];
82
+ if (c) {string[i] = c}
83
+ }
84
+ }
85
+ return string.join("");
86
+ }
87
+ });
88
+
89
+ MML.msubsup.Augment({
90
+ toMathML: function (space) {
91
+ var tag = this.type;
92
+ if (this.data[this.sup] == null) {tag = "msub"}
93
+ if (this.data[this.sub] == null) {tag = "msup"}
94
+ var attr = this.MathMLattributes();
95
+ delete this.data[0].inferred;
96
+ var data = [];
97
+ for (var i = 0, m = this.data.length; i < m; i++)
98
+ {if (this.data[i]) {data.push(this.data[i].toMathML(space+" "))}}
99
+ return space + "<"+tag+attr+">\n" + data.join("\n") + "\n" + space + "</"+tag+">";
100
+ }
101
+ });
102
+
103
+ MML.munderover.Augment({
104
+ toMathML: function (space) {
105
+ var tag = this.type;
106
+ if (this.data[this.under] == null) {tag = "mover"}
107
+ if (this.data[this.over] == null) {tag = "munder"}
108
+ var attr = this.MathMLattributes();
109
+ delete this.data[0].inferred;
110
+ var data = [];
111
+ for (var i = 0, m = this.data.length; i < m; i++)
112
+ {if (this.data[i]) {data.push(this.data[i].toMathML(space+" "))}}
113
+ return space + "<"+tag+attr+">\n" + data.join("\n") + "\n" + space + "</"+tag+">";
114
+ }
115
+ });
116
+
117
+ MML.TeXAtom.Augment({
118
+ toMathML: function (space) {
119
+ // FIXME: Handle spacing using mpadded?
120
+ return space+"<mrow>\n"+this.data[0].toMathML(space+" ")+"\n"+space+"</mrow>";
121
+ }
122
+ });
123
+
124
+ MML.chars.Augment({
125
+ toMathML: function (space) {return (space||"") + this.quoteHTML(this.toString())}
126
+ });
127
+
128
+ MML.entity.Augment({
129
+ toMathML: function (space) {return (space||"") + "&"+this.data[0]+";<!-- "+this.toString()+" -->"}
130
+ });
131
+
132
+ MathJax.Hub.Register.StartupHook("TeX mathchoice Ready",function () {
133
+ MML.TeXmathchoice.Augment({
134
+ toMathML: function (space) {return this.Core().toMathML(space)}
135
+ });
136
+ });
137
+
138
+ });
139
+
140
+ MathJax.Ajax.loadComplete("[MathJax]/extensions/toMathML.js");
@@ -0,0 +1,1474 @@
1
+ /*************************************************************
2
+ *
3
+ * MathJax/jax/element/mml/jax.js
4
+ *
5
+ * Implements the MML ElementJax that holds the internal represetation
6
+ * of the mathematics on the page. Various InputJax will produce this
7
+ * format, and the OutputJax will display it in various formats.
8
+ *
9
+ * ---------------------------------------------------------------------
10
+ *
11
+ * Copyright (c) 2009 Design Science, Inc.
12
+ *
13
+ * Licensed under the Apache License, Version 2.0 (the "License");
14
+ * you may not use this file except in compliance with the License.
15
+ * You may obtain a copy of the License at
16
+ *
17
+ * http://www.apache.org/licenses/LICENSE-2.0
18
+ *
19
+ * Unless required by applicable law or agreed to in writing, software
20
+ * distributed under the License is distributed on an "AS IS" BASIS,
21
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22
+ * See the License for the specific language governing permissions and
23
+ * limitations under the License.
24
+ */
25
+
26
+ MathJax.ElementJax.mml = MathJax.ElementJax.Subclass({
27
+ mimeType: "jax/mml"
28
+ },{
29
+ name: "mml",
30
+ version: 1.0,
31
+ directory: MathJax.ElementJax.directory + "/mml",
32
+ extensionDir: MathJax.ElementJax.extensionDir + "/mml",
33
+ optableDir: MathJax.ElementJax.directory + "/mml/optable"
34
+ });
35
+
36
+ MathJax.ElementJax.mml.Augment({
37
+ Init: function () {
38
+ if (arguments.length === 1 && arguments[0].type === "math") {this.root = arguments[0]}
39
+ else {this.root = MathJax.ElementJax.mml.math.apply(this,arguments)}
40
+ if (this.root.mode) {
41
+ if (!this.root.display && this.root.mode === "display") {this.root.display = "block"}
42
+ delete this.root.mode;
43
+ }
44
+ }
45
+ },{
46
+ INHERIT: "_inherit_",
47
+ AUTO: "_auto_",
48
+ SIZE: {
49
+ INFINITY: "infinity",
50
+ SMALL: "small",
51
+ NORMAL: "normal",
52
+ BIG: "big"
53
+ },
54
+ COLOR: {
55
+ TRANSPARENT: "transparent"
56
+ },
57
+ VARIANT: {
58
+ NORMAL: "normal",
59
+ BOLD: "bold",
60
+ ITALIC: "italic",
61
+ BOLDITALIC: "bold-italic",
62
+ DOUBLESTRUCK: "double-struck",
63
+ FRAKTUR: "fraktur",
64
+ BOLDFRAKTUR: "bold-fraktur",
65
+ SCRIPT: "script",
66
+ BOLDSCRIPT: "bold-script",
67
+ SANSSERIF: "sans-serif",
68
+ BOLDSANSSERIF: "bold-sans-serif",
69
+ SANSSERIFITALIC: "sans-serif-italic",
70
+ SANSSERIFBOLDITALIC: "sans-serif-bold-italic",
71
+ MONOSPACE: "monospace",
72
+ INITIAL: "inital",
73
+ TAILED: "tailed",
74
+ LOOPED: "looped",
75
+ STRETCHED: "stretched",
76
+ CALIGRAPHIC: "-tex-caligraphic",
77
+ OLDSTYLE: "-tex-oldstyle"
78
+ },
79
+ FORM: {
80
+ PREFIX: "prefix",
81
+ INFIX: "infix",
82
+ POSTFIX: "postfix"
83
+ },
84
+ LINEBREAK: {
85
+ AUTO: "auto",
86
+ NEWLINE: "newline",
87
+ NOBREAK: "nobreak",
88
+ GOODBREAK: "goodbreak",
89
+ BADBREAK: "badbreak"
90
+ },
91
+ LINEBREAKSTYLE: {
92
+ BEFORE: "before",
93
+ AFTER: "after",
94
+ DUPLICATE: "duplicate",
95
+ INFIXLINBREAKSTYLE: "infixlinebreakstyle"
96
+ },
97
+ INDENTSTYLE: {
98
+ LEFT: "left",
99
+ CENTER: "center",
100
+ RIGHT: "right",
101
+ AUTO: "auto",
102
+ ID: "id",
103
+ INDENTSTYLE: "indentstyle"
104
+ },
105
+ INDENTOFFSET: {
106
+ INDENTOFFSET: "indentoffset"
107
+ },
108
+ LINETHICKNESS: {
109
+ THIN: "thin",
110
+ MEDIUM: "medium",
111
+ THICK: "thick"
112
+ },
113
+ NOTATION: {
114
+ LONGDIV: "longdiv",
115
+ ACTUARIAL: "actuarial",
116
+ RADICAL: "radical",
117
+ BOX: "box",
118
+ ROUNDEDBOX: "roundedbox",
119
+ CIRCLE: "circle",
120
+ LEFT: "left",
121
+ RIGHT: "right",
122
+ TOP: "top",
123
+ BOTTOM: "bottom",
124
+ UPDIAGONALSTRIKE: "updiagonalstrike",
125
+ DOWNDIAGONALSTRIKE: "downdiagonalstrike",
126
+ VERTICALSTRIKE: "verticalstrike",
127
+ HORIZONTALSTRIKE: "horizontalstrike",
128
+ MADRUWB: "madruwb"
129
+ },
130
+ ALIGN: {
131
+ TOP: "top",
132
+ BOTTOM: "bottom",
133
+ CENTER: "center",
134
+ BASELINE: "baseline",
135
+ AXIS: "axis",
136
+ LEFT: "left",
137
+ RIGHT: "right"
138
+ },
139
+ LINES: {
140
+ NONE: "none",
141
+ SOLID: "solid",
142
+ DASHED: "dashed"
143
+ },
144
+ SIDE: {
145
+ LEFT: "left",
146
+ RIGHT: "right",
147
+ LEFTOVERLAP: "leftoverlap",
148
+ RIGHTOVERLAP: "rightoverlap"
149
+ },
150
+ WIDTH: {
151
+ AUTO: "auto",
152
+ FIT: "fit"
153
+ },
154
+ ACTIONTYPE: {
155
+ TOGGLE: "toggle",
156
+ STATUSLINE: "statusline",
157
+ TOOLTIP: "tooltip",
158
+ INPUT: "input"
159
+ },
160
+ LENGTH: {
161
+ VERYVERYTHINMATHSPACE: "veryverythinmathspace",
162
+ VERYTHINMATHSPACE: "verythinmathspace",
163
+ THINMATHSPACE: "thinmathspace",
164
+ MEDIUMMATHSPACE: "mediummathspace",
165
+ THICKMATHSPACE: "thickmathspace",
166
+ VERYTHICKMATHSPACE: "verythickmathspace",
167
+ VERYVERYTHICKMATHSPACE: "veryverythickmathspace",
168
+ NEGATIVEVERYVERYTHINMATHSPACE: "negativeveryverythinmathspace",
169
+ NEGATIVEVERYTHINMATHSPACE: "negativeverythinmathspace",
170
+ NEGATIVETHINMATHSPACE: "negativethinmathspace",
171
+ NEGATIVEMEDIUMMATHSPACE: "negativemediummathspace",
172
+ NEGATIVETHICKMATHSPACE: "negativethickmathspace",
173
+ NEGATIVEVERYTHICKMATHSPACE: "negativeverythickmathspace",
174
+ NEGATIVEVERYVERYTHICKMATHSPACE: "negativeveryverythickmathspace"
175
+ },
176
+ OVERFLOW: {
177
+ LINBREAK: "linebreak",
178
+ SCROLL: "scroll",
179
+ ELIDE: "elide",
180
+ TRUNCATE: "truncate",
181
+ SCALE: "scale"
182
+ },
183
+ UNIT: {
184
+ EM: "em",
185
+ EX: "ex",
186
+ PX: "px",
187
+ IN: "in",
188
+ CM: "cm",
189
+ MM: "mm",
190
+ PT: "pt",
191
+ PC: "pc"
192
+ },
193
+ TEXCLASS: {
194
+ ORD: 0,
195
+ OP: 1,
196
+ BIN: 2,
197
+ REL: 3,
198
+ OPEN: 4,
199
+ CLOSE: 5,
200
+ PUNCT: 6,
201
+ INNER: 7,
202
+ VCENTER: 8,
203
+ NONE: -1
204
+ },
205
+ PLANE1: String.fromCharCode(0xD835)
206
+ });
207
+
208
+ (function (MML) {
209
+ var FALSE = false; var TRUE = true;
210
+
211
+ MML.mbase = MathJax.Object.Subclass({
212
+ type: "base", isToken: FALSE,
213
+ defaults: {
214
+ mathbackground: MML.INHERIT,
215
+ mathcolor: MML.INHERIT
216
+ },
217
+ noInherit: {},
218
+
219
+ Init: function () {
220
+ this.data = [];
221
+ if (this.inferRow && !(arguments.length === 1 && arguments[0].inferred))
222
+ {this.Append(MML.mrow().With({inferred: TRUE}))}
223
+ this.Append.apply(this,arguments);
224
+ },
225
+ With: function (def) {
226
+ for (var id in def) {if (def.hasOwnProperty(id)) {this[id] = def[id]}}
227
+ return this;
228
+ },
229
+ Append: function () {
230
+ if (this.inferRow && this.data.length) {
231
+ this.data[0].Append.apply(this.data[0],arguments);
232
+ } else {
233
+ for (var i = 0, m = arguments.length; i < m; i++)
234
+ {this.SetData(this.data.length,arguments[i])}
235
+ }
236
+ },
237
+ SetData: function (i,item) {
238
+ if (item != null) {
239
+ if (!(item instanceof MML.mbase))
240
+ {item = (this.isToken ? MML.chars(item) : MML.mtext(item))}
241
+ item.parent = this;
242
+ item.setInherit(this.inheritFromMe ? this : this.inherit);
243
+ }
244
+ this.data[i] = item;
245
+ },
246
+ Parent: function () {
247
+ var parent = this.parent;
248
+ while (parent && parent.inferred) {parent = parent.parent}
249
+ return parent;
250
+ },
251
+ Get: function (name,nodefault) {
252
+ if (typeof(this[name]) !== "undefined") {return this[name]}
253
+ // FIXME: should cache these values and get from cache
254
+ // (clear cache when appended to a new object?)
255
+ var parent = this.Parent();
256
+ if (parent && parent["adjustChild_"+name] != null)
257
+ {return (parent["adjustChild_"+name])(parent.childPosition(this))}
258
+ var obj = this.inherit; var root = obj;
259
+ while (obj) {
260
+ if (typeof(obj[name]) !== "undefined") {
261
+ var noInherit = obj.noInherit[this.type];
262
+ if (!(noInherit && noInherit[name])) {return obj[name]}
263
+ }
264
+ root = obj; obj = obj.inherit;
265
+ }
266
+ if (!nodefault) {
267
+ if (this.defaults[name] === MML.AUTO) {return this.autoDefault(name)}
268
+ if (this.defaults[name] !== MML.INHERIT && this.defaults[name] != null)
269
+ {return this.defaults[name]}
270
+ if (root) {return root.defaults[name]}
271
+ }
272
+ return null;
273
+ },
274
+ hasValue: function (name) {return (this.Get(name,true) != null)},
275
+ getValues: function () {
276
+ var values = {};
277
+ for (var i = 0, m = arguments.length; i < m; i++)
278
+ {values[arguments[i]] = this.Get(arguments[i])}
279
+ return values;
280
+ },
281
+ adjustChild_scriptlevel: function (i) {return this.Get("scriptlevel")}, // always inherit from parent
282
+ adjustChild_displaystyle: function (i) {return this.Get("displaystyle")}, // always inherit from parent
283
+ adjustChild_texprimestyle: function (i) {return this.Get("texprimestyle")}, // always inherit from parent
284
+ childPosition: function (child) {
285
+ if (child.parent.inferred) {child = child.parent}
286
+ for (var i = 0, m = this.data.length; i < m; i++) {if (this.data[i] === child) {return i}}
287
+ return null;
288
+ },
289
+ setInherit: function (obj) {
290
+ if (obj !== this.inherit && this.inherit == null) {
291
+ this.inherit = obj;
292
+ for (var i = 0, m = this.data.length; i < m; i++) {
293
+ if (this.data[i] && this.data[i].setInherit) {this.data[i].setInherit(obj)}
294
+ }
295
+ }
296
+ },
297
+ setTeXclass: function (prev) {
298
+ this.getPrevClass(prev);
299
+ return (typeof(this.texClass) !== "undefined" ? this : prev);
300
+ },
301
+ getPrevClass: function (prev) {
302
+ if (prev) {
303
+ this.prevClass = prev.Get("texClass");
304
+ this.prevLevel = prev.Get("scriptlevel");
305
+ }
306
+ },
307
+ updateTeXclass: function (core) {
308
+ if (core) {
309
+ this.prevClass = core.prevClass; delete core.prevClass;
310
+ this.prevLevel = core.prevLevel; delete core.prevLevel;
311
+ this.texClass = core.Get("texClass");
312
+ }
313
+ },
314
+ texSpacing: function () {
315
+ var prev = (this.prevClass != null ? this.prevClass : MML.TEXCLASS.NONE);
316
+ var tex = (this.Get("texClass") || MML.TEXCLASS.ORD);
317
+ if (prev === MML.TEXCLASS.NONE || tex === MML.TEXCLASS.NONE) {return ""}
318
+ if (prev === MML.TEXCLASS.VCENTER) {prev = MML.TEXCLASS.ORD}
319
+ if (tex === MML.TEXCLASS.VCENTER) {tex = MML.TEXCLASS.ORD}
320
+ var space = this.TEXSPACE[prev][tex];
321
+ if (this.prevLevel > 0 && this.Get("scriptlevel") > 0 && space >= 0) {return ""}
322
+ return this.TEXSPACELENGTH[Math.abs(space)];
323
+ },
324
+ TEXSPACELENGTH:[
325
+ "",
326
+ MML.LENGTH.THINMATHSPACE,
327
+ MML.LENGTH.MEDIUMMATHSPACE,
328
+ MML.LENGTH.THICKMATHSPACE
329
+ ],
330
+ // See TeXBook Chapter 18 (p. 170)
331
+ TEXSPACE: [
332
+ [ 0,-1, 2, 3, 0, 0, 0, 1], // ORD
333
+ [-1,-1, 0, 3, 0, 0, 0, 1], // OP
334
+ [ 2, 2, 0, 0, 2, 0, 0, 2], // BIN
335
+ [ 3, 3, 0, 0, 3, 0, 0, 3], // REL
336
+ [ 0, 0, 0, 0, 0, 0, 0, 0], // OPEN
337
+ [ 0,-1, 2, 3, 0, 0, 0, 1], // CLOSE
338
+ [ 1, 1, 0, 1, 1, 1, 1, 1], // PUNCT
339
+ [ 1,-1, 2, 3, 1, 0, 1, 1] // INNER
340
+ ],
341
+ autoDefault: function (name) {return ""},
342
+ isSpacelike: function () {return FALSE},
343
+ isEmbellished: function () {return FALSE},
344
+ Core: function () {return this},
345
+ CoreMO: function () {return this},
346
+ array: function () {if (this.inferred) {return this.data} else {return [this]}},
347
+ toString: function () {return this.type+"("+this.data.join(",")+")"}
348
+ },{
349
+ childrenSpacelike: function () {
350
+ for (var i = 0; i < this.data.length; i++) {
351
+ if (!this.data[i].isSpacelike()) {return FALSE}
352
+ }
353
+ return TRUE;
354
+ },
355
+ childEmbellished: function () {
356
+ if (this.data.length === 0) {return FALSE}
357
+ return this.data[0].isEmbellished();
358
+ },
359
+ childCore: function () {return this.data[0]},
360
+ childCoreMO: function () {return this.data[0].CoreMO()},
361
+ setChildTeXclass: function (prev) {
362
+ prev = this.data[0].setTeXclass(prev);
363
+ this.updateTeXclass(this.data[0]);
364
+ return prev;
365
+ },
366
+ setBaseTeXclasses: function (prev) {
367
+ this.getPrevClass(prev); this.texClass = null;
368
+ if (this.isEmbellished()) {
369
+ prev = this.data[0].setTeXclass(prev);
370
+ this.updateTeXclass(this.Core());
371
+ } else {this.data[0].setTeXclass(); prev = this}
372
+ for (var i = 1, m = this.data.length; i < m; i++)
373
+ {if (this.data[i]) {this.data[i].setTeXclass()}}
374
+ return prev;
375
+ },
376
+ setSeparateTeXclasses: function (prev) {
377
+ this.getPrevClass(prev);
378
+ for (var i = 0, m = this.data.length; i < m; i++)
379
+ {if (this.data[i]) {this.data[i].setTeXclass()}}
380
+ if (this.isEmbellished()) {this.updateTeXclass(this.Core())}
381
+ return this;
382
+ }
383
+ });
384
+
385
+ MML.mi = MML.mbase.Subclass({
386
+ type: "mi", isToken: TRUE,
387
+ texClass: MML.TEXCLASS.ORD,
388
+ defaults: {
389
+ mathvariant: MML.AUTO,
390
+ mathsize: MML.INHERIT,
391
+ mathbackground: MML.INHERIT,
392
+ mathcolor: MML.INHERIT
393
+ },
394
+ autoDefault: function (name) {
395
+ if (name === "mathvariant") {
396
+ var mi = (this.data[0]||"").toString();
397
+ return (mi.length === 1 || (mi.length === 2 && mi.charCodeAt(0) === this.PLANE1) ?
398
+ MML.VARIANT.ITALIC : MML.VARIANT.NORMAL);
399
+ }
400
+ return "";
401
+ }
402
+ });
403
+
404
+ MML.mn = MML.mbase.Subclass({
405
+ type: "mn", isToken: TRUE,
406
+ texClass: MML.TEXCLASS.ORD,
407
+ defaults: {
408
+ mathvariant: MML.INHERIT,
409
+ mathsize: MML.INHERIT,
410
+ mathbackground: MML.INHERIT,
411
+ mathcolor: MML.INHERIT
412
+ }
413
+ });
414
+
415
+ MML.mo = MML.mbase.Subclass({
416
+ type: "mo", isToken: TRUE,
417
+ defaults: {
418
+ mathvariant: MML.INHERIT,
419
+ mathsize: MML.INHERIT,
420
+ mathbackground: MML.INHERIT,
421
+ mathcolor: MML.INHERIT,
422
+ form: MML.AUTO,
423
+ fence: MML.AUTO,
424
+ separator: MML.AUTO,
425
+ lspace: MML.AUTO,
426
+ rspace: MML.AUTO,
427
+ stretchy: MML.AUTO,
428
+ symmetric: MML.AUTO,
429
+ maxsize: MML.AUTO,
430
+ minsize: MML.AUTO,
431
+ largeop: MML.AUTO,
432
+ movablelimits: MML.AUTO,
433
+ accent: MML.AUTO,
434
+ linebreak: MML.AUTO,
435
+ lineleading: MML.INHERIT,
436
+ linebreakstyle: MML.AUTO,
437
+ linebreakmultchar: MML.INHERIT,
438
+ indentstyle: MML.INHERIT,
439
+ indentoffset: MML.INHERIT,
440
+ indenttarget: MML.INHERIT,
441
+ indentstylefirst: MML.INHERIT,
442
+ indentoffsetfirst: MML.INHERIT,
443
+ indentstylelast: MML.INHERIT,
444
+ indentoffsetlast: MML.INHERIT,
445
+ texClass: MML.AUTO
446
+ },
447
+ defaultDef: {
448
+ form: MML.FORM.INFIX,
449
+ fence: FALSE,
450
+ separator: FALSE,
451
+ lspace: MML.LENGTH.THICKMATHSPACE,
452
+ rspace: MML.LENGTH.THICKMATHSPACE,
453
+ stretchy: FALSE,
454
+ symmetric: TRUE,
455
+ maxsize: MML.SIZE.INFINITY,
456
+ minsize: '0em', //'1em',
457
+ largeop: FALSE,
458
+ movablelimits: FALSE,
459
+ accent: FALSE,
460
+ texClass: MML.TEXCLASS.REL // for MML, but TeX sets ORD explicitly
461
+ },
462
+ SPACE_ATTR: {lspace: 0x01, rspace: 0x02, form: 0x04},
463
+ useMMLspacing: 0x07,
464
+ autoDefault: function (name,nodefault) {
465
+ var def = this.def;
466
+ if (!def) {
467
+ if (name === "form") {this.useMMLspacing &= ~this.SPACE_ATTR.form; return this.getForm()}
468
+ var mo = this.data.join("");
469
+ var forms = [this.Get("form"),MML.FORM.INFIX,MML.FORM.POSTFIX,MML.FORM.PREFIX];
470
+ for (var i = 0, m = forms.length; i < m; i++) {
471
+ var data = this.OPTABLE[forms[i]][mo];
472
+ if (data) {def = this.makeDef(data); break}
473
+ }
474
+ if (!def) {def = this.CheckRange(mo)}
475
+ if (!def && nodefault) {def = {}} else {
476
+ if (!def) {def = MathJax.Hub.Insert({},this.defaultDef)}
477
+ def.form = forms[0];
478
+ this.def = def;
479
+ }
480
+ }
481
+ this.useMMLspacing &= ~(this.SPACE_ATTR[name] || 0);
482
+ if (def[name] != null) {return def[name]}
483
+ else if (!nodefault) {return this.defaultDef[name]}
484
+ return "";
485
+ },
486
+ CheckRange: function (mo) {
487
+ var n = mo.charCodeAt(0);
488
+ if (mo.charAt(0) === MML.PLANE1) {n = mo.charCodeAt(1) + 0x1D400 - 0xDC00}
489
+ for (var i = 0, m = this.RANGES.length; i < m && this.RANGES[i][0] <= n; i++) {
490
+ if (n <= this.RANGES[i][1]) {
491
+ if (this.RANGES[i][3]) {
492
+ var file = MML.optableDir+"/"+this.RANGES[i][3]+".js";
493
+ this.RANGES[i][3] = null;
494
+ MathJax.Hub.RestartAfter(MathJax.Ajax.Require(file));
495
+ }
496
+ var data = (["ORD","OP","BIN","REL","OPEN","CLOSE","PUNCT","INNER"])[this.RANGES[i][2]];
497
+ data = this.OPTABLE.infix[mo] = MML.mo.OPTYPES[data === "BIN" ? "BIN3" : data];
498
+ return this.makeDef(data);
499
+ }
500
+ }
501
+ return null;
502
+ },
503
+ makeDef: function (data) {
504
+ if (data[2] == null) {data[2] = this.defaultDef.texClass}
505
+ if (!data[3]) {data[3] = {}}
506
+ var def = MathJax.Hub.Insert({},data[3]);
507
+ def.lspace = this.SPACE[data[0]]; def.rspace = this.SPACE[data[1]];
508
+ def.texClass = data[2];
509
+ return def;
510
+ },
511
+ getForm: function () {
512
+ var i, core = this, parent = this.parent, Parent = this.Parent();
513
+ while (Parent && Parent.isEmbellished())
514
+ {core = parent; parent = Parent.parent; Parent = Parent.Parent()}
515
+ if (parent && parent.type === "mrow" && parent.NonSpaceLength() !== 1) {
516
+ if (parent.FirstNonSpace() === core) {return MML.FORM.PREFIX}
517
+ if (parent.LastNonSpace() === core) {return MML.FORM.POSTFIX}
518
+ }
519
+ return MML.FORM.INFIX;
520
+ },
521
+ isEmbellished: function () {return TRUE},
522
+ setTeXclass: function (prev) {
523
+ this.getValues("lspace","rspace"); // sets useMMLspacing
524
+ if (this.useMMLspacing) {this.texClass = MML.TEXCLASS.NONE; return this}
525
+ this.texClass = this.Get("texClass");
526
+ if (prev) {this.prevClass = prev.texClass || MML.TEXCLASS.ORD; this.prevLevel = prev.Get("scriptlevel")}
527
+ else {this.prevClass = MML.TEXCLASS.NONE}
528
+ if (this.texClass === MML.TEXCLASS.BIN &&
529
+ (this.prevClass === MML.TEXCLASS.NONE ||
530
+ this.prevClass === MML.TEXCLASS.BIN ||
531
+ this.prevClass === MML.TEXCLASS.OP ||
532
+ this.prevClass === MML.TEXCLASS.REL ||
533
+ this.prevClass === MML.TEXCLASS.OPEN ||
534
+ this.prevClass === MML.TEXCLASS.PUNCT)) {
535
+ this.texClass = MML.TEXCLASS.ORD;
536
+ } else if (this.prevClass === MML.TEXCLASS.BIN &&
537
+ (this.texClass === MML.TEXCLASS.REL ||
538
+ this.texClass === MML.TEXCLASS.CLOSE ||
539
+ this.texClass === MML.TEXCLASS.PUNCT)) {
540
+ prev.texClass = this.prevClass = MML.TEXCLASS.ORD;
541
+ }
542
+ return this;
543
+ }
544
+ });
545
+
546
+ MML.mtext = MML.mbase.Subclass({
547
+ type: "mtext", isToken: TRUE,
548
+ texClass: MML.TEXCLASS.ORD,
549
+ defaults: {
550
+ mathvariant: MML.INHERIT,
551
+ mathsize: MML.INHERIT,
552
+ mathbackground: MML.INHERIT,
553
+ mathcolor: MML.INHERIT
554
+ }
555
+ });
556
+
557
+ MML.mspace = MML.mbase.Subclass({
558
+ type: "mspace", isToken: TRUE,
559
+ isSpacelike: function () {return TRUE},
560
+ defaults: {
561
+ mathbackground: MML.INHERIT,
562
+ mathcolor: MML.INHERIT,
563
+ width: "0em",
564
+ height: "0ex",
565
+ depth: "0ex",
566
+ linebreak: MML.LINEBREAK.AUTO
567
+ }
568
+ });
569
+
570
+ MML.ms = MML.mbase.Subclass({
571
+ type: "ms", isToken: TRUE,
572
+ texClass: MML.TEXCLASS.ORD,
573
+ defaults: {
574
+ mathvariant: MML.INHERIT,
575
+ mathsize: MML.INHERIT,
576
+ mathbackground: MML.INHERIT,
577
+ mathcolor: MML.INHERIT,
578
+ lquote: '"',
579
+ rquote: '"'
580
+ }
581
+ });
582
+
583
+ MML.mglyph = MML.mbase.Subclass({
584
+ type: "mglyph", isToken: TRUE,
585
+ texClass: MML.TEXCLASS.ORD,
586
+ defaults: {
587
+ mathbackground: MML.INHERIT,
588
+ mathcolor: MML.INHERIT,
589
+ alt: "",
590
+ src: "",
591
+ width: MML.AUTO,
592
+ height: MML.AUTO,
593
+ valign: "0em"
594
+ }
595
+ });
596
+
597
+ MML.mrow = MML.mbase.Subclass({
598
+ type: "mrow",
599
+ isSpacelike: MML.mbase.childrenSpacelike,
600
+ inferred: FALSE,
601
+ isEmbellished: function () {
602
+ var isEmbellished = FALSE;
603
+ for (var i = 0, m = this.data.length; i < m; i++) {
604
+ if (this.data[i] == null) continue;
605
+ if (this.data[i].isEmbellished()) {
606
+ if (isEmbellished) {return FALSE}
607
+ isEmbellished = TRUE; this.core = i;
608
+ } else if (!this.data[i].isSpacelike()) {return FALSE}
609
+ }
610
+ return isEmbellished;
611
+ },
612
+ NonSpaceLength: function () {
613
+ var n = 0;
614
+ for (var i = 0, m = this.data.length; i < m; i++) {if (!this.data[i].isSpacelike()) {n++}}
615
+ return n;
616
+ },
617
+ FirstNonSpace: function () {
618
+ for (var i = 0, m = this.data.length; i < m; i++)
619
+ {if (!this.data[i].isSpacelike()) {return this.data[i]}}
620
+ return null;
621
+ },
622
+ LastNonSpace: function () {
623
+ for (var i = this.data.length-1; i >= 0; i--)
624
+ {if (!this.data[i].isSpacelike()) {return this.data[i]}}
625
+ return null;
626
+ },
627
+ Core: function () {
628
+ if (!(this.isEmbellished()) || typeof(this.core) === "undefined") {return this}
629
+ return this.data[this.core];
630
+ },
631
+ CoreMO: function () {
632
+ if (!(this.isEmbellished()) || typeof(this.core) === "undefined") {return this}
633
+ return this.data[this.core].CoreMO();
634
+ },
635
+ toString: function () {
636
+ if (this.inferred) {return '[' + this.data.join(',') + ']'}
637
+ return this.SUPER(arguments).toString.call(this);
638
+ },
639
+ setTeXclass: function (prev) {
640
+ for (var i = 0, m = this.data.length; i < m; i++)
641
+ {if (this.data[i]) {prev = this.data[i].setTeXclass(prev)}}
642
+ if (this.data[0]) {this.updateTeXclass(this.data[0])}
643
+ return prev;
644
+ }
645
+ });
646
+
647
+ MML.mfrac = MML.mbase.Subclass({
648
+ type: "mfrac", num: 0, den: 1,
649
+ texClass: MML.TEXCLASS.INNER,
650
+ isEmbellished: MML.mbase.childEmbellished,
651
+ Core: MML.mbase.childCore,
652
+ CoreMO: MML.mbase.childCoreMO,
653
+ defaults: {
654
+ mathbackground: MML.INHERIT,
655
+ mathcolor: MML.INHERIT,
656
+ linethickness: MML.LINETHICKNESS.MEDIUM,
657
+ numalign: MML.ALIGN.CENTER,
658
+ denomalign: MML.ALIGN.CENTER,
659
+ bevelled: FALSE
660
+ },
661
+ adjustChild_displaystyle: function (n) {return FALSE},
662
+ adjustChild_scriptlevel: function (n) {
663
+ var level = this.Get("scriptlevel");
664
+ if (!this.Get("displaystyle") || level > 0) {level++}
665
+ return level;
666
+ },
667
+ adjustChild_texprimestyle: function (n) {
668
+ if (n == this.den) {return true}
669
+ return this.Get("texprimestyle");
670
+ },
671
+ setTeXclass: MML.mbase.setSeparateTeXclasses
672
+ });
673
+
674
+ MML.msqrt = MML.mbase.Subclass({
675
+ type: "msqrt",
676
+ inferRow: TRUE,
677
+ texClass: MML.TEXCLASS.ORD,
678
+ setTeXclass: MML.mbase.setSeparateTeXclasses,
679
+ adjustChild_texprimestyle: function (n) {return TRUE}
680
+ });
681
+
682
+ MML.mroot = MML.mbase.Subclass({
683
+ type: "mroot",
684
+ texClass: MML.TEXCLASS.ORD,
685
+ adjustChild_displaystyle: function (n) {
686
+ if (n === 1) {return FALSE}
687
+ return this.Get("displaystyle");
688
+ },
689
+ adjustChild_scriptlevel: function (n) {
690
+ var level = this.Get("scriptlevel");
691
+ if (n === 1) {level += 2}
692
+ return level;
693
+ },
694
+ adjustChild_texprimestyle: function (n) {
695
+ if (n === 0) {return TRUE};
696
+ return this.Get("texprimestyle");
697
+ },
698
+ setTeXclass: MML.mbase.setSeparateTeXclasses
699
+ });
700
+
701
+ MML.mstyle = MML.mbase.Subclass({
702
+ type: "mstyle",
703
+ isSpacelike: MML.mbase.childrenSpacelike,
704
+ isEmbellished: MML.mbase.childEmbellished,
705
+ Core: MML.mbase.childCore,
706
+ CoreMO: MML.mbase.childCoreMO,
707
+ inferRow: TRUE,
708
+ defaults: {
709
+ scriptlevel: MML.INHERIT,
710
+ displaystyle: MML.INHERIT,
711
+ scriptsizemultiplier: Math.sqrt(1/2),
712
+ scriptminsize: "8pt",
713
+ mathbackground: MML.INHERIT,
714
+ mathcolor: MML.INHERIT,
715
+ infixlinebreakstyle: MML.LINEBREAKSTYLE.BEFORE,
716
+ decimalseparator: "."
717
+ },
718
+ adjustChild_scriptlevel: function (n) {
719
+ var level = this.scriptlevel;
720
+ if (level == null) {
721
+ level = this.Get("scriptlevel");
722
+ } else if (String(level).match(/^ *[-+]/)) {
723
+ delete this.scriptlevel;
724
+ var LEVEL = this.Get("scriptlevel");
725
+ this.scriptlevel = level;
726
+ level = LEVEL + parseInt(level);
727
+ }
728
+ return level;
729
+ },
730
+ inheritFromMe: TRUE,
731
+ noInherit: {
732
+ mpadded: {width: TRUE, height: TRUE, depth: TRUE, lspace: TRUE, voffset: TRUE},
733
+ mtable: {width: TRUE, height: TRUE, depth: TRUE}
734
+ },
735
+ setTeXclass: MML.mbase.setChildTeXclass
736
+ });
737
+
738
+ MML.merror = MML.mbase.Subclass({
739
+ type: "merror",
740
+ inferRow: TRUE,
741
+ texClass: MML.TEXCLASS.ORD
742
+ });
743
+
744
+ MML.mpadded = MML.mbase.Subclass({
745
+ type: "mpadded",
746
+ inferRow: TRUE,
747
+ isSpacelike: MML.mbase.childrenSpacelike,
748
+ isEmbellished: MML.mbase.childEmbellished,
749
+ Core: MML.mbase.childCore,
750
+ CoreMO: MML.mbase.childCoreMO,
751
+ defaults: {
752
+ mathbackground: MML.INHERIT,
753
+ mathcolor: MML.INHERIT,
754
+ width: "",
755
+ height: "",
756
+ depth: "",
757
+ lspace: 0,
758
+ voffset: 0
759
+ },
760
+ setTeXclass: MML.mbase.setChildTeXclass
761
+ });
762
+
763
+ MML.mphantom = MML.mbase.Subclass({
764
+ type: "mphantom",
765
+ texClass: MML.TEXCLASS.ORD,
766
+ inferRow: TRUE,
767
+ isSpacelike: MML.mbase.childrenSpacelike,
768
+ isEmbellished: MML.mbase.childEmbellished,
769
+ Core: MML.mbase.childCore,
770
+ CoreMO: MML.mbase.childCoreMO,
771
+ setTeXclass: MML.mbase.setChildTeXclass
772
+ });
773
+
774
+ MML.mfenced = MML.mbase.Subclass({
775
+ type: "mfenced",
776
+ defaults: {
777
+ mathbackground: MML.INHERIT,
778
+ mathcolor: MML.INHERIT,
779
+ open: '(',
780
+ close: ')',
781
+ separators: ','
782
+ },
783
+ texClass: MML.TEXCLASS.OPEN,
784
+ setTeXclass: function (prev) {
785
+ this.getPrevClass(prev);
786
+ var values = this.getValues("open","close","separators");
787
+ values.open = values.open.replace(/[ \t\n\r]/g,"");
788
+ values.close = values.close.replace(/[ \t\n\r]/g,"");
789
+ values.separators = values.separators.replace(/[ \t\n\r]/g,"");
790
+ // create a fake node for the open item
791
+ if (values.open !== "") {
792
+ this.SetData("open",MML.mo(values.open).With({stretchy:true, texClass:MML.TEXCLASS.OPEN}));
793
+ prev = this.data.open.setTeXclass(prev);
794
+ }
795
+ // get the separators
796
+ if (values.separators !== "") {
797
+ while (values.separators.length < this.data.length)
798
+ {values.separators += values.separators.charAt(values.separators.length-1)}
799
+ }
800
+ // handle the first item, if any
801
+ if (this.data[0]) {prev = this.data[0].setTeXclass(prev)}
802
+ // add fake nodes for separators and handle the following item
803
+ for (var i = 1, m = this.data.length; i < m; i++) {
804
+ if (this.data[i]) {
805
+ if (values.separators !== "") {
806
+ this.SetData("sep"+i,MML.mo(values.separators.charAt(i-1)));
807
+ prev = this.data["sep"+i].setTeXclass(prev);
808
+ }
809
+ prev = this.data[i].setTeXclass(prev);
810
+ }
811
+ }
812
+ // create fake node for the close item
813
+ if (values.close !== "") {
814
+ this.SetData("close",MML.mo(values.close).With({stretchy:true, texClass:MML.TEXCLASS.CLOSE}));
815
+ prev = this.data.close.setTeXclass(prev);
816
+ }
817
+ // get the data from the open item
818
+ this.updateTeXclass(this.data.open);
819
+ return prev;
820
+ }
821
+ });
822
+
823
+ MML.menclose = MML.mbase.Subclass({
824
+ type: "menclose",
825
+ inferRow: TRUE,
826
+ defaults: {
827
+ mathbackground: MML.INHERIT,
828
+ mathcolor: MML.INHERIT,
829
+ notation: MML.NOTATION.LONGDIV,
830
+ texClass: MML.TEXCLASS.ORD
831
+ },
832
+ setTeXclass: MML.mbase.setSeparateTeXclasses
833
+ });
834
+
835
+ MML.msubsup = MML.mbase.Subclass({
836
+ type: "msubsup", base: 0, sub: 1, sup: 2,
837
+ isEmbellished: MML.mbase.childEmbellished,
838
+ Core: MML.mbase.childCore,
839
+ CoreMO: MML.mbase.childCoreMO,
840
+ defaults: {
841
+ mathbackground: MML.INHERIT,
842
+ mathcolor: MML.INHERIT,
843
+ subscriptshift: "",
844
+ superscriptshift: "",
845
+ texClass: MML.AUTO
846
+ },
847
+ autoDefault: function (name) {
848
+ if (name === "texClass")
849
+ {return (this.isEmbellished() ? this.CoreMO().Get(name) : MML.TEXCLASS.ORD)}
850
+ return 0;
851
+ },
852
+ adjustChild_displaystyle: function (n) {
853
+ if (n > 0) {return FALSE}
854
+ return this.Get("displaystyle");
855
+ },
856
+ adjustChild_scriptlevel: function (n) {
857
+ var level = this.Get("scriptlevel");
858
+ if (n > 0) {level++}
859
+ return level;
860
+ },
861
+ adjustChild_texprimestyle: function (n) {
862
+ if (n === this.sub) {return TRUE}
863
+ return this.Get("texprimestyle");
864
+ },
865
+ setTeXclass: MML.mbase.setBaseTeXclasses
866
+ });
867
+
868
+ MML.msub = MML.msubsup.Subclass({type: "msub"});
869
+ MML.msup = MML.msubsup.Subclass({type: "msup", sub:2, sup:1});
870
+
871
+ MML.munderover = MML.mbase.Subclass({
872
+ type: "munderover",
873
+ base: 0, under: 1, over: 2, sub: 1, sup: 2,
874
+ ACCENTS: ["", "accentunder", "accent"],
875
+ isEmbellished: MML.mbase.childEmbellished,
876
+ Core: MML.mbase.childCore,
877
+ CoreMO: MML.mbase.childCoreMO,
878
+ defaults: {
879
+ mathbackground: MML.INHERIT,
880
+ mathcolor: MML.INHERIT,
881
+ accent: MML.AUTO,
882
+ accentunder: MML.AUTO,
883
+ align: MML.ALIGN.CENTER,
884
+ texClass: MML.AUTO,
885
+ subscriptshift: "", // when converted to msubsup by moveablelimits
886
+ superscriptshift: "" // when converted to msubsup by moveablelimits
887
+ },
888
+ autoDefault: function (name) {
889
+ if (name === "texClass")
890
+ {return (this.isEmbellished() ? this.CoreMO().Get(name) : MML.TEXCLASS.ORD)}
891
+ if (name === "accent" && this.data[this.over]) {return this.data[this.over].CoreMO().Get("accent")}
892
+ if (name === "accentunder" && this.data[this.under]) {return this.data[this.under].CoreMO().Get("accent")}
893
+ return FALSE;
894
+ },
895
+ adjustChild_displaystyle: function (n) {
896
+ if (n > 0) {return FALSE}
897
+ return this.Get("displaystyle");
898
+ },
899
+ adjustChild_scriptlevel: function (n) {
900
+ var level = this.Get("scriptlevel");
901
+ if (n == this.under && !this.Get("accentunder")) {level++}
902
+ if (n == this.over && !this.Get("accent")) {level++}
903
+ return level;
904
+ },
905
+ adjustChild_texprimestyle: function (n) {
906
+ if (n === this.base && this.data[this.over]) {return TRUE}
907
+ return this.Get("texprimestyle");
908
+ },
909
+ setTeXclass: MML.mbase.setBaseTeXclasses
910
+ });
911
+
912
+ MML.munder = MML.munderover.Subclass({type: "munder"});
913
+ MML.mover = MML.munderover.Subclass({
914
+ type: "mover", over: 1, under: 2, sup: 1, sub: 2,
915
+ ACCENTS: ["", "accent", "accentunder"]
916
+ });
917
+
918
+ MML.mmultiscripts = MML.mbase.Subclass({
919
+ type: "mmultiscripts",
920
+ isEmbellished: MML.mbase.childEmbellished,
921
+ Core: MML.mbase.childCore,
922
+ CoreMO: MML.mbase.childCoreMO,
923
+ defaults: {
924
+ mathbackground: MML.INHERIT,
925
+ mathcolor: MML.INHERIT,
926
+ subscriptshift: MML.AUTO,
927
+ superscriptshift: MML.AUTO,
928
+ texClass: MML.AUTO
929
+ },
930
+ autoDefault: function (name) {
931
+ if (name === "texClass")
932
+ {return (this.isEmbellished() ? this.CoreMO().Get(name) : MML.TEXCLASS.ORD)}
933
+ // compute this from size of children
934
+ return 0;
935
+ },
936
+ adjustChild_displaystyle: function (n) {
937
+ if (n > 0) {return FALSE}
938
+ return this.Get("displaystyle");
939
+ },
940
+ adjustChild_scriptlevel: function (n) {
941
+ var level = this.Get("scriptlevel");
942
+ if (n > 0) {level++}
943
+ return level;
944
+ },
945
+ adjustChild_texprimestyle: function (n) {return (n === this.base && this.data[this.over])},
946
+ setTeXclass: MML.mbase.setSeparateTeXclasses
947
+ });
948
+
949
+ MML.mtable = MML.mbase.Subclass({
950
+ type: "mtable",
951
+ defaults: {
952
+ mathbackground: MML.INHERIT,
953
+ mathcolor: MML.INHERIT,
954
+ align: MML.ALIGN.AXIS,
955
+ rowalign: MML.ALIGN.BASELINE,
956
+ columnalign: MML.ALIGN.CENTER,
957
+ groupalign: "{left}",
958
+ alignmentscope: TRUE,
959
+ columnwidth: MML.WIDTH.AUTO,
960
+ width: MML.WIDTH.AUTO,
961
+ rowspacing: "1ex",
962
+ columnspacing: ".8em",
963
+ rowlines: MML.LINES.NONE,
964
+ columnlines: MML.LINES.NONE,
965
+ frame: MML.LINES.NONE,
966
+ framespacing: "0.4em 0.5ex",
967
+ equalrows: FALSE,
968
+ equalcolumns: FALSE,
969
+ displaystyle: FALSE,
970
+ side: MML.SIDE.RIGHT,
971
+ minlabelspacing: "0.8em",
972
+ texClass: MML.TEXCLASS.ORD,
973
+ useHeight: 1
974
+ },
975
+ inheritFromMe: TRUE,
976
+ noInherit: {
977
+ mtable: {
978
+ align: TRUE, rowalign: TRUE, columnalign: TRUE, groupalign: TRUE,
979
+ alignmentscope: TRUE, columnwidth: TRUE, width: TRUE, rowspacing: TRUE,
980
+ columnspacing: TRUE, rowlines: TRUE, columnlines: TRUE, frame: TRUE,
981
+ framespacing: TRUE, equalrows: TRUE, equalcolumns: TRUE,
982
+ side: TRUE, minlabelspacing: TRUE, texClass: TRUE, useHeight: 1
983
+ }
984
+ },
985
+ setTeXclass: MML.mbase.setSeparateTeXclasses
986
+ });
987
+
988
+ MML.mtr = MML.mbase.Subclass({
989
+ type: "mtr",
990
+ defaults: {
991
+ mathbackground: MML.INHERIT,
992
+ mathcolor: MML.INHERIT,
993
+ rowalign: MML.INHERIT,
994
+ columnalign: MML.INHERIT,
995
+ groupalign: MML.INHERIT
996
+ },
997
+ inheritFromMe: TRUE,
998
+ noInherit: {
999
+ mrow: {rowalign: TRUE, columnalign: TRUE, groupalign: TRUE},
1000
+ mtable: {rowalign: TRUE, columnalign: TRUE, groupalign: TRUE}
1001
+ },
1002
+ setTeXclass: MML.mbase.setSeparateTeXclasses
1003
+ });
1004
+
1005
+ MML.mtd = MML.mbase.Subclass({
1006
+ type: "mtd",
1007
+ inferRow: TRUE,
1008
+ defaults: {
1009
+ mathbackground: MML.INHERIT,
1010
+ mathcolor: MML.INHERIT,
1011
+ rowspan: 1,
1012
+ columnspan: 1,
1013
+ rowalign: MML.INHERIT,
1014
+ columnalign: MML.INHERIT,
1015
+ groupalign: MML.INHERIT
1016
+ },
1017
+ setTeXclass: MML.mbase.setSeparateTeXclasses
1018
+ });
1019
+
1020
+ MML.maligngroup = MML.mbase.Subclass({
1021
+ type: "malign",
1022
+ isSpacelike: function () {return TRUE},
1023
+ defaults: {
1024
+ mathbackground: MML.INHERIT,
1025
+ mathcolor: MML.INHERIT,
1026
+ groupalign: MML.INHERIT
1027
+ },
1028
+ inheritFromMe: TRUE,
1029
+ noInherit: {
1030
+ mrow: {groupalign: TRUE},
1031
+ mtable: {groupalign: TRUE}
1032
+ }
1033
+ });
1034
+
1035
+ MML.malignmark = MML.mbase.Subclass({
1036
+ type: "malignmark",
1037
+ defaults: {
1038
+ mathbackground: MML.INHERIT,
1039
+ mathcolor: MML.INHERIT,
1040
+ edge: MML.SIDE.LEFT
1041
+ },
1042
+ isSpacelike: function () {return TRUE}
1043
+ });
1044
+
1045
+ MML.mlabeledtr = MML.mtr.Subclass({
1046
+ type: "mlabeledtr"
1047
+ });
1048
+
1049
+ MML.maction = MML.mbase.Subclass({
1050
+ type: "maction",
1051
+ defaults: {
1052
+ mathbackground: MML.INHERIT,
1053
+ mathcolor: MML.INHERIT,
1054
+ actiontype: MML.ACTIONTYPE.TOGGLE,
1055
+ selection: 1
1056
+ },
1057
+ // FIXME: should base class on selection
1058
+ setTeXclass: MML.mbase.setSeparateTeXclasses
1059
+ });
1060
+
1061
+ MML.semantics = MML.mbase.Subclass({
1062
+ type: "semantics",
1063
+ defaults: {
1064
+ definitionURL: null,
1065
+ encoding: null
1066
+ },
1067
+ isEmbellished: MML.mbase.childEmbellished,
1068
+ setTeXclass: MML.mbase.setChildTeXclass
1069
+ });
1070
+ MML.annotation = MML.mbase.Subclass({
1071
+ type: "annotation", isToken: TRUE,
1072
+ defaults: {
1073
+ definitionURL: null,
1074
+ encoding: null,
1075
+ cd: "mathmlkeys",
1076
+ name: "",
1077
+ src: null
1078
+ }
1079
+ });
1080
+ MML["annotation-xml"] = MML.mbase.Subclass({
1081
+ type: "annotation-xml",
1082
+ defaults: {
1083
+ definitionURL: null,
1084
+ encoding: null,
1085
+ cd: "mathmlkeys",
1086
+ name: "",
1087
+ src: null
1088
+ }
1089
+ });
1090
+
1091
+ MML.math = MML.mstyle.Subclass({
1092
+ type: "math",
1093
+ defaults: {
1094
+ mathvariant: MML.VARIANT.NORMAL,
1095
+ mathsize: MML.SIZE.NORMAL,
1096
+ mathcolor: "", // should be "black", but allow it to inherit from surrounding text
1097
+ mathbackground: MML.COLOR.TRANSPARENT,
1098
+ scriptlevel: 0,
1099
+ displaystyle: MML.AUTO,
1100
+ display: "inline",
1101
+ maxwidth: "",
1102
+ overflow: MML.OVERFLOW.LINEBREAK,
1103
+ altimg: "",
1104
+ 'altimg-width': "",
1105
+ 'altimg-height': "",
1106
+ 'altimg-valign': "",
1107
+ alttext: "",
1108
+ cdgroup: "",
1109
+ scriptsizemultiplier: Math.sqrt(1/2),
1110
+ scriptminsize: "8px", // should be 8pt, but that's too big
1111
+ infixlinebreakstyle: MML.LINEBREAKSTYLE.BEFORE,
1112
+ decimalseparator: ".",
1113
+ texprimestyle: FALSE // is it in TeX's C' style?
1114
+ },
1115
+ autoDefault: function (name) {
1116
+ if (name === "displaystyle") {return this.Get("display") === "block"}
1117
+ return "";
1118
+ },
1119
+ setTeXclass: MML.mbase.setChildTeXclass
1120
+ });
1121
+
1122
+ MML.chars = MML.mbase.Subclass({
1123
+ type: "chars",
1124
+ Append: function () {this.data.push.apply(this.data,arguments)},
1125
+ value: function () {return this.data.join("")},
1126
+ toString: function () {return this.data.join("")}
1127
+ });
1128
+
1129
+ MML.entity = MML.mbase.Subclass({
1130
+ type: "entity",
1131
+ Append: function () {this.data.push.apply(this.data,arguments)},
1132
+ value: function () {
1133
+ if (this.data[0].substr(0,2) === "#x") {return parseInt(this.data[0].substr(2),16)}
1134
+ else if (this.data[0].substr(0,1) === "#") {return parseInt(this.data[0].substr(1))}
1135
+ else {return 0} // FIXME: look up named entities from table
1136
+ },
1137
+ toString: function () {
1138
+ var n = this.value();
1139
+ if (n <= 0xFFFF) {return String.fromCharCode(n)}
1140
+ return this.PLANE1 + String.fromCharCode(n-0x1D400+0xDC00);
1141
+ }
1142
+ });
1143
+
1144
+ MML.TeXAtom = MML.mbase.Subclass({
1145
+ type: "texatom",
1146
+ inferRow: TRUE,
1147
+ texClass: MML.TEXCLASS.ORD,
1148
+ setTeXclass: function (prev) {
1149
+ this.getPrevClass(prev);
1150
+ this.data[0].setTeXclass();
1151
+ return this;
1152
+ }
1153
+ });
1154
+
1155
+ var TEXCLASS = MML.TEXCLASS;
1156
+
1157
+ var MO = {
1158
+ ORD: [0,0,TEXCLASS.ORD],
1159
+ ORD11: [1,1,TEXCLASS.ORD],
1160
+ ORD21: [2,1,TEXCLASS.ORD],
1161
+ ORD02: [0,2,TEXCLASS.ORD],
1162
+ ORD55: [5,5,TEXCLASS.ORD],
1163
+ OP: [1,2,TEXCLASS.OP,{largeop: true, movablelimits: true, symmetric: true}],
1164
+ OPFIXED: [1,2,TEXCLASS.OP,{largeop: true, movablelimits: true}],
1165
+ INTEGRAL: [0,1,TEXCLASS.OP,{largeop: true, symmetric: true}],
1166
+ INTEGRAL2: [1,2,TEXCLASS.OP,{largeop: true, symmetric: true}],
1167
+ BIN3: [3,3,TEXCLASS.BIN],
1168
+ BIN4: [4,4,TEXCLASS.BIN],
1169
+ BIN01: [0,1,TEXCLASS.BIN],
1170
+ TALLBIN: [4,4,TEXCLASS.BIN,{stretchy: true}],
1171
+ BINOP: [4,4,TEXCLASS.BIN,{largeop: true, movablelimits: true}],
1172
+ REL: [5,5,TEXCLASS.REL],
1173
+ REL1: [1,1,TEXCLASS.REL,{stretchy: true}],
1174
+ REL4: [4,4,TEXCLASS.REL],
1175
+ WIDEREL: [5,5,TEXCLASS.REL,{stretchy: true}],
1176
+ RELACCENT: [5,5,TEXCLASS.REL,{accent: true, stretchy: true}],
1177
+ OPEN: [0,0,TEXCLASS.OPEN,{fence: true, stretchy: true, symmetric: true}],
1178
+ CLOSE: [0,0,TEXCLASS.CLOSE,{fence: true, stretchy: true, symmetric: true}],
1179
+ INNER: [0,0,TEXCLASS.INNER],
1180
+ PUNCT: [0,3,TEXCLASS.PUNCT],
1181
+ ACCENT: [0,0,TEXCLASS.ORD,{accent: true}],
1182
+ WIDEACCENT: [0,0,TEXCLASS.ORD,{accent: true, stretchy: true}]
1183
+ };
1184
+
1185
+ MML.mo.Augment({
1186
+ SPACE: [
1187
+ '0em',
1188
+ '0.1111em',
1189
+ '0.1667em',
1190
+ '0.2222em',
1191
+ '0.2667em',
1192
+ '0.3333em'
1193
+ ],
1194
+ RANGES: [
1195
+ [0x20,0x7F,TEXCLASS.REL,"BasicLatin"],
1196
+ [0xA0,0xFF,TEXCLASS.ORD,"Latin1Supplement"],
1197
+ [0x100,0x17F,TEXCLASS.ORD],
1198
+ [0x180,0x24F,TEXCLASS.ORD],
1199
+ [0x2B0,0x2FF,TEXCLASS.ORD,"SpacingModLetters"],
1200
+ [0x300,0x36F,TEXCLASS.ORD,"CombDiacritMarks"],
1201
+ [0x370,0x3FF,TEXCLASS.ORD,"GreekAndCoptic"],
1202
+ [0x1E00,0x1EFF,TEXCLASS.ORD],
1203
+ [0x2000,0x206F,TEXCLASS.PUNCT,"GeneralPunctuation"],
1204
+ [0x2070,0x209F,TEXCLASS.ORD],
1205
+ [0x20A0,0x20CF,TEXCLASS.ORD],
1206
+ [0x20D0,0x20FF,TEXCLASS.ORD,"CombDiactForSymbols"],
1207
+ [0x2100,0x214F,TEXCLASS.ORD,"LetterlikeSymbols"],
1208
+ [0x2150,0x218F,TEXCLASS.ORD],
1209
+ [0x2190,0x21FF,TEXCLASS.REL,"Arrows"],
1210
+ [0x2200,0x22FF,TEXCLASS.BIN,"MathOperators"],
1211
+ [0x2300,0x23FF,TEXCLASS.ORD,"MiscTechnical"],
1212
+ [0x2460,0x24FF,TEXCLASS.ORD],
1213
+ [0x25A0,0x25FF,TEXCLASS.ORD,"GeometricShapes"],
1214
+ [0x2700,0x27BF,TEXCLASS.ORD,"Dingbats"],
1215
+ [0x27C0,0x27EF,TEXCLASS.ORD,"MiscMathSymbolsA"],
1216
+ [0x2900,0x297F,TEXCLASS.REL,"SupplementalArrowsB"],
1217
+ [0x2980,0x29FF,TEXCLASS.ORD,"MiscMathSymbolsB"],
1218
+ [0x2A00,0x2AFF,TEXCLASS.BIN,"SuppMathOperators"],
1219
+ [0x2B00,0x2BFF,TEXCLASS.ORD],
1220
+ [0x1D400,0x1D7FF,TEXCLASS.ORD]
1221
+ ],
1222
+ OPTABLE: {
1223
+ prefix: {
1224
+ '\u2111': MO.ORD11, // black-letter capital i
1225
+ '\u2113': MO.ORD11, // script small l
1226
+ '\u211C': MO.ORD11, // black-letter capital r
1227
+ '\u2200': MO.ORD21, // for all
1228
+ '\u2202': MO.ORD21, // partial differential
1229
+ '\u2203': MO.ORD21, // there exists
1230
+ '\u2207': MO.ORD21, // nabla
1231
+ '\u220F': MO.OP, // n-ary product
1232
+ '\u2210': MO.OP, // n-ary coproduct
1233
+ '\u2211': MO.OP, // n-ary summation
1234
+ '\u2212': MO.BIN01, // minus sign
1235
+ '\u2213': MO.BIN01, // minus-or-plus sign
1236
+ '\u221A': [1,1,TEXCLASS.ORD,{stretchy: true}], // square root
1237
+ '\u2220': MO.ORD, // angle
1238
+ '\u222B': MO.INTEGRAL, // integral
1239
+ '\u222E': MO.INTEGRAL, // contour integral
1240
+ '\u22C0': MO.OP, // n-ary logical and
1241
+ '\u22C1': MO.OP, // n-ary logical or
1242
+ '\u22C2': MO.OP, // n-ary intersection
1243
+ '\u22C3': MO.OP, // n-ary union
1244
+ '\u2308': MO.OPEN, // left ceiling
1245
+ '\u230A': MO.OPEN, // left floor
1246
+ '\u27E8': MO.OPEN, // mathematical left angle bracket
1247
+ '\u2A00': MO.OP, // n-ary circled dot operator
1248
+ '\u2A01': MO.OP, // n-ary circled plus operator
1249
+ '\u2A02': MO.OP, // n-ary circled times operator
1250
+ '\u2A04': MO.OP, // n-ary union operator with plus
1251
+ '\u2A06': MO.OP, // n-ary square union operator
1252
+ '\u00AC': MO.ORD21, // not sign
1253
+ '\u00B1': MO.BIN01, // plus-minus sign
1254
+ '(': MO.OPEN, // left parenthesis
1255
+ '+': MO.BIN01, // plus sign
1256
+ '-': MO.BIN01, // hyphen-minus
1257
+ '[': MO.OPEN, // left square bracket
1258
+ '{': MO.OPEN, // left curly bracket
1259
+ '|': MO.OPEN // vertical line
1260
+ },
1261
+ postfix: {
1262
+ '!': [1,0,TEXCLASS.CLOSE], // exclamation mark
1263
+ '&': MO.ORD, // ampersand
1264
+ '\u2032': MO.ORD02, // prime
1265
+ '\u203E': MO.WIDEACCENT, // overline
1266
+ '\u2309': MO.CLOSE, // right ceiling
1267
+ '\u230B': MO.CLOSE, // right floor
1268
+ '\u23DE': MO.WIDEACCENT, // top curly bracket
1269
+ '\u23DF': MO.WIDEACCENT, // bottom curly bracket
1270
+ '\u266D': MO.ORD02, // music flat sign
1271
+ '\u266E': MO.ORD02, // music natural sign
1272
+ '\u266F': MO.ORD02, // music sharp sign
1273
+ '\u27E9': MO.CLOSE, // mathematical right angle bracket
1274
+ '\u02C6': MO.WIDEACCENT, // modifier letter circumflex accent
1275
+ '\u02C7': MO.WIDEACCENT, // caron
1276
+ '\u02D8': MO.ACCENT, // breve
1277
+ '\u02D9': MO.ACCENT, // dot above
1278
+ '\u02DC': MO.WIDEACCENT, // small tilde
1279
+ '\u0302': MO.ACCENT, // combining circumflex accent
1280
+ '\u00A8': MO.ACCENT, // diaeresis
1281
+ '\u00AF': MO.WIDEACCENT, // macron
1282
+ ')': MO.CLOSE, // right parenthesis
1283
+ ']': MO.CLOSE, // right square bracket
1284
+ '^': MO.WIDEACCENT, // circumflex accent
1285
+ '_': MO.WIDEACCENT, // low line
1286
+ '`': MO.ACCENT, // grave accent
1287
+ '|': MO.CLOSE, // vertical line
1288
+ '}': MO.CLOSE, // right curly bracket
1289
+ '~': MO.WIDEACCENT // tilde
1290
+ },
1291
+ infix: {
1292
+ '%': [3,3,TEXCLASS.ORD], // percent sign
1293
+ '\u2022': MO.BIN4, // bullet
1294
+ '\u2026': MO.INNER, // horizontal ellipsis
1295
+ '\u2044': MO.TALLBIN, // fraction slash
1296
+ '\u2061': MO.ORD, // function application
1297
+ '\u2062': MO.ORD, // invisible times
1298
+ '\u2063': [0,0,TEXCLASS.ORD,{separator: true}], // invisible separator
1299
+ '\u2064': MO.ORD, // invisible plus
1300
+ '\u2190': MO.RELACCENT, // leftwards arrow
1301
+ '\u2191': MO.WIDEREL, // upwards arrow
1302
+ '\u2192': MO.RELACCENT, // rightwards arrow
1303
+ '\u2193': MO.WIDEREL, // downwards arrow
1304
+ '\u2194': MO.RELACCENT, // left right arrow
1305
+ '\u2195': MO.WIDEREL, // up down arrow
1306
+ '\u2196': MO.WIDEREL, // north west arrow
1307
+ '\u2197': MO.WIDEREL, // north east arrow
1308
+ '\u2198': MO.WIDEREL, // south east arrow
1309
+ '\u2199': MO.WIDEREL, // south west arrow
1310
+ '\u21A6': MO.WIDEREL, // rightwards arrow from bar
1311
+ '\u21A9': MO.WIDEREL, // leftwards arrow with hook
1312
+ '\u21AA': MO.WIDEREL, // rightwards arrow with hook
1313
+ '\u21BC': MO.RELACCENT, // leftwards harpoon with barb upwards
1314
+ '\u21BD': MO.WIDEREL, // leftwards harpoon with barb downwards
1315
+ '\u21C0': MO.RELACCENT, // rightwards harpoon with barb upwards
1316
+ '\u21C1': MO.WIDEREL, // rightwards harpoon with barb downwards
1317
+ '\u21CC': MO.WIDEREL, // rightwards harpoon over leftwards harpoon
1318
+ '\u21D0': MO.WIDEREL, // leftwards double arrow
1319
+ '\u21D1': MO.WIDEREL, // upwards double arrow
1320
+ '\u21D2': MO.WIDEREL, // rightwards double arrow
1321
+ '\u21D3': MO.WIDEREL, // downwards double arrow
1322
+ '\u21D4': MO.WIDEREL, // left right double arrow
1323
+ '\u21D5': MO.WIDEREL, // up down double arrow
1324
+ '\u2208': MO.REL, // element of
1325
+ '\u2209': MO.REL, // not an element of
1326
+ '\u220B': MO.REL, // contains as member
1327
+ '\u2212': MO.BIN4, // minus sign
1328
+ '\u2213': MO.BIN4, // minus-or-plus sign
1329
+ '\u2215': MO.TALLBIN, // division slash
1330
+ '\u2216': MO.BIN4, // set minus
1331
+ '\u2217': MO.BIN4, // asterisk operator
1332
+ '\u2218': MO.BIN4, // ring operator
1333
+ '\u2219': MO.BIN4, // bullet operator
1334
+ '\u221D': MO.REL, // proportional to
1335
+ '\u2223': MO.REL, // divides
1336
+ '\u2225': MO.REL, // parallel to
1337
+ '\u2227': MO.BIN4, // logical and
1338
+ '\u2228': MO.BIN4, // logical or
1339
+ '\u2229': MO.BIN4, // intersection
1340
+ '\u222A': MO.BIN4, // union
1341
+ '\u223C': MO.REL, // tilde operator
1342
+ '\u2240': MO.BIN4, // wreath product
1343
+ '\u2243': MO.REL, // asymptotically equal to
1344
+ '\u2245': MO.REL, // approximately equal to
1345
+ '\u2248': MO.REL, // almost equal to
1346
+ '\u224D': MO.REL, // equivalent to
1347
+ '\u2250': MO.REL, // approaches the limit
1348
+ '\u2260': MO.REL, // not equal to
1349
+ '\u2261': MO.REL, // identical to
1350
+ '\u2264': MO.REL, // less-than or equal to
1351
+ '\u2265': MO.REL, // greater-than or equal to
1352
+ '\u226A': MO.REL, // much less-than
1353
+ '\u226B': MO.REL, // much greater-than
1354
+ '\u227A': MO.REL, // precedes
1355
+ '\u227B': MO.REL, // succeeds
1356
+ '\u2282': MO.REL, // subset of
1357
+ '\u2283': MO.REL, // superset of
1358
+ '\u2286': MO.REL, // subset of or equal to
1359
+ '\u2287': MO.REL, // superset of or equal to
1360
+ '\u228E': MO.BIN4, // multiset union
1361
+ '\u2291': MO.REL, // square image of or equal to
1362
+ '\u2292': MO.REL, // square original of or equal to
1363
+ '\u2293': MO.BIN4, // square cap
1364
+ '\u2294': MO.BIN4, // square cup
1365
+ '\u2295': MO.BIN4, // circled plus
1366
+ '\u2296': MO.BIN4, // circled minus
1367
+ '\u2297': MO.BIN4, // circled times
1368
+ '\u2298': MO.BIN4, // circled division slash
1369
+ '\u2299': MO.BIN4, // circled dot operator
1370
+ '\u22A2': MO.REL, // right tack
1371
+ '\u22A3': MO.REL, // left tack
1372
+ '\u22A4': MO.ORD55, // down tack
1373
+ '\u22A5': MO.REL, // up tack
1374
+ '\u22A8': MO.REL, // true
1375
+ '\u22C4': MO.BIN4, // diamond operator
1376
+ '\u22C5': MO.BIN4, // dot operator
1377
+ '\u22C6': MO.BIN4, // star operator
1378
+ '\u22C8': MO.REL, // bowtie
1379
+ '\u22EE': MO.ORD55, // vertical ellipsis
1380
+ '\u22EF': MO.INNER, // midline horizontal ellipsis
1381
+ '\u22F1': [5,5,TEXCLASS.INNER], // down right diagonal ellipsis
1382
+ '\u2500': [0,0,TEXCLASS.ORD,{stretchy: true}], // box drawings light horizontal
1383
+ '\u25B3': MO.BIN4, // white up-pointing triangle
1384
+ '\u25B5': MO.BIN4, // white up-pointing small triangle
1385
+ '\u25B9': MO.BIN4, // white right-pointing small triangle
1386
+ '\u25BD': MO.BIN4, // white down-pointing triangle
1387
+ '\u25BF': MO.BIN4, // white down-pointing small triangle
1388
+ '\u25C3': MO.BIN4, // white left-pointing small triangle
1389
+ '\u2758': [4,4,TEXCLASS.REL,{fence: true, stretchy: true, symmetric: true}], // light vertical bar
1390
+ '\u27F5': MO.REL1, // long leftwards arrow
1391
+ '\u27F6': MO.REL1, // long rightwards arrow
1392
+ '\u27F7': MO.REL1, // long left right arrow
1393
+ '\u27F8': MO.REL1, // long leftwards double arrow
1394
+ '\u27F9': MO.REL1, // long rightwards double arrow
1395
+ '\u27FA': MO.REL1, // long left right double arrow
1396
+ '\u2A2F': MO.BIN4, // vector or cross product
1397
+ '\u2A3F': MO.BIN4, // amalgamation or coproduct
1398
+ '\u2AAF': MO.REL, // precedes above single-line equals sign
1399
+ '\u2AB0': MO.REL, // succeeds above single-line equals sign
1400
+ '\u00B1': MO.BIN4, // plus-minus sign
1401
+ '\u00B7': MO.BIN4, // middle dot
1402
+ '\u00D7': MO.BIN4, // multiplication sign
1403
+ '\u00F7': MO.BIN4, // division sign
1404
+ '*': MO.BIN3, // asterisk
1405
+ '+': MO.BIN4, // plus sign
1406
+ ',': [0,3,TEXCLASS.PUNCT,{separator: true}], // comma
1407
+ '-': MO.BIN4, // hyphen-minus
1408
+ '.': [3,3,TEXCLASS.ORD], // full stop
1409
+ '/': MO.ORD11, // solidus
1410
+ ':': [1,2,TEXCLASS.REL], // colon
1411
+ ';': [0,3,TEXCLASS.PUNCT,{separator: true}], // semicolon
1412
+ '<': MO.REL, // less-than sign
1413
+ '=': MO.REL, // equals sign
1414
+ '>': MO.REL, // greater-than sign
1415
+ '?': [1,1,TEXCLASS.CLOSE], // question mark
1416
+ '\\': MO.ORD, // reverse solidus
1417
+ '_': MO.ORD11, // low line
1418
+ '|': [2,2,TEXCLASS.ORD,{fence: true, stretchy: true, symmetric: true}], // vertical line
1419
+ '#': MO.ORD, // #
1420
+ '$': MO.ORD, // $
1421
+ '\u002E': [0,3,TEXCLASS.PUNCT,{separator: true}], // \ldotp
1422
+ '\u02B9': MO.ORD, // prime
1423
+ '\u02C9': MO.ACCENT, // \bar
1424
+ '\u02CA': MO.ACCENT, // \acute
1425
+ '\u02CB': MO.ACCENT, // \grave
1426
+ '\u0300': MO.ACCENT, // \grave
1427
+ '\u0301': MO.ACCENT, // \acute
1428
+ '\u0303': MO.WIDEACCENT, // \tilde
1429
+ '\u0304': MO.ACCENT, // \bar
1430
+ '\u0306': MO.ACCENT, // \breve
1431
+ '\u0307': MO.ACCENT, // \dot
1432
+ '\u0308': MO.ACCENT, // \ddot
1433
+ '\u030C': MO.ACCENT, // \check
1434
+ '\u0332': MO.WIDEACCENT, // horizontal line
1435
+ '\u0338': MO.REL4, // \not
1436
+ '\u2015': [0,0,TEXCLASS.ORD,{stretchy: true}], // horizontal line
1437
+ '\u2017': [0,0,TEXCLASS.ORD,{stretchy: true}], // horizontal line
1438
+ '\u2020': MO.BIN3, // \dagger
1439
+ '\u2021': MO.BIN3, // \ddagger
1440
+ '\u20D7': MO.ACCENT, // \vec
1441
+ '\u2118': MO.ORD, // \wp
1442
+ '\u2205': MO.ORD, // \emptyset
1443
+ '\u221E': MO.ORD, // \infty
1444
+ '\u2305': MO.BIN3, // barwedge
1445
+ '\u2306': MO.BIN3, // doublebarwedge
1446
+ '\u2322': MO.REL4, // \frown
1447
+ '\u2323': MO.REL4, // \smile
1448
+ '\u2329': MO.OPEN, // langle
1449
+ '\u232A': MO.CLOSE, // rangle
1450
+ '\u23AA': MO.ORD, // \bracevert
1451
+ '\u23AF': [0,0,TEXCLASS.ORD,{stretchy: true}], // \underline
1452
+ '\u23B0': MO.OPEN, // \lmoustache
1453
+ '\u23B1': MO.CLOSE, // \rmoustache
1454
+ '\u25EF': MO.BIN3, // \bigcirc
1455
+ '\u2660': MO.ORD, // \spadesuit
1456
+ '\u2661': MO.ORD, // \heartsuit
1457
+ '\u2662': MO.ORD, // \diamondsuit
1458
+ '\u2663': MO.ORD, // \clubsuit
1459
+ '\u27EE': MO.OPEN, // \lgroup
1460
+ '\u27EF': MO.CLOSE, // \rgroup
1461
+ '\u27FC': MO.REL4, // \longmapsto
1462
+ '\u3008': MO.OPEN, // langle
1463
+ '\u3009': MO.CLOSE, // rangle
1464
+ '\uFE37': MO.WIDEACCENT, // horizontal brace down
1465
+ '\uFE38': MO.WIDEACCENT // horizontal brace up
1466
+ }
1467
+ }
1468
+ },{
1469
+ OPTYPES: MO
1470
+ });
1471
+
1472
+ })(MathJax.ElementJax.mml);
1473
+
1474
+ MathJax.ElementJax.mml.loadComplete("jax.js");