]> git.lyx.org Git - lyx.git/blobdiff - src/mathed/MathParser.cpp
tex2lyx: support for \item with opt arg in itemize environment
[lyx.git] / src / mathed / MathParser.cpp
index de2d4b691af996ee0b4295c836c1d181b632df62..21621a3e25c4088953c06dbb11b418d980cd8252 100644 (file)
@@ -1492,6 +1492,18 @@ bool Parser::parse1(InsetMathGrid & grid, unsigned flags,
                        parse(cell->back().nucleus()->cell(0), FLAG_ITEM, mode);
                }
 
+               else if (t.cs() == "xhookrightarrow" || t.cs() == "xhookleftarrow" ||
+                            t.cs() == "xRightarrow" || t.cs() == "xLeftarrow" ||
+                                t.cs() == "xleftrightarrow" || t.cs() == "xLeftrightarrow" ||
+                                t.cs() == "xrightharpoondown" || t.cs() == "xrightharpoonup" ||
+                                t.cs() == "xleftharpoondown" || t.cs() == "xleftharpoonup" ||
+                                t.cs() == "xleftrightharpoons" || t.cs() == "xrightleftharpoons" ||
+                                t.cs() == "xmapsto") {
+                       cell->push_back(createInsetMath(t.cs(), buf));
+                       parse(cell->back().nucleus()->cell(1), FLAG_OPTION, mode);
+                       parse(cell->back().nucleus()->cell(0), FLAG_ITEM, mode);
+               }
+
                else if (t.cs() == "ref" || t.cs() == "eqref" || t.cs() == "prettyref"
                          || t.cs() == "pageref" || t.cs() == "vpageref" || t.cs() == "vref") {
                        cell->push_back(MathAtom(new InsetMathRef(buf, t.cs())));
@@ -2072,7 +2084,8 @@ bool Parser::parse1(InsetMathGrid & grid, unsigned flags,
                                        //}
                                        for (InsetMath::idx_type i = start; i < at->nargs(); ++i) {
                                                parse(at.nucleus()->cell(i), FLAG_ITEM, m);
-                                               skipSpaces();
+                                               if (mode == InsetMath::MATH_MODE)
+                                                       skipSpaces();
                                        }
                                        cell->push_back(at);
                                }