]> git.lyx.org Git - lyx.git/blobdiff - src/BufferParams.cpp
FindAdv: Amend ec387b6d: Handle search for '{' and '}'
[lyx.git] / src / BufferParams.cpp
index ea60c75d64eeec605d7c44bd1577cd25b22b5707..93a539833bfe93088061cd218baa31d2e4d1054a 100644 (file)
@@ -73,7 +73,8 @@ static char const * const string_paragraph_separation[] = {
 
 static char const * const string_quotes_style[] = {
        "english", "swedish", "german", "polish", "swiss", "danish", "plain",
-       "british", "swedishg", "french", "frenchin", "russian", "cjk", "cjkangle", ""
+       "british", "swedishg", "french", "frenchin", "russian", "cjk", "cjkangle",
+       "hungarian", ""
 };
 
 
@@ -156,6 +157,7 @@ QuotesStyleTranslator const init_quotesstyletranslator()
        translator.addPair(string_quotes_style[11], QuoteStyle::Russian);
        translator.addPair(string_quotes_style[12], QuoteStyle::CJK);
        translator.addPair(string_quotes_style[13], QuoteStyle::CJKAngle);
+       translator.addPair(string_quotes_style[14], QuoteStyle::Hungarian);
        return translator;
 }
 
@@ -989,11 +991,16 @@ string BufferParams::readToken(Lexer & lex, string const & token,
                        if (tok == "\\color") {
                                lex.eatLine();
                                string color = lex.getString();
-                               if (branch_ptr)
+                               if (branch_ptr) {
                                        branch_ptr->setColor(color);
+                                       if (branch_ptr->color() == "none")
+                                               color = lcolor.getX11HexName(Color_background);
+                               }
                                // Update also the Color table:
                                if (color == "none")
                                        color = lcolor.getX11HexName(Color_background);
+                               else if (color.size() != 7 || color[0] != '#')
+                                       color = lcolor.getFromLyXName(color);
                                // FIXME UNICODE
                                lcolor.setColor(to_utf8(branch), color);
                        }
@@ -1385,7 +1392,7 @@ void BufferParams::writeFile(ostream & os, Buffer const * buf) const
                os << "\\branch " << to_utf8(br.branch())
                   << "\n\\selected " << br.isSelected()
                   << "\n\\filename_suffix " << br.hasFileNameSuffix()
-                  << "\n\\color " << lyx::X11hexname(br.color())
+                  << "\n\\color " << br.color()
                   << "\n\\end_branch"
                   << "\n";
        }
@@ -2238,8 +2245,10 @@ bool BufferParams::writeLaTeX(otexstream & os, LaTeXFeatures & features,
        // use \PassOptionsToPackage here because the user could have
        // already loaded subfig in the preamble.
        if (features.mustProvide("subfig"))
-               atlyxpreamble << "\\@ifundefined{showcaptionsetup}{}{%\n"
-                                " \\PassOptionsToPackage{caption=false}{subfig}}\n"
+               atlyxpreamble << "\\ifdefined\\showcaptionsetup\n"
+                                " % Caption package is used. Advise subfig not to load it again.\n"
+                                " \\PassOptionsToPackage{caption=false}{subfig}\n"
+                                "\\fi\n"
                                 "\\usepackage{subfig}\n";
 
        // Itemize bullet settings need to be last in case the user
@@ -2563,7 +2572,7 @@ LayoutFileIndex const & BufferParams::baseClassID() const
 }
 
 
-void BufferParams::makeDocumentClass(bool const clone)
+void BufferParams::makeDocumentClass(bool clone, bool internal)
 {
        if (!baseClass())
                return;
@@ -2573,7 +2582,7 @@ void BufferParams::makeDocumentClass(bool const clone)
        for (auto const & mod : layout_modules_)
                mods.push_back(mod);
 
-       doc_class_ = getDocumentClass(*baseClass(), mods, cite_engine_, clone);
+       doc_class_ = getDocumentClass(*baseClass(), mods, cite_engine_, clone, internal);
 
        TextClass::ReturnValues success = TextClass::OK;
        if (!forced_local_layout_.empty())
@@ -3450,7 +3459,7 @@ string const BufferParams::loadFonts(LaTeXFeatures & features) const
        bool const ot1 = (main_font_encoding() == "default" || main_font_encoding() == "OT1");
        bool const dryrun = features.runparams().dryrun;
        bool const complete = (fontsSans() == "default" && fontsTypewriter() == "default");
-       bool const nomath = (fontsMath() == "default");
+       bool const nomath = (fontsMath() != "auto");
 
        // ROMAN FONTS
        os << theLaTeXFonts().getLaTeXFont(from_ascii(fontsRoman())).getLaTeXCode(