coreMathSymbols top-level constant

Map<String, SymbolInfo> const coreMathSymbols

The symbol commands of LaTeX, AMS and KaTeX.

Implementation

const Map<String, SymbolInfo> coreMathSymbols = {
  // Greek, lower case. TeX's \epsilon and \phi are the lunate/stroked
  // forms; \varepsilon and \varphi are the open/loopy ones.
  r'\alpha': SymbolInfo('α', _o),
  r'\beta': SymbolInfo('β', _o),
  r'\gamma': SymbolInfo('γ', _o),
  r'\delta': SymbolInfo('δ', _o),
  r'\epsilon': SymbolInfo('ϵ', _o),
  r'\varepsilon': SymbolInfo('ε', _o),
  r'\zeta': SymbolInfo('ζ', _o),
  r'\eta': SymbolInfo('η', _o),
  r'\theta': SymbolInfo('θ', _o),
  r'\vartheta': SymbolInfo('ϑ', _o),
  r'\thetasym': SymbolInfo('ϑ', _o),
  r'\iota': SymbolInfo('ι', _o),
  r'\kappa': SymbolInfo('κ', _o),
  r'\varkappa': SymbolInfo('ϰ', _o),
  r'\lambda': SymbolInfo('λ', _o),
  r'\mu': SymbolInfo('μ', _o),
  r'\nu': SymbolInfo('ν', _o),
  r'\xi': SymbolInfo('ξ', _o),
  r'\omicron': SymbolInfo('ο', _o),
  r'\pi': SymbolInfo('π', _o),
  r'\varpi': SymbolInfo('ϖ', _o),
  r'\rho': SymbolInfo('ρ', _o),
  r'\varrho': SymbolInfo('ϱ', _o),
  r'\sigma': SymbolInfo('σ', _o),
  r'\varsigma': SymbolInfo('ς', _o),
  r'\tau': SymbolInfo('τ', _o),
  r'\upsilon': SymbolInfo('υ', _o),
  r'\phi': SymbolInfo('ϕ', _o),
  r'\varphi': SymbolInfo('φ', _o),
  r'\chi': SymbolInfo('χ', _o),
  r'\psi': SymbolInfo('ψ', _o),
  r'\omega': SymbolInfo('ω', _o),
  r'\digamma': SymbolInfo('ϝ', _o),

  // Greek, upper case (upright). \var… forms are italic.
  r'\Gamma': SymbolInfo('Γ', _o),
  r'\Delta': SymbolInfo('Δ', _o),
  r'\Theta': SymbolInfo('Θ', _o),
  r'\Lambda': SymbolInfo('Λ', _o),
  r'\Xi': SymbolInfo('Ξ', _o),
  r'\Pi': SymbolInfo('Π', _o),
  r'\Sigma': SymbolInfo('Σ', _o),
  r'\Upsilon': SymbolInfo('Υ', _o),
  r'\Phi': SymbolInfo('Φ', _o),
  r'\Psi': SymbolInfo('Ψ', _o),
  r'\Omega': SymbolInfo('Ω', _o),
  r'\varGamma': SymbolInfo('Γ', _o, variant: true),
  r'\varDelta': SymbolInfo('Δ', _o, variant: true),
  r'\varTheta': SymbolInfo('Θ', _o, variant: true),
  r'\varLambda': SymbolInfo('Λ', _o, variant: true),
  r'\varXi': SymbolInfo('Ξ', _o, variant: true),
  r'\varPi': SymbolInfo('Π', _o, variant: true),
  r'\varSigma': SymbolInfo('Σ', _o, variant: true),
  r'\varUpsilon': SymbolInfo('Υ', _o, variant: true),
  r'\varPhi': SymbolInfo('Φ', _o, variant: true),
  r'\varPsi': SymbolInfo('Ψ', _o, variant: true),
  r'\varOmega': SymbolInfo('Ω', _o, variant: true),
  r'\Alpha': SymbolInfo('Α', _o),
  r'\Beta': SymbolInfo('Β', _o),
  r'\Epsilon': SymbolInfo('Ε', _o),
  r'\Zeta': SymbolInfo('Ζ', _o),
  r'\Eta': SymbolInfo('Η', _o),
  r'\Iota': SymbolInfo('Ι', _o),
  r'\Kappa': SymbolInfo('Κ', _o),
  r'\Mu': SymbolInfo('Μ', _o),
  r'\Nu': SymbolInfo('Ν', _o),
  r'\Omicron': SymbolInfo('Ο', _o),
  r'\Rho': SymbolInfo('Ρ', _o),
  r'\Tau': SymbolInfo('Τ', _o),
  r'\Chi': SymbolInfo('Χ', _o),

  // Letter-like and miscellaneous ordinary symbols.
  r'\hbar': SymbolInfo('ℏ', _o),
  r'\hslash': SymbolInfo('ℏ', _o, variant: true),
  r'\ell': SymbolInfo('ℓ', _o),
  r'\wp': SymbolInfo('℘', _o),
  r'\weierp': SymbolInfo('℘', _o),
  r'\Re': SymbolInfo('ℜ', _o),
  r'\real': SymbolInfo('ℜ', _o),
  r'\reals': SymbolInfo('ℝ', _o),
  r'\Reals': SymbolInfo('ℝ', _o),
  r'\Im': SymbolInfo('ℑ', _o),
  r'\image': SymbolInfo('ℑ', _o),
  r'\N': SymbolInfo('ℕ', _o),
  r'\natnums': SymbolInfo('ℕ', _o),
  r'\Z': SymbolInfo('ℤ', _o),
  r'\R': SymbolInfo('ℝ', _o),
  r'\Q': SymbolInfo('ℚ', _o),
  r'\C': SymbolInfo('ℂ', _o),
  r'\cnums': SymbolInfo('ℂ', _o),
  r'\Complex': SymbolInfo('ℂ', _o),
  r'\partial': SymbolInfo('∂', _o),
  r'\infty': SymbolInfo('∞', _o),
  r'\infin': SymbolInfo('∞', _o),
  r'\aleph': SymbolInfo('ℵ', _o),
  r'\alef': SymbolInfo('ℵ', _o),
  r'\alefsym': SymbolInfo('ℵ', _o),
  r'\beth': SymbolInfo('ℶ', _o),
  r'\gimel': SymbolInfo('ℷ', _o),
  r'\daleth': SymbolInfo('ℸ', _o),
  r'\eth': SymbolInfo('ð', _o),
  r'\imath': SymbolInfo('ı', _o),
  r'\jmath': SymbolInfo('ȷ', _o),
  r'\nabla': SymbolInfo('∇', _o),
  r'\forall': SymbolInfo('∀', _o),
  r'\exists': SymbolInfo('∃', _o),
  r'\exist': SymbolInfo('∃', _o),
  r'\nexists': SymbolInfo('∄', _o),
  r'\complement': SymbolInfo('∁', _o),
  r'\emptyset': SymbolInfo('∅', _o),
  r'\empty': SymbolInfo('∅', _o),
  r'\varnothing': SymbolInfo('∅', _o, variant: true),
  r'\Finv': SymbolInfo('Ⅎ', _o),
  r'\Game': SymbolInfo('⅁', _o),
  r'\mho': SymbolInfo('℧', _o),
  r'\Bbbk': SymbolInfo('𝕜', _o),
  r'\prime': SymbolInfo('′', _o),
  r'\backprime': SymbolInfo('‵', _o),
  r'\angle': SymbolInfo('∠', _o),
  r'\measuredangle': SymbolInfo('∡', _o),
  r'\sphericalangle': SymbolInfo('∢', _o),
  r'\top': SymbolInfo('⊤', _o),
  r'\bot': SymbolInfo('⊥', _o),
  r'\triangle': SymbolInfo('△', _o),
  r'\triangledown': SymbolInfo('▽', _o),
  r'\blacktriangle': SymbolInfo('▲', _o),
  r'\blacktriangledown': SymbolInfo('▼', _o),
  r'\square': SymbolInfo('□', _o),
  r'\Box': SymbolInfo('□', _o),
  r'\blacksquare': SymbolInfo('■', _o),
  r'\lozenge': SymbolInfo('◊', _o),
  r'\Diamond': SymbolInfo('◊', _o),
  r'\blacklozenge': SymbolInfo('⧫', _o),
  r'\bigstar': SymbolInfo('★', _o),
  r'\diagup': SymbolInfo('╱', _o),
  r'\diagdown': SymbolInfo('╲', _o),
  r'\clubsuit': SymbolInfo('♣', _o),
  r'\clubs': SymbolInfo('♣', _o),
  r'\diamondsuit': SymbolInfo('♢', _o),
  r'\diamonds': SymbolInfo('♢', _o),
  r'\heartsuit': SymbolInfo('♡', _o),
  r'\hearts': SymbolInfo('♡', _o),
  r'\spadesuit': SymbolInfo('♠', _o),
  r'\spades': SymbolInfo('♠', _o),
  r'\flat': SymbolInfo('♭', _o),
  r'\natural': SymbolInfo('♮', _o),
  r'\sharp': SymbolInfo('♯', _o),
  r'\surd': SymbolInfo('√', _o),
  r'\neg': SymbolInfo('¬', _o),
  r'\lnot': SymbolInfo('¬', _o),
  r'\degree': SymbolInfo('°', _o),
  r'\checkmark': SymbolInfo('✓', _o),
  r'\maltese': SymbolInfo('✠', _o),
  r'\circledR': SymbolInfo('®', _o),
  r'\circledS': SymbolInfo('Ⓢ', _o),
  r'\yen': SymbolInfo('¥', _o),
  r'\pounds': SymbolInfo('£', _o),
  r'\mathsterling': SymbolInfo('£', _o),
  r'\euro': SymbolInfo('€', _o),
  r'\copyright': SymbolInfo('©', _o),
  r'\S': SymbolInfo('§', _o),
  r'\sect': SymbolInfo('§', _o),
  r'\P': SymbolInfo('¶', _o),
  r'\dag': SymbolInfo('†', _o),
  r'\ddag': SymbolInfo('‡', _o),
  r'\vert': SymbolInfo('∣', _o),
  r'\Vert': SymbolInfo('∥', _o),
  r'\|': SymbolInfo('∥', _o),
  r'\backslash': SymbolInfo(r'\', _o),
  r'\#': SymbolInfo('#', _o),
  r'\$': SymbolInfo(r'$', _o),
  r'\%': SymbolInfo('%', _o),
  r'\&': SymbolInfo('&', _o),
  r'\And': SymbolInfo('&', _o),
  r'\_': SymbolInfo('_', _o),
  r'\mathdollar': SymbolInfo(r'$', _o),
  r'\sun': SymbolInfo('☉', _o),
  r'\varstar': SymbolInfo('✶', _o),
  r'\Earth': SymbolInfo('♁', _o),
  r'\female': SymbolInfo('♀', _o),
  r'\male': SymbolInfo('♂', _o),
  r'\minuso': SymbolInfo('⦵', _o),

  // Dots.
  r'\ldots': SymbolInfo('…', _in),
  r'\mathellipsis': SymbolInfo('…', _in),
  r'\cdots': SymbolInfo('⋯', _in),
  r'\vdots': SymbolInfo('⋮', _o),
  r'\varvdots': SymbolInfo('⋮', _o),
  r'\ddots': SymbolInfo('⋱', _in),
  r'\iddots': SymbolInfo('⋰', _in),
  r'\ldotp': SymbolInfo('.', _p),
  r'\cdotp': SymbolInfo('⋅', _p),

  // Binary operations.
  r'\pm': SymbolInfo('±', _b),
  r'\plusmn': SymbolInfo('±', _b),
  r'\mp': SymbolInfo('∓', _b),
  r'\times': SymbolInfo('×', _b),
  r'\div': SymbolInfo('÷', _b),
  r'\cdot': SymbolInfo('⋅', _b),
  r'\centerdot': SymbolInfo('⋅', _b),
  r'\sdot': SymbolInfo('⋅', _b),
  r'\ast': SymbolInfo('∗', _b),
  r'\star': SymbolInfo('⋆', _b),
  r'\circ': SymbolInfo('∘', _b),
  r'\bullet': SymbolInfo('∙', _b),
  r'\bull': SymbolInfo('∙', _b),
  r'\cap': SymbolInfo('∩', _b),
  r'\cup': SymbolInfo('∪', _b),
  r'\uplus': SymbolInfo('⊎', _b),
  r'\sqcap': SymbolInfo('⊓', _b),
  r'\sqcup': SymbolInfo('⊔', _b),
  r'\vee': SymbolInfo('∨', _b),
  r'\lor': SymbolInfo('∨', _b),
  r'\wedge': SymbolInfo('∧', _b),
  r'\land': SymbolInfo('∧', _b),
  r'\setminus': SymbolInfo('∖', _b),
  r'\smallsetminus': SymbolInfo('∖', _b, variant: true),
  r'\wr': SymbolInfo('≀', _b),
  r'\diamond': SymbolInfo('⋄', _b),
  r'\bigtriangleup': SymbolInfo('△', _b),
  r'\bigtriangledown': SymbolInfo('▽', _b),
  r'\triangleleft': SymbolInfo('◃', _b),
  r'\triangleright': SymbolInfo('▹', _b),
  r'\lhd': SymbolInfo('⊲', _b),
  r'\rhd': SymbolInfo('⊳', _b),
  r'\unlhd': SymbolInfo('⊴', _b),
  r'\unrhd': SymbolInfo('⊵', _b),
  r'\oplus': SymbolInfo('⊕', _b),
  r'\ominus': SymbolInfo('⊖', _b),
  r'\otimes': SymbolInfo('⊗', _b),
  r'\oslash': SymbolInfo('⊘', _b),
  r'\odot': SymbolInfo('⊙', _b),
  r'\bigcirc': SymbolInfo('◯', _b),
  r'\amalg': SymbolInfo('⨿', _b),
  r'\dagger': SymbolInfo('†', _b),
  r'\ddagger': SymbolInfo('‡', _b),
  r'\Dagger': SymbolInfo('‡', _b),
  r'\dotplus': SymbolInfo('∔', _b),
  r'\doublebarwedge': SymbolInfo('⩞', _b),
  r'\barwedge': SymbolInfo('⊼', _b),
  r'\veebar': SymbolInfo('⊻', _b),
  r'\curlywedge': SymbolInfo('⋏', _b),
  r'\curlyvee': SymbolInfo('⋎', _b),
  r'\Cap': SymbolInfo('⋒', _b),
  r'\doublecap': SymbolInfo('⋒', _b),
  r'\Cup': SymbolInfo('⋓', _b),
  r'\doublecup': SymbolInfo('⋓', _b),
  r'\boxminus': SymbolInfo('⊟', _b),
  r'\boxplus': SymbolInfo('⊞', _b),
  r'\boxtimes': SymbolInfo('⊠', _b),
  r'\boxdot': SymbolInfo('⊡', _b),
  r'\circleddash': SymbolInfo('⊝', _b),
  r'\circledast': SymbolInfo('⊛', _b),
  r'\circledcirc': SymbolInfo('⊚', _b),
  r'\divideontimes': SymbolInfo('⋇', _b),
  r'\intercal': SymbolInfo('⊺', _b),
  r'\leftthreetimes': SymbolInfo('⋋', _b),
  r'\rightthreetimes': SymbolInfo('⋌', _b),
  r'\ltimes': SymbolInfo('⋉', _b),
  r'\rtimes': SymbolInfo('⋊', _b),
  r'\gtrdot': SymbolInfo('⋗', _b),
  r'\lessdot': SymbolInfo('⋖', _b),

  // Relations.
  r'\leq': SymbolInfo('≤', _r),
  r'\le': SymbolInfo('≤', _r),
  r'\geq': SymbolInfo('≥', _r),
  r'\ge': SymbolInfo('≥', _r),
  r'\neq': SymbolInfo('≠', _r),
  r'\ne': SymbolInfo('≠', _r),
  r'\equiv': SymbolInfo('≡', _r),
  r'\sim': SymbolInfo('∼', _r),
  r'\simeq': SymbolInfo('≃', _r),
  r'\approx': SymbolInfo('≈', _r),
  r'\cong': SymbolInfo('≅', _r),
  r'\propto': SymbolInfo('∝', _r),
  r'\varpropto': SymbolInfo('∝', _r, variant: true),
  r'\asymp': SymbolInfo('≍', _r),
  r'\doteq': SymbolInfo('≐', _r),
  r'\models': SymbolInfo('⊨', _r),
  r'\perp': SymbolInfo('⊥', _r),
  r'\mid': SymbolInfo('∣', _r),
  r'\parallel': SymbolInfo('∥', _r),
  r'\bowtie': SymbolInfo('⋈', _r),
  r'\Join': SymbolInfo('⋈', _r),
  r'\smile': SymbolInfo('⌣', _r),
  r'\frown': SymbolInfo('⌢', _r),
  r'\smallsmile': SymbolInfo('⌣', _r, variant: true),
  r'\smallfrown': SymbolInfo('⌢', _r, variant: true),
  r'\subset': SymbolInfo('⊂', _r),
  r'\sub': SymbolInfo('⊂', _r),
  r'\supset': SymbolInfo('⊃', _r),
  r'\subseteq': SymbolInfo('⊆', _r),
  r'\sube': SymbolInfo('⊆', _r),
  r'\supseteq': SymbolInfo('⊇', _r),
  r'\supe': SymbolInfo('⊇', _r),
  r'\subseteqq': SymbolInfo('⫅', _r),
  r'\supseteqq': SymbolInfo('⫆', _r),
  r'\Subset': SymbolInfo('⋐', _r),
  r'\Supset': SymbolInfo('⋑', _r),
  r'\sqsubset': SymbolInfo('⊏', _r),
  r'\sqsupset': SymbolInfo('⊐', _r),
  r'\sqsubseteq': SymbolInfo('⊑', _r),
  r'\sqsupseteq': SymbolInfo('⊒', _r),
  r'\in': SymbolInfo('∈', _r),
  r'\isin': SymbolInfo('∈', _r),
  r'\ni': SymbolInfo('∋', _r),
  r'\owns': SymbolInfo('∋', _r),
  r'\notin': SymbolInfo('∉', _r),
  r'\notni': SymbolInfo('∌', _r),
  r'\backepsilon': SymbolInfo('∍', _r),
  r'\vdash': SymbolInfo('⊢', _r),
  r'\dashv': SymbolInfo('⊣', _r),
  r'\vDash': SymbolInfo('⊨', _r),
  r'\Vdash': SymbolInfo('⊩', _r),
  r'\Vvdash': SymbolInfo('⊪', _r),
  r'\ll': SymbolInfo('≪', _r),
  r'\gg': SymbolInfo('≫', _r),
  r'\lll': SymbolInfo('⋘', _r),
  r'\llless': SymbolInfo('⋘', _r),
  r'\ggg': SymbolInfo('⋙', _r),
  r'\gggtr': SymbolInfo('⋙', _r),
  r'\prec': SymbolInfo('≺', _r),
  r'\succ': SymbolInfo('≻', _r),
  r'\preceq': SymbolInfo('⪯', _r),
  r'\succeq': SymbolInfo('⪰', _r),
  r'\preccurlyeq': SymbolInfo('≼', _r),
  r'\succcurlyeq': SymbolInfo('≽', _r),
  r'\curlyeqprec': SymbolInfo('⋞', _r),
  r'\curlyeqsucc': SymbolInfo('⋟', _r),
  r'\precsim': SymbolInfo('≾', _r),
  r'\succsim': SymbolInfo('≿', _r),
  r'\precapprox': SymbolInfo('⪷', _r),
  r'\succapprox': SymbolInfo('⪸', _r),
  r'\leqq': SymbolInfo('≦', _r),
  r'\geqq': SymbolInfo('≧', _r),
  r'\leqslant': SymbolInfo('⩽', _r),
  r'\geqslant': SymbolInfo('⩾', _r),
  r'\eqslantless': SymbolInfo('⪕', _r),
  r'\eqslantgtr': SymbolInfo('⪖', _r),
  r'\lesssim': SymbolInfo('≲', _r),
  r'\gtrsim': SymbolInfo('≳', _r),
  r'\lessapprox': SymbolInfo('⪅', _r),
  r'\gtrapprox': SymbolInfo('⪆', _r),
  r'\approxeq': SymbolInfo('≊', _r),
  r'\lessgtr': SymbolInfo('≶', _r),
  r'\gtrless': SymbolInfo('≷', _r),
  r'\lesseqgtr': SymbolInfo('⋚', _r),
  r'\gtreqless': SymbolInfo('⋛', _r),
  r'\lesseqqgtr': SymbolInfo('⪋', _r),
  r'\gtreqqless': SymbolInfo('⪌', _r),
  r'\doteqdot': SymbolInfo('≑', _r),
  r'\Doteq': SymbolInfo('≑', _r),
  r'\risingdotseq': SymbolInfo('≓', _r),
  r'\fallingdotseq': SymbolInfo('≒', _r),
  r'\backsim': SymbolInfo('∽', _r),
  r'\backsimeq': SymbolInfo('⋍', _r),
  r'\eqsim': SymbolInfo('≂', _r),
  r'\thicksim': SymbolInfo('∼', _r, variant: true),
  r'\thickapprox': SymbolInfo('≈', _r, variant: true),
  r'\shortmid': SymbolInfo('∣', _r, variant: true),
  r'\shortparallel': SymbolInfo('∥', _r, variant: true),
  r'\vartriangleleft': SymbolInfo('⊲', _r),
  r'\vartriangleright': SymbolInfo('⊳', _r),
  r'\trianglelefteq': SymbolInfo('⊴', _r),
  r'\trianglerighteq': SymbolInfo('⊵', _r),
  r'\vartriangle': SymbolInfo('△', _r),
  r'\blacktriangleleft': SymbolInfo('◀', _r),
  r'\blacktriangleright': SymbolInfo('▶', _r),
  r'\bumpeq': SymbolInfo('≏', _r),
  r'\Bumpeq': SymbolInfo('≎', _r),
  r'\between': SymbolInfo('≬', _r),
  r'\pitchfork': SymbolInfo('⋔', _r),
  r'\therefore': SymbolInfo('∴', _r),
  r'\because': SymbolInfo('∵', _r),
  r'\eqcirc': SymbolInfo('≖', _r),
  r'\circeq': SymbolInfo('≗', _r),
  r'\triangleq': SymbolInfo('≜', _r),
  r'\multimap': SymbolInfo('⊸', _r),
  r'\origof': SymbolInfo('⊶', _r),
  r'\imageof': SymbolInfo('⊷', _r),
  r'\coloneqq': SymbolInfo('≔', _r),
  r'\eqqcolon': SymbolInfo('≕', _r),
  r'\coloneq': SymbolInfo('≔', _r, variant: true),
  r'\eqcolon': SymbolInfo('≕', _r, variant: true),
  r'\Coloneqq': SymbolInfo('⩴', _r),
  r'\Coloneq': SymbolInfo('⩴', _r, variant: true),
  r'\Eqqcolon': SymbolInfo('=∷', _r),
  r'\Eqcolon': SymbolInfo('−∷', _r),
  r'\colonapprox': SymbolInfo('∶≈', _r),
  r'\Colonapprox': SymbolInfo('∷≈', _r),
  r'\colonsim': SymbolInfo('∶∼', _r),
  r'\Colonsim': SymbolInfo('∷∼', _r),
  r'\approxcolon': SymbolInfo('≈∶', _r),
  r'\approxcoloncolon': SymbolInfo('≈∷', _r),
  r'\simcolon': SymbolInfo('∼∶', _r),
  r'\simcoloncolon': SymbolInfo('∼∷', _r),
  r'\dblcolon': SymbolInfo('∷', _r),
  r'\coloncolon': SymbolInfo('∷', _r),
  r'\vcentcolon': SymbolInfo('∶', _r),
  r'\ratio': SymbolInfo('∶', _r),
  r'\minuscolon': SymbolInfo('−∶', _r),
  r'\minuscoloncolon': SymbolInfo('−∷', _r),
  r'\equalscolon': SymbolInfo('≕', _r),
  r'\equalscoloncolon': SymbolInfo('=∷', _r),
  r'\coloncolonapprox': SymbolInfo('∷≈', _r),
  r'\coloncolonsim': SymbolInfo('∷∼', _r),
  r'\coloncolonminus': SymbolInfo('∷−', _r),
  r'\colonminus': SymbolInfo('∶−', _r),
  r'\colonequals': SymbolInfo('≔', _r),
  r'\coloncolonequals': SymbolInfo('⩴', _r),

  // Negated relations.
  r'\nless': SymbolInfo('≮', _r),
  r'\ngtr': SymbolInfo('≯', _r),
  r'\nleq': SymbolInfo('≰', _r),
  r'\ngeq': SymbolInfo('≱', _r),
  r'\nleqslant': SymbolInfo('⩽̸', _r),
  r'\ngeqslant': SymbolInfo('⩾̸', _r),
  r'\nleqq': SymbolInfo('≦̸', _r),
  r'\ngeqq': SymbolInfo('≧̸', _r),
  r'\lneq': SymbolInfo('⪇', _r),
  r'\gneq': SymbolInfo('⪈', _r),
  r'\lneqq': SymbolInfo('≨', _r),
  r'\gneqq': SymbolInfo('≩', _r),
  r'\lvertneqq': SymbolInfo('≨', _r, variant: true),
  r'\gvertneqq': SymbolInfo('≩', _r, variant: true),
  r'\lnsim': SymbolInfo('⋦', _r),
  r'\gnsim': SymbolInfo('⋧', _r),
  r'\lnapprox': SymbolInfo('⪉', _r),
  r'\gnapprox': SymbolInfo('⪊', _r),
  r'\nprec': SymbolInfo('⊀', _r),
  r'\nsucc': SymbolInfo('⊁', _r),
  r'\npreceq': SymbolInfo('⋠', _r),
  r'\nsucceq': SymbolInfo('⋡', _r),
  r'\precneqq': SymbolInfo('⪵', _r),
  r'\succneqq': SymbolInfo('⪶', _r),
  r'\precnsim': SymbolInfo('⋨', _r),
  r'\succnsim': SymbolInfo('⋩', _r),
  r'\precnapprox': SymbolInfo('⪹', _r),
  r'\succnapprox': SymbolInfo('⪺', _r),
  r'\nsim': SymbolInfo('≁', _r),
  r'\ncong': SymbolInfo('≇', _r),
  r'\nmid': SymbolInfo('∤', _r),
  r'\nshortmid': SymbolInfo('∤', _r, variant: true),
  r'\nparallel': SymbolInfo('∦', _r),
  r'\nshortparallel': SymbolInfo('∦', _r, variant: true),
  r'\nvdash': SymbolInfo('⊬', _r),
  r'\nvDash': SymbolInfo('⊭', _r),
  r'\nVdash': SymbolInfo('⊮', _r),
  r'\nVDash': SymbolInfo('⊯', _r),
  r'\ntriangleleft': SymbolInfo('⋪', _r),
  r'\ntriangleright': SymbolInfo('⋫', _r),
  r'\ntrianglelefteq': SymbolInfo('⋬', _r),
  r'\ntrianglerighteq': SymbolInfo('⋭', _r),
  r'\nsubseteq': SymbolInfo('⊈', _r),
  r'\nsupseteq': SymbolInfo('⊉', _r),
  r'\nsubseteqq': SymbolInfo('⫅̸', _r),
  r'\nsupseteqq': SymbolInfo('⫆̸', _r),
  r'\subsetneq': SymbolInfo('⊊', _r),
  r'\supsetneq': SymbolInfo('⊋', _r),
  r'\subsetneqq': SymbolInfo('⫋', _r),
  r'\supsetneqq': SymbolInfo('⫌', _r),
  r'\varsubsetneq': SymbolInfo('⊊', _r, variant: true),
  r'\varsupsetneq': SymbolInfo('⊋', _r, variant: true),
  r'\varsubsetneqq': SymbolInfo('⫋', _r, variant: true),
  r'\varsupsetneqq': SymbolInfo('⫌', _r, variant: true),

  // Arrows.
  r'\leftarrow': SymbolInfo('←', _r),
  r'\gets': SymbolInfo('←', _r),
  r'\larr': SymbolInfo('←', _r),
  r'\rightarrow': SymbolInfo('→', _r),
  r'\to': SymbolInfo('→', _r),
  r'\rarr': SymbolInfo('→', _r),
  r'\leftrightarrow': SymbolInfo('↔', _r),
  r'\harr': SymbolInfo('↔', _r),
  r'\lrarr': SymbolInfo('↔', _r),
  r'\Leftarrow': SymbolInfo('⇐', _r),
  r'\Larr': SymbolInfo('⇐', _r),
  r'\lArr': SymbolInfo('⇐', _r),
  r'\Rightarrow': SymbolInfo('⇒', _r),
  r'\Rarr': SymbolInfo('⇒', _r),
  r'\rArr': SymbolInfo('⇒', _r),
  r'\Leftrightarrow': SymbolInfo('⇔', _r),
  r'\Harr': SymbolInfo('⇔', _r),
  r'\hArr': SymbolInfo('⇔', _r),
  r'\lrArr': SymbolInfo('⇔', _r),
  r'\Lrarr': SymbolInfo('⇔', _r),
  r'\longleftarrow': SymbolInfo('⟵', _r),
  r'\longrightarrow': SymbolInfo('⟶', _r),
  r'\longleftrightarrow': SymbolInfo('⟷', _r),
  r'\Longleftarrow': SymbolInfo('⟸', _r),
  r'\Longrightarrow': SymbolInfo('⟹', _r),
  r'\Longleftrightarrow': SymbolInfo('⟺', _r),
  r'\mapsto': SymbolInfo('↦', _r),
  r'\longmapsto': SymbolInfo('⟼', _r),
  r'\mapsfrom': SymbolInfo('↤', _r),
  r'\longmapsfrom': SymbolInfo('⟻', _r),
  r'\hookleftarrow': SymbolInfo('↩', _r),
  r'\hookrightarrow': SymbolInfo('↪', _r),
  r'\leftharpoonup': SymbolInfo('↼', _r),
  r'\leftharpoondown': SymbolInfo('↽', _r),
  r'\rightharpoonup': SymbolInfo('⇀', _r),
  r'\rightharpoondown': SymbolInfo('⇁', _r),
  r'\rightleftharpoons': SymbolInfo('⇌', _r),
  r'\leftrightharpoons': SymbolInfo('⇋', _r),
  r'\uparrow': SymbolInfo('↑', _r),
  r'\uarr': SymbolInfo('↑', _r),
  r'\downarrow': SymbolInfo('↓', _r),
  r'\darr': SymbolInfo('↓', _r),
  r'\updownarrow': SymbolInfo('↕', _r),
  r'\Uparrow': SymbolInfo('⇑', _r),
  r'\Uarr': SymbolInfo('⇑', _r),
  r'\uArr': SymbolInfo('⇑', _r),
  r'\Downarrow': SymbolInfo('⇓', _r),
  r'\Darr': SymbolInfo('⇓', _r),
  r'\dArr': SymbolInfo('⇓', _r),
  r'\Updownarrow': SymbolInfo('⇕', _r),
  r'\nearrow': SymbolInfo('↗', _r),
  r'\searrow': SymbolInfo('↘', _r),
  r'\swarrow': SymbolInfo('↙', _r),
  r'\nwarrow': SymbolInfo('↖', _r),
  r'\leadsto': SymbolInfo('⇝', _r),
  r'\rightsquigarrow': SymbolInfo('⇝', _r),
  r'\leftrightsquigarrow': SymbolInfo('↭', _r),
  r'\dashrightarrow': SymbolInfo('⇢', _r),
  r'\dashleftarrow': SymbolInfo('⇠', _r),
  r'\leftleftarrows': SymbolInfo('⇇', _r),
  r'\rightrightarrows': SymbolInfo('⇉', _r),
  r'\leftrightarrows': SymbolInfo('⇆', _r),
  r'\rightleftarrows': SymbolInfo('⇄', _r),
  r'\Lleftarrow': SymbolInfo('⇚', _r),
  r'\Rrightarrow': SymbolInfo('⇛', _r),
  r'\twoheadleftarrow': SymbolInfo('↞', _r),
  r'\twoheadrightarrow': SymbolInfo('↠', _r),
  r'\leftarrowtail': SymbolInfo('↢', _r),
  r'\rightarrowtail': SymbolInfo('↣', _r),
  r'\looparrowleft': SymbolInfo('↫', _r),
  r'\looparrowright': SymbolInfo('↬', _r),
  r'\curvearrowleft': SymbolInfo('↶', _r),
  r'\curvearrowright': SymbolInfo('↷', _r),
  r'\circlearrowleft': SymbolInfo('↺', _r),
  r'\circlearrowright': SymbolInfo('↻', _r),
  r'\Lsh': SymbolInfo('↰', _r),
  r'\Rsh': SymbolInfo('↱', _r),
  r'\upuparrows': SymbolInfo('⇈', _r),
  r'\downdownarrows': SymbolInfo('⇊', _r),
  r'\upharpoonleft': SymbolInfo('↿', _r),
  r'\upharpoonright': SymbolInfo('↾', _r),
  r'\restriction': SymbolInfo('↾', _r),
  r'\downharpoonleft': SymbolInfo('⇃', _r),
  r'\downharpoonright': SymbolInfo('⇂', _r),
  r'\nleftarrow': SymbolInfo('↚', _r),
  r'\nrightarrow': SymbolInfo('↛', _r),
  r'\nLeftarrow': SymbolInfo('⇍', _r),
  r'\nRightarrow': SymbolInfo('⇏', _r),
  r'\nleftrightarrow': SymbolInfo('↮', _r),
  r'\nLeftrightarrow': SymbolInfo('⇎', _r),

  // Large operators. Integrals take limits beside by default; see
  // [limitsByDefault].
  r'\sum': SymbolInfo('∑', _op),
  r'\prod': SymbolInfo('∏', _op),
  r'\coprod': SymbolInfo('∐', _op),
  r'\bigcup': SymbolInfo('⋃', _op),
  r'\bigcap': SymbolInfo('⋂', _op),
  r'\bigvee': SymbolInfo('⋁', _op),
  r'\bigwedge': SymbolInfo('⋀', _op),
  r'\bigoplus': SymbolInfo('⨁', _op),
  r'\bigotimes': SymbolInfo('⨂', _op),
  r'\bigodot': SymbolInfo('⨀', _op),
  r'\biguplus': SymbolInfo('⨄', _op),
  r'\bigsqcup': SymbolInfo('⨆', _op),
  r'\bigsqcap': SymbolInfo('⨅', _op),
  r'\int': SymbolInfo('∫', _op),
  r'\intop': SymbolInfo('∫', _op),
  r'\smallint': SymbolInfo('∫', _op, variant: true),
  r'\iint': SymbolInfo('∬', _op),
  r'\iiint': SymbolInfo('∭', _op),
  r'\iiiint': SymbolInfo('⨌', _op),
  r'\oint': SymbolInfo('∮', _op),
  r'\oiint': SymbolInfo('∯', _op),
  r'\oiiint': SymbolInfo('∰', _op),
  r'\intclockwise': SymbolInfo('∱', _op),
  r'\varointclockwise': SymbolInfo('∲', _op),
  r'\ointctrclockwise': SymbolInfo('∳', _op),

  // Delimiters.
  r'\lbrace': SymbolInfo('{', _open),
  r'\rbrace': SymbolInfo('}', _close),
  r'\{': SymbolInfo('{', _open),
  r'\}': SymbolInfo('}', _close),
  r'\lbrack': SymbolInfo('[', _open),
  r'\rbrack': SymbolInfo(']', _close),
  r'\lparen': SymbolInfo('(', _open),
  r'\rparen': SymbolInfo(')', _close),
  r'\langle': SymbolInfo('⟨', _open),
  r'\rangle': SymbolInfo('⟩', _close),
  r'\lang': SymbolInfo('⟨', _open),
  r'\rang': SymbolInfo('⟩', _close),
  r'\lt': SymbolInfo('<', _r),
  r'\gt': SymbolInfo('>', _r),
  r'\lvert': SymbolInfo('∣', _open),
  r'\rvert': SymbolInfo('∣', _close),
  r'\lVert': SymbolInfo('∥', _open),
  r'\rVert': SymbolInfo('∥', _close),
  r'\lfloor': SymbolInfo('⌊', _open),
  r'\rfloor': SymbolInfo('⌋', _close),
  r'\lceil': SymbolInfo('⌈', _open),
  r'\rceil': SymbolInfo('⌉', _close),
  r'\lgroup': SymbolInfo('⟮', _open),
  r'\rgroup': SymbolInfo('⟯', _close),
  r'\lmoustache': SymbolInfo('⎰', _open),
  r'\rmoustache': SymbolInfo('⎱', _close),
  r'\llbracket': SymbolInfo('⟦', _open),
  r'\rrbracket': SymbolInfo('⟧', _close),
  r'\lBrace': SymbolInfo('⦃', _open),
  r'\rBrace': SymbolInfo('⦄', _close),
  r'\ulcorner': SymbolInfo('⌜', _open),
  r'\urcorner': SymbolInfo('⌝', _close),
  r'\llcorner': SymbolInfo('⌞', _open),
  r'\lrcorner': SymbolInfo('⌟', _close),

  // Punctuation.
  r'\colon': SymbolInfo(':', _p),
};