]> git.lyx.org Git - features.git/commitdiff
backporting tex2lyx: fix bug #7862
authorUwe Stöhr <uwestoehr@web.de>
Sat, 29 Oct 2011 20:34:31 +0000 (20:34 +0000)
committerUwe Stöhr <uwestoehr@web.de>
Sat, 29 Oct 2011 20:34:31 +0000 (20:34 +0000)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/branches/BRANCH_2_0_X@40072 a592a061-630c-0410-9148-cb99ea01b6c8

src/tex2lyx/preamble.cpp
status.20x

index f757bb75444ce0aa336656f35acaefc2e979b754..1e6ea0dbe7689d06ea44d479f2491dc70c9f022e 100644 (file)
@@ -59,7 +59,6 @@ namespace {
 //"chinese-simplified", "chinese-traditional", "japanese", "korean"
 // Both changes require first that support for non-babel languages (CJK,
 // armtex) is added.
-// add turkmen for lyxformat 383
 /**
  * known babel language names (including synonyms)
  * not in standard babel: arabic, arabtex, armenian, belarusian, serbian-latin, thai
@@ -549,7 +548,6 @@ void handle_package(Parser &p, string const & name, string const & opts,
                // babel call in every roundtrip.
                // But the user could have defined babel-specific things afterwards. So
                // we need to keep it in the preamble to prevent cases like bug #7861.
-               h_preamble << "\\usepackage{babel}\n";
                if (!opts.empty()) {
                        // check if more than one option was used - used later for inputenc
                        // in case inputenc is parsed before babel, set the encoding to auto
@@ -561,8 +559,17 @@ void handle_package(Parser &p, string const & name, string const & opts,
                        // call as document language. If there is no such language option, the
                        // last language in the documentclass options is used.
                        handle_opt(options, known_languages, h_language);
+                       // If babel is called with options, LyX puts them by default into the
+                       // document class options. This works for most languages, except
+                       // for Latvian, Lithuanian, Mongolian, Turkmen and Vietnamese and
+                       // perhaps in future others.
+                       // Therefore keep the babel call as it is as the user might have
+                       // reasons for it.
+                       h_preamble << "\\usepackage[" << opts << "]{babel}\n";
                        delete_opt(options, known_languages);
                }
+               else
+                       h_preamble << "\\usepackage{babel}\n";                                          
        }
 
        else if (name == "fontenc") {
index 0a9f6c3a21bff54f67d1311a9bc037a6e8d271fd..10a402da1497d659c8ca7a6c466d876498bb8ed5 100644 (file)
@@ -142,6 +142,9 @@ What's new
 
 - Fix tex2lyx handling babel-specific preamble commands (bug 7861).
 
+- Fix (La)TeX import for files using Latvian, Lithuanian, Mongolian,
+  Turkmen and/or Vietnamese (bug 7862).
+
 - Store the autosave files of unnamed buffers in the correct directory
   and make sure they are not left behind after saving (bug 7793).