coreAccents top-level constant

Map<String, AccentInfo> const coreAccents

The accent commands of LaTeX, AMS and KaTeX.

Implementation

const Map<String, AccentInfo> coreAccents = {
  // Math accents.
  r'\hat': AccentInfo('^'),
  r'\check': AccentInfo('ˇ'),
  r'\tilde': AccentInfo('~'),
  r'\acute': AccentInfo('´'),
  r'\grave': AccentInfo('`'),
  r'\dot': AccentInfo('˙'),
  r'\ddot': AccentInfo('¨'),
  r'\dddot': AccentInfo('⃛'),
  r'\ddddot': AccentInfo('⃜'),
  r'\breve': AccentInfo('˘'),
  r'\bar': AccentInfo('ˉ'),
  r'\vec': AccentInfo('⃗'),
  r'\mathring': AccentInfo('˚'),

  // Stretchy accents above.
  r'\widehat': AccentInfo('^', stretchy: true),
  r'\widecheck': AccentInfo('ˇ', stretchy: true),
  r'\widetilde': AccentInfo('~', stretchy: true),
  r'\overrightarrow': AccentInfo('→', stretchy: true),
  r'\overleftarrow': AccentInfo('←', stretchy: true),
  r'\overleftrightarrow': AccentInfo('↔', stretchy: true),
  r'\Overrightarrow': AccentInfo('⇒', stretchy: true),
  r'\overleftharpoon': AccentInfo('↼', stretchy: true),
  r'\overrightharpoon': AccentInfo('⇀', stretchy: true),
  r'\overgroup': AccentInfo('⏠', stretchy: true),
  r'\overlinesegment': AccentInfo('overlinesegment', stretchy: true),
  // yhmath's triangle accent (also in mathabx), drawn as wide as the base.
  r'\widetriangle': AccentInfo('widetriangle', stretchy: true),
  // mathabx's wide bar, unicode-math's \wideoverbar.
  r'\widebar': AccentInfo('̅', stretchy: true),
  // harpoon: a harpoon as wide as the argument, above or below it.
  r'\overrightharp': AccentInfo('⇀', stretchy: true),
  r'\overleftharp': AccentInfo('↼', stretchy: true),
  r'\overrightharpdown': AccentInfo('⇁', stretchy: true),
  r'\overleftharpdown': AccentInfo('↽', stretchy: true),
  // mathabx: double arrows over and under, and its wide arrow accent.
  r'\overRightarrow': AccentInfo('⇒', stretchy: true),
  r'\overLeftarrow': AccentInfo('⇐', stretchy: true),
  r'\overLeftRightarrow': AccentInfo('⇔', stretchy: true),
  r'\underRightarrow': AccentInfo('⇒', stretchy: true, under: true),
  r'\underLeftarrow': AccentInfo('⇐', stretchy: true, under: true),
  r'\underLeftRightarrow': AccentInfo('⇔', stretchy: true, under: true),
  r'\widearrow': AccentInfo('→', stretchy: true),

  // Stretchy accents below.
  r'\utilde': AccentInfo('~', stretchy: true, under: true),
  r'\underrightarrow': AccentInfo('→', stretchy: true, under: true),
  r'\underleftarrow': AccentInfo('←', stretchy: true, under: true),
  r'\underleftrightarrow': AccentInfo('↔', stretchy: true, under: true),
  r'\undergroup': AccentInfo('⏡', stretchy: true, under: true),
  r'\underlinesegment': AccentInfo(
    'underlinesegment',
    stretchy: true,
    under: true,
  ),
  r'\underbar': AccentInfo('_', under: true, text: true),
  r'\underrightharp': AccentInfo('⇀', stretchy: true, under: true),
  r'\underleftharp': AccentInfo('↼', stretchy: true, under: true),
  r'\underrightharpdown': AccentInfo('⇁', stretchy: true, under: true),
  r'\underleftharpdown': AccentInfo('↽', stretchy: true, under: true),

  // Text accents (also accepted in math mode, where KaTeX warns).
  r"\'": AccentInfo('´', text: true, math: false),
  r'\`': AccentInfo('`', text: true, math: false),
  r'\^': AccentInfo('^', text: true, math: false),
  r'\~': AccentInfo('~', text: true, math: false),
  r'\=': AccentInfo('ˉ', text: true, math: false),
  r'\u': AccentInfo('˘', text: true, math: false),
  r'\.': AccentInfo('˙', text: true, math: false),
  r'\"': AccentInfo('¨', text: true, math: false),
  r'\r': AccentInfo('˚', text: true, math: false),
  r'\H': AccentInfo('˝', text: true, math: false),
  r'\v': AccentInfo('ˇ', text: true, math: false),
  r'\c': AccentInfo('¸', under: true, text: true, math: false),
  r'\k': AccentInfo('˛', under: true, text: true, math: false),
  r'\d': AccentInfo('.', under: true, text: true, math: false),
  r'\b': AccentInfo('ˍ', under: true, text: true, math: false),
  // The tie over two letters, and textcomp's capital accents.
  r'\t': AccentInfo('͡', text: true, math: false),
  r'\newtie': AccentInfo('͡', text: true, math: false),
  r'\capitalacute': AccentInfo('´', text: true, math: false),
  r'\capitalgrave': AccentInfo('`', text: true, math: false),
  r'\capitalcircumflex': AccentInfo('^', text: true, math: false),
  r'\capitaltilde': AccentInfo('~', text: true, math: false),
  r'\capitalmacron': AccentInfo('ˉ', text: true, math: false),
  r'\capitalbreve': AccentInfo('˘', text: true, math: false),
  r'\capitaldotaccent': AccentInfo('˙', text: true, math: false),
  r'\capitaldieresis': AccentInfo('¨', text: true, math: false),
  r'\capitalring': AccentInfo('˚', text: true, math: false),
  r'\capitalhungarumlaut': AccentInfo('˝', text: true, math: false),
  r'\capitalcaron': AccentInfo('ˇ', text: true, math: false),
  r'\capitalcedilla': AccentInfo('¸', under: true, text: true, math: false),
  r'\capitalogonek': AccentInfo('˛', under: true, text: true, math: false),
  r'\capitaltie': AccentInfo('͡', text: true, math: false),
  r'\capitalnewtie': AccentInfo('͡', text: true, math: false),
};