#include <config.h>
#include "MathParser.h"
+
#include "InsetMathArray.h"
#include "InsetMathBig.h"
#include "InsetMathBrace.h"
#include "InsetMathComment.h"
#include "InsetMathDelim.h"
#include "InsetMathEnv.h"
-#include "MathFactory.h"
#include "InsetMathKern.h"
#include "InsetMathMacro.h"
-#include "MathMacroArgument.h"
-#include "MathMacroTemplate.h"
#include "InsetMathPar.h"
+#include "InsetMathRef.h"
#include "InsetMathRoot.h"
#include "InsetMathScript.h"
+#include "InsetMathSplit.h"
#include "InsetMathSqrt.h"
-#include "MathSupport.h"
#include "InsetMathTabular.h"
-
-//#include "insets/insetref.h"
-#include "InsetMathRef.h"
+#include "MathMacroTemplate.h"
+#include "MathFactory.h"
+#include "MathMacroArgument.h"
+#include "MathSupport.h"
#include "lyxlex.h"
#include "debug.h"
parse2(cell->back(), FLAG_END, InsetMath::TEXT_MODE, false);
}
- else if (name == "split" || name == "cases" ||
- name == "gathered" || name == "aligned") {
+ else if (name == "split" || name == "cases") {
cell->push_back(createInsetMath(name));
parse2(cell->back(), FLAG_END, mode, false);
}
else if (name == "alignedat") {
+ string const valign = parse_verbatim_option() + 'c';
// ignore this for a while
getArg('{', '}');
- cell->push_back(createInsetMath(name));
+ cell->push_back(MathAtom(new InsetMathSplit(name, valign[0])));
parse2(cell->back(), FLAG_END, mode, false);
}
if (l->inset == "matrix") {
cell->push_back(createInsetMath(name));
parse2(cell->back(), FLAG_END, mode, false);
+ } else if (l->inset == "split") {
+ string const valign = parse_verbatim_option() + 'c';
+ cell->push_back(MathAtom(new InsetMathSplit(name, valign[0])));
+ parse2(cell->back(), FLAG_END, mode, false);
+ } else {
+ dump();
+ lyxerr << "found math environment `" << name
+ << "' in symbols file with unsupported inset `"
+ << l->inset << "'." << endl;
+ // create generic environment inset
+ cell->push_back(MathAtom(new InsetMathEnv(name)));
+ parse(cell->back().nucleus()->cell(0), FLAG_ITEM, mode);
}
}
// FIXME: This is swallowed in inline formulas
string label = parse_verbatim_item();
MathArray ar;
- asArray(label, ar);
+ // FIXME UNICODE
+ asArray(lyx::from_utf8(label), ar);
if (grid.asHullInset()) {
grid.asHullInset()->label(cellrow, label);
} else {