]> git.lyx.org Git - lyx.git/blobdiff - src/tex2lyx/Preamble.cpp
tex2lyx roundtrip: Ignore the lyx-version which created
[lyx.git] / src / tex2lyx / Preamble.cpp
index 6c84f06634deec804ba652df323d92fa467fb50f..c4d41c88edf2c52023c0b78bf377d9a4f153b587 100644 (file)
@@ -21,6 +21,7 @@
 #include "Layout.h"
 #include "Lexer.h"
 #include "TextClass.h"
+#include "version.h"
 
 #include "support/convert.h"
 #include "support/FileName.h"
@@ -129,8 +130,8 @@ const char * const known_roman_fonts[] = { "ae", "beraserif", "bookman",
 "tgbonum", "tgchorus", "tgpagella", "tgschola", "tgtermes", "utopia", 0};
 
 const char * const known_sans_fonts[] = { "avant", "berasans", "biolinum-type1",
-"cmbr", "cmss", "helvet", "iwona", "iwonal", "kurier", "kurierl", "lmss",
-"tgadventor", "tgheros", 0};
+"cmbr", "cmss", "helvet", "iwona", "iwonac", "iwonal", "iwonalc", "kurier",
+"kurierc", "kurierl", "kurierlc", "lmss", "tgadventor", "tgheros", 0};
 
 const char * const known_kurier_fonts[] = { "kurier", "kurierl",
 "kurier-condensed", "kurier-light-condensed", 0};
@@ -304,10 +305,10 @@ const char * const Preamble::polyglossia_languages[] = {
 "armenian", "divehi", "interlingua", "polish", "telugu", "asturian", "dutch",
 "irish", "portuges", "thai", "bahasai", "english", "italian", "romanian", "turkish",
 "bahasam", "esperanto", "lao", "russian", "turkmen", "basque", "estonian", "latin",
-"samin", "ukrainian", "bengali", "farsi", "latvian", "sanskrit", "urdu", "brazil",
-"brazilian", "finnish", "lithuanian", "scottish", "usorbian", "breton", "french",
-"lsorbian", "serbian", "vietnamese", "bulgarian", "galician", "magyar", "slovak",
-"welsh", "catalan", "german", "malayalam", "slovenian", "coptic", "greek",
+"samin", "ukrainian", "bengali", "farsi", "latvian", "sanskrit", "tibetan", "urdu",
+"brazil", "brazilian", "finnish", "lithuanian", "scottish", "usorbian", "breton", 
+"french", "lsorbian", "serbian", "vietnamese", "bulgarian", "galician", "magyar",
+"slovak", "welsh", "catalan", "german", "malayalam", "slovenian", "coptic", "greek",
 "marathi", "spanish",
 "american", "ancient", "australian", "british", "monotonic", "newzealand",
 "polytonic", 0};
@@ -322,10 +323,10 @@ const char * const Preamble::coded_polyglossia_languages[] = {
 "armenian", "divehi", "interlingua", "polish", "telugu", "asturian", "dutch",
 "irish", "portuges", "thai", "bahasa", "english", "italian", "romanian", "turkish",
 "bahasam", "esperanto", "lao", "russian", "turkmen", "basque", "estonian", "latin",
-"samin", "ukrainian", "bengali", "farsi", "latvian", "sanskrit", "urdu", "brazilian",
-"brazilian", "finnish", "lithuanian", "scottish", "uppersorbian", "breton", "french",
-"lowersorbian", "serbian", "vietnamese", "bulgarian", "galician", "magyar", "slovak",
-"welsh", "catalan", "ngerman", "malayalam", "slovene", "coptic", "greek",
+"samin", "ukrainian", "bengali", "farsi", "latvian", "sanskrit", "tibetan", "urdu",
+"brazilian", "brazilian", "finnish", "lithuanian", "scottish", "uppersorbian", "breton",
+"french", "lowersorbian", "serbian", "vietnamese", "bulgarian", "galician", "magyar",
+"slovak", "welsh", "catalan", "ngerman", "malayalam", "slovene", "coptic", "greek",
 "marathi", "spanish",
 "american", "ancientgreek", "australian", "british", "greek", "newzealand",
 "polutonikogreek", 0};
@@ -451,7 +452,7 @@ Preamble::Preamble() : one_language(true), explicit_babel(false),
        h_biblio_style            = "plain";
        h_bibtex_command          = "default";
        h_cite_engine             = "basic";
-       h_cite_engine_type        = "numerical";
+       h_cite_engine_type        = "default";
        h_color                   = "#008000";
        h_defskip                 = "medskip";
        //h_float_placement;
@@ -499,7 +500,7 @@ Preamble::Preamble() : one_language(true), explicit_babel(false),
        //h_pdf_author;
        //h_pdf_subject;
        //h_pdf_keywords;
-       h_pdf_bookmarks           = "1";
+       h_pdf_bookmarks           = "0";
        h_pdf_bookmarksnumbered   = "0";
        h_pdf_bookmarksopen       = "0";
        h_pdf_bookmarksopenlevel  = "1";
@@ -507,7 +508,7 @@ Preamble::Preamble() : one_language(true), explicit_babel(false),
        h_pdf_pdfborder           = "0";
        h_pdf_colorlinks          = "0";
        h_pdf_backref             = "section";
-       h_pdf_pdfusetitle         = "1";
+       h_pdf_pdfusetitle         = "0";
        //h_pdf_pagemode;
        //h_pdf_quoted_options;
        h_quotes_language         = "english";
@@ -1040,7 +1041,10 @@ bool Preamble::writeLyXHeader(ostream & os, bool subdoc)
        }
 
        // output the LyX file settings
-       os << "#LyX file created by tex2lyx " << PACKAGE_VERSION << "\n"
+       // Important: Keep the version formatting in sync with LyX and
+       //            lyx2lyx (bug 7951)
+       os << "#LyX file created by tex2lyx " << lyx_version_major << '.'
+          << lyx_version_minor << '\n'
           << "\\lyxformat " << LYX_FORMAT << '\n'
           << "\\begin_document\n"
           << "\\begin_header\n"
@@ -1498,12 +1502,6 @@ void Preamble::parse(Parser & p, string const & forceclass,
                                p.skip_spaces();
                                in_lyx_preamble = true;
                        }
-                       if (name == "\\bfdefault")
-                               // LyX re-adds this if a kurier font is used
-                               if (is_known(h_font_sans, known_kurier_fonts) && body == "b") {
-                                       p.skip_spaces();
-                                       in_lyx_preamble = true;
-                               }
 
                        // remove the lyxdot definition that is re-added by LyX
                        // if necessary
@@ -1534,22 +1532,6 @@ void Preamble::parse(Parser & p, string const & forceclass,
                        in_lyx_preamble = was_in_lyx_preamble;
                }
 
-               else if (t.cs() == "edef"){
-                       // we only support this for kurier fonts
-                       string const command = p.next_token().asInput();
-                       p.get_token();
-                       if (command == "\\sfdefault") {
-                               p.getArg('{', '}');
-                               if (h_font_sans == "kurier")
-                                       h_font_sans = "kurier-condensed";
-                               if (h_font_sans == "kurierl")
-                                       h_font_sans = "kurier-light-condensed";
-                               p.skip_spaces();
-                       }
-                       else
-                               h_preamble << "\\edef" << command << "{" << p.getArg('{', '}') << "}\n";
-               }
-
                else if (t.cs() == "documentclass") {
                        vector<string>::iterator it;
                        vector<string> opts = split_options(p.getArg('[', ']'));