mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/Math
synced 2024-12-18 10:30:51 +00:00
a2b53e5a36
but \operatorname to fix Bug 31442. More specifically, TEX_FUN1 now adds braces as it did in previous versions. The result is texvc will once again correctly sanitize multiple math accents even when no braces are given (e.g. \dot \vec B) and it will allow math accents to be used with symbols whose font as been changed (e.g. \tilde \mathcal{M}). Parser tests are created to ensure these continue to work. The handling of \operatorname is now handled specially by the function TEX_FUN1nb (nb stands for no braces and the name is taken to be consistent with the existing function TEX_FUN2nb). The addition of braces causes this command to LaTeX incorrectly. The parser test for \operatorname has been updated to reflect the fact the hash of the images involved has changed.
752 lines
54 KiB
OCaml
752 lines
54 KiB
OCaml
(* vim: set sw=8 ts=8 et: *)
|
|
open Parser
|
|
open Render_info
|
|
open Tex
|
|
open Util
|
|
|
|
let tex_part = function
|
|
HTMLABLE (_,t,_) -> t
|
|
| HTMLABLEM (_,t,_) -> t
|
|
| HTMLABLEC (_,t,_) -> t
|
|
| MHTMLABLEC (_,t,_,_,_) -> t
|
|
| HTMLABLE_BIG (t,_) -> t
|
|
| TEX_ONLY t -> t
|
|
|
|
let rec render_tex = function
|
|
TEX_FQ (a,b,c) -> (render_tex a) ^ "_{" ^ (render_tex b) ^ "}^{" ^ (render_tex c) ^ "}"
|
|
| TEX_DQ (a,b) -> (render_tex a) ^ "_{" ^ (render_tex b) ^ "}"
|
|
| TEX_UQ (a,b) -> (render_tex a) ^ "^{" ^ (render_tex b) ^ "}"
|
|
| TEX_FQN (a,b) -> "_{" ^ (render_tex a) ^ "}^{" ^ (render_tex b) ^ "}"
|
|
| TEX_DQN (a) -> "_{" ^ (render_tex a) ^ "}"
|
|
| TEX_UQN (a) -> "^{" ^ (render_tex a) ^ "}"
|
|
| TEX_LITERAL s -> tex_part s
|
|
| TEX_FUN1 (f,a) -> "{" ^ f ^ " " ^ (render_tex a) ^ "}"
|
|
| TEX_FUN1nb (f,a) -> f ^ " " ^ (render_tex a)
|
|
| TEX_FUN1hl (f,_,a) -> "{" ^ f ^ " " ^ (render_tex a) ^ "}"
|
|
| TEX_FUN1hf (f,_,a) -> "{" ^ f ^ " " ^ (render_tex a) ^ "}"
|
|
| TEX_DECLh (f,_,a) -> "{" ^ f ^ "{" ^ (mapjoin render_tex a) ^ "}}"
|
|
| TEX_FUN2 (f,a,b) -> "{" ^ f ^ " " ^ (render_tex a) ^ (render_tex b) ^ "}"
|
|
| TEX_FUN2nb (f,a,b) -> f ^ (render_tex a) ^ (render_tex b)
|
|
| TEX_FUN2h (f,_,a,b) -> "{" ^ f ^ " " ^ (render_tex a) ^ (render_tex b) ^ "}"
|
|
| TEX_FUN2sq (f,a,b) -> "{" ^ f ^ "[ " ^ (render_tex a) ^ "]" ^ (render_tex b) ^ "}"
|
|
| TEX_CURLY (tl) -> "{" ^ (mapjoin render_tex tl) ^ "}"
|
|
| TEX_INFIX (s,ll,rl) -> "{" ^ (mapjoin render_tex ll) ^ " " ^ s ^ "" ^ (mapjoin render_tex rl) ^ "}"
|
|
| TEX_INFIXh (s,_,ll,rl) -> "{" ^ (mapjoin render_tex ll) ^ " " ^ s ^ "" ^ (mapjoin render_tex rl) ^ "}"
|
|
| TEX_BOX (bt,s) -> "{"^bt^"{" ^ s ^ "}}"
|
|
| TEX_BIG (bt,d) -> "{"^bt^(tex_part d)^"}"
|
|
| TEX_MATRIX (t,rows) -> "{\\begin{"^t^"}"^(mapjoine "\\\\" (mapjoine "&" (mapjoin render_tex)) rows)^"\\end{"^t^"}}"
|
|
| TEX_LR (l,r,tl) -> "\\left "^(tex_part l)^(mapjoin render_tex tl)^"\\right "^(tex_part r)
|
|
|
|
|
|
(* Dynamic loading*)
|
|
type encoding_t = LATIN1 | LATIN2 | UTF8
|
|
|
|
(* module properties *)
|
|
let modules_ams = ref false
|
|
let modules_nonascii = ref false
|
|
let modules_encoding = ref UTF8
|
|
let modules_color = ref false
|
|
let modules_teubner = ref false
|
|
let modules_euro = ref false
|
|
|
|
(* wrappers to easily set / reset module properties *)
|
|
let tex_use_ams () = modules_ams := true
|
|
let tex_use_nonascii () = modules_nonascii := true
|
|
let tex_use_color () = modules_color := true
|
|
let tex_use_teubner () = modules_teubner := true
|
|
let tex_use_euro () = modules_euro := true
|
|
let tex_mod_reset () = (
|
|
modules_ams := false;
|
|
modules_nonascii := false;
|
|
modules_encoding := UTF8;
|
|
modules_color := false;
|
|
modules_teubner := false;
|
|
modules_euro := false;
|
|
)
|
|
|
|
(* Return TeX fragment for one of the encodings in (UTF8,LATIN1,LATIN2) *)
|
|
let get_encoding = function
|
|
UTF8 -> "\\usepackage{ucs}\n\\usepackage[utf8]{inputenc}\n"
|
|
| LATIN1 -> "\\usepackage[latin1]{inputenc}\n"
|
|
| LATIN2 -> "\\usepackage[latin2]{inputenc}\n"
|
|
|
|
(* TeX fragment inserted before the output *)
|
|
let get_preface () = "\\nonstopmode\n\\documentclass[12pt]{article}\n" ^
|
|
(if !modules_nonascii then get_encoding !modules_encoding else "") ^
|
|
(if !modules_ams then "\\usepackage{amsmath}\n\\usepackage{amsfonts}\n\\usepackage{amssymb}\n" else "") ^
|
|
(if !modules_color then "\\usepackage[dvips,usenames]{color}\n" else "") ^
|
|
(if !modules_teubner then "\\usepackage[greek]{babel}\n\\usepackage{teubner}\n" else "") ^
|
|
(if !modules_euro then "\\usepackage{eurosym}\n" else "") ^
|
|
"\\usepackage{cancel}\n\\pagestyle{empty}\n\\begin{document}\n$$\n"
|
|
|
|
(* TeX fragment appended after the content *)
|
|
let get_footer () = "\n$$\n\\end{document}\n"
|
|
|
|
(* Default to UTF8 *)
|
|
let set_encoding = function
|
|
"ISO-8859-1" -> modules_encoding := LATIN1
|
|
| "iso-8859-1" -> modules_encoding := LATIN1
|
|
| "ISO-8859-2" -> modules_encoding := LATIN2
|
|
| _ -> modules_encoding := UTF8
|
|
|
|
(* Turn that into hash table lookup *)
|
|
exception Illegal_tex_function of string
|
|
|
|
let find = function
|
|
"\\alpha" -> LITERAL (HTMLABLEC (FONT_UF, "\\alpha ", "α"))
|
|
| "\\Alpha" -> (tex_use_ams (); LITERAL (HTMLABLEC (FONT_UF,
|
|
"\\mathrm{A}", "Α")))
|
|
| "\\beta" -> LITERAL (HTMLABLEC (FONT_UF, "\\beta ", "β"))
|
|
| "\\Beta" -> (tex_use_ams (); LITERAL (HTMLABLEC (FONT_UF,
|
|
"\\mathrm{B}", "Β")))
|
|
| "\\gamma" -> LITERAL (HTMLABLEC (FONT_UF, "\\gamma ", "γ"))
|
|
| "\\Gamma" -> LITERAL (HTMLABLEC (FONT_UF, "\\Gamma ", "Γ"))
|
|
| "\\delta" -> LITERAL (HTMLABLEC (FONT_UF, "\\delta ", "δ"))
|
|
| "\\Delta" -> LITERAL (HTMLABLEC (FONT_UF, "\\Delta ", "Δ"))
|
|
| "\\epsilon" -> LITERAL (TEX_ONLY "\\epsilon ")
|
|
| "\\Epsilon" -> (tex_use_ams (); LITERAL (HTMLABLEC (FONT_UF,
|
|
"\\mathrm{E}", "Ε")))
|
|
| "\\varepsilon" -> LITERAL (HTMLABLEC (FONT_UF, "\\varepsilon ", "ε"))
|
|
| "\\zeta" -> LITERAL (HTMLABLEC (FONT_UF, "\\zeta ", "ζ"))
|
|
| "\\Zeta" -> (tex_use_ams (); LITERAL (HTMLABLEC (FONT_UF,
|
|
"\\mathrm{Z}", "Ζ")))
|
|
| "\\eta" -> LITERAL (HTMLABLEC (FONT_UF, "\\eta ", "η"))
|
|
| "\\Eta" -> (tex_use_ams (); LITERAL (HTMLABLEC (FONT_UF,
|
|
"\\mathrm{H}", "Η")))
|
|
| "\\theta" -> LITERAL (HTMLABLEC (FONT_UF, "\\theta ", "θ"))
|
|
| "\\Theta" -> LITERAL (HTMLABLEC (FONT_UF, "\\Theta ", "Θ"))
|
|
| "\\vartheta" -> LITERAL (HTMLABLE (FONT_UF, "\\vartheta ", "ϑ"))
|
|
| "\\thetasym" -> LITERAL (HTMLABLE (FONT_UF, "\\vartheta ", "ϑ"))
|
|
| "\\iota" -> LITERAL (HTMLABLEC (FONT_UF, "\\iota ", "ι"))
|
|
| "\\Iota" -> (tex_use_ams (); LITERAL (HTMLABLEC (FONT_UF,
|
|
"\\mathrm{I}", "Ι")))
|
|
| "\\kappa" -> LITERAL (HTMLABLEC (FONT_UF, "\\kappa ", "κ"))
|
|
| "\\Kappa" -> (tex_use_ams (); LITERAL (HTMLABLEC (FONT_UF,
|
|
"\\mathrm{K}", "Κ")))
|
|
| "\\lambda" -> LITERAL (HTMLABLEC (FONT_UF, "\\lambda ", "λ"))
|
|
| "\\Lambda" -> LITERAL (HTMLABLEC (FONT_UF, "\\Lambda ", "Λ"))
|
|
| "\\mu" -> LITERAL (HTMLABLEC (FONT_UF, "\\mu ", "μ"))
|
|
| "\\Mu" -> (tex_use_ams (); LITERAL (HTMLABLEC (FONT_UF,
|
|
"\\mathrm{M}", "Μ")))
|
|
| "\\nu" -> LITERAL (HTMLABLEC (FONT_UF, "\\nu ", "ν"))
|
|
| "\\Nu" -> (tex_use_ams (); LITERAL (HTMLABLEC (FONT_UF,
|
|
"\\mathrm{N}", "Ν")))
|
|
| "\\omicron" -> (tex_use_ams (); LITERAL (HTMLABLEC (FONT_UF,
|
|
"\\mathrm{o}", "ο")))
|
|
| "\\Omicron" -> (tex_use_ams (); LITERAL (HTMLABLEC (FONT_UF,
|
|
"\\mathrm{O}", "Ο")))
|
|
| "\\pi" -> LITERAL (HTMLABLEC (FONT_UF, "\\pi ", "π"))
|
|
| "\\Pi" -> LITERAL (HTMLABLEC (FONT_UF, "\\Pi ", "Π"))
|
|
| "\\varpi" -> LITERAL (TEX_ONLY "\\varpi ")
|
|
| "\\rho" -> LITERAL (HTMLABLEC (FONT_UF, "\\rho ", "ρ"))
|
|
| "\\Rho" -> (tex_use_ams (); LITERAL (HTMLABLEC (FONT_UF,
|
|
"\\mathrm{P}", "Ρ")))
|
|
| "\\varrho" -> LITERAL (TEX_ONLY "\\varrho ")
|
|
| "\\sim" -> LITERAL (HTMLABLEC (FONT_UF, "\\sim ", "∼"))
|
|
| "\\sigma" -> LITERAL (HTMLABLEC (FONT_UF, "\\sigma ", "σ"))
|
|
| "\\Sigma" -> LITERAL (HTMLABLEC (FONT_UF, "\\Sigma ", "Σ"))
|
|
| "\\varsigma" -> LITERAL (TEX_ONLY "\\varsigma ")
|
|
| "\\tau" -> LITERAL (HTMLABLEC (FONT_UF, "\\tau ", "τ"))
|
|
| "\\Tau" -> (tex_use_ams (); LITERAL (HTMLABLEC (FONT_UF,
|
|
"\\mathrm{T}", "Τ")))
|
|
| "\\upsilon" -> LITERAL (HTMLABLEC (FONT_UF, "\\upsilon ", "υ"))
|
|
| "\\Upsilon" -> LITERAL (HTMLABLEC (FONT_UF, "\\Upsilon ", "Υ"))
|
|
| "\\phi" -> LITERAL (HTMLABLEC (FONT_UF, "\\phi ", "ϕ"))
|
|
| "\\Phi" -> LITERAL (HTMLABLEC (FONT_UF, "\\Phi ", "Φ"))
|
|
| "\\varphi" -> LITERAL (HTMLABLEC (FONT_UF, "\\varphi ", "φ"))
|
|
| "\\chi" -> LITERAL (HTMLABLEC (FONT_UF, "\\chi ", "χ"))
|
|
| "\\Chi" -> (tex_use_ams (); LITERAL (HTMLABLEC (FONT_UF,
|
|
"\\mathrm{X}", "Χ")))
|
|
| "\\psi" -> LITERAL (HTMLABLEC (FONT_UF, "\\psi ", "ψ"))
|
|
| "\\Psi" -> LITERAL (HTMLABLEC (FONT_UF, "\\Psi ", "Ψ"))
|
|
| "\\omega" -> LITERAL (HTMLABLEC (FONT_UF, "\\omega ", "ω"))
|
|
| "\\Omega" -> LITERAL (HTMLABLEC (FONT_UF, "\\Omega ", "Ω"))
|
|
| "\\xi" -> LITERAL (HTMLABLEC (FONT_UF, "\\xi ", "ξ"))
|
|
| "\\Xi" -> LITERAL (HTMLABLEC (FONT_UF, "\\Xi ", "Ξ"))
|
|
| "\\aleph" -> LITERAL (HTMLABLE (FONT_UF, "\\aleph ", "ℵ"))
|
|
| "\\alef" -> LITERAL (HTMLABLE (FONT_UF, "\\aleph ", "ℵ"))
|
|
| "\\alefsym" -> LITERAL (HTMLABLE (FONT_UF, "\\aleph ", "ℵ"))
|
|
| "\\larr" -> LITERAL (HTMLABLEM (FONT_UF, "\\leftarrow ", "←"))
|
|
| "\\leftarrow" -> LITERAL (HTMLABLEM (FONT_UF, "\\leftarrow ", "←"))
|
|
| "\\rarr" -> LITERAL (HTMLABLEM (FONT_UF, "\\rightarrow ", "→"))
|
|
| "\\to" -> LITERAL (HTMLABLEM (FONT_UF, "\\to ", "→"))
|
|
| "\\gets" -> LITERAL (HTMLABLEM (FONT_UF, "\\gets ", "←"))
|
|
| "\\rightarrow" -> LITERAL (HTMLABLEM (FONT_UF, "\\rightarrow ", "→"))
|
|
| "\\longleftarrow" -> LITERAL (HTMLABLE (FONT_UF, "\\longleftarrow ", "←"))
|
|
| "\\longrightarrow" -> LITERAL (HTMLABLE (FONT_UF, "\\longrightarrow ", "→"))
|
|
| "\\Larr" -> LITERAL (HTMLABLE (FONT_UF, "\\Leftarrow ", "⇐"))
|
|
| "\\lArr" -> LITERAL (HTMLABLE (FONT_UF, "\\Leftarrow ", "⇐"))
|
|
| "\\Leftarrow" -> LITERAL (HTMLABLE (FONT_UF, "\\Leftarrow ", "⇐"))
|
|
| "\\Rarr" -> LITERAL (HTMLABLE (FONT_UF, "\\Rightarrow ", "⇒"))
|
|
| "\\rArr" -> LITERAL (HTMLABLE (FONT_UF, "\\Rightarrow ", "⇒"))
|
|
| "\\Rightarrow" -> LITERAL (HTMLABLEM (FONT_UF, "\\Rightarrow ", "⇒"))
|
|
| "\\mapsto" -> LITERAL (HTMLABLE (FONT_UF, "\\mapsto ", "→"))
|
|
| "\\longmapsto" -> LITERAL (HTMLABLE (FONT_UF, "\\longmapsto ", "→"))
|
|
| "\\Longleftarrow" -> LITERAL (HTMLABLE (FONT_UF, "\\Longleftarrow ", "⇐"))
|
|
| "\\Longrightarrow" -> LITERAL (HTMLABLE (FONT_UF, "\\Longrightarrow ", "⇒"))
|
|
| "\\uarr" -> DELIMITER (HTMLABLEM (FONT_UF, "\\uparrow ", "↑"))
|
|
| "\\uparrow" -> DELIMITER (HTMLABLEM (FONT_UF, "\\uparrow ", "↑"))
|
|
| "\\uArr" -> DELIMITER (HTMLABLE (FONT_UF, "\\Uparrow ", "⇑"))
|
|
| "\\Uarr" -> DELIMITER (HTMLABLE (FONT_UF, "\\Uparrow ", "⇑"))
|
|
| "\\Uparrow" -> DELIMITER (HTMLABLE (FONT_UF, "\\Uparrow ", "⇑"))
|
|
| "\\darr" -> DELIMITER (HTMLABLEM (FONT_UF, "\\downarrow ", "↓"))
|
|
| "\\downarrow" -> DELIMITER (HTMLABLEM (FONT_UF, "\\downarrow ", "↓"))
|
|
| "\\dArr" -> DELIMITER (HTMLABLE (FONT_UF, "\\Downarrow ", "⇓"))
|
|
| "\\Darr" -> DELIMITER (HTMLABLE (FONT_UF, "\\Downarrow ", "⇓"))
|
|
| "\\Downarrow" -> DELIMITER (HTMLABLE (FONT_UF, "\\Downarrow ", "⇓"))
|
|
| "\\updownarrow" -> DELIMITER (TEX_ONLY "\\updownarrow ")
|
|
| "\\Updownarrow" -> DELIMITER (TEX_ONLY "\\Updownarrow ")
|
|
| "\\ulcorner" -> (tex_use_ams (); DELIMITER (TEX_ONLY "\\ulcorner "))
|
|
| "\\urcorner" -> (tex_use_ams (); DELIMITER (TEX_ONLY "\\urcorner "))
|
|
| "\\llcorner" -> (tex_use_ams (); DELIMITER (TEX_ONLY "\\llcorner "))
|
|
| "\\lrcorner" -> (tex_use_ams (); DELIMITER (TEX_ONLY "\\lrcorner "))
|
|
| "\\twoheadleftarrow" -> (tex_use_ams (); DELIMITER (TEX_ONLY "\\twoheadleftarrow "))
|
|
| "\\twoheadrightarrow" -> (tex_use_ams (); DELIMITER (TEX_ONLY "\\twoheadrightarrow "))
|
|
| "\\xleftarrow" -> (tex_use_ams (); FUN_AR1 "\\xleftarrow ")
|
|
| "\\xrightarrow" -> (tex_use_ams (); FUN_AR1 "\\xrightarrow ")
|
|
| "\\rightleftharpoons" -> DELIMITER (TEX_ONLY "\\rightleftharpoons ")
|
|
| "\\leftrightarrow" -> LITERAL (HTMLABLE (FONT_UF, "\\leftrightarrow ", "↔"))
|
|
| "\\lrarr" -> LITERAL (HTMLABLE (FONT_UF, "\\leftrightarrow ", "↔"))
|
|
| "\\harr" -> LITERAL (HTMLABLE (FONT_UF, "\\leftrightarrow ", "↔"))
|
|
| "\\Leftrightarrow" -> LITERAL (HTMLABLE (FONT_UF, "\\Leftrightarrow ", "⇔"))
|
|
| "\\Lrarr" -> LITERAL (HTMLABLE (FONT_UF, "\\Leftrightarrow ", "⇔"))
|
|
| "\\Harr" -> LITERAL (HTMLABLE (FONT_UF, "\\Leftrightarrow ", "⇔"))
|
|
| "\\lrArr" -> LITERAL (HTMLABLE (FONT_UF, "\\Leftrightarrow ", "⇔"))
|
|
| "\\hAar" -> LITERAL (HTMLABLE (FONT_UF, "\\Leftrightarrow ", "⇔"))
|
|
| "\\longleftrightarrow"->LITERAL (HTMLABLE (FONT_UF, "\\longleftrightarrow ", "↔"))
|
|
| "\\Longleftrightarrow"->LITERAL (HTMLABLE (FONT_UF, "\\Longleftrightarrow ", "↔"))
|
|
| "\\iff" -> LITERAL (HTMLABLE (FONT_UF, "\\iff ", "↔"))
|
|
| "\\ll" -> LITERAL (TEX_ONLY "\\ll ")
|
|
| "\\gg" -> LITERAL (TEX_ONLY "\\gg ")
|
|
| "\\div" -> LITERAL (TEX_ONLY "\\div ")
|
|
| "\\searrow" -> LITERAL (TEX_ONLY "\\searrow ")
|
|
| "\\nearrow" -> LITERAL (TEX_ONLY "\\nearrow ")
|
|
| "\\swarrow" -> LITERAL (TEX_ONLY "\\swarrow ")
|
|
| "\\nwarrow" -> LITERAL (TEX_ONLY "\\nwarrow ")
|
|
| "\\simeq" -> LITERAL (TEX_ONLY "\\simeq ")
|
|
| "\\ast" -> LITERAL (TEX_ONLY "\\ast ")
|
|
| "\\star" -> LITERAL (TEX_ONLY "\\star ")
|
|
| "\\ell" -> LITERAL (TEX_ONLY "\\ell ")
|
|
| "\\P" -> LITERAL (TEX_ONLY "\\P ")
|
|
| "\\smile" -> LITERAL (TEX_ONLY "\\smile ")
|
|
| "\\frown" -> LITERAL (TEX_ONLY "\\frown ")
|
|
| "\\bigcap" -> LITERAL (TEX_ONLY "\\bigcap ")
|
|
| "\\bigodot" -> LITERAL (TEX_ONLY "\\bigodot ")
|
|
| "\\bigcup" -> LITERAL (TEX_ONLY "\\bigcup ")
|
|
| "\\bigotimes" -> LITERAL (TEX_ONLY "\\bigotimes ")
|
|
| "\\coprod" -> LITERAL (TEX_ONLY "\\coprod ")
|
|
| "\\bigsqcup" -> LITERAL (TEX_ONLY "\\bigsqcup ")
|
|
| "\\bigoplus" -> LITERAL (TEX_ONLY "\\bigoplus ")
|
|
| "\\bigvee" -> LITERAL (TEX_ONLY "\\bigvee ")
|
|
| "\\biguplus" -> LITERAL (TEX_ONLY "\\biguplus ")
|
|
| "\\oint" -> LITERAL (TEX_ONLY "\\oint ")
|
|
| "\\bigwedge" -> LITERAL (TEX_ONLY "\\bigwedge ")
|
|
| "\\models" -> LITERAL (TEX_ONLY "\\models ")
|
|
| "\\vdash" -> LITERAL (TEX_ONLY "\\vdash ")
|
|
| "\\triangle" -> LITERAL (TEX_ONLY "\\triangle ")
|
|
| "\\bowtie" -> LITERAL (TEX_ONLY "\\bowtie ")
|
|
| "\\wr" -> LITERAL (TEX_ONLY "\\wr ")
|
|
| "\\triangleleft" -> LITERAL (TEX_ONLY "\\triangleleft ")
|
|
| "\\triangleright" -> LITERAL (TEX_ONLY "\\triangleright ")
|
|
| "\\textvisiblespace" -> LITERAL (TEX_ONLY "\\textvisiblespace ")
|
|
| "\\circ" -> LITERAL (TEX_ONLY "\\circ ")
|
|
| "\\hbar" -> LITERAL (TEX_ONLY "\\hbar ")
|
|
| "\\imath" -> LITERAL (TEX_ONLY "\\imath ")
|
|
| "\\jmath" -> LITERAL (TEX_ONLY "\\jmath ")
|
|
| "\\lnot" -> LITERAL (TEX_ONLY "\\lnot ")
|
|
| "\\hookrightarrow" -> LITERAL (TEX_ONLY "\\hookrightarrow ")
|
|
| "\\hookleftarrow" -> LITERAL (TEX_ONLY "\\hookleftarrow ")
|
|
| "\\mp" -> LITERAL (TEX_ONLY "\\mp ")
|
|
| "\\approx" -> LITERAL (HTMLABLE (FONT_UF, "\\approx ", "≈"))
|
|
| "\\propto" -> LITERAL (TEX_ONLY "\\propto ")
|
|
| "\\flat" -> LITERAL (TEX_ONLY "\\flat ")
|
|
| "\\sharp" -> LITERAL (TEX_ONLY "\\sharp ")
|
|
| "\\natural" -> LITERAL (TEX_ONLY "\\natural ")
|
|
| "\\int" -> LITERAL (HTMLABLE_BIG ("\\int ", "∫"))
|
|
| "\\sum" -> LITERAL (HTMLABLE_BIG ("\\sum ", "∑"))
|
|
| "\\prod" -> LITERAL (HTMLABLE_BIG ("\\prod ", "∏"))
|
|
| "\\vdots" -> LITERAL (TEX_ONLY "\\vdots ")
|
|
| "\\limits" -> LITERAL (TEX_ONLY "\\limits ")
|
|
| "\\nolimits" -> LITERAL (TEX_ONLY "\\nolimits ")
|
|
| "\\top" -> LITERAL (TEX_ONLY "\\top ")
|
|
| "\\bullet" -> LITERAL (HTMLABLE (FONT_UFH, "\\bullet ", "•"))
|
|
| "\\bull" -> LITERAL (HTMLABLE (FONT_UFH, "\\bullet ", "•"))
|
|
| "\\angle" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UF, "\\angle ", "∠")))
|
|
| "\\dagger" -> LITERAL (HTMLABLEM(FONT_UFH, "\\dagger ", "†"))
|
|
| "\\ddagger" -> LITERAL (HTMLABLEM(FONT_UFH, "\\ddagger ", "‡"))
|
|
| "\\Dagger" -> LITERAL (HTMLABLEM(FONT_UFH, "\\ddagger ", "‡"))
|
|
| "\\colon" -> LITERAL (HTMLABLEC(FONT_UFH, "\\colon ", ":"))
|
|
| "\\Vert" -> DELIMITER (HTMLABLEM(FONT_UFH, "\\Vert ", "||"))
|
|
| "\\vert" -> DELIMITER (HTMLABLEM(FONT_UFH, "\\vert ", "|"))
|
|
| "\\wp" -> LITERAL (HTMLABLE (FONT_UF, "\\wp ", "℘"))
|
|
| "\\weierp" -> LITERAL (HTMLABLE (FONT_UF, "\\wp ", "℘"))
|
|
| "\\wedge" -> LITERAL (HTMLABLE (FONT_UF, "\\wedge ", "∧"))
|
|
| "\\and" -> LITERAL (HTMLABLE (FONT_UF, "\\land ", "∧"))
|
|
| "\\land" -> LITERAL (HTMLABLE (FONT_UF, "\\land ", "∧"))
|
|
| "\\vee" -> LITERAL (HTMLABLE (FONT_UF, "\\vee ", "∨"))
|
|
| "\\or" -> LITERAL (HTMLABLE (FONT_UF, "\\lor ", "∨"))
|
|
| "\\lor" -> LITERAL (HTMLABLE (FONT_UF, "\\lor ", "∨"))
|
|
| "\\sub" -> LITERAL (HTMLABLE (FONT_UF, "\\subset ", "⊂"))
|
|
| "\\supe" -> LITERAL (HTMLABLE (FONT_UF, "\\supseteq ", "⊇"))
|
|
| "\\sube" -> LITERAL (HTMLABLE (FONT_UF, "\\subseteq ", "⊆"))
|
|
| "\\supset" -> LITERAL (HTMLABLE (FONT_UF, "\\supset ", "⊃"))
|
|
| "\\subset" -> LITERAL (HTMLABLE (FONT_UF, "\\subset ", "⊂"))
|
|
| "\\supseteq" -> LITERAL (HTMLABLE (FONT_UF, "\\supseteq ", "⊇"))
|
|
| "\\subseteq" -> LITERAL (HTMLABLE (FONT_UF, "\\subseteq ", "⊆"))
|
|
| "\\sqsupset" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\sqsupset "))
|
|
| "\\sqsubset" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\sqsubset "))
|
|
| "\\sqsupseteq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\sqsupseteq "))
|
|
| "\\sqsubseteq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\sqsubseteq "))
|
|
| "\\perp" -> LITERAL (HTMLABLE (FONT_UF, "\\perp ", "⊥"))
|
|
| "\\bot" -> LITERAL (HTMLABLE (FONT_UF, "\\bot ", "⊥"))
|
|
| "\\lfloor" -> DELIMITER (HTMLABLE (FONT_UF, "\\lfloor ", "⌊"))
|
|
| "\\rfloor" -> DELIMITER (HTMLABLE (FONT_UF, "\\rfloor ", "⌋"))
|
|
| "\\lceil" -> DELIMITER (HTMLABLE (FONT_UF, "\\lceil ", "⌈"))
|
|
| "\\rceil" -> DELIMITER (HTMLABLE (FONT_UF, "\\rceil ", "⌉"))
|
|
| "\\lbrace" -> DELIMITER (HTMLABLEC(FONT_UFH, "\\lbrace ", "{"))
|
|
| "\\rbrace" -> DELIMITER (HTMLABLEC(FONT_UFH, "\\rbrace ", "}"))
|
|
| "\\infty" -> LITERAL (HTMLABLEM(FONT_UF, "\\infty ", "∞"))
|
|
| "\\infin" -> LITERAL (HTMLABLEM(FONT_UF, "\\infty ", "∞"))
|
|
| "\\isin" -> LITERAL (HTMLABLE (FONT_UF, "\\in ", "∈"))
|
|
| "\\in" -> LITERAL (HTMLABLE (FONT_UF, "\\in ", "∈"))
|
|
| "\\ni" -> LITERAL (HTMLABLE (FONT_UF, "\\ni ", "∋"))
|
|
| "\\notin" -> LITERAL (HTMLABLE (FONT_UF, "\\notin ", "∉"))
|
|
| "\\smallsetminus" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\smallsetminus "))
|
|
| "\\And" -> (tex_use_ams (); LITERAL (HTMLABLEM(FONT_UFH, "\\And ", " & ")))
|
|
| "\\forall" -> LITERAL (HTMLABLE (FONT_UFH, "\\forall ", "∀"))
|
|
| "\\exists" -> LITERAL (HTMLABLE (FONT_UFH, "\\exists ", "∃"))
|
|
| "\\exist" -> LITERAL (HTMLABLE (FONT_UFH, "\\exists ", "∃"))
|
|
| "\\equiv" -> LITERAL (HTMLABLEM(FONT_UFH, "\\equiv ", "≡"))
|
|
| "\\ne" -> LITERAL (HTMLABLEM(FONT_UFH, "\\neq ", "≠"))
|
|
| "\\neq" -> LITERAL (HTMLABLEM(FONT_UFH, "\\neq ", "≠"))
|
|
| "\\Re" -> LITERAL (HTMLABLE (FONT_UF, "\\Re ", "ℜ"))
|
|
| "\\real" -> LITERAL (HTMLABLE (FONT_UF, "\\Re ", "ℜ"))
|
|
| "\\Im" -> LITERAL (HTMLABLE (FONT_UF, "\\Im ", "ℑ"))
|
|
| "\\image" -> LITERAL (HTMLABLE (FONT_UF, "\\Im ", "ℑ"))
|
|
| "\\prime" -> LITERAL (HTMLABLE (FONT_UFH,"\\prime ", "′"))
|
|
| "\\backslash" -> DELIMITER (HTMLABLEM(FONT_UFH,"\\backslash ", "\\"))
|
|
| "\\setminus" -> LITERAL (HTMLABLEM(FONT_UFH,"\\setminus ", "\\"))
|
|
| "\\times" -> LITERAL (HTMLABLEM(FONT_UFH,"\\times ", "×"))
|
|
| "\\pm" -> LITERAL (HTMLABLEM(FONT_UFH,"\\pm ", "±"))
|
|
| "\\plusmn" -> LITERAL (HTMLABLEM(FONT_UFH,"\\pm ", "±"))
|
|
| "\\cdot" -> LITERAL (HTMLABLE (FONT_UFH,"\\cdot ", "⋅"))
|
|
| "\\AA" -> LITERAL (HTMLABLE (FONT_UFH,"\\AA ", "Å"))
|
|
| "\\cdots" -> LITERAL (HTMLABLE (FONT_UFH,"\\cdots ", "⋅⋅⋅"))
|
|
| "\\sdot" -> LITERAL (HTMLABLE (FONT_UFH,"\\cdot ", "⋅"))
|
|
| "\\oplus" -> LITERAL (HTMLABLE (FONT_UF, "\\oplus ", "⊕"))
|
|
| "\\otimes" -> LITERAL (HTMLABLE (FONT_UF, "\\otimes ", "⊗"))
|
|
| "\\cap" -> LITERAL (HTMLABLEM(FONT_UF, "\\cap ", "∩"))
|
|
| "\\cup" -> LITERAL (HTMLABLE (FONT_UF, "\\cup ", "∪"))
|
|
| "\\uplus" -> LITERAL (TEX_ONLY "\\uplus ")
|
|
| "\\sqcap" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\sqcap "))
|
|
| "\\sqcup" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\sqcup "))
|
|
| "\\empty" -> LITERAL (HTMLABLE (FONT_UF, "\\emptyset ", "∅"))
|
|
| "\\emptyset" -> LITERAL (HTMLABLE (FONT_UF, "\\emptyset ", "∅"))
|
|
| "\\O" -> LITERAL (HTMLABLE (FONT_UF, "\\emptyset ", "∅"))
|
|
| "\\S" -> LITERAL (HTMLABLEM(FONT_UFH,"\\S ", "§"))
|
|
| "\\sect" -> LITERAL (HTMLABLEM(FONT_UFH,"\\S ", "§"))
|
|
| "\\nabla" -> LITERAL (HTMLABLE (FONT_UF, "\\nabla ", "∇"))
|
|
| "\\geq" -> LITERAL (HTMLABLE (FONT_UFH,"\\geq ", "≥"))
|
|
| "\\ge" -> LITERAL (HTMLABLE (FONT_UFH,"\\geq ", "≥"))
|
|
| "\\leq" -> LITERAL (HTMLABLE (FONT_UFH,"\\leq ", "≤"))
|
|
| "\\le" -> LITERAL (HTMLABLE (FONT_UFH,"\\leq ", "≤"))
|
|
| "\\cong" -> LITERAL (HTMLABLE (FONT_UF, "\\cong ", "≅"))
|
|
| "\\ang" -> LITERAL (HTMLABLE (FONT_UF, "\\angle ", "∠"))
|
|
| "\\part" -> LITERAL (HTMLABLEM(FONT_UF, "\\partial ", "∂"))
|
|
| "\\partial" -> LITERAL (HTMLABLEM(FONT_UF, "\\partial ", "∂"))
|
|
| "\\ldots" -> LITERAL (HTMLABLEM(FONT_UFH,"\\ldots ", "..."))
|
|
| "\\dots" -> LITERAL (HTMLABLEM(FONT_UFH,"\\dots ", "..."))
|
|
| "\\quad" -> LITERAL (HTMLABLE (FONT_UF, "\\quad "," "))
|
|
| "\\qquad" -> LITERAL (HTMLABLE (FONT_UF, "\\qquad "," "))
|
|
| "\\mid" -> LITERAL (HTMLABLEM(FONT_UFH,"\\mid ", " | "))
|
|
| "\\neg" -> LITERAL (HTMLABLEM(FONT_UFH,"\\neg ", "¬"))
|
|
| "\\langle" -> DELIMITER (HTMLABLE (FONT_UFH,"\\langle ","⟨"))
|
|
| "\\rangle" -> DELIMITER (HTMLABLE (FONT_UFH,"\\rangle ","⟩"))
|
|
| "\\lang" -> DELIMITER (HTMLABLE (FONT_UFH,"\\langle ","⟨"))
|
|
| "\\rang" -> DELIMITER (HTMLABLE (FONT_UFH,"\\rangle ","⟩"))
|
|
| "\\lbrack" -> DELIMITER (HTMLABLEC(FONT_UFH,"[","["))
|
|
| "\\rbrack" -> DELIMITER (HTMLABLEC(FONT_UFH,"]","]"))
|
|
| "\\surd" -> LITERAL (TEX_ONLY "\\surd ")
|
|
| "\\ddots" -> LITERAL (TEX_ONLY "\\ddots ")
|
|
| "\\clubs" -> LITERAL (TEX_ONLY "\\clubsuit ")
|
|
| "\\clubsuit" -> LITERAL (TEX_ONLY "\\clubsuit ")
|
|
| "\\spades" -> LITERAL (TEX_ONLY "\\spadesuit ")
|
|
| "\\spadesuit" -> LITERAL (TEX_ONLY "\\spadesuit ")
|
|
| "\\hearts" -> LITERAL (TEX_ONLY "\\heartsuit ")
|
|
| "\\heartsuit" -> LITERAL (TEX_ONLY "\\heartsuit ")
|
|
| "\\diamonds" -> LITERAL (TEX_ONLY "\\diamondsuit ")
|
|
| "\\diamond" -> LITERAL (TEX_ONLY "\\diamond ")
|
|
| "\\bigtriangleup" -> LITERAL (TEX_ONLY "\\bigtriangleup ")
|
|
| "\\bigtriangledown" -> LITERAL (TEX_ONLY "\\bigtriangledown ")
|
|
| "\\diamondsuit" -> LITERAL (TEX_ONLY "\\diamondsuit ")
|
|
| "\\ominus" -> LITERAL (TEX_ONLY "\\ominus ")
|
|
| "\\oslash" -> LITERAL (TEX_ONLY "\\oslash ")
|
|
| "\\odot" -> LITERAL (TEX_ONLY "\\odot ")
|
|
| "\\bigcirc" -> LITERAL (TEX_ONLY "\\bigcirc ")
|
|
| "\\amalg" -> LITERAL (TEX_ONLY "\\amalg ")
|
|
| "\\prec" -> LITERAL (TEX_ONLY "\\prec ")
|
|
| "\\succ" -> LITERAL (TEX_ONLY "\\succ ")
|
|
| "\\preceq" -> LITERAL (TEX_ONLY "\\preceq ")
|
|
| "\\succeq" -> LITERAL (TEX_ONLY "\\succeq ")
|
|
| "\\dashv" -> LITERAL (TEX_ONLY "\\dashv ")
|
|
| "\\asymp" -> LITERAL (TEX_ONLY "\\asymp ")
|
|
| "\\doteq" -> LITERAL (TEX_ONLY "\\doteq ")
|
|
| "\\parallel" -> LITERAL (TEX_ONLY "\\parallel ")
|
|
| "\\euro" -> (tex_use_euro (); LITERAL (HTMLABLEC (FONT_UF, "\\mbox{\\euro}", "€")))
|
|
| "\\geneuro" -> (tex_use_euro (); LITERAL (TEX_ONLY "\\mbox{\\geneuro}"))
|
|
| "\\geneuronarrow" -> (tex_use_euro (); LITERAL (TEX_ONLY "\\mbox{\\geneuronarrow}"))
|
|
| "\\geneurowide" -> (tex_use_euro (); LITERAL (TEX_ONLY "\\mbox{\\geneurowide}"))
|
|
| "\\officialeuro" -> (tex_use_euro (); LITERAL (TEX_ONLY "\\mbox{\\officialeuro}"))
|
|
| "\\Coppa" -> (tex_use_teubner (); LITERAL (HTMLABLE (FONT_UF, "\\mbox{\\Coppa}", "Ϙ")))
|
|
| "\\coppa" -> (tex_use_teubner (); LITERAL (HTMLABLE (FONT_UF, "\\mbox{\\coppa}", "ϙ")))
|
|
| "\\varcoppa" -> (tex_use_teubner (); LITERAL (HTMLABLE (FONT_UF, "\\mbox{\\coppa}", "ϙ")))
|
|
| "\\Digamma" -> (tex_use_teubner (); LITERAL (HTMLABLE (FONT_UF, "\\mbox{\\Digamma}", "Ϝ")))
|
|
| "\\Koppa" -> (tex_use_teubner (); LITERAL (HTMLABLE (FONT_UF, "\\mbox{\\Koppa}", "Ϙ")))
|
|
| "\\koppa" -> (tex_use_teubner (); LITERAL (HTMLABLE (FONT_UF, "\\mbox{\\koppa}", "ϟ")))
|
|
| "\\Sampi" -> (tex_use_teubner (); LITERAL (TEX_ONLY "\\mbox{\\Sampi}"))
|
|
| "\\sampi" -> (tex_use_teubner (); LITERAL (HTMLABLE (FONT_UF, "\\mbox{\\sampi}", "ϡ")))
|
|
| "\\Stigma" -> (tex_use_teubner (); LITERAL (TEX_ONLY "\\mbox{\\Stigma}"))
|
|
| "\\stigma" -> (tex_use_teubner (); LITERAL (HTMLABLE (FONT_UF, "\\mbox{\\stigma}", "ϛ")))
|
|
| "\\varstigma" -> (tex_use_teubner (); LITERAL (TEX_ONLY "\\mbox{\\varstigma}"))
|
|
| "\\implies" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UF, "\\implies ", "⇒")))
|
|
| "\\mod" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UFH,"\\mod ", "mod")))
|
|
| "\\Diamond" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UF, "\\Diamond ", "◊")))
|
|
| "\\dotsb" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UF, "\\dotsb ", "⋅⋅⋅")))
|
|
| "\\dotsc" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UF, "\\dotsc ", "...")))
|
|
| "\\dotsi" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UF, "\\dotsi ", "⋅⋅⋅")))
|
|
| "\\dotsm" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UF, "\\dotsm ", "⋅⋅⋅")))
|
|
| "\\dotso" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UF, "\\dotso ", "...")))
|
|
| "\\reals" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UFH,"\\mathbb{R}", "ℝ")))
|
|
| "\\Reals" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UFH,"\\mathbb{R}", "ℝ")))
|
|
| "\\R" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UFH,"\\mathbb{R}", "ℝ")))
|
|
| "\\C" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UFH,"\\mathbb{C}", "ℂ")))
|
|
| "\\cnums" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UFH,"\\mathbb{C}", "ℂ")))
|
|
| "\\Complex" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UFH,"\\mathbb{C}", "ℂ")))
|
|
| "\\Z" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UFH,"\\mathbb{Z}", "ℤ")))
|
|
| "\\natnums" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UFH,"\\mathbb{N}", "ℕ")))
|
|
| "\\N" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UFH,"\\mathbb{N}", "ℕ")))
|
|
| "\\Q" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UFH,"\\mathbb{Q}", "ℚ")))
|
|
| "\\H" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UFH,"\\mathbb{H}", "ℍ")))
|
|
| "\\lVert" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UFH,"\\lVert ", "||")))
|
|
| "\\rVert" -> (tex_use_ams (); LITERAL (HTMLABLE (FONT_UFH,"\\rVert ", "||")))
|
|
| "\\nmid" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nmid "))
|
|
| "\\lesssim" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\lesssim "))
|
|
| "\\ngeq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\ngeq "))
|
|
| "\\smallsmile" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\smallsmile "))
|
|
| "\\smallfrown" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\smallfrown "))
|
|
| "\\nleftarrow" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nleftarrow "))
|
|
| "\\nrightarrow" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nrightarrow "))
|
|
| "\\trianglelefteq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\trianglelefteq "))
|
|
| "\\trianglerighteq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\trianglerighteq "))
|
|
| "\\square" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\square "))
|
|
| "\\checkmark" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\checkmark "))
|
|
| "\\supsetneq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\supsetneq "))
|
|
| "\\subsetneq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\subsetneq "))
|
|
| "\\Box" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\Box "))
|
|
| "\\nleq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nleq "))
|
|
| "\\upharpoonright" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\upharpoonright "))
|
|
| "\\restriction" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\upharpoonright "))
|
|
| "\\upharpoonleft" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\upharpoonleft "))
|
|
| "\\downharpoonright" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\downharpoonright "))
|
|
| "\\downharpoonleft" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\downharpoonleft "))
|
|
| "\\rightharpoonup" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\rightharpoonup "))
|
|
| "\\rightharpoondown" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\rightharpoondown "))
|
|
| "\\leftharpoonup" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\leftharpoonup "))
|
|
| "\\leftharpoondown" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\leftharpoondown "))
|
|
| "\\nless" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nless "))
|
|
| "\\Vdash" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\Vdash "))
|
|
| "\\vDash" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\vDash "))
|
|
| "\\varkappa" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\varkappa "))
|
|
| "\\digamma" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\digamma "))
|
|
| "\\beth" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\beth "))
|
|
| "\\daleth" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\daleth "))
|
|
| "\\gimel" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\gimel "))
|
|
| "\\complement" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\complement "))
|
|
| "\\eth" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\eth "))
|
|
| "\\hslash" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\hslash "))
|
|
| "\\mho" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\mho "))
|
|
| "\\Finv" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\Finv "))
|
|
| "\\Game" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\Game "))
|
|
| "\\varlimsup" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\varlimsup "))
|
|
| "\\varliminf" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\varliminf "))
|
|
| "\\varinjlim" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\varinjlim "))
|
|
| "\\varprojlim" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\varprojlim "))
|
|
| "\\injlim" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\injlim "))
|
|
| "\\projlim" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\projlim "))
|
|
| "\\iint" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\iint "))
|
|
| "\\iiint" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\iiint "))
|
|
| "\\iiiint" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\iiiint "))
|
|
| "\\varnothing" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\varnothing "))
|
|
| "\\left" -> LEFT
|
|
| "\\right" -> RIGHT
|
|
| "\\hat" -> FUN_AR1 "\\hat "
|
|
| "\\hline" -> LITERAL (TEX_ONLY "\\hline ")
|
|
| "\\vline" -> LITERAL (TEX_ONLY "\\vline ")
|
|
| "\\widetilde" -> LITERAL (TEX_ONLY "\\widetilde ")
|
|
| "\\widehat" -> LITERAL (TEX_ONLY "\\widehat ")
|
|
| "\\overline" -> LITERAL (TEX_ONLY "\\overline ")
|
|
| "\\overbrace" -> LITERAL (TEX_ONLY "\\overbrace ")
|
|
| "\\underline" -> LITERAL (TEX_ONLY "\\underline ")
|
|
| "\\underbrace" -> LITERAL (TEX_ONLY "\\underbrace ")
|
|
| "\\overleftarrow" -> LITERAL (TEX_ONLY "\\overleftarrow ")
|
|
| "\\overrightarrow" -> LITERAL (TEX_ONLY "\\overrightarrow ")
|
|
| "\\overleftrightarrow"-> (tex_use_ams(); LITERAL (TEX_ONLY "\\overleftrightarrow "))
|
|
| "\\check" -> FUN_AR1 "\\check "
|
|
| "\\acute" -> FUN_AR1 "\\acute "
|
|
| "\\grave" -> FUN_AR1 "\\grave "
|
|
| "\\bar" -> FUN_AR1 "\\bar "
|
|
| "\\vec" -> FUN_AR1 "\\vec "
|
|
| "\\dot" -> FUN_AR1 "\\dot "
|
|
| "\\ddot" -> FUN_AR1 "\\ddot "
|
|
| "\\breve" -> FUN_AR1 "\\breve "
|
|
| "\\tilde" -> FUN_AR1 "\\tilde "
|
|
| "\\not" -> LITERAL (TEX_ONLY "\\not ")
|
|
| "\\choose" -> FUN_INFIX "\\choose "
|
|
| "\\atop" -> FUN_INFIX "\\atop "
|
|
| "\\binom" -> (tex_use_ams (); FUN_AR2 "\\binom ")
|
|
| "\\dbinom" -> (tex_use_ams (); FUN_AR2 "\\dbinom ")
|
|
| "\\tbinom" -> (tex_use_ams (); FUN_AR2 "\\tbinom ")
|
|
| "\\stackrel" -> FUN_AR2 "\\stackrel "
|
|
| "\\sideset" -> (tex_use_ams (); FUN_AR2nb "\\sideset ")
|
|
| "\\underset" -> (tex_use_ams (); FUN_AR2 "\\underset ")
|
|
| "\\overset" -> (tex_use_ams (); FUN_AR2 "\\overset ")
|
|
| "\\frac" -> FUN_AR2h ("\\frac ", fun num den -> Html.html_render [num], "<hr style=\"{background: black}\"/>", Html.html_render [den])
|
|
| "\\dfrac" -> (tex_use_ams () ; FUN_AR2 "\\dfrac ")
|
|
| "\\tfrac" -> (tex_use_ams () ; FUN_AR2h ("\\tfrac ", fun num den -> Html.html_render [num], "<hr style=\"background: black\">", Html.html_render [den]))
|
|
| "\\cfrac" -> (tex_use_ams (); FUN_AR2h ("\\cfrac ", fun num den -> Html.html_render [num], "<hr style=\"{background: black}\">", Html.html_render [den]))
|
|
| "\\over" -> FUN_INFIXh ("\\over ", fun num den -> Html.html_render num, "<hr style=\"{background: black}\"/>", Html.html_render den)
|
|
| "\\sqrt" -> FUN_AR1 "\\sqrt "
|
|
| "\\cancel" -> FUN_AR1 "\\cancel "
|
|
| "\\bcancel" -> FUN_AR1 "\\bcancel "
|
|
| "\\xcancel" -> FUN_AR1 "\\xcancel "
|
|
| "\\cancelto" -> FUN_AR2 "\\cancelto "
|
|
| "\\pmod" -> FUN_AR1hl ("\\pmod ", ("(mod ", ")"))
|
|
| "\\bmod" -> FUN_AR1hl ("\\bmod ", ("mod ", ""))
|
|
| "\\emph" -> FUN_AR1 "\\emph "
|
|
| "\\texttt" -> FUN_AR1 "\\texttt "
|
|
| "\\textbf" -> FUN_AR1 "\\textbf "
|
|
| "\\textsf" -> FUN_AR1 "\\textsf "
|
|
| "\\textit" -> FUN_AR1hf ("\\textit ", FONTFORCE_IT)
|
|
| "\\textrm" -> FUN_AR1hf ("\\textrm ", FONTFORCE_RM)
|
|
| "\\rm" -> DECLh ("\\rm ", FONTFORCE_RM)
|
|
| "\\it" -> DECLh ("\\it ", FONTFORCE_IT)
|
|
| "\\cal" -> DECL "\\cal "
|
|
| "\\displaystyle" -> LITERAL (TEX_ONLY "\\displaystyle ")
|
|
| "\\scriptstyle" -> LITERAL (TEX_ONLY "\\scriptstyle ")
|
|
| "\\textstyle" -> LITERAL (TEX_ONLY "\\textstyle ")
|
|
| "\\scriptscriptstyle"-> LITERAL (TEX_ONLY "\\scriptscriptstyle ")
|
|
| "\\bf" -> DECL "\\bf "
|
|
| "\\big" -> BIG "\\big "
|
|
| "\\Big" -> BIG "\\Big "
|
|
| "\\bigg" -> BIG "\\bigg "
|
|
| "\\Bigg" -> BIG "\\Bigg "
|
|
| "\\bigl" -> (tex_use_ams ();BIG "\\bigl ")
|
|
| "\\bigr" -> (tex_use_ams ();BIG "\\bigr ")
|
|
| "\\Bigl" -> (tex_use_ams ();BIG "\\Bigl ")
|
|
| "\\Bigr" -> (tex_use_ams ();BIG "\\Bigr ")
|
|
| "\\biggl" -> (tex_use_ams ();BIG "\\biggl ")
|
|
| "\\biggr" -> (tex_use_ams ();BIG "\\biggr ")
|
|
| "\\Biggl" -> (tex_use_ams ();BIG "\\Biggl ")
|
|
| "\\Biggr" -> (tex_use_ams ();BIG "\\Biggr ")
|
|
| "\\vartriangle" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\vartriangle "))
|
|
| "\\triangledown" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\triangledown "))
|
|
| "\\lozenge" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\lozenge "))
|
|
| "\\circledS" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\circledS "))
|
|
| "\\measuredangle" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\measuredangle "))
|
|
| "\\nexists" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nexists "))
|
|
| "\\Bbbk" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\Bbbk "))
|
|
| "\\backprime" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\backprime "))
|
|
| "\\blacktriangle" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\blacktriangle "))
|
|
| "\\blacktriangledown"-> (tex_use_ams (); LITERAL (TEX_ONLY "\\blacktriangledown "))
|
|
| "\\blacksquare" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\blacksquare "))
|
|
| "\\blacklozenge" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\blacklozenge "))
|
|
| "\\bigstar" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\bigstar "))
|
|
| "\\sphericalangle" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\sphericalangle "))
|
|
| "\\diagup" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\diagup "))
|
|
| "\\diagdown" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\diagdown "))
|
|
| "\\dotplus" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\dotplus "))
|
|
| "\\Cap" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\Cap "))
|
|
| "\\doublecap" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\Cap "))
|
|
| "\\Cup" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\Cup "))
|
|
| "\\doublecup" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\Cup "))
|
|
| "\\barwedge" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\barwedge "))
|
|
| "\\veebar" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\veebar "))
|
|
| "\\doublebarwedge" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\doublebarwedge "))
|
|
| "\\boxminus" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\boxminus "))
|
|
| "\\boxtimes" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\boxtimes "))
|
|
| "\\boxdot" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\boxdot "))
|
|
| "\\boxplus" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\boxplus "))
|
|
| "\\divideontimes" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\divideontimes "))
|
|
| "\\ltimes" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\ltimes "))
|
|
| "\\rtimes" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\rtimes "))
|
|
| "\\leftthreetimes" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\leftthreetimes "))
|
|
| "\\rightthreetimes" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\rightthreetimes "))
|
|
| "\\curlywedge" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\curlywedge "))
|
|
| "\\curlyvee" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\curlyvee "))
|
|
| "\\circleddash" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\circleddash "))
|
|
| "\\circledast" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\circledast "))
|
|
| "\\circledcirc" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\circledcirc "))
|
|
| "\\centerdot" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\centerdot "))
|
|
| "\\intercal" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\intercal "))
|
|
| "\\leqq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\leqq "))
|
|
| "\\leqslant" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\leqslant "))
|
|
| "\\eqslantless" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\eqslantless "))
|
|
| "\\lessapprox" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\lessapprox "))
|
|
| "\\approxeq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\approxeq "))
|
|
| "\\lessdot" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\lessdot "))
|
|
| "\\lll" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\lll "))
|
|
| "\\lessgtr" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\lessgtr "))
|
|
| "\\lesseqgtr" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\lesseqgtr "))
|
|
| "\\lesseqqgtr" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\lesseqqgtr "))
|
|
| "\\doteqdot" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\doteqdot "))
|
|
| "\\Doteq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\doteqdot "))
|
|
| "\\risingdotseq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\risingdotseq "))
|
|
| "\\fallingdotseq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\fallingdotseq "))
|
|
| "\\backsim" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\backsim "))
|
|
| "\\backsimeq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\backsimeq "))
|
|
| "\\subseteqq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\subseteqq "))
|
|
| "\\Subset" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\Subset "))
|
|
| "\\preccurlyeq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\preccurlyeq "))
|
|
| "\\curlyeqprec" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\curlyeqprec "))
|
|
| "\\precsim" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\precsim "))
|
|
| "\\precapprox" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\precapprox "))
|
|
| "\\vartriangleleft" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\vartriangleleft "))
|
|
| "\\Vvdash" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\Vvdash "))
|
|
| "\\bumpeq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\bumpeq "))
|
|
| "\\Bumpeq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\Bumpeq "))
|
|
| "\\geqq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\geqq "))
|
|
| "\\geqslant" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\geqslant "))
|
|
| "\\eqslantgtr" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\eqslantgtr "))
|
|
| "\\gtrsim" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\gtrsim "))
|
|
| "\\gtrapprox" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\gtrapprox "))
|
|
| "\\eqsim" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\eqsim "))
|
|
| "\\gtrdot" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\gtrdot "))
|
|
| "\\ggg" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\ggg "))
|
|
| "\\gggtr" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\ggg "))
|
|
| "\\gtrless" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\gtrless "))
|
|
| "\\gtreqless" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\gtreqless "))
|
|
| "\\gtreqqless" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\gtreqqless "))
|
|
| "\\eqcirc" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\eqcirc "))
|
|
| "\\circeq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\circeq "))
|
|
| "\\triangleq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\triangleq "))
|
|
| "\\thicksim" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\thicksim "))
|
|
| "\\thickapprox" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\thickapprox "))
|
|
| "\\supseteqq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\supseteqq "))
|
|
| "\\Supset" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\Supset "))
|
|
| "\\succcurlyeq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\succcurlyeq "))
|
|
| "\\curlyeqsucc" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\curlyeqsucc "))
|
|
| "\\succsim" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\succsim "))
|
|
| "\\succapprox" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\succapprox "))
|
|
| "\\vartriangleright" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\vartriangleright "))
|
|
| "\\shortmid" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\shortmid "))
|
|
| "\\shortparallel" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\shortparallel "))
|
|
| "\\between" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\between "))
|
|
| "\\pitchfork" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\pitchfork "))
|
|
| "\\varpropto" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\varpropto "))
|
|
| "\\blacktriangleleft"-> (tex_use_ams (); LITERAL (TEX_ONLY "\\blacktriangleleft "))
|
|
| "\\therefore" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\therefore "))
|
|
| "\\backepsilon" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\backepsilon "))
|
|
| "\\blacktriangleright"-> (tex_use_ams (); LITERAL (TEX_ONLY "\\blacktriangleright "))
|
|
| "\\because" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\because "))
|
|
| "\\nleqslant" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nleqslant "))
|
|
| "\\nleqq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nleqq "))
|
|
| "\\lneq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\lneq "))
|
|
| "\\lneqq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\lneqq "))
|
|
| "\\lvertneqq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\lvertneqq "))
|
|
| "\\lnsim" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\lnsim "))
|
|
| "\\lnapprox" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\lnapprox "))
|
|
| "\\nprec" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nprec "))
|
|
| "\\npreceq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\npreceq "))
|
|
| "\\precneqq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\precneqq "))
|
|
| "\\precnsim" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\precnsim "))
|
|
| "\\precnapprox" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\precnapprox "))
|
|
| "\\nsim" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nsim "))
|
|
| "\\nshortmid" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nshortmid "))
|
|
| "\\nvdash" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nvdash "))
|
|
| "\\nVdash" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nVdash "))
|
|
| "\\ntriangleleft" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\ntriangleleft "))
|
|
| "\\ntrianglelefteq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\ntrianglelefteq "))
|
|
| "\\nsubseteq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nsubseteq "))
|
|
| "\\nsubseteqq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nsubseteqq "))
|
|
| "\\varsubsetneq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\varsubsetneq "))
|
|
| "\\subsetneqq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\subsetneqq "))
|
|
| "\\varsubsetneqq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\varsubsetneqq "))
|
|
| "\\ngtr" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\ngtr "))
|
|
| "\\ngeqslant" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\ngeqslant "))
|
|
| "\\ngeqq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\ngeqq "))
|
|
| "\\gneq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\gneq "))
|
|
| "\\gneqq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\gneqq "))
|
|
| "\\gvertneqq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\gvertneqq "))
|
|
| "\\gnsim" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\gnsim "))
|
|
| "\\gnapprox" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\gnapprox "))
|
|
| "\\nsucc" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nsucc "))
|
|
| "\\nsucceq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nsucceq "))
|
|
| "\\succneqq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\succneqq "))
|
|
| "\\succnsim" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\succnsim "))
|
|
| "\\succnapprox" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\succnapprox "))
|
|
| "\\ncong" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\ncong "))
|
|
| "\\nshortparallel" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nshortparallel "))
|
|
| "\\nparallel" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nparallel "))
|
|
| "\\nvDash" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nvDash "))
|
|
| "\\nVDash" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nVDash "))
|
|
| "\\ntriangleright" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\ntriangleright "))
|
|
| "\\ntrianglerighteq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\ntrianglerighteq "))
|
|
| "\\nsupseteq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nsupseteq "))
|
|
| "\\nsupseteqq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nsupseteqq "))
|
|
| "\\varsupsetneq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\varsupsetneq "))
|
|
| "\\supsetneqq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\supsetneqq "))
|
|
| "\\varsupsetneqq" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\varsupsetneqq "))
|
|
| "\\leftleftarrows" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\leftleftarrows "))
|
|
| "\\leftrightarrows" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\leftrightarrows "))
|
|
| "\\Lleftarrow" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\Lleftarrow "))
|
|
| "\\leftarrowtail" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\leftarrowtail "))
|
|
| "\\looparrowleft" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\looparrowleft "))
|
|
| "\\leftrightharpoons"-> (tex_use_ams (); LITERAL (TEX_ONLY "\\leftrightharpoons "))
|
|
| "\\curvearrowleft" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\curvearrowleft "))
|
|
| "\\circlearrowleft" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\circlearrowleft "))
|
|
| "\\Lsh" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\Lsh "))
|
|
| "\\upuparrows" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\upuparrows "))
|
|
| "\\rightrightarrows" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\rightrightarrows "))
|
|
| "\\rightleftarrows" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\rightleftarrows "))
|
|
| "\\Rrightarrow" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\Rrightarrow "))
|
|
| "\\rightarrowtail" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\rightarrowtail "))
|
|
| "\\looparrowright" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\looparrowright "))
|
|
| "\\curvearrowright" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\curvearrowright "))
|
|
| "\\circlearrowright" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\circlearrowright "))
|
|
| "\\Rsh" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\Rsh "))
|
|
| "\\downdownarrows" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\downdownarrows "))
|
|
| "\\multimap" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\multimap "))
|
|
| "\\leftrightsquigarrow"-> (tex_use_ams (); LITERAL (TEX_ONLY "\\leftrightsquigarrow "))
|
|
| "\\rightsquigarrow" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\rightsquigarrow "))
|
|
| "\\nLeftarrow" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nLeftarrow "))
|
|
| "\\nleftrightarrow" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nleftrightarrow "))
|
|
| "\\nRightarrow" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nRightarrow "))
|
|
| "\\nLeftrightarrow" -> (tex_use_ams (); LITERAL (TEX_ONLY "\\nLeftrightarrow "))
|
|
| "\\mathit" -> (tex_use_ams (); FUN_AR1hf ("\\mathit ", FONTFORCE_IT))
|
|
| "\\mathrm" -> (tex_use_ams (); FUN_AR1hf ("\\mathrm ", FONTFORCE_RM))
|
|
| "\\mathord" -> (tex_use_ams (); FUN_AR1 "\\mathord ")
|
|
| "\\mathop" -> (tex_use_ams (); FUN_AR1 "\\mathop ")
|
|
| "\\mathbin" -> (tex_use_ams (); FUN_AR1 "\\mathbin ")
|
|
| "\\mathrel" -> (tex_use_ams (); FUN_AR1 "\\mathrel ")
|
|
| "\\mathopen" -> (tex_use_ams (); FUN_AR1 "\\mathopen ")
|
|
| "\\mathclose" -> (tex_use_ams (); FUN_AR1 "\\mathclose ")
|
|
| "\\mathpunct" -> (tex_use_ams (); FUN_AR1 "\\mathpunct ")
|
|
| "\\boldsymbol" -> (tex_use_ams (); FUN_AR1 "\\boldsymbol ")
|
|
| "\\bold" -> (tex_use_ams (); FUN_AR1 "\\mathbf ")
|
|
| "\\Bbb" -> (tex_use_ams (); FUN_AR1 "\\mathbb ")
|
|
| "\\mathbf" -> (tex_use_ams (); FUN_AR1 "\\mathbf ")
|
|
| "\\mathsf" -> (tex_use_ams (); FUN_AR1 "\\mathsf ")
|
|
| "\\mathcal" -> (tex_use_ams (); FUN_AR1 "\\mathcal ")
|
|
| "\\mathbb" -> (tex_use_ams (); FUN_AR1 "\\mathbb ")
|
|
| "\\mathtt" -> (tex_use_ams (); FUN_AR1 "\\mathtt ")
|
|
| "\\mathfrak" -> (tex_use_ams (); FUN_AR1 "\\mathfrak ")
|
|
| "\\operatorname" -> (tex_use_ams (); FUN_AR1 "\\operatorname ")
|
|
| "\\text" -> raise (Failure "malformatted \\text")
|
|
| "\\mbox" -> raise (Failure "malformatted \\mbox")
|
|
| "\\vbox" -> raise (Failure "malformatted \\vbox")
|
|
| "\\hbox" -> raise (Failure "malformatted \\hbox")
|
|
| "\\color" -> (tex_use_color (); LITERAL (TEX_ONLY "\\color"))
|
|
| "\\pagecolor" -> (tex_use_color (); LITERAL (TEX_ONLY "\\pagecolor"))
|
|
| "\\definecolor" -> (tex_use_color (); LITERAL (TEX_ONLY "\\definecolor"))
|
|
| s -> raise (Illegal_tex_function s)
|