6 let tex_part = function
8 | HTMLABLEM
(_
,t
,_
) -> t
9 | HTMLABLEC
(_
,t
,_
) -> t
10 | MHTMLABLEC
(_
,t
,_
,_
,_
) -> t
11 | HTMLABLE_BIG
(t
,_
) -> t
13 let rec render_tex = function
14 TEX_FQ
(a
,b
,c
) -> (render_tex a
) ^
"_{" ^
(render_tex b
) ^
"}^{" ^
(render_tex c
) ^
"}"
15 | TEX_DQ
(a
,b
) -> (render_tex a
) ^
"_{" ^
(render_tex b
) ^
"}"
16 | TEX_UQ
(a
,b
) -> (render_tex a
) ^
"^{" ^
(render_tex b
) ^
"}"
17 | TEX_LITERAL s
-> tex_part s
18 | TEX_FUN1
(f
,a
) -> "{" ^ f ^
" " ^
(render_tex a
) ^
"}"
19 | TEX_FUN1hl
(f
,_
,a
) -> "{" ^ f ^
" " ^
(render_tex a
) ^
"}"
20 | TEX_FUN1hf
(f
,_
,a
) -> "{" ^ f ^
" " ^
(render_tex a
) ^
"}"
21 | TEX_DECLh
(f
,_
,a
) -> "{" ^ f ^
"{" ^
(mapjoin
render_tex a
) ^
"}}"
22 | TEX_FUN2
(f
,a
,b
) -> "{" ^ f ^
" " ^
(render_tex a
) ^
(render_tex b
) ^
"}"
23 | TEX_FUN2h
(f
,_
,a
,b
) -> "{" ^ f ^
" " ^
(render_tex a
) ^
(render_tex b
) ^
"}"
24 | TEX_FUN2sq
(f
,a
,b
) -> "{" ^ f ^
"[ " ^
(render_tex a
) ^
"]" ^
(render_tex b
) ^
"}"
25 | TEX_CURLY
(tl
) -> "{" ^
(mapjoin
render_tex tl
) ^
"}"
26 | TEX_INFIX
(s
,ll
,rl
) -> "{" ^
(mapjoin
render_tex ll
) ^
" " ^ s ^
"" ^
(mapjoin
render_tex rl
) ^
"}"
27 | TEX_INFIXh
(s
,_
,ll
,rl
) -> "{" ^
(mapjoin
render_tex ll
) ^
" " ^ s ^
"" ^
(mapjoin
render_tex rl
) ^
"}"
28 | TEX_BOX
(bt
,s
) -> "{"^bt^
"{" ^ s ^
"}}"
29 | TEX_BIG
(bt
,d
) -> "{"^bt^
(tex_part d
)^
"}"
30 | TEX_MATRIX
(t
,rows
) -> "{\\begin{"^t^
"}"^
(mapjoine
"\\\\" (mapjoine
"&" (mapjoin
render_tex)) rows
)^
"\\end{"^t^
"}}"
31 | TEX_LR
(l
,r
,tl
) -> "\\left "^
(tex_part l
)^
(mapjoin
render_tex tl
)^
"\\right "^
(tex_part r
)
34 type encoding_t
= LATIN1
| LATIN2
| UTF8
36 let modules_ams = ref false
37 let modules_nonascii = ref false
38 let modules_encoding = ref UTF8
40 let tex_use_ams () = modules_ams := true
41 let tex_use_nonascii () = modules_nonascii := true
42 let tex_mod_reset () = (modules_ams := false; modules_nonascii := false; modules_encoding := UTF8
)
44 let get_encoding = function
45 UTF8
-> "\\usepackage{ucs}\n\\usepackage[utf8]{inputenc}\n"
46 | LATIN1
-> "\\usepackage[latin1]{inputenc}\n"
47 | LATIN2
-> "\\usepackage[latin2]{inputenc}\n"
49 let get_preface () = "\\nonstopmode\n\\documentclass[12pt]{article}\n" ^
50 (if !modules_nonascii then get_encoding !modules_encoding else "") ^
51 (if !modules_ams then "\\usepackage{amsmath}\n\\usepackage{amsfonts}\n\\usepackage{amssymb}\n" else "") ^
52 "\\pagestyle{empty}\n\\begin{document}\n$$\n"
53 let get_footer () = "\n$$\n\\end{document}\n"
55 let set_encoding = function
56 "ISO-8859-1" -> modules_encoding := LATIN1
57 | "iso-8859-1" -> modules_encoding := LATIN1
58 | "ISO-8859-2" -> modules_encoding := LATIN2
59 | _
-> modules_encoding := UTF8
61 (* Turn that into hash table lookup *)
62 exception Illegal_tex_function
of string
65 "\\alpha" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\alpha ", "α"))
66 | "\\Alpha" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "A", "Α"))
67 | "\\beta" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\beta ", "β"))
68 | "\\Beta" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "B", "Β"))
69 | "\\gamma" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\gamma ", "γ"))
70 | "\\Gamma" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "\\Gamma ", "Γ"))
71 | "\\delta" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\delta ", "δ"))
72 | "\\Delta" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "\\Delta ", "Δ"))
73 | "\\epsilon" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\epsilon ", "ε"))
74 | "\\Epsilon" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "E", "Ε"))
75 | "\\varepsilon" -> LITERAL
(TEX_ONLY
"\\varepsilon ")
76 | "\\zeta" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\zeta ", "ζ"))
77 | "\\Zeta" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "Z", "Ζ"))
78 | "\\eta" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\eta ", "η"))
79 | "\\Eta" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "H", "Η"))
80 | "\\theta" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\theta ", "θ"))
81 | "\\Theta" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "\\Theta ", "Θ"))
82 | "\\vartheta" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\vartheta ", "ϑ"))
83 | "\\thetasym" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\vartheta ", "ϑ"))
84 | "\\iota" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\iota ", "ι"))
85 | "\\Iota" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "I", "Ι"))
86 | "\\kappa" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\kappa ", "κ"))
87 | "\\Kappa" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "K", "Κ"))
88 | "\\lambda" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\lambda ", "λ"))
89 | "\\Lambda" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "\\Lambda ", "Λ"))
90 | "\\mu" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\mu ", "μ"))
91 | "\\Mu" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "M", "Μ"))
92 | "\\nu" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\nu ", "ν"))
93 | "\\Nu" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "N", "Ν"))
94 | "\\pi" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\pi ", "π"))
95 | "\\Pi" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "\\Pi ", "Π"))
96 | "\\varpi" -> LITERAL
(TEX_ONLY
"\\varpi ")
97 | "\\rho" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\rho ", "ρ"))
98 | "\\Rho" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "P", "Ρ"))
99 | "\\varrho" -> LITERAL
(TEX_ONLY
"\\varrho ")
100 | "\\sigma" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\sigma ", "σ"))
101 | "\\Sigma" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "\\Sigma ", "Σ"))
102 | "\\varsigma" -> LITERAL
(TEX_ONLY
"\\varsigma ")
103 | "\\tau" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\tau ", "τ"))
104 | "\\Tau" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "T", "Τ"))
105 | "\\upsilon" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\upsilon ", "υ"))
106 | "\\Upsilon" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "\\Upsilon ", "Υ"))
107 | "\\phi" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\phi ", "φ"))
108 | "\\Phi" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "\\Phi ", "Φ"))
109 | "\\varphi" -> LITERAL
(TEX_ONLY
"\\varphi ")
110 | "\\chi" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\chi ", "χ"))
111 | "\\Chi" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "X", "Χ"))
112 | "\\psi" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\psi ", "ψ"))
113 | "\\Psi" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "\\Psi ", "Ψ"))
114 | "\\omega" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\omega ", "ω"))
115 | "\\Omega" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "\\Omega ", "Ω"))
116 | "\\xi" -> LITERAL
(HTMLABLEC
(FONT_UF
, "\\xi ", "ξ"))
117 | "\\Xi" -> LITERAL
(HTMLABLEC
(FONT_RTI
, "\\Xi ", "Ξ"))
118 | "\\aleph" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\aleph ", "ℵ"))
119 | "\\alef" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\aleph ", "ℵ"))
120 | "\\alefsym" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\aleph ", "ℵ"))
121 | "\\larr" -> LITERAL
(HTMLABLEM
(FONT_UF
, "\\leftarrow ", "←"))
122 | "\\leftarrow" -> LITERAL
(HTMLABLEM
(FONT_UF
, "\\leftarrow ", "←"))
123 | "\\rarr" -> LITERAL
(HTMLABLEM
(FONT_UF
, "\\rightarrow ", "→"))
124 | "\\to" -> LITERAL
(HTMLABLEM
(FONT_UF
, "\\to ", "→"))
125 | "\\gets" -> LITERAL
(HTMLABLEM
(FONT_UF
, "\\gets ", "←"))
126 | "\\rightarrow" -> LITERAL
(HTMLABLEM
(FONT_UF
, "\\rightarrow ", "→"))
127 | "\\longleftarrow" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\longleftarrow ", "←"))
128 | "\\longrightarrow" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\longrightarrow ", "→"))
129 | "\\Larr" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\Leftarrow ", "⇐"))
130 | "\\lArr" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\Leftarrow ", "⇐"))
131 | "\\Leftarrow" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\Leftarrow ", "⇐"))
132 | "\\Rarr" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\Rightarrow ", "⇒"))
133 | "\\rArr" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\Rightarrow ", "⇒"))
134 | "\\Rightarrow" -> LITERAL
(HTMLABLEM
(FONT_UF
, "\\Rightarrow ", "⇒"))
135 | "\\mapsto" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\mapsto ", "→"))
136 | "\\longmapsto" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\longmapsto ", "→"))
137 | "\\Longleftarrow" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\Longleftarrow ", "⇐"))
138 | "\\Longrightarrow" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\Longrightarrow ", "⇒"))
139 | "\\uarr" -> DELIMITER
(HTMLABLEM
(FONT_UF
, "\\uparrow ", "↑"))
140 | "\\uparrow" -> DELIMITER
(HTMLABLEM
(FONT_UF
, "\\uparrow ", "↑"))
141 | "\\uArr" -> DELIMITER
(HTMLABLE
(FONT_UF
, "\\Uparrow ", "⇑"))
142 | "\\Uarr" -> DELIMITER
(HTMLABLE
(FONT_UF
, "\\Uparrow ", "⇑"))
143 | "\\Uparrow" -> DELIMITER
(HTMLABLE
(FONT_UF
, "\\Uparrow ", "⇑"))
144 | "\\darr" -> DELIMITER
(HTMLABLEM
(FONT_UF
, "\\downarrow ", "↓"))
145 | "\\downarrow" -> DELIMITER
(HTMLABLEM
(FONT_UF
, "\\downarrow ", "↓"))
146 | "\\dArr" -> DELIMITER
(HTMLABLE
(FONT_UF
, "\\Downarrow ", "⇓"))
147 | "\\Darr" -> DELIMITER
(HTMLABLE
(FONT_UF
, "\\Downarrow ", "⇓"))
148 | "\\Downarrow" -> DELIMITER
(HTMLABLE
(FONT_UF
, "\\Downarrow ", "⇓"))
149 | "\\updownarrow" -> DELIMITER
(TEX_ONLY
"\\updownarrow ")
150 | "\\Updownarrow" -> DELIMITER
(TEX_ONLY
"\\Updownarrow ")
151 | "\\leftrightarrow" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\leftrightarrow ", "↔"))
152 | "\\lrarr" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\leftrightarrow ", "↔"))
153 | "\\harr" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\leftrightarrow ", "↔"))
154 | "\\Leftrightarrow" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\Leftrightarrow ", "⇔"))
155 | "\\Lrarr" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\Leftrightarrow ", "⇔"))
156 | "\\Harr" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\Leftrightarrow ", "⇔"))
157 | "\\lrArr" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\Leftrightarrow ", "⇔"))
158 | "\\hAar" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\Leftrightarrow ", "⇔"))
159 | "\\Longleftrightarrow"->LITERAL
(HTMLABLE
(FONT_UF
, "\\Longleftrightarrow ", "↔"))
160 | "\\iff" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\iff ", "↔"))
161 | "\\ll" -> LITERAL
(TEX_ONLY
"\\ll ")
162 | "\\gg" -> LITERAL
(TEX_ONLY
"\\gg ")
163 | "\\div" -> LITERAL
(TEX_ONLY
"\\div ")
164 | "\\searrow" -> LITERAL
(TEX_ONLY
"\\searrow ")
165 | "\\nearrow" -> LITERAL
(TEX_ONLY
"\\nearrow ")
166 | "\\swarrow" -> LITERAL
(TEX_ONLY
"\\swarrow ")
167 | "\\nwarrow" -> LITERAL
(TEX_ONLY
"\\nwarrow ")
168 | "\\sim" -> LITERAL
(TEX_ONLY
"\\sim ")
169 | "\\simeq" -> LITERAL
(TEX_ONLY
"\\simeq ")
170 | "\\star" -> LITERAL
(TEX_ONLY
"\\star ")
171 | "\\ell" -> LITERAL
(TEX_ONLY
"\\ell ")
172 | "\\P" -> LITERAL
(TEX_ONLY
"\\P ")
173 | "\\smile" -> LITERAL
(TEX_ONLY
"\\smile ")
174 | "\\frown" -> LITERAL
(TEX_ONLY
"\\frown ")
175 | "\\bigcap" -> LITERAL
(TEX_ONLY
"\\bigcap ")
176 | "\\bigodot" -> LITERAL
(TEX_ONLY
"\\bigodot ")
177 | "\\bigcup" -> LITERAL
(TEX_ONLY
"\\bigcup ")
178 | "\\bigotimes" -> LITERAL
(TEX_ONLY
"\\bigotimes ")
179 | "\\coprod" -> LITERAL
(TEX_ONLY
"\\coprod ")
180 | "\\bigsqcup" -> LITERAL
(TEX_ONLY
"\\bigsqcup ")
181 | "\\bigoplus" -> LITERAL
(TEX_ONLY
"\\bigoplus ")
182 | "\\bigvee" -> LITERAL
(TEX_ONLY
"\\bigvee ")
183 | "\\biguplus" -> LITERAL
(TEX_ONLY
"\\biguplus ")
184 | "\\oint" -> LITERAL
(TEX_ONLY
"\\oint ")
185 | "\\bigwedge" -> LITERAL
(TEX_ONLY
"\\bigwedge ")
186 | "\\models" -> LITERAL
(TEX_ONLY
"\\models ")
187 | "\\vdash" -> LITERAL
(TEX_ONLY
"\\vdash ")
188 | "\\triangle" -> LITERAL
(TEX_ONLY
"\\triangle ")
189 | "\\wr" -> LITERAL
(TEX_ONLY
"\\wr ")
190 | "\\triangleleft" -> LITERAL
(TEX_ONLY
"\\triangleleft ")
191 | "\\triangleright" -> LITERAL
(TEX_ONLY
"\\triangleright ")
192 | "\\textvisiblespace" -> LITERAL
(TEX_ONLY
"\\textvisiblespace ")
193 | "\\ker" -> LITERAL
(TEX_ONLY
"\\ker ")
194 | "\\lim" -> LITERAL
(TEX_ONLY
"\\lim ")
195 | "\\limsup" -> LITERAL
(TEX_ONLY
"\\limsup ")
196 | "\\liminf" -> LITERAL
(TEX_ONLY
"\\liminf ")
197 | "\\sup" -> LITERAL
(TEX_ONLY
"\\sup ")
198 | "\\Pr" -> LITERAL
(TEX_ONLY
"\\Pr ")
199 | "\\hom" -> LITERAL
(TEX_ONLY
"\\hom ")
200 | "\\arg" -> LITERAL
(TEX_ONLY
"\\arg ")
201 | "\\dim" -> LITERAL
(TEX_ONLY
"\\dim ")
202 | "\\inf" -> LITERAL
(TEX_ONLY
"\\inf ")
203 | "\\circ" -> LITERAL
(TEX_ONLY
"\\circ ")
204 | "\\hbar" -> LITERAL
(TEX_ONLY
"\\hbar ")
205 | "\\imath" -> LITERAL
(TEX_ONLY
"\\imath ")
206 | "\\lnot" -> LITERAL
(TEX_ONLY
"\\lnot ")
207 | "\\hookrightarrow" -> LITERAL
(TEX_ONLY
"\\hookrightarrow ")
208 | "\\hookleftarrow" -> LITERAL
(TEX_ONLY
"\\hookleftarrow ")
209 | "\\mp" -> LITERAL
(TEX_ONLY
"\\mp ")
210 | "\\approx" -> LITERAL
(TEX_ONLY
"\\approx ")
211 | "\\propto" -> LITERAL
(TEX_ONLY
"\\propto ")
212 | "\\flat" -> LITERAL
(TEX_ONLY
"\\flat ")
213 | "\\sharp" -> LITERAL
(TEX_ONLY
"\\sharp ")
214 | "\\natural" -> LITERAL
(TEX_ONLY
"\\natural ")
215 | "\\int" -> LITERAL
(HTMLABLE_BIG
("\\int ", "∫"))
216 | "\\sum" -> LITERAL
(HTMLABLE_BIG
("\\sum ", "∑"))
217 | "\\prod" -> LITERAL
(HTMLABLE_BIG
("\\prod ", "∏"))
218 | "\\vdots" -> LITERAL
(TEX_ONLY
"\\vdots ")
219 | "\\limits" -> LITERAL
(TEX_ONLY
"\\limits ")
220 | "\\nolimits" -> LITERAL
(TEX_ONLY
"\\nolimits ")
221 | "\\top" -> LITERAL
(TEX_ONLY
"\\top ")
222 | "\\sin" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\sin ","sin"))
223 | "\\cos" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\cos ","cos"))
224 | "\\sinh" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\sinh ","sinh"))
225 | "\\cosh" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\cosh ","cosh"))
226 | "\\tan" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\tan ","tan"))
227 | "\\tanh" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\tanh ","tanh"))
228 | "\\sec" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\sec ","sec"))
229 | "\\csc" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\csc ","csc"))
230 | "\\arcsin" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\arcsin ","arcsin"))
231 | "\\arctan" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\arctan ","arctan"))
232 | "\\arccos" -> (tex_use_ams (); LITERAL
(HTMLABLEC
(FONT_UFH
,"\\mathop{\\mathrm{arccos}}","arccos")))
233 | "\\arccot" -> (tex_use_ams (); LITERAL
(HTMLABLEC
(FONT_UFH
,"\\mathop{\\mathrm{arccot}}","arccot")))
234 | "\\arcsec" -> (tex_use_ams (); LITERAL
(HTMLABLEC
(FONT_UFH
,"\\mathop{\\mathrm{arcsec}}","arcsec")))
235 | "\\arccsc" -> (tex_use_ams (); LITERAL
(HTMLABLEC
(FONT_UFH
,"\\mathop{\\mathrm{arccsc}}","arccsc")))
236 | "\\sgn" -> (tex_use_ams (); LITERAL
(HTMLABLEC
(FONT_UFH
,"\\mathop{\\mathrm{sgn}}","sgn")))
237 | "\\cot" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\cot ","cot"))
238 | "\\coth" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\coth ","coth"))
239 | "\\log" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\log ", "log"))
240 | "\\lg" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\lg ", "lg"))
241 | "\\ln" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\ln ", "ln"))
242 | "\\exp" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\exp ", "exp"))
243 | "\\min" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\min ", "min"))
244 | "\\max" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\max ", "max"))
245 | "\\gcd" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\gcd ", "gcd"))
246 | "\\deg" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\deg ", "deg"))
247 | "\\det" -> LITERAL
(HTMLABLEC
(FONT_UFH
,"\\det ", "det"))
248 | "\\bullet" -> LITERAL
(HTMLABLE
(FONT_UFH
, "\\bullet ", "•"))
249 | "\\bull" -> LITERAL
(HTMLABLE
(FONT_UFH
, "\\bullet ", "•"))
250 | "\\angle" -> (tex_use_ams (); LITERAL
(HTMLABLE
(FONT_UF
, "\\angle ", "∠")))
251 | "\\dagger" -> LITERAL
(HTMLABLEM
(FONT_UFH
, "\\dagger ", "†"))
252 | "\\ddagger" -> LITERAL
(HTMLABLEM
(FONT_UFH
, "\\ddagger ", "‡"))
253 | "\\Dagger" -> LITERAL
(HTMLABLEM
(FONT_UFH
, "\\ddagger ", "‡"))
254 | "\\colon" -> LITERAL
(HTMLABLEC
(FONT_UFH
, "\\colon ", ":"))
255 | "\\Vert" -> DELIMITER
(HTMLABLEM
(FONT_UFH
, "\\Vert ", "||"))
256 | "\\vert" -> DELIMITER
(HTMLABLEM
(FONT_UFH
, "\\vert ", "|"))
257 | "\\wp" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\wp ", "℘"))
258 | "\\weierp" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\wp ", "℘"))
259 | "\\wedge" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\wedge ", "∧"))
260 | "\\and" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\land ", "∧"))
261 | "\\land" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\land ", "∧"))
262 | "\\vee" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\vee ", "∨"))
263 | "\\or" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\lor ", "∨"))
264 | "\\lor" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\lor ", "∨"))
265 | "\\sub" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\subset ", "⊂"))
266 | "\\supe" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\supseteq ", "⊇"))
267 | "\\sube" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\subseteq ", "⊆"))
268 | "\\supset" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\supset ", "⊃"))
269 | "\\subset" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\subset ", "⊂"))
270 | "\\supseteq" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\supseteq ", "⊇"))
271 | "\\subseteq" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\subseteq ", "⊆"))
272 | "\\sqsupset" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\sqsupset "))
273 | "\\sqsubset" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\sqsubset "))
274 | "\\sqsupseteq" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\sqsupseteq "))
275 | "\\sqsubseteq" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\sqsubseteq "))
276 | "\\perp" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\perp ", "⊥"))
277 | "\\bot" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\bot ", "⊥"))
278 | "\\lfloor" -> DELIMITER
(HTMLABLE
(FONT_UF
, "\\lfloor ", "⌊"))
279 | "\\rfloor" -> DELIMITER
(HTMLABLE
(FONT_UF
, "\\rfloor ", "⌋"))
280 | "\\lceil" -> DELIMITER
(HTMLABLE
(FONT_UF
, "\\lceil ", "⌈"))
281 | "\\rceil" -> DELIMITER
(HTMLABLE
(FONT_UF
, "\\rceil ", "⌉"))
282 | "\\lbrace" -> DELIMITER
(HTMLABLEC
(FONT_UFH
, "\\lbrace ", "{"))
283 | "\\rbrace" -> DELIMITER
(HTMLABLEC
(FONT_UFH
, "\\rbrace ", "}"))
284 | "\\infty" -> LITERAL
(HTMLABLEM
(FONT_UF
, "\\infty ", "∞"))
285 | "\\infin" -> LITERAL
(HTMLABLEM
(FONT_UF
, "\\infty ", "∞"))
286 | "\\isin" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\in ", "∈"))
287 | "\\in" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\in ", "∈"))
288 | "\\ni" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\ni ", "∋"))
289 | "\\notin" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\notin ", "∉"))
290 | "\\smallsetminus" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\smallsetminus "))
291 | "\\And" -> (tex_use_ams (); LITERAL
(HTMLABLEM
(FONT_UFH
, "\\And ", " & ")))
292 | "\\forall" -> LITERAL
(HTMLABLE
(FONT_UFH
, "\\forall ", "∀"))
293 | "\\exists" -> LITERAL
(HTMLABLE
(FONT_UFH
, "\\exists ", "∃"))
294 | "\\exist" -> LITERAL
(HTMLABLE
(FONT_UFH
, "\\exists ", "∃"))
295 | "\\equiv" -> LITERAL
(HTMLABLEM
(FONT_UFH
, "\\equiv ", "≡"))
296 | "\\ne" -> LITERAL
(HTMLABLEM
(FONT_UFH
, "\\neq ", "≠"))
297 | "\\neq" -> LITERAL
(HTMLABLEM
(FONT_UFH
, "\\neq ", "≠"))
298 | "\\Re" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\Re ", "ℜ"))
299 | "\\real" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\Re ", "ℜ"))
300 | "\\Im" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\Im ", "ℑ"))
301 | "\\image" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\Im ", "ℑ"))
302 | "\\prime" -> LITERAL
(HTMLABLE
(FONT_UFH
,"\\prime ", "′"))
303 | "\\backslash" -> DELIMITER
(HTMLABLEM
(FONT_UFH
,"\\backslash ", "\\"))
304 | "\\setminus" -> LITERAL
(HTMLABLEM
(FONT_UFH
,"\\setminus ", "\\"))
305 | "\\times" -> LITERAL
(HTMLABLEM
(FONT_UFH
,"\\times ", "×"))
306 | "\\pm" -> LITERAL
(HTMLABLEM
(FONT_UFH
,"\\pm ", "±"))
307 | "\\plusmn" -> LITERAL
(HTMLABLEM
(FONT_UFH
,"\\pm ", "±"))
308 | "\\cdot" -> LITERAL
(HTMLABLE
(FONT_UFH
,"\\cdot ", "⋅"))
309 | "\\AA" -> LITERAL
(HTMLABLE
(FONT_UFH
,"\\AA ", "Å"))
310 | "\\cdots" -> LITERAL
(HTMLABLE
(FONT_UFH
,"\\cdots ", "⋅⋅⋅"))
311 | "\\sdot" -> LITERAL
(HTMLABLE
(FONT_UFH
,"\\cdot ", "⋅"))
312 | "\\oplus" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\oplus ", "⊕"))
313 | "\\otimes" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\otimes ", "⊗"))
314 | "\\cap" -> LITERAL
(HTMLABLEM
(FONT_UF
, "\\cap ", "∩"))
315 | "\\cup" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\cup ", "∪"))
316 | "\\sqcap" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\sqcap "))
317 | "\\sqcup" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\sqcup "))
318 | "\\empty" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\emptyset ", "∅"))
319 | "\\emptyset" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\emptyset ", "∅"))
320 | "\\O" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\emptyset ", "∅"))
321 | "\\S" -> LITERAL
(HTMLABLEM
(FONT_UFH
,"\\S ", "§"))
322 | "\\sect" -> LITERAL
(HTMLABLEM
(FONT_UFH
,"\\S ", "§"))
323 | "\\nabla" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\nabla ", "∇"))
324 | "\\geq" -> LITERAL
(HTMLABLE
(FONT_UFH
,"\\geq ", "≥"))
325 | "\\ge" -> LITERAL
(HTMLABLE
(FONT_UFH
,"\\geq ", "≥"))
326 | "\\leq" -> LITERAL
(HTMLABLE
(FONT_UFH
,"\\leq ", "≤"))
327 | "\\le" -> LITERAL
(HTMLABLE
(FONT_UFH
,"\\leq ", "≤"))
328 | "\\cong" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\cong ", "≅"))
329 | "\\ang" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\angle ", "∠"))
330 | "\\part" -> LITERAL
(HTMLABLEM
(FONT_UF
, "\\partial ", "∂"))
331 | "\\partial" -> LITERAL
(HTMLABLEM
(FONT_UF
, "\\partial ", "∂"))
332 | "\\ldots" -> LITERAL
(HTMLABLEM
(FONT_UFH
,"\\ldots ", "..."))
333 | "\\dots" -> LITERAL
(HTMLABLEM
(FONT_UFH
,"\\dots ", "..."))
334 | "\\quad" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\quad "," "))
335 | "\\qquad" -> LITERAL
(HTMLABLE
(FONT_UF
, "\\qquad "," "))
336 | "\\mid" -> LITERAL
(HTMLABLEM
(FONT_UFH
,"\\mid ", " | "))
337 | "\\neg" -> LITERAL
(HTMLABLEM
(FONT_UFH
,"\\neg ", "¬"))
338 | "\\langle" -> DELIMITER
(HTMLABLE
(FONT_UFH
,"\\langle ","⟨"))
339 | "\\rangle" -> DELIMITER
(HTMLABLE
(FONT_UFH
,"\\rangle ","⟩"))
340 | "\\lang" -> DELIMITER
(HTMLABLE
(FONT_UFH
,"\\langle ","⟨"))
341 | "\\rang" -> DELIMITER
(HTMLABLE
(FONT_UFH
,"\\rangle ","⟩"))
342 | "\\lbrack" -> DELIMITER
(HTMLABLEC
(FONT_UFH
,"[","["))
343 | "\\rbrack" -> DELIMITER
(HTMLABLEC
(FONT_UFH
,"]","]"))
344 | "\\ddots" -> LITERAL
(TEX_ONLY
"\\ddots ")
345 | "\\clubs" -> LITERAL
(TEX_ONLY
"\\clubsuit ")
346 | "\\clubsuit" -> LITERAL
(TEX_ONLY
"\\clubsuit ")
347 | "\\spades" -> LITERAL
(TEX_ONLY
"\\spadesuit ")
348 | "\\spadesuit" -> LITERAL
(TEX_ONLY
"\\spadesuit ")
349 | "\\hearts" -> LITERAL
(TEX_ONLY
"\\heartsuit ")
350 | "\\heartsuit" -> LITERAL
(TEX_ONLY
"\\heartsuit ")
351 | "\\diamonds" -> LITERAL
(TEX_ONLY
"\\diamondsuit ")
352 | "\\diamondsuit" -> LITERAL
(TEX_ONLY
"\\diamondsuit ")
353 | "\\implies" -> (tex_use_ams (); LITERAL
(HTMLABLE
(FONT_UF
, "\\implies ", "⇒")))
354 | "\\mod" -> (tex_use_ams (); LITERAL
(HTMLABLE
(FONT_UFH
,"\\mod ", "mod")))
355 | "\\Diamond" -> (tex_use_ams (); LITERAL
(HTMLABLE
(FONT_UF
, "\\Diamond ", "◊")))
356 | "\\dotsb" -> (tex_use_ams (); LITERAL
(HTMLABLE
(FONT_UF
, "\\dotsb ", "⋅⋅⋅")))
357 | "\\reals" -> (tex_use_ams (); LITERAL
(HTMLABLE
(FONT_UFH
,"\\mathbb{R}", "<b>R</b>")))
358 | "\\Reals" -> (tex_use_ams (); LITERAL
(HTMLABLE
(FONT_UFH
,"\\mathbb{R}", "<b>R</b>")))
359 | "\\R" -> (tex_use_ams (); LITERAL
(HTMLABLE
(FONT_UFH
,"\\mathbb{R}", "<b>R</b>")))
360 | "\\cnums" -> (tex_use_ams (); LITERAL
(HTMLABLE
(FONT_UFH
,"\\mathbb{C}", "<b>C</b>")))
361 | "\\Complex" -> (tex_use_ams (); LITERAL
(HTMLABLE
(FONT_UFH
,"\\mathbb{C}", "<b>C</b>")))
362 | "\\Z" -> (tex_use_ams (); LITERAL
(HTMLABLE
(FONT_UFH
,"\\mathbb{Z}", "<b>Z</b>")))
363 | "\\natnums" -> (tex_use_ams (); LITERAL
(HTMLABLE
(FONT_UFH
,"\\mathbb{N}", "<b>N</b>")))
364 | "\\N" -> (tex_use_ams (); LITERAL
(HTMLABLE
(FONT_UFH
,"\\mathbb{N}", "<b>N</b>")))
365 | "\\lVert" -> (tex_use_ams (); LITERAL
(HTMLABLE
(FONT_UFH
,"\\lVert ", "||")))
366 | "\\rVert" -> (tex_use_ams (); LITERAL
(HTMLABLE
(FONT_UFH
,"\\rVert ", "||")))
367 | "\\nmid" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\nmid "))
368 | "\\lesssim" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\lesssim "))
369 | "\\ngeq" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\ngeq "))
370 | "\\smallsmile" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\smallsmile "))
371 | "\\smallfrown" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\smallfrown "))
372 | "\\nleftarrow" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\nleftarrow "))
373 | "\\nrightarrow" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\nrightarrow "))
374 | "\\trianglelefteq" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\trianglelefteq "))
375 | "\\trianglerighteq" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\trianglerighteq "))
376 | "\\square" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\square "))
377 | "\\checkmark" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\checkmark "))
378 | "\\supsetneq" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\supsetneq "))
379 | "\\subsetneq" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\subsetneq "))
380 | "\\Box" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\Box "))
381 | "\\nleq" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\nleq "))
382 | "\\upharpoonright" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\upharpoonright "))
383 | "\\upharpoonleft" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\upharpoonleft "))
384 | "\\downharpoonright" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\downharpoonright "))
385 | "\\downharpoonleft" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\downharpoonleft "))
386 | "\\rightharpoonup" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\rightharpoonup "))
387 | "\\rightharpoondown" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\rightharpoondown "))
388 | "\\leftharpoonup" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\leftharpoonup "))
389 | "\\leftharpoondown" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\leftharpoondown "))
390 | "\\nless" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\nless "))
391 | "\\Vdash" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\Vdash "))
392 | "\\vDash" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\vDash "))
393 | "\\varkappa" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\varkappa "))
394 | "\\digamma" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\digamma "))
395 | "\\beth" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\beth "))
396 | "\\daleth" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\daleth "))
397 | "\\gimel" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\gimel "))
398 | "\\complement" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\complement "))
399 | "\\eth" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\eth "))
400 | "\\hslash" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\hslash "))
401 | "\\mho" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\mho "))
402 | "\\Finv" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\Finv "))
403 | "\\Game" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\Game "))
404 | "\\varlimsup" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\varlimsup "))
405 | "\\varliminf" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\varliminf "))
406 | "\\varinjlim" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\varinjlim "))
407 | "\\varprojlim" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\varprojlim "))
408 | "\\injlim" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\injlim "))
409 | "\\projlim" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\projlim "))
410 | "\\iint" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\iint "))
411 | "\\iiint" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\iiint "))
412 | "\\iiiint" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\iiiint "))
413 | "\\varnothing" -> (tex_use_ams (); LITERAL
(TEX_ONLY
"\\varnothing "))
416 | "\\hat" -> FUN_AR1
"\\hat "
417 | "\\widehat" -> FUN_AR1
"\\widehat "
418 | "\\overline" -> FUN_AR1
"\\overline "
419 | "\\overbrace" -> FUN_AR1
"\\overbrace "
420 | "\\underline" -> FUN_AR1
"\\underline "
421 | "\\underbrace" -> FUN_AR1
"\\underbrace "
422 | "\\overleftarrow" -> FUN_AR1
"\\overleftarrow "
423 | "\\overrightarrow" -> FUN_AR1
"\\overrightarrow "
424 | "\\overleftrightarrow"->FUN_AR1
"\\overleftrightarrow "
425 | "\\check" -> FUN_AR1
"\\check "
426 | "\\acute" -> FUN_AR1
"\\acute "
427 | "\\grave" -> FUN_AR1
"\\grave "
428 | "\\bar" -> FUN_AR1
"\\bar "
429 | "\\vec" -> FUN_AR1
"\\vec "
430 | "\\dot" -> FUN_AR1
"\\dot "
431 | "\\ddot" -> FUN_AR1
"\\ddot "
432 | "\\breve" -> FUN_AR1
"\\breve "
433 | "\\tilde" -> FUN_AR1
"\\tilde "
434 | "\\not" -> FUN_AR1
"\\not "
435 | "\\choose" -> FUN_INFIX
"\\choose "
436 | "\\atop" -> FUN_INFIX
"\\atop "
437 | "\\binom" -> FUN_AR2
"\\binom "
438 | "\\frac" -> FUN_AR2h
("\\frac ", fun num den
-> Html.html_render
[num
], "<hr style=\"{background: black}\"/>", Html.html_render
[den
])
439 | "\\cfrac" -> (tex_use_ams (); FUN_AR2h
("\\cfrac ", fun num den
-> Html.html_render
[num
], "<hr style=\"{background: black}\">", Html.html_render
[den
]))
440 | "\\over" -> FUN_INFIXh
("\\over ", fun num den
-> Html.html_render num
, "<hr style=\"{background: black}\"/>", Html.html_render den
)
441 | "\\sqrt" -> FUN_AR1
"\\sqrt "
442 | "\\pmod" -> FUN_AR1hl
("\\pmod ", ("(mod ", ")"))
443 | "\\bmod" -> FUN_AR1hl
("\\bmod ", ("mod ", ""))
444 | "\\emph" -> FUN_AR1
"\\emph "
445 | "\\texttt" -> FUN_AR1
"\\texttt "
446 | "\\textbf" -> FUN_AR1
"\\textbf "
447 | "\\textit" -> FUN_AR1hf
("\\textit ", FONTFORCE_IT
)
448 | "\\textrm" -> FUN_AR1hf
("\\textrm ", FONTFORCE_RM
)
449 | "\\rm" -> DECLh
("\\rm ", FONTFORCE_RM
)
450 | "\\it" -> DECLh
("\\it ", FONTFORCE_IT
)
451 | "\\cal" -> DECL
"\\cal "
452 | "\\bf" -> DECL
"\\bf "
453 | "\\big" -> BIG
"\\big "
454 | "\\Big" -> BIG
"\\Big "
455 | "\\bigg" -> BIG
"\\bigg "
456 | "\\Bigg" -> BIG
"\\Bigg "
457 | "\\mathit" -> (tex_use_ams (); FUN_AR1hf
("\\mathit ", FONTFORCE_IT
))
458 | "\\mathrm" -> (tex_use_ams (); FUN_AR1hf
("\\mathrm ", FONTFORCE_RM
))
459 | "\\mathop" -> (tex_use_ams (); FUN_AR1
"\\mathop ")
460 | "\\boldsymbol" -> (tex_use_ams (); FUN_AR1
"\\boldsymbol ")
461 | "\\bold" -> (tex_use_ams (); FUN_AR1
"\\mathbf ")
462 | "\\Bbb" -> (tex_use_ams (); FUN_AR1
"\\mathbb ")
463 | "\\mathbf" -> (tex_use_ams (); FUN_AR1
"\\mathbf ")
464 | "\\mathsf" -> (tex_use_ams (); FUN_AR1
"\\mathsf ")
465 | "\\mathcal" -> (tex_use_ams (); FUN_AR1
"\\mathcal ")
466 | "\\mathbb" -> (tex_use_ams (); FUN_AR1
"\\mathbb ")
467 | "\\mathfrak" -> (tex_use_ams (); FUN_AR1
"\\mathfrak ")
468 | "\\operatorname" -> (tex_use_ams (); FUN_AR1
"\\operatorname ")
469 | "\\mbox" -> raise
(Failure
"malformatted \\mbox")
470 | "\\vbox" -> raise
(Failure
"malformatted \\vbox")
471 | "\\hbox" -> raise
(Failure
"malformatted \\hbox")
472 | s
-> raise
(Illegal_tex_function s
)