From: Uwe Stöhr Date: Tue, 9 Oct 2007 23:03:14 +0000 (+0000) Subject: BufferParams.cpp: babel must be loaded even when there is no given language parameter... X-Git-Tag: 1.6.10~7912 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=392ddbfdbd9c755d5087d287a1073bc22b0779c0;p=features.git BufferParams.cpp: babel must be loaded even when there is no given language parameter, due to the Japanese support package that does this later git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20880 a592a061-630c-0410-9148-cb99ea01b6c8 --- diff --git a/src/BufferParams.cpp b/src/BufferParams.cpp index 6f2e3ed3a9..2f1886b5e4 100644 --- a/src/BufferParams.cpp +++ b/src/BufferParams.cpp @@ -901,7 +901,8 @@ bool BufferParams::writeLaTeX(odocstream & os, LaTeXFeatures & features, language_options << language->babel(); } // when Vietnamese is used, babel must directly be loaded with the - // language options, not in the class options + // language options, not in the class options, see + // http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg129417.html int viet = language_options.str().find("vietnam"); // viet = string::npos when not found if (lyxrc.language_global_options && !language_options.str().empty() @@ -1134,8 +1135,12 @@ bool BufferParams::writeLaTeX(odocstream & os, LaTeXFeatures & features, // translate the word "Index" to the German "Stichwortverzeichnis". // For more infos why this place was chosen, see // http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg128425.html - // if you encounter problem, you can shift babel to its old place behind - // the user-defined preamble + // If you encounter problems, you can shift babel to its old place behind + // the user-defined preamble. But in this case you must change the Vietnamese + // support from currently "\usepackage[vietnamese]{babel}" to: + // \usepackage{vietnamese} + // \usepackage{babel} + // because vietnamese must be loaded before hyperref if (use_babel && !features.isRequired("jurabib")) { // FIXME UNICODE lyxpreamble += from_utf8(babelCall(language_options.str())) + '\n'; @@ -1558,10 +1563,13 @@ string const BufferParams::babelCall(string const & lang_opts) const // suppress the babel call when there is no babel language defined // for the document language in the lib/languages file and if no // other languages are used (lang_opts is then empty) - if (lang_opts.empty()) + // exception is the language "japanese-plain" where babel is needed anyway + // see http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg129680.html + if (lang_opts.empty() && language->lang() != "japanese-plain") return string(); // when Vietnamese is used, babel must directly be loaded with the - // language options + // language options, see + // http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg129417.html int viet = lang_opts.find("vietnam"); // viet = string::npos when not found if (!lyxrc.language_global_options || viet != string::npos)