+ /**
+ * Do we have to display in italics this character when in mathmode?
+ * This is true if the "mathalpha" flag is set. We use this for
+ * letters and accented characters that are output as math commands.
+ */
+ static bool isMathAlpha(char_type c);
+ /**
+ * Register \p c as a mathmode command.
+ */
+ static void addMathCmd(char_type c) { mathcmd.insert(c); }
+ /**
+ * Register \p c as a textmode command.
+ */
+ static void addTextCmd(char_type c) { textcmd.insert(c); }
+ /**
+ * Register \p c as a mathmode symbol.
+ */
+ static void addMathSym(char_type c) { mathsym.insert(c); }
+ /**
+ * Tell whether \p c is registered as a mathmode command.
+ */
+ static bool isMathCmd(char_type c) { return mathcmd.count(c); }
+ /**
+ * Tell whether \p c is registered as a textmode command.
+ */
+ static bool isTextCmd(char_type c) { return textcmd.count(c); }
+ /**
+ * Tell whether \p c is registered as a mathmode symbol.
+ */
+ static bool isMathSym(char_type c) { return mathsym.count(c); }
+ /**
+ * Initialize mathcmd, textcmd, and mathsym sets.
+ */
+ static void initUnicodeMath(Buffer const & buffer, bool clear_sets = true);