]> git.lyx.org Git - features.git/commitdiff
Add \makeat switches to babel settings if necessary.
authorJuergen Spitzmueller <spitz@lyx.org>
Wed, 18 Jul 2012 10:41:53 +0000 (12:41 +0200)
committerJuergen Spitzmueller <spitz@lyx.org>
Wed, 18 Jul 2012 10:41:53 +0000 (12:41 +0200)
Babel settings might contain @ characters. Check for this and wrap the settings into \makeatletter ... \makeatother switches if necessary (see discussion at #8265).

src/LaTeXFeatures.cpp

index e86dc15065800cf4f8bab5faa8072939677370ed..6de5db66411f97d662113691ba149eeaa9f5fd44 100644 (file)
@@ -1026,7 +1026,10 @@ string const LaTeXFeatures::getBabelPresettings() const
        if (!params_.language->babel_presettings().empty())
                tmp << params_.language->babel_presettings() << '\n';
 
-       return tmp.str();
+       if (!contains(tmp.str(), '@'))
+               return tmp.str();
+
+       return "\\makeatletter\n" + tmp.str() + "\\makeatother\n";
 }
 
 
@@ -1042,7 +1045,10 @@ string const LaTeXFeatures::getBabelPostsettings() const
        if (!params_.language->babel_postsettings().empty())
                tmp << params_.language->babel_postsettings() << '\n';
 
-       return tmp.str();
+       if (!contains(tmp.str(), '@'))
+               return tmp.str();
+
+       return "\\makeatletter\n" + tmp.str() + "\\makeatother\n";
 }