]> git.lyx.org Git - lyx.git/blobdiff - src/tex2lyx/Preamble.cpp
Missing file format bis from 0c3b88e3
[lyx.git] / src / tex2lyx / Preamble.cpp
index dbf4d5cfe99af400ebcfa04dc5a23f5c83995950..bb74519f57d958250e2e9fbc8b06ab94f84549b1 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,10 +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", "kurier", "kurierl", "lmss", "tgadventor", "tgheros", 0};
-
-const char * const known_kurier_fonts[] = { "kurier", "kurierl",
-"kurier-condensed", "kurier-light-condensed", 0};
+"cmbr", "cmss", "helvet", "iwona", "iwonac", "iwonal", "iwonalc", "kurier",
+"kurierc", "kurierl", "kurierlc", "lmss", "tgadventor", "tgheros", 0};
 
 const char * const known_typewriter_fonts[] = { "beramono", "cmtl", "cmtt",
 "courier", "lmtt", "luximono", "fourier", "lmodern", "mathpazo", "mathptmx",
@@ -303,10 +302,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};
@@ -321,10 +320,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};
@@ -450,7 +449,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;
@@ -498,7 +497,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";
@@ -506,7 +505,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";
@@ -958,6 +957,18 @@ void Preamble::handle_package(Parser &p, string const & name,
        else if (name == "hyperref")
                handle_hyperref(options);
 
+       else if (name == "algorithm2e") {
+               // Load "algorithm2e" module
+               addModule("algorithm2e");
+               // Add the package options to the global document options
+               if (!options.empty()) {
+                       if (h_options.empty())
+                               h_options = join(options, ",");
+                       else
+                               h_options += ',' + join(options, ",");
+               }
+       }
+
        else if (!in_lyx_preamble) {
                if (options.empty())
                        h_preamble << "\\usepackage{" << name << '}';
@@ -1039,7 +1050,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"
@@ -1497,12 +1511,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
@@ -1533,22 +1541,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('[', ']'));