orgize/src/entities.rs
2023-11-19 16:42:12 +08:00

468 lines
30 KiB
Rust
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// https://git.sr.ht/~bzg/org-mode/tree/bfa4f9d5aa3e5c94974cae7a459cb5e5b4b15f52/item/lisp/org-entities.el#L85
// nil -> false
// t -> true
// \x00A0 -> \\x00A0
#[rustfmt::skip]
pub const ENTITIES: &[(&str, &str, bool, &str, &str, &str, &str)] = &[
// ("* Letters"
// Latin
("Agrave", "\\`{A}", false, "À", "A", "À", "À"),
("agrave", "\\`{a}", false, "à", "a", "à", "à"),
("Aacute", "\\'{A}", false, "Á", "A", "Á", "Á"),
("aacute", "\\'{a}", false, "á", "a", "á", "á"),
("Acirc", "\\^{A}", false, "Â", "A", "Â", "Â"),
("acirc", "\\^{a}", false, "â", "a", "â", "â"),
("Amacr", "\\={A}", false, "Ā", "A", "Ã", "Ã"),
("amacr", "\\={a}", false, "ā", "a", "ã", "ã"),
("Atilde", "\\~{A}", false, "Ã", "A", "Ã", "Ã"),
("atilde", "\\~{a}", false, "ã", "a", "ã", "ã"),
("Auml", "\\\"{A}", false, "Ä", "Ae", "Ä", "Ä"),
("auml", "\\\"{a}", false, "ä", "ae", "ä", "ä"),
("Aring", "\\AA{}", false, "Å", "A", "Å", "Å"),
("AA", "\\AA{}", false, "Å", "A", "Å", "Å"),
("aring", "\\aa{}", false, "å", "a", "å", "å"),
("AElig", "\\AE{}", false, "Æ", "AE", "Æ", "Æ"),
("aelig", "\\ae{}", false, "æ", "ae", "æ", "æ"),
("Ccedil", "\\c{C}", false, "Ç", "C", "Ç", "Ç"),
("ccedil", "\\c{c}", false, "ç", "c", "ç", "ç"),
("Egrave", "\\`{E}", false, "È", "E", "È", "È"),
("egrave", "\\`{e}", false, "è", "e", "è", "è"),
("Eacute", "\\'{E}", false, "É", "E", "É", "É"),
("eacute", "\\'{e}", false, "é", "e", "é", "é"),
("Ecirc", "\\^{E}", false, "Ê", "E", "Ê", "Ê"),
("ecirc", "\\^{e}", false, "ê", "e", "ê", "ê"),
("Euml", "\\\"{E}", false, "Ë", "E", "Ë", "Ë"),
("euml", "\\\"{e}", false, "ë", "e", "ë", "ë"),
("Igrave", "\\`{I}", false, "Ì", "I", "Ì", "Ì"),
("igrave", "\\`{i}", false, "ì", "i", "ì", "ì"),
("Iacute", "\\'{I}", false, "Í", "I", "Í", "Í"),
("iacute", "\\'{i}", false, "í", "i", "í", "í"),
("Idot", "\\.{I}", false, "&idot;", "I", "İ", "İ"),
("inodot", "\\i", false, "ı", "i", "ı", "ı"),
("Icirc", "\\^{I}", false, "Î", "I", "Î", "Î"),
("icirc", "\\^{i}", false, "î", "i", "î", "î"),
("Iuml", "\\\"{I}", false, "Ï", "I", "Ï", "Ï"),
("iuml", "\\\"{i}", false, "ï", "i", "ï", "ï"),
("Ntilde", "\\~{N}", false, "Ñ", "N", "Ñ", "Ñ"),
("ntilde", "\\~{n}", false, "ñ", "n", "ñ", "ñ"),
("Ograve", "\\`{O}", false, "Ò", "O", "Ò", "Ò"),
("ograve", "\\`{o}", false, "ò", "o", "ò", "ò"),
("Oacute", "\\'{O}", false, "Ó", "O", "Ó", "Ó"),
("oacute", "\\'{o}", false, "ó", "o", "ó", "ó"),
("Ocirc", "\\^{O}", false, "Ô", "O", "Ô", "Ô"),
("ocirc", "\\^{o}", false, "ô", "o", "ô", "ô"),
("Otilde", "\\~{O}", false, "Õ", "O", "Õ", "Õ"),
("otilde", "\\~{o}", false, "õ", "o", "õ", "õ"),
("Ouml", "\\\"{O}", false, "Ö", "Oe", "Ö", "Ö"),
("ouml", "\\\"{o}", false, "ö", "oe", "ö", "ö"),
("Oslash", "\\O", false, "Ø", "O", "Ø", "Ø"),
("oslash", "\\o{}", false, "ø", "o", "ø", "ø"),
("OElig", "\\OE{}", false, "Œ", "OE", "OE", "Œ"),
("oelig", "\\oe{}", false, "œ", "oe", "oe", "œ"),
("Scaron", "\\v{S}", false, "Š", "S", "S", "Š"),
("scaron", "\\v{s}", false, "š", "s", "s", "š"),
("szlig", "\\ss{}", false, "ß", "ss", "ß", "ß"),
("Ugrave", "\\`{U}", false, "Ù", "U", "Ù", "Ù"),
("ugrave", "\\`{u}", false, "ù", "u", "ù", "ù"),
("Uacute", "\\'{U}", false, "Ú", "U", "Ú", "Ú"),
("uacute", "\\'{u}", false, "ú", "u", "ú", "ú"),
("Ucirc", "\\^{U}", false, "Û", "U", "Û", "Û"),
("ucirc", "\\^{u}", false, "û", "u", "û", "û"),
("Uuml", "\\\"{U}", false, "Ü", "Ue", "Ü", "Ü"),
("uuml", "\\\"{u}", false, "ü", "ue", "ü", "ü"),
("Yacute", "\\'{Y}", false, "Ý", "Y", "Ý", "Ý"),
("yacute", "\\'{y}", false, "ý", "y", "ý", "ý"),
("Yuml", "\\\"{Y}", false, "Ÿ", "Y", "Y", "Ÿ"),
("yuml", "\\\"{y}", false, "ÿ", "y", "ÿ", "ÿ"),
// Latin (special face)
("fnof", "\\textit{f}", false, "ƒ", "f", "f", "ƒ"),
("real", "\\Re", true, "ℜ", "R", "R", ""),
("image", "\\Im", true, "ℑ", "I", "I", ""),
("weierp", "\\wp", true, "℘", "P", "P", ""),
("ell", "\\ell", true, "ℓ", "ell", "ell", ""),
("imath", "\\imath", true, "ı", "[dotless i]", "dotless i", "ı"),
("jmath", "\\jmath", true, "ȷ", "[dotless j]", "dotless j", "ȷ"),
// Greek
("Alpha", "A", false, "Α", "Alpha", "Alpha", "Α"),
("alpha", "\\alpha", true, "α", "alpha", "alpha", "α"),
("Beta", "B", false, "Β", "Beta", "Beta", "Β"),
("beta", "\\beta", true, "β", "beta", "beta", "β"),
("Gamma", "\\Gamma", true, "Γ", "Gamma", "Gamma", "Γ"),
("gamma", "\\gamma", true, "γ", "gamma", "gamma", "γ"),
("Delta", "\\Delta", true, "Δ", "Delta", "Delta", "Δ"),
("delta", "\\delta", true, "δ", "delta", "delta", "δ"),
("Epsilon", "E", false, "Ε", "Epsilon", "Epsilon", "Ε"),
("epsilon", "\\epsilon", true, "ε", "epsilon", "epsilon", "ε"),
("varepsilon", "\\varepsilon", true, "ε", "varepsilon", "varepsilon", "ε"),
("Zeta", "Z", false, "Ζ", "Zeta", "Zeta", "Ζ"),
("zeta", "\\zeta", true, "ζ", "zeta", "zeta", "ζ"),
("Eta", "H", false, "Η", "Eta", "Eta", "Η"),
("eta", "\\eta", true, "η", "eta", "eta", "η"),
("Theta", "\\Theta", true, "Θ", "Theta", "Theta", "Θ"),
("theta", "\\theta", true, "θ", "theta", "theta", "θ"),
("thetasym", "\\vartheta", true, "ϑ", "theta", "theta", "ϑ"),
("vartheta", "\\vartheta", true, "ϑ", "theta", "theta", "ϑ"),
("Iota", "I", false, "Ι", "Iota", "Iota", "Ι"),
("iota", "\\iota", true, "ι", "iota", "iota", "ι"),
("Kappa", "K", false, "Κ", "Kappa", "Kappa", "Κ"),
("kappa", "\\kappa", true, "κ", "kappa", "kappa", "κ"),
("Lambda", "\\Lambda", true, "Λ", "Lambda", "Lambda", "Λ"),
("lambda", "\\lambda", true, "λ", "lambda", "lambda", "λ"),
("Mu", "M", false, "Μ", "Mu", "Mu", "Μ"),
("mu", "\\mu", true, "μ", "mu", "mu", "μ"),
("nu", "\\nu", true, "ν", "nu", "nu", "ν"),
("Nu", "N", false, "Ν", "Nu", "Nu", "Ν"),
("Xi", "\\Xi", true, "Ξ", "Xi", "Xi", "Ξ"),
("xi", "\\xi", true, "ξ", "xi", "xi", "ξ"),
("Omicron", "O", false, "Ο", "Omicron", "Omicron", "Ο"),
("omicron", "\\textit{o}", false, "ο", "omicron", "omicron", "ο"),
("Pi", "\\Pi", true, "Π", "Pi", "Pi", "Π"),
("pi", "\\pi", true, "π", "pi", "pi", "π"),
("Rho", "P", false, "Ρ", "Rho", "Rho", "Ρ"),
("rho", "\\rho", true, "ρ", "rho", "rho", "ρ"),
("Sigma", "\\Sigma", true, "Σ", "Sigma", "Sigma", "Σ"),
("sigma", "\\sigma", true, "σ", "sigma", "sigma", "σ"),
("sigmaf", "\\varsigma", true, "ς", "sigmaf", "sigmaf", "ς"),
("varsigma", "\\varsigma", true, "ς", "varsigma", "varsigma", "ς"),
("Tau", "T", false, "Τ", "Tau", "Tau", "Τ"),
("Upsilon", "\\Upsilon", true, "Υ", "Upsilon", "Upsilon", "Υ"),
("upsih", "\\Upsilon", true, "ϒ", "upsilon", "upsilon", "ϒ"),
("upsilon", "\\upsilon", true, "υ", "upsilon", "upsilon", "υ"),
("Phi", "\\Phi", true, "Φ", "Phi", "Phi", "Φ"),
("phi", "\\phi", true, "φ", "phi", "phi", "ɸ"),
("varphi", "\\varphi", true, "ϕ", "varphi", "varphi", "φ"),
("Chi", "X", false, "Χ", "Chi", "Chi", "Χ"),
("chi", "\\chi", true, "χ", "chi", "chi", "χ"),
("acutex", "\\acute x", true, "´x", "'x", "'x", "𝑥́"),
("Psi", "\\Psi", true, "Ψ", "Psi", "Psi", "Ψ"),
("psi", "\\psi", true, "ψ", "psi", "psi", "ψ"),
("tau", "\\tau", true, "τ", "tau", "tau", "τ"),
("Omega", "\\Omega", true, "Ω", "Omega", "Omega", "Ω"),
("omega", "\\omega", true, "ω", "omega", "omega", "ω"),
("piv", "\\varpi", true, "ϖ", "omega-pi", "omega-pi", "ϖ"),
("varpi", "\\varpi", true, "ϖ", "omega-pi", "omega-pi", "ϖ"),
("partial", "\\partial", true, "∂", "[partial differential]", "[partial differential]", ""),
// Hebrew
("alefsym", "\\aleph", true, "ℵ", "aleph", "aleph", ""),
("aleph", "\\aleph", true, "ℵ", "aleph", "aleph", ""),
("gimel", "\\gimel", true, "ℷ", "gimel", "gimel", ""),
("beth", "\\beth", true, "ℶ", "beth", "beth", "ב"),
("dalet", "\\daleth", true, "ℸ", "dalet", "dalet", "ד"),
// Icelandic
("ETH", "\\DH{}", false, "Ð", "D", "Ð", "Ð"),
("eth", "\\dh{}", false, "ð", "dh", "ð", "ð"),
("THORN", "\\TH{}", false, "Þ", "TH", "Þ", "Þ"),
("thorn", "\\th{}", false, "þ", "th", "þ", "þ"),
//, "* Punctuation",
// Dots and Marks
("dots", "\\dots{}", false, "…", "...", "...", ""),
("cdots", "\\cdots{}", true, "⋯", "...", "...", ""),
("hellip", "\\dots{}", false, "…", "...", "...", ""),
("middot", "\\textperiodcentered{}", false, "·", ".", "·", "·"),
("iexcl", "!`", false, "¡", "!", "¡", "¡"),
("iquest", "?`", false, "¿", "?", "¿", "¿"),
// Dash-like
("shy", "\\-", false, "­", "", "", ""),
("ndash", "--", false, "–", "-", "-", ""),
("mdash", "---", false, "—", "--", "--", ""),
// Quotations
("quot", "\\textquotedbl{}", false, """, "\"", "\"", "\""),
("acute", "\\textasciiacute{}", false, "´", "'", "´", "´"),
("ldquo", "\\textquotedblleft{}", false, "“", "\"", "\"", ""),
("rdquo", "\\textquotedblright{}", false, "”", "\"", "\"", ""),
("bdquo", "\\quotedblbase{}", false, "„", "\"", "\"", ""),
("lsquo", "\\textquoteleft{}", false, "‘", "`", "`", ""),
("rsquo", "\\textquoteright{}", false, "’", "'", "'", ""),
("sbquo", "\\quotesinglbase{}", false, "‚", ", ", ", ", ""),
("laquo", "\\guillemotleft{}", false, "&laquo;", "<<", "«", "«"),
("raquo", "\\guillemotright{}", false, "&raquo;", ">>", "»", "»"),
("lsaquo", "\\guilsinglleft{}", false, "&lsaquo;", "<", "<", ""),
("rsaquo", "\\guilsinglright{}", false, "&rsaquo;", ">", ">", ""),
//, "* Other",
// Misc. (often used)
("circ", "\\^{}", false, "&circ;", "^", "^", ""),
("vert", "\\vert{}", true, "&vert;", "|", "|", "|"),
("vbar", "|", false, "|", "|", "|", "|"),
("brvbar", "\\textbrokenbar{}", false, "&brvbar;", "|", "¦", "¦"),
("S", "\\S", false, "&sect;", "section", "§", "§"),
("sect", "\\S", false, "&sect;", "section", "§", "§"),
("P", "\\P{}", false, "&para;", "paragraph", "", ""),
("para", "\\P{}", false, "&para;", "paragraph", "", ""),
("amp", "\\&", false, "&amp;", "&", "&", "&"),
("lt", "\\textless{}", false, "&lt;", "<", "<", "<"),
("gt", "\\textgreater{}", false, "&gt;", ">", ">", ">"),
("tilde", "\\textasciitilde{}", false, "~", "~", "~", "~"),
("slash", "/", false, "/", "/", "/", "/"),
("plus", "+", false, "+", "+", "+", "+"),
("under", "\\_", false, "_", "_", "_", "_"),
("equal", "=", false, "=", "=", "=", "="),
("asciicirc", "\\textasciicircum{}", false, "^", "^", "^", "^"),
("dagger", "\\textdagger{}", false, "&dagger;", "[dagger]", "[dagger]", ""),
("dag", "\\dag{}", false, "&dagger;", "[dagger]", "[dagger]", ""),
("Dagger", "\\textdaggerdbl{}", false, "&Dagger;", "[doubledagger]", "[doubledagger]", ""),
("ddag", "\\ddag{}", false, "&Dagger;", "[doubledagger]", "[doubledagger]", ""),
// Whitespace
("nbsp", "~", false, "&nbsp;", ", ", "\\x00A0", "\\x00A0"),
("ensp", "\\hspace*{.5em}", false, "&ensp;", ", ", ", ", ""),
("emsp", "\\hspace*{1em}", false, "&emsp;", ", ", ", ", ""),
("thinsp", "\\hspace*{.2em}", false, "&thinsp;", ", ", ", ", ""),
// Currency
("curren", "\\textcurrency{}", false, "&curren;", "curr.", "¤", "¤"),
("cent", "\\textcent{}", false, "&cent;", "cent", "¢", "¢"),
("pound", "\\pounds{}", false, "&pound;", "pound", "£", "£"),
("yen", "\\textyen{}", false, "&yen;", "yen", "¥", "¥"),
("euro", "\\texteuro{}", false, "&euro;", "EUR", "EUR", ""),
("EUR", "\\texteuro{}", false, "&euro;", "EUR", "EUR", ""),
("dollar", "\\$", false, "$", "$", "$", "$"),
("USD", "\\$", false, "$", "$", "$", "$"),
// Property Marks
("copy", "\\textcopyright{}", false, "&copy;", "(c)", "©", "©"),
("reg", "\\textregistered{}", false, "&reg;", "(r)", "®", "®"),
("trade", "\\texttrademark{}", false, "&trade;", "TM", "TM", ""),
// Science, etrueal.
("minus", "-", true, "&minus;", "-", "-", ""),
("pm", "\\textpm{}", false, "&plusmn;", "+-", "±", "±"),
("plusmn", "\\textpm{}", false, "&plusmn;", "+-", "±", "±"),
("times", "\\texttimes{}", false, "&times;", "*", "×", "×"),
("frasl", "/", false, "&frasl;", "/", "/", ""),
("colon", "\\colon", true, ":", ":", ":", ":"),
("div", "\\textdiv{}", false, "&divide;", "/", "÷", "÷"),
("frac12", "\\textonehalf{}", false, "&frac12;", "1/2", "½", "½"),
("frac14", "\\textonequarter{}", false, "&frac14;", "1/4", "¼", "¼"),
("frac34", "\\textthreequarters{}", false, "&frac34;", "3/4", "¾", "¾"),
("permil", "\\textperthousand{}", false, "&permil;", "per thousand", "per thousand", ""),
("sup1", "\\textonesuperior{}", false, "&sup1;", "^1", "¹", "¹"),
("sup2", "\\texttwosuperior{}", false, "&sup2;", "^2", "²", "²"),
("sup3", "\\textthreesuperior{}", false, "&sup3;", "^3", "³", "³"),
("radic", "\\sqrt{\\,}", true, "&radic;", "[square root]", "[square root]", ""),
("sum", "\\sum", true, "&sum;", "[sum]", "[sum]", ""),
("prod", "\\prod", true, "&prod;", "[product]", "[n-ary product]", ""),
("micro", "\\textmu{}", false, "&micro;", "micro", "µ", "µ"),
("macr", "\\textasciimacron{}", false, "&macr;", "[macron]", "¯", "¯"),
("deg", "\\textdegree{}", false, "&deg;", "degree", "°", "°"),
("prime", "\\prime", true, "&prime;", "'", "'", ""),
("Prime", "\\prime{}\\prime", true, "&Prime;", "''", "''", ""),
("infin", "\\infty", true, "&infin;", "[infinity]", "[infinity]", ""),
("infty", "\\infty", true, "&infin;", "[infinity]", "[infinity]", ""),
("prop", "\\propto", true, "&prop;", "[proportional to]", "[proportional to]", ""),
("propto", "\\propto", true, "&prop;", "[proportional to]", "[proportional to]", ""),
("not", "\\textlnot{}", false, "&not;", "[angled dash]", "¬", "¬"),
("neg", "\\neg{}", true, "&not;", "[angled dash]", "¬", "¬"),
("land", "\\land", true, "&and;", "[logical and]", "[logical and]", ""),
("wedge", "\\wedge", true, "&and;", "[logical and]", "[logical and]", ""),
("lor", "\\lor", true, "&or;", "[logical or]", "[logical or]", ""),
("vee", "\\vee", true, "&or;", "[logical or]", "[logical or]", ""),
("cap", "\\cap", true, "&cap;", "[intersection]", "[intersection]", ""),
("cup", "\\cup", true, "&cup;", "[union]", "[union]", ""),
("smile", "\\smile", true, "&smile;", "[cup product]", "[cup product]", ""),
("frown", "\\frown", true, "&frown;", "[Cap product]", "[cap product]", ""),
("int", "\\int", true, "&int;", "[integral]", "[integral]", ""),
("therefore", "\\therefore", true, "&there4;", "[therefore]", "[therefore]", ""),
("there4", "\\therefore", true, "&there4;", "[therefore]", "[therefore]", ""),
("because", "\\because", true, "&because;", "[because]", "[because]", ""),
("sim", "\\sim", true, "&sim;", "~", "~", ""),
("cong", "\\cong", true, "&cong;", "[approx. equal to]", "[approx. equal to]", ""),
("simeq", "\\simeq", true, "&cong;", "[approx. equal to]", "[approx. equal to]", ""),
("asymp", "\\asymp", true, "&asymp;", "[, almostrueequal to]", "[, almostrueequal to]", ""),
("approx", "\\approx", true, "&asymp;", "[, almostrueequal to]", "[, almostrueequal to]", ""),
("ne", "\\ne", true, "&ne;", "[, notrueequal to]", "[, notrueequal to]", ""),
("neq", "\\neq", true, "&ne;", "[, notrueequal to]", "[, notrueequal to]", ""),
("equiv", "\\equiv", true, "&equiv;", "[identical to]", "[identical to]", ""),
("triangleq", "\\triangleq", true, "&triangleq;", "[defined to]", "[defined to]", ""),
("le", "\\le", true, "&le;", "<=", "<=", ""),
("leq", "\\le", true, "&le;", "<=", "<=", ""),
("ge", "\\ge", true, "&ge;", ">=", ">=", ""),
("geq", "\\ge", true, "&ge;", ">=", ">=", ""),
("lessgtr", "\\lessgtr", true, "&lessgtr;", "[less than or greater than]", "[less than or greater than]", ""),
("lesseqgtr", "\\lesseqgtr", true, "&lesseqgtr;", "[less than or equal or greater than or equal]", "[less than or equal or greater than or equal]", ""),
("ll", "\\ll", true, "&Lt;", "<<", "<<", ""),
("Ll", "\\lll", true, "&Ll;", "<<<", "<<<", ""),
("lll", "\\lll", true, "&Ll;", "<<<", "<<<", ""),
("gg", "\\gg", true, "&Gt;", ">>", ">>", ""),
("Gg", "\\ggg", true, "&Gg;", ">>>", ">>>", ""),
("ggg", "\\ggg", true, "&Gg;", ">>>", ">>>", ""),
("prec", "\\prec", true, "&pr;", "[precedes]", "[precedes]", ""),
("preceq", "\\preceq", true, "&prcue;", "[precedes or equal]", "[precedes or equal]", ""),
("preccurlyeq", "\\preccurlyeq", true, "&prcue;", "[precedes or equal]", "[precedes or equal]", ""),
("succ", "\\succ", true, "&sc;", "[succeeds]", "[succeeds]", ""),
("succeq", "\\succeq", true, "&sccue;", "[succeeds or equal]", "[succeeds or equal]", ""),
("succcurlyeq", "\\succcurlyeq", true, "&sccue;", "[succeeds or equal]", "[succeeds or equal]", ""),
("sub", "\\subset", true, "&sub;", "[, subsetrueof]", "[, subsetrueof]", ""),
("subset", "\\subset", true, "&sub;", "[, subsetrueof]", "[, subsetrueof]", ""),
("sup", "\\supset", true, "&sup;", "[, supersetrueof]", "[, supersetrueof]", ""),
("supset", "\\supset", true, "&sup;", "[, supersetrueof]", "[, supersetrueof]", ""),
("nsub", "\\not\\subset", true, "&nsub;", "[, notruea, subsetrueof]", "[, notruea, subsetrueof", ""),
("sube", "\\subseteq", true, "&sube;", "[, subsetrueof or equal to]", "[, subsetrueof or equal to]", ""),
("nsup", "\\not\\supset", true, "&nsup;", "[, notruea, supersetrueof]", "[, notruea, supersetrueof]", ""),
("supe", "\\supseteq", true, "&supe;", "[, supersetrueof or equal to]", "[, supersetrueof or equal to]", ""),
("setminus", "\\setminus", true, "&setminus;", "\\", "\\", ""),
("forall", "\\forall", true, "&forall;", "[for all]", "[for all]", ""),
("exist", "\\exists", true, "&exist;", "[there exists]", "[there exists]", ""),
("exists", "\\exists", true, "&exist;", "[there exists]", "[there exists]", ""),
("nexist", "\\nexists", true, "&exist;", "[there does, notrueexists]", "[there does, notrue exists]", ""),
("nexists", "\\nexists", true, "&exist;", "[there does, notrueexists]", "[there does, notrue exists]", ""),
("empty", "\\emptyset", true, "&empty;", "[empty set]", "[empty set]", ""),
("emptyset", "\\emptyset", true, "&empty;", "[empty set]", "[empty set]", ""),
("isin", "\\in", true, "&isin;", "[, elementrueof]", "[, elementrueof]", ""),
("in", "\\in", true, "&isin;", "[, elementrueof]", "[, elementrueof]", ""),
("notin", "\\notin", true, "&notin;", "[, notruean, elementrueof]", "[, notruean, elementrueof]", ""),
("ni", "\\ni", true, "&ni;", "[contains as member]", "[contains as member]", ""),
("nabla", "\\nabla", true, "&nabla;", "[nabla]", "[nabla]", ""),
("ang", "\\angle", true, "&ang;", "[angle]", "[angle]", ""),
("angle", "\\angle", true, "&ang;", "[angle]", "[angle]", ""),
("perp", "\\perp", true, "&perp;", "[up tack]", "[up tack]", ""),
("parallel", "\\parallel", true, "&parallel;", "||", "||", ""),
("sdot", "\\cdot", true, "&sdot;", "[dot]", "[dot]", ""),
("cdot", "\\cdot", true, "&sdot;", "[dot]", "[dot]", ""),
("lceil", "\\lceil", true, "&lceil;", "[, leftrueceiling]", "[, leftrueceiling]", ""),
("rceil", "\\rceil", true, "&rceil;", "[, rightrueceiling]", "[, rightrueceiling]", ""),
("lfloor", "\\lfloor", true, "&lfloor;", "[, leftruefloor]", "[, leftruefloor]", ""),
("rfloor", "\\rfloor", true, "&rfloor;", "[, rightruefloor]", "[, rightruefloor]", ""),
("lang", "\\langle", true, "&lang;", "<", "<", ""),
("rang", "\\rangle", true, "&rang;", ">", ">", ""),
("langle", "\\langle", true, "&lang;", "<", "<", ""),
("rangle", "\\rangle", true, "&rang;", ">", ">", ""),
("hbar", "\\hbar", true, "&hbar;", "hbar", "hbar", ""),
("mho", "\\mho", true, "&mho;", "mho", "mho", ""),
// Arrows
("larr", "\\leftarrow", true, "&larr;", "<-", "<-", ""),
("leftarrow", "\\leftarrow", true, "&larr;", "<-", "<-", ""),
("gets", "\\gets", true, "&larr;", "<-", "<-", ""),
("lArr", "\\Leftarrow", true, "&lArr;", "<=", "<=", ""),
("Leftarrow", "\\Leftarrow", true, "&lArr;", "<=", "<=", ""),
("uarr", "\\uparrow", true, "&uarr;", "[uparrow]", "[uparrow]", ""),
("uparrow", "\\uparrow", true, "&uarr;", "[uparrow]", "[uparrow]", ""),
("uArr", "\\Uparrow", true, "&uArr;", "[dbluparrow]", "[dbluparrow]", ""),
("Uparrow", "\\Uparrow", true, "&uArr;", "[dbluparrow]", "[dbluparrow]", ""),
("rarr", "\\rightarrow", true, "&rarr;", "->", "->", ""),
("to", "\\to", true, "&rarr;", "->", "->", ""),
("rightarrow", "\\rightarrow", true, "&rarr;", "->", "->", ""),
("rArr", "\\Rightarrow", true, "&rArr;", "=>", "=>", ""),
("Rightarrow", "\\Rightarrow", true, "&rArr;", "=>", "=>", ""),
("darr", "\\downarrow", true, "&darr;", "[downarrow]", "[downarrow]", ""),
("downarrow", "\\downarrow", true, "&darr;", "[downarrow]", "[downarrow]", ""),
("dArr", "\\Downarrow", true, "&dArr;", "[dbldownarrow]", "[dbldownarrow]", ""),
("Downarrow", "\\Downarrow", true, "&dArr;", "[dbldownarrow]", "[dbldownarrow]", ""),
("harr", "\\leftrightarrow", true, "&harr;", "<->", "<->", ""),
("leftrightarrow", "\\leftrightarrow", true, "&harr;", "<->", "<->", ""),
("hArr", "\\Leftrightarrow", true, "&hArr;", "<=>", "<=>", ""),
("Leftrightarrow", "\\Leftrightarrow", true, "&hArr;", "<=>", "<=>", ""),
("crarr", "\\hookleftarrow", true, "&crarr;", "<-'", "<-'", ""),
("hookleftarrow", "\\hookleftarrow", true, "&crarr;", "<-'", "<-'", ""),
// Function names
("arccos", "\\arccos", true, "arccos", "arccos", "arccos", "arccos"),
("arcsin", "\\arcsin", true, "arcsin", "arcsin", "arcsin", "arcsin"),
("arctan", "\\arctan", true, "arctan", "arctan", "arctan", "arctan"),
("arg", "\\arg", true, "arg", "arg", "arg", "arg"),
("cos", "\\cos", true, "cos", "cos", "cos", "cos"),
("cosh", "\\cosh", true, "cosh", "cosh", "cosh", "cosh"),
("cot", "\\cot", true, "cot", "cot", "cot", "cot"),
("coth", "\\coth", true, "coth", "coth", "coth", "coth"),
("csc", "\\csc", true, "csc", "csc", "csc", "csc"),
("deg", "\\deg", true, "&deg;", "deg", "deg", "deg"),
("det", "\\det", true, "det", "det", "det", "det"),
("dim", "\\dim", true, "dim", "dim", "dim", "dim"),
("exp", "\\exp", true, "exp", "exp", "exp", "exp"),
("gcd", "\\gcd", true, "gcd", "gcd", "gcd", "gcd"),
("hom", "\\hom", true, "hom", "hom", "hom", "hom"),
("inf", "\\inf", true, "inf", "inf", "inf", "inf"),
("ker", "\\ker", true, "ker", "ker", "ker", "ker"),
("lg", "\\lg", true, "lg", "lg", "lg", "lg"),
("lim", "\\lim", true, "lim", "lim", "lim", "lim"),
("liminf", "\\liminf", true, "liminf", "liminf", "liminf", "liminf"),
("limsup", "\\limsup", true, "limsup", "limsup", "limsup", "limsup"),
("ln", "\\ln", true, "ln", "ln", "ln", "ln"),
("log", "\\log", true, "log", "log", "log", "log"),
("max", "\\max", true, "max", "max", "max", "max"),
("min", "\\min", true, "min", "min", "min", "min"),
("Pr", "\\Pr", true, "Pr", "Pr", "Pr", "Pr"),
("sec", "\\sec", true, "sec", "sec", "sec", "sec"),
("sin", "\\sin", true, "sin", "sin", "sin", "sin"),
("sinh", "\\sinh", true, "sinh", "sinh", "sinh", "sinh"),
("sup", "\\sup", true, "&sup;", "sup", "sup", "sup"),
("tan", "\\tan", true, "tan", "tan", "tan", "tan"),
("tanh", "\\tanh", true, "tanh", "tanh", "tanh", "tanh"),
// Signs & Symbols
("bull", "\\textbullet{}", false, "&bull;", "*", "*", ""),
("bullet", "\\textbullet{}", false, "&bull;", "*", "*", ""),
("star", "\\star", true, "*", "*", "*", ""),
("lowast", "\\ast", true, "&lowast;", "*", "*", ""),
("ast", "\\ast", true, "&lowast;", "*", "*", "*"),
("odot", "\\odot", true, "o", "[circled dot]", "[circled dot]", "ʘ"),
("oplus", "\\oplus", true, "&oplus;", "[circled plus]", "[circled plus]", ""),
("otimes", "\\otimes", true, "&otimes;", "[circled times]", "[circled times]", ""),
("check", "\\checkmark", true, "&checkmark;", "[checkmark]", "[checkmark]", ""),
("checkmark", "\\checkmark", true, "&check;", "[checkmark]", "[checkmark]", ""),
// Miscellaneous (seldom used)
("ordf", "\\textordfeminine{}", false, "&ordf;", "_a_", "ª", "ª"),
("ordm", "\\textordmasculine{}", false, "&ordm;", "_o_", "º", "º"),
("cedil", "\\c{}", false, "&cedil;", "[cedilla]", "¸", "¸"),
("oline", "\\overline{~}", true, "&oline;", "[overline]", "¯", ""),
("uml", "\\textasciidieresis{}", false, "&uml;", "[diaeresis]", "¨", "¨"),
("zwnj", "\\/{}", false, "&zwnj;", "", "", ""),
("zwj", "", false, "&zwj;", "", "", ""),
("lrm", "", false, "&lrm;", "", "", "\u{200E}"),
("rlm", "", false, "&rlm;", "", "", "\u{200F}"),
// Smilies
("smiley", "\\ddot\\smile", true, "&#9786;", ":-)", ":-)", ""),
("blacksmile", "\\ddot\\smile", true, "&#9787;", ":-)", ":-)", ""),
("sad", "\\ddot\\frown", true, "&#9785;", ":-(", ":-(", ""),
("frowny", "\\ddot\\frown", true, "&#9785;", ":-(", ":-(", ""),
// Suits
("clubs", "\\clubsuit", true, "&clubs;", "[clubs]", "[clubs]", ""),
("clubsuit", "\\clubsuit", true, "&clubs;", "[clubs]", "[clubs]", ""),
("spades", "\\spadesuit", true, "&spades;", "[spades]", "[spades]", ""),
("spadesuit", "\\spadesuit", true, "&spades;", "[spades]", "[spades]", ""),
("hearts", "\\heartsuit", true, "&hearts;", "[hearts]", "[hearts]", ""),
("heartsuit", "\\heartsuit", true, "&heartsuit;", "[hearts]", "[hearts]", ""),
("diams", "\\diamondsuit", true, "&diams;", "[diamonds]", "[diamonds]", ""),
("diamondsuit", "\\diamondsuit", true, "&diams;", "[diamonds]", "[diamonds]", ""),
("diamond", "\\diamondsuit", true, "&diamond;", "[diamond]", "[diamond]", ""),
("Diamond", "\\diamondsuit", true, "&diamond;", "[diamond]", "[diamond]", ""),
("loz", "\\lozenge", true, "&loz;", "[lozenge]", "[lozenge]", ""),
// spaces
// fish shell:
// for i in (seq 1 20)
// echo '("'(string repeat -n $i ' ')'", "\\\\hspace*{'(math '0.5*'$i)'em}", true, "'(string repeat -n $i '&ensp;')'", "'(string repeat -n $i ' ')'", "'(string repeat -n $i ' ')'", "'(string repeat -n $i '\\\\x2002')'")'
// end
(" ", "\\hspace*{0.5em}", true, "&ensp;", " ", " ", "\\x2002"),
(" ", "\\hspace*{1em}", true, "&ensp;&ensp;", " ", " ", "\\x2002\\x2002"),
(" ", "\\hspace*{1.5em}", true, "&ensp;&ensp;&ensp;", " ", " ", "\\x2002\\x2002\\x2002"),
(" ", "\\hspace*{2em}", true, "&ensp;&ensp;&ensp;&ensp;", " ", " ", "\\x2002\\x2002\\x2002\\x2002"),
(" ", "\\hspace*{2.5em}", true, "&ensp;&ensp;&ensp;&ensp;&ensp;", " ", " ", "\\x2002\\x2002\\x2002\\x2002\\x2002"),
(" ", "\\hspace*{3em}", true, "&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;", " ", " ", "\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002"),
(" ", "\\hspace*{3.5em}", true, "&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;", " ", " ", "\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002"),
(" ", "\\hspace*{4em}", true, "&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;", " ", " ", "\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002"),
(" ", "\\hspace*{4.5em}", true, "&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;", " ", " ", "\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002"),
(" ", "\\hspace*{5em}", true, "&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;", " ", " ", "\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002"),
(" ", "\\hspace*{5.5em}", true, "&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;", " ", " ", "\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002"),
(" ", "\\hspace*{6em}", true, "&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;", " ", " ", "\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002"),
(" ", "\\hspace*{6.5em}", true, "&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;", " ", " ", "\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002"),
(" ", "\\hspace*{7em}", true, "&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;", " ", " ", "\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002"),
(" ", "\\hspace*{7.5em}", true, "&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;", " ", " ", "\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002"),
(" ", "\\hspace*{8em}", true, "&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;", " ", " ", "\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002"),
(" ", "\\hspace*{8.5em}", true, "&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;", " ", " ", "\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002"),
(" ", "\\hspace*{9em}", true, "&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;", " ", " ", "\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002"),
(" ", "\\hspace*{9.5em}", true, "&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;", " ", " ", "\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002"),
(" ", "\\hspace*{10em}", true, "&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;&ensp;", " ", " ", "\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002\\x2002"),
];