From cfe05db863b895e734d96a68feb09b01080455cf Mon Sep 17 00:00:00 2001 From: "physikerwelt (Moritz Schubotz)" Date: Fri, 9 Jan 2015 20:27:17 +0100 Subject: [PATCH 1/2] MediaWiki-texvc support We add a conversion table that converts MediaWiki specific markup to standard LaTeX. This approach is more or less maitenance free, and relies on the existence some special macros mostly originating from amsmath and amsfonts package. In the future one could expand the macros with semantic annotation like for instance that $\\mathbb{R}$ stands for the semantic concept reals, if it was produced using the texvc macro $\\reals$. --- test/sample-mediawiki-texvc.html | 104 +++++++++++++++++++++ unpacked/extensions/TeX/mediawiki-texvc.js | 95 +++++++++++++++++++ 2 files changed, 199 insertions(+) create mode 100644 test/sample-mediawiki-texvc.html create mode 100644 unpacked/extensions/TeX/mediawiki-texvc.js diff --git a/test/sample-mediawiki-texvc.html b/test/sample-mediawiki-texvc.html new file mode 100644 index 000000000..90249b8fb --- /dev/null +++ b/test/sample-mediawiki-texvc.html @@ -0,0 +1,104 @@ + + + + texvc extension + + + + + + +
    +
  1. alef:$\alef$
  2. +
  3. alefsym:$\alefsym$
  4. +
  5. Alpha:$\Alpha$
  6. +
  7. and:$\and$
  8. +
  9. ang:$\ang$
  10. +
  11. Bbb:$\Bbb x$ (applied to $x$)
  12. +
  13. Beta:$\Beta$
  14. +
  15. bold:$\bold x$ (applied to $x$)
  16. +
  17. bull:$\bull$
  18. +
  19. C:$\C$
  20. +
  21. Chi:$\Chi$
  22. +
  23. clubs:$\clubs$
  24. +
  25. cnums:$\cnums$
  26. +
  27. Complex:$\Complex$
  28. +
  29. Dagger:$\Dagger$
  30. +
  31. darr:$\darr$
  32. +
  33. dArr:$\dArr$
  34. +
  35. Darr:$\Darr$
  36. +
  37. diamonds:$\diamonds$
  38. +
  39. Doteq:$\Doteq$
  40. +
  41. doublecap:$\doublecap$
  42. +
  43. doublecup:$\doublecup$
  44. +
  45. empty:$\empty$
  46. +
  47. Epsilon:$\Epsilon$
  48. +
  49. Eta:$\Eta$
  50. +
  51. exist:$\exist$
  52. +
  53. ge:$\ge$
  54. +
  55. gggtr:$\gggtr$
  56. +
  57. H:$\H$
  58. +
  59. hAar:$\hAar$
  60. +
  61. harr:$\harr$
  62. +
  63. Harr:$\Harr$
  64. +
  65. hearts:$\hearts$
  66. +
  67. image:$\image$
  68. +
  69. infin:$\infin$
  70. +
  71. Iota:$\Iota$
  72. +
  73. isin:$\isin$
  74. +
  75. Kappa:$\Kappa$
  76. +
  77. lang:$\lang$
  78. +
  79. larr:$\larr$
  80. +
  81. Larr:$\Larr$
  82. +
  83. lArr:$\lArr$
  84. +
  85. le:$\le$
  86. +
  87. lrarr:$\lrarr$
  88. +
  89. Lrarr:$\Lrarr$
  90. +
  91. lrArr:$\lrArr$
  92. +
  93. Mu:$\Mu$
  94. +
  95. N:$\N$
  96. +
  97. natnums:$\natnums$
  98. +
  99. ne:$\ne$
  100. +
  101. Nu:$\Nu$
  102. +
  103. O:$\O$
  104. +
  105. omicron:$\omicron$
  106. +
  107. Omicron:$\Omicron$
  108. +
  109. or:$\or$
  110. +
  111. part:$\part$
  112. +
  113. plusmn:$\plusmn$
  114. +
  115. Q:$\Q$
  116. +
  117. R:$\R$
  118. +
  119. rang:$\rang$
  120. +
  121. rarr:$\rarr$
  122. +
  123. Rarr:$\Rarr$
  124. +
  125. rArr:$\rArr$
  126. +
  127. real:$\real$
  128. +
  129. reals:$\reals$
  130. +
  131. Reals:$\Reals$
  132. +
  133. restriction:$\restriction$
  134. +
  135. Rho:$\Rho$
  136. +
  137. sdot:$\sdot$
  138. +
  139. sect:$\sect$
  140. +
  141. spades:$\spades$
  142. +
  143. sub:$\sub$
  144. +
  145. sube:$\sube$
  146. +
  147. supe:$\supe$
  148. +
  149. Tau:$\Tau$
  150. +
  151. thetasym:$\thetasym$
  152. +
  153. uarr:$\uarr$
  154. +
  155. uArr:$\uArr$
  156. +
  157. Uarr:$\Uarr$
  158. +
  159. varcoppa:$\varcoppa$ (reqires #537) +
  160. +
  161. weierp:$\weierp$
  162. +
  163. Z:$\Z$
  164. +
  165. Zeta:$\Zeta$
  166. +
+ + diff --git a/unpacked/extensions/TeX/mediawiki-texvc.js b/unpacked/extensions/TeX/mediawiki-texvc.js new file mode 100644 index 000000000..7e10e7914 --- /dev/null +++ b/unpacked/extensions/TeX/mediawiki-texvc.js @@ -0,0 +1,95 @@ +MathJax.Extension["TeX/mediawiki-texvc"] = { + version: "2.5.0" +}; + +MathJax.Hub.Register.StartupHook("TeX Jax Ready", function () { + MathJax.InputJax.TeX.Definitions.Add({ + macros: { + alef: ["Macro", "\\aleph"], + alefsym: ["Macro", "\\aleph"], + Alpha: ["Macro", "\\mathrm{A}"], + and: ["Macro", "\\land"], + ang: ["Macro", "\\angle"], + Bbb: ["Macro", "\\mathbb"], + Beta: ["Macro", "\\mathrm{B}"], + bold: ["Macro", "\\mathbf"], + bull: ["Macro", "\\bullet"], + C: ["Macro", "\\mathbb{C}"], + Chi: ["Macro", "\\mathrm{X}"], + clubs: ["Macro", "\\clubsuit"], + cnums: ["Macro", "\\mathbb{C}"], + Complex: ["Macro", "\\mathbb{C}"], + Dagger: ["Macro", "\\ddagger"], + darr: ["Macro", "\\downarrow"], + dArr: ["Macro", "\\Downarrow"], + Darr: ["Macro", "\\Downarrow"], + diamonds: ["Macro", "\\diamondsuit"], + Doteq: ["Macro", "\\doteqdot"], + doublecap: ["Macro", "\\Cap"], + doublecup: ["Macro", "\\Cup"], + empty: ["Macro", "\\emptyset"], + Epsilon: ["Macro", "\\mathrm{E}"], + Eta: ["Macro", "\\mathrm{H}"], + exist: ["Macro", "\\exists"], + ge: ["Macro", "\\geq"], + gggtr: ["Macro", "\\ggg"], + H: ["Macro", "\\mathbb{H}"], + hAar: ["Macro", "\\Leftrightarrow"], + harr: ["Macro", "\\leftrightarrow"], + Harr: ["Macro", "\\Leftrightarrow"], + hearts: ["Macro", "\\heartsuit"], + image: ["Macro", "\\Im"], + infin: ["Macro", "\\infty"], + Iota: ["Macro", "\\mathrm{I}"], + isin: ["Macro", "\\in"], + Kappa: ["Macro", "\\mathrm{K}"], + lang: ["Macro", "\\langle"], + larr: ["Macro", "\\leftarrow"], + Larr: ["Macro", "\\Leftarrow"], + lArr: ["Macro", "\\Leftarrow"], + le: ["Macro", "\\leq"], + lrarr: ["Macro", "\\leftrightarrow"], + Lrarr: ["Macro", "\\Leftrightarrow"], + lrArr: ["Macro", "\\Leftrightarrow"], + Mu: ["Macro", "\\mathrm{M}"], + N: ["Macro", "\\mathbb{N}"], + natnums: ["Macro", "\\mathbb{N}"], + ne: ["Macro", "\\neq"], + Nu: ["Macro", "\\mathrm{N}"], + O: ["Macro", "\\emptyset"], + omicron: ["Macro", "\\mathrm{o}"], + Omicron: ["Macro", "\\mathrm{O}"], + or: ["Macro", "\\lor"], + part: ["Macro", "\\partial"], + plusmn: ["Macro", "\\pm"], + Q: ["Macro", "\\mathbb{Q}"], + R: ["Macro", "\\mathbb{R}"], + rang: ["Macro", "\\rangle"], + rarr: ["Macro", "\\rightarrow"], + Rarr: ["Macro", "\\Rightarrow"], + rArr: ["Macro", "\\Rightarrow"], + real: ["Macro", "\\Re"], + reals: ["Macro", "\\mathbb{R}"], + Reals: ["Macro", "\\mathbb{R}"], + restriction: ["Macro", "\\upharpoonright"], + Rho: ["Macro", "\\mathrm{P}"], + sdot: ["Macro", "\\cdot"], + sect: ["Macro", "\\S"], + spades: ["Macro", "\\spadesuit"], + sub: ["Macro", "\\subset"], + sube: ["Macro", "\\subseteq"], + supe: ["Macro", "\\supseteq"], + Tau: ["Macro", "\\mathrm{T}"], + thetasym: ["Macro", "\\vartheta"], + uarr: ["Macro", "\\uparrow"], + uArr: ["Macro", "\\Uparrow"], + Uarr: ["Macro", "\\Uparrow"], + varcoppa: ["Macro", "\\mbox{\\coppa}"], + weierp: ["Macro", "\\wp"], + Z: ["Macro", "\\mathbb{Z}"], + Zeta: ["Macro", "\\mathrm{Z}"] + } + }); +}); + +MathJax.Ajax.loadComplete("[MathJax]/extensions/TeX/mediawiki-texvc.js"); \ No newline at end of file From 6ff3894316ccc8f83a31d2c4522b0a3634edcda4 Mon Sep 17 00:00:00 2001 From: Peter Krautzberger Date: Wed, 14 Jan 2015 22:58:20 +0100 Subject: [PATCH 2/2] minor corrections to #1003 as discussed there --- test/sample-mediawiki-texvc.html | 4 +--- unpacked/extensions/TeX/mediawiki-texvc.js | 11 +---------- 2 files changed, 2 insertions(+), 13 deletions(-) diff --git a/test/sample-mediawiki-texvc.html b/test/sample-mediawiki-texvc.html index 90249b8fb..cba236b37 100644 --- a/test/sample-mediawiki-texvc.html +++ b/test/sample-mediawiki-texvc.html @@ -93,9 +93,7 @@ MathJax.Hub.Config({
  • uarr:$\uarr$
  • uArr:$\uArr$
  • Uarr:$\Uarr$
  • -
  • varcoppa:$\varcoppa$ (reqires #537) -
  • +
  • varcoppa:$\varcoppa$
  • weierp:$\weierp$
  • Z:$\Z$
  • Zeta:$\Zeta$
  • diff --git a/unpacked/extensions/TeX/mediawiki-texvc.js b/unpacked/extensions/TeX/mediawiki-texvc.js index 7e10e7914..7e3076594 100644 --- a/unpacked/extensions/TeX/mediawiki-texvc.js +++ b/unpacked/extensions/TeX/mediawiki-texvc.js @@ -24,15 +24,10 @@ MathJax.Hub.Register.StartupHook("TeX Jax Ready", function () { dArr: ["Macro", "\\Downarrow"], Darr: ["Macro", "\\Downarrow"], diamonds: ["Macro", "\\diamondsuit"], - Doteq: ["Macro", "\\doteqdot"], - doublecap: ["Macro", "\\Cap"], - doublecup: ["Macro", "\\Cup"], empty: ["Macro", "\\emptyset"], Epsilon: ["Macro", "\\mathrm{E}"], Eta: ["Macro", "\\mathrm{H}"], exist: ["Macro", "\\exists"], - ge: ["Macro", "\\geq"], - gggtr: ["Macro", "\\ggg"], H: ["Macro", "\\mathbb{H}"], hAar: ["Macro", "\\Leftrightarrow"], harr: ["Macro", "\\leftrightarrow"], @@ -47,17 +42,14 @@ MathJax.Hub.Register.StartupHook("TeX Jax Ready", function () { larr: ["Macro", "\\leftarrow"], Larr: ["Macro", "\\Leftarrow"], lArr: ["Macro", "\\Leftarrow"], - le: ["Macro", "\\leq"], lrarr: ["Macro", "\\leftrightarrow"], Lrarr: ["Macro", "\\Leftrightarrow"], lrArr: ["Macro", "\\Leftrightarrow"], Mu: ["Macro", "\\mathrm{M}"], N: ["Macro", "\\mathbb{N}"], natnums: ["Macro", "\\mathbb{N}"], - ne: ["Macro", "\\neq"], Nu: ["Macro", "\\mathrm{N}"], O: ["Macro", "\\emptyset"], - omicron: ["Macro", "\\mathrm{o}"], Omicron: ["Macro", "\\mathrm{O}"], or: ["Macro", "\\lor"], part: ["Macro", "\\partial"], @@ -71,7 +63,6 @@ MathJax.Hub.Register.StartupHook("TeX Jax Ready", function () { real: ["Macro", "\\Re"], reals: ["Macro", "\\mathbb{R}"], Reals: ["Macro", "\\mathbb{R}"], - restriction: ["Macro", "\\upharpoonright"], Rho: ["Macro", "\\mathrm{P}"], sdot: ["Macro", "\\cdot"], sect: ["Macro", "\\S"], @@ -84,7 +75,7 @@ MathJax.Hub.Register.StartupHook("TeX Jax Ready", function () { uarr: ["Macro", "\\uparrow"], uArr: ["Macro", "\\Uparrow"], Uarr: ["Macro", "\\Uparrow"], - varcoppa: ["Macro", "\\mbox{\\coppa}"], + varcoppa: ["Macro", "\\mbox{\u03D9}"], weierp: ["Macro", "\\wp"], Z: ["Macro", "\\mathbb{Z}"], Zeta: ["Macro", "\\mathrm{Z}"]