Skip to content

Commit cfe05db

Browse files
committed
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$.
1 parent ae48c34 commit cfe05db

File tree

2 files changed

+199
-0
lines changed

2 files changed

+199
-0
lines changed

test/sample-mediawiki-texvc.html

Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<title>texvc extension</title>
5+
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
6+
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
7+
<script type="text/x-mathjax-config">
8+
MathJax.Hub.Config({
9+
TeX: { extensions: ["mediawiki-texvc.js"] },
10+
tex2jax: {inlineMath: [["$","$"],["\\(","\\)"]]}});
11+
12+
</script>
13+
<script type="text/javascript" src="../MathJax.js?config=TeX-AMS_HTML-full"></script>
14+
</head>
15+
<body>
16+
<ol>
17+
<li>alef:$\alef$</li>
18+
<li>alefsym:$\alefsym$</li>
19+
<li>Alpha:$\Alpha$</li>
20+
<li>and:$\and$</li>
21+
<li>ang:$\ang$</li>
22+
<li>Bbb:$\Bbb x$ (applied to $x$)</li>
23+
<li>Beta:$\Beta$</li>
24+
<li>bold:$\bold x$ (applied to $x$)</li>
25+
<li>bull:$\bull$</li>
26+
<li>C:$\C$</li>
27+
<li>Chi:$\Chi$</li>
28+
<li>clubs:$\clubs$</li>
29+
<li>cnums:$\cnums$</li>
30+
<li>Complex:$\Complex$</li>
31+
<li>Dagger:$\Dagger$</li>
32+
<li>darr:$\darr$</li>
33+
<li>dArr:$\dArr$</li>
34+
<li>Darr:$\Darr$</li>
35+
<li>diamonds:$\diamonds$</li>
36+
<li>Doteq:$\Doteq$</li>
37+
<li>doublecap:$\doublecap$</li>
38+
<li>doublecup:$\doublecup$</li>
39+
<li>empty:$\empty$</li>
40+
<li>Epsilon:$\Epsilon$</li>
41+
<li>Eta:$\Eta$</li>
42+
<li>exist:$\exist$</li>
43+
<li>ge:$\ge$</li>
44+
<li>gggtr:$\gggtr$</li>
45+
<li>H:$\H$</li>
46+
<li>hAar:$\hAar$</li>
47+
<li>harr:$\harr$</li>
48+
<li>Harr:$\Harr$</li>
49+
<li>hearts:$\hearts$</li>
50+
<li>image:$\image$</li>
51+
<li>infin:$\infin$</li>
52+
<li>Iota:$\Iota$</li>
53+
<li>isin:$\isin$</li>
54+
<li>Kappa:$\Kappa$</li>
55+
<li>lang:$\lang$</li>
56+
<li>larr:$\larr$</li>
57+
<li>Larr:$\Larr$</li>
58+
<li>lArr:$\lArr$</li>
59+
<li>le:$\le$</li>
60+
<li>lrarr:$\lrarr$</li>
61+
<li>Lrarr:$\Lrarr$</li>
62+
<li>lrArr:$\lrArr$</li>
63+
<li>Mu:$\Mu$</li>
64+
<li>N:$\N$</li>
65+
<li>natnums:$\natnums$</li>
66+
<li>ne:$\ne$</li>
67+
<li>Nu:$\Nu$</li>
68+
<li>O:$\O$</li>
69+
<li>omicron:$\omicron$</li>
70+
<li>Omicron:$\Omicron$</li>
71+
<li>or:$\or$</li>
72+
<li>part:$\part$</li>
73+
<li>plusmn:$\plusmn$</li>
74+
<li>Q:$\Q$</li>
75+
<li>R:$\R$</li>
76+
<li>rang:$\rang$</li>
77+
<li>rarr:$\rarr$</li>
78+
<li>Rarr:$\Rarr$</li>
79+
<li>rArr:$\rArr$</li>
80+
<li>real:$\real$</li>
81+
<li>reals:$\reals$</li>
82+
<li>Reals:$\Reals$</li>
83+
<li>restriction:$\restriction$</li>
84+
<li>Rho:$\Rho$</li>
85+
<li>sdot:$\sdot$</li>
86+
<li>sect:$\sect$</li>
87+
<li>spades:$\spades$</li>
88+
<li>sub:$\sub$</li>
89+
<li>sube:$\sube$</li>
90+
<li>supe:$\supe$</li>
91+
<li>Tau:$\Tau$</li>
92+
<li>thetasym:$\thetasym$</li>
93+
<li>uarr:$\uarr$</li>
94+
<li>uArr:$\uArr$</li>
95+
<li>Uarr:$\Uarr$</li>
96+
<li>varcoppa:$\varcoppa$ (reqires <a
97+
href="https://github.com/mathjax/MathJax/issues/537">#537</a>)
98+
</li>
99+
<li>weierp:$\weierp$</li>
100+
<li>Z:$\Z$</li>
101+
<li>Zeta:$\Zeta$</li>
102+
</ol>
103+
</body>
104+
</html>
Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
MathJax.Extension["TeX/mediawiki-texvc"] = {
2+
version: "2.5.0"
3+
};
4+
5+
MathJax.Hub.Register.StartupHook("TeX Jax Ready", function () {
6+
MathJax.InputJax.TeX.Definitions.Add({
7+
macros: {
8+
alef: ["Macro", "\\aleph"],
9+
alefsym: ["Macro", "\\aleph"],
10+
Alpha: ["Macro", "\\mathrm{A}"],
11+
and: ["Macro", "\\land"],
12+
ang: ["Macro", "\\angle"],
13+
Bbb: ["Macro", "\\mathbb"],
14+
Beta: ["Macro", "\\mathrm{B}"],
15+
bold: ["Macro", "\\mathbf"],
16+
bull: ["Macro", "\\bullet"],
17+
C: ["Macro", "\\mathbb{C}"],
18+
Chi: ["Macro", "\\mathrm{X}"],
19+
clubs: ["Macro", "\\clubsuit"],
20+
cnums: ["Macro", "\\mathbb{C}"],
21+
Complex: ["Macro", "\\mathbb{C}"],
22+
Dagger: ["Macro", "\\ddagger"],
23+
darr: ["Macro", "\\downarrow"],
24+
dArr: ["Macro", "\\Downarrow"],
25+
Darr: ["Macro", "\\Downarrow"],
26+
diamonds: ["Macro", "\\diamondsuit"],
27+
Doteq: ["Macro", "\\doteqdot"],
28+
doublecap: ["Macro", "\\Cap"],
29+
doublecup: ["Macro", "\\Cup"],
30+
empty: ["Macro", "\\emptyset"],
31+
Epsilon: ["Macro", "\\mathrm{E}"],
32+
Eta: ["Macro", "\\mathrm{H}"],
33+
exist: ["Macro", "\\exists"],
34+
ge: ["Macro", "\\geq"],
35+
gggtr: ["Macro", "\\ggg"],
36+
H: ["Macro", "\\mathbb{H}"],
37+
hAar: ["Macro", "\\Leftrightarrow"],
38+
harr: ["Macro", "\\leftrightarrow"],
39+
Harr: ["Macro", "\\Leftrightarrow"],
40+
hearts: ["Macro", "\\heartsuit"],
41+
image: ["Macro", "\\Im"],
42+
infin: ["Macro", "\\infty"],
43+
Iota: ["Macro", "\\mathrm{I}"],
44+
isin: ["Macro", "\\in"],
45+
Kappa: ["Macro", "\\mathrm{K}"],
46+
lang: ["Macro", "\\langle"],
47+
larr: ["Macro", "\\leftarrow"],
48+
Larr: ["Macro", "\\Leftarrow"],
49+
lArr: ["Macro", "\\Leftarrow"],
50+
le: ["Macro", "\\leq"],
51+
lrarr: ["Macro", "\\leftrightarrow"],
52+
Lrarr: ["Macro", "\\Leftrightarrow"],
53+
lrArr: ["Macro", "\\Leftrightarrow"],
54+
Mu: ["Macro", "\\mathrm{M}"],
55+
N: ["Macro", "\\mathbb{N}"],
56+
natnums: ["Macro", "\\mathbb{N}"],
57+
ne: ["Macro", "\\neq"],
58+
Nu: ["Macro", "\\mathrm{N}"],
59+
O: ["Macro", "\\emptyset"],
60+
omicron: ["Macro", "\\mathrm{o}"],
61+
Omicron: ["Macro", "\\mathrm{O}"],
62+
or: ["Macro", "\\lor"],
63+
part: ["Macro", "\\partial"],
64+
plusmn: ["Macro", "\\pm"],
65+
Q: ["Macro", "\\mathbb{Q}"],
66+
R: ["Macro", "\\mathbb{R}"],
67+
rang: ["Macro", "\\rangle"],
68+
rarr: ["Macro", "\\rightarrow"],
69+
Rarr: ["Macro", "\\Rightarrow"],
70+
rArr: ["Macro", "\\Rightarrow"],
71+
real: ["Macro", "\\Re"],
72+
reals: ["Macro", "\\mathbb{R}"],
73+
Reals: ["Macro", "\\mathbb{R}"],
74+
restriction: ["Macro", "\\upharpoonright"],
75+
Rho: ["Macro", "\\mathrm{P}"],
76+
sdot: ["Macro", "\\cdot"],
77+
sect: ["Macro", "\\S"],
78+
spades: ["Macro", "\\spadesuit"],
79+
sub: ["Macro", "\\subset"],
80+
sube: ["Macro", "\\subseteq"],
81+
supe: ["Macro", "\\supseteq"],
82+
Tau: ["Macro", "\\mathrm{T}"],
83+
thetasym: ["Macro", "\\vartheta"],
84+
uarr: ["Macro", "\\uparrow"],
85+
uArr: ["Macro", "\\Uparrow"],
86+
Uarr: ["Macro", "\\Uparrow"],
87+
varcoppa: ["Macro", "\\mbox{\\coppa}"],
88+
weierp: ["Macro", "\\wp"],
89+
Z: ["Macro", "\\mathbb{Z}"],
90+
Zeta: ["Macro", "\\mathrm{Z}"]
91+
}
92+
});
93+
});
94+
95+
MathJax.Ajax.loadComplete("[MathJax]/extensions/TeX/mediawiki-texvc.js");

0 commit comments

Comments
 (0)