]> git.lyx.org Git - lyx.git/blobdiff - src/tex2lyx/Parser.cpp
More no-math fonts
[lyx.git] / src / tex2lyx / Parser.cpp
index 290b7ba7b77925150d6497250937fc7314565456..75b8ba4bdd3be80e6e7187cc13875f5fadf7eb91 100644 (file)
@@ -398,7 +398,14 @@ Parser::Arg Parser::getFullArg(char left, char right)
        if (c != left) {
                putback();
                return make_pair(false, string());
-       } else
+       } else {
+               // a single '\' is only allowed within \verb, no matter what the delimiter is,
+               // for example "\verb+\+" (reported as bug #4468)
+               // To support this, we allow single '\' if it is the only character
+               // within equal delimiters
+               if (next_token().cat() == catEscape)
+                       if (next_token().character() == right && right == left)
+                               result += '\\';
                while ((c = getChar()) != right && good()) {
                        // Ignore comments
                        if (curr_token().cat() == catComment) {
@@ -408,7 +415,7 @@ Parser::Arg Parser::getFullArg(char left, char right)
                        else
                                result += curr_token().asInput();
                }
-
+       }
        return make_pair(true, result);
 }
 
@@ -506,7 +513,7 @@ string const Parser::plainCommand(char left, char right, string const & name)
 {
        if (!good())
                return string();
-       // ceck if first token is really the start character
+       // check if first token is really the start character
        Token tok = get_token();
        if (tok.character() != left) {
                cerr << "first character does not match start character of command \\" << name << endl;