]> git.lyx.org Git - lyx.git/blobdiff - src/BufferParams.cpp
Workaround for #6865: smarter FontList::setMisspelled implementation
[lyx.git] / src / BufferParams.cpp
index 1d4bcd5049188baa0356213cda6dc9c99f0fed80..b5327053de2c7977f5cd830d223e310702293484 100644 (file)
@@ -555,19 +555,19 @@ string BufferParams::readToken(Lexer & lex, string const & token,
                // We assume that a tex class exists for local or unknown layouts so this warning
                // will only be given for system layouts.
                if (!baseClass()->isTeXClassAvailable()) {
-                       docstring desc = 
+                       docstring const desc = 
                                translateIfPossible(from_utf8(baseClass()->description()));
+                       docstring const prereqs = from_utf8(baseClass()->prerequisites());
                        docstring const msg =
                                bformat(_("The selected document class\n"
                                                 "\t%1$s\n"
                                                 "requires external files that are not available.\n"
-                                                "The document class can still be used, but LyX\n"
-                                                "will not be able to produce output until the\n"
-                                                "following prerequisites are installed:\n"
+                                                "The document class can still be used, but the\n"
+                                                "document cannot be compiled until the following\n"
+                                                "prerequisites are installed:\n"
                                                 "\t%2$s\n"
                                                 "See section 3.1.2.2 of the User's Guide for\n"
-                                                "more information."), 
-                                                desc, from_utf8(baseClass()->prerequisites()));
+                                                "more information."), desc, prereqs);
                        frontend::Alert::warning(_("Document class not available"),
                                       msg);
                }
@@ -1288,7 +1288,7 @@ bool BufferParams::writeLaTeX(odocstream & os, LaTeXFeatures & features,
                features.useLanguage(default_language);
 
        ostringstream language_options;
-       bool const use_babel = features.useBabel();
+       bool const use_babel = features.useBabel() && !tclass.provides("babel");
        if (use_babel) {
                language_options << features.getLanguages();
                if (!language->babel().empty()) {
@@ -1775,7 +1775,9 @@ bool BufferParams::writeLaTeX(odocstream & os, LaTeXFeatures & features,
                texrow.newlines(lines);
                // set back for the rest
                lyxpreamble.clear();
-       }
+       } else if (features.isRequired("nameref"))
+               // hyperref loads this automatically
+               lyxpreamble += "\\usepackage{nameref}\n";
 
        // Will be surrounded by \makeatletter and \makeatother when not empty
        docstring atlyxpreamble;