commit f183686505c150e335559056f1e3da4eb30af0f9
Author: Juergen Spitzmueller <sp...@lyx.org>
Date:   Sun Mar 11 11:12:42 2018 +0100

    tex2lyx: support for URW Classico, MinionPro and the new Libertine fonts.
    
    (cherry picked from commit a3836d990926dfd8e7e35b266274c372c72206ce)
---
 src/tex2lyx/Preamble.cpp |   43 +++++++++++++++++++++++++++++--------------
 src/tex2lyx/TODO.txt     |    4 ----
 status.23x               |    2 ++
 3 files changed, 31 insertions(+), 18 deletions(-)

diff --git a/src/tex2lyx/Preamble.cpp b/src/tex2lyx/Preamble.cpp
index 4ad6bad..e0a5de3 100644
--- a/src/tex2lyx/Preamble.cpp
+++ b/src/tex2lyx/Preamble.cpp
@@ -126,17 +126,18 @@ char const * const known_fontsizes[] = { "10pt", "11pt", 
"12pt", 0 };
 
 const char * const known_roman_fonts[] = { "ae", "beraserif", "bookman",
 "ccfonts", "chancery", "charter", "cmr", "cochineal", "crimson", "fourier",
-"garamondx", "libertine", "libertine-type1", "lmodern", "mathdesign", 
"mathpazo",
-"mathptmx", "newcent", "NotoSerif-TLF", "tgbonum", "tgchorus", "tgpagella", 
"tgschola",
-"tgtermes", "utopia", 0};
+"garamondx", "libertine", "libertineRoman", "libertine-type1", "lmodern", 
"mathdesign",
+"mathpazo", "mathptmx", "MinionPro", "newcent", "NotoSerif-TLF", "tgbonum", 
"tgchorus",
+"tgpagella", "tgschola", "tgtermes", "utopia", 0 };
 
-const char * const known_sans_fonts[] = { "avant", "berasans", 
"biolinum-type1",
-"cmbr", "cmss", "helvet", "iwona", "iwonac", "iwonal", "iwonalc", "kurier",
-"kurierc", "kurierl", "kurierlc", "lmss", "NotoSans-TLF", "tgadventor", 
"tgheros", 0};
+const char * const known_sans_fonts[] = { "avant", "berasans", "biolinum",
+"biolinum-type1", "cmbr", "cmss", "helvet", "iwona", "iwonac", "iwonal", 
"iwonalc",
+"kurier", "kurierc", "kurierl", "kurierlc", "lmss", "NotoSans-TLF",
+"tgadventor", "tgheros", "uop", 0 };
 
 const char * const known_typewriter_fonts[] = { "beramono", "cmtl", "cmtt",
-"courier", "lmtt", "luximono", "fourier", "libertineMono-type1", "lmodern",
-"mathpazo", "mathptmx", "newcent", "NotoMono-TLF", "tgcursor", "txtt", 0};
+"courier", "lmtt", "luximono", "fourier", "libertineMono", 
"libertineMono-type1", "lmodern",
+"mathpazo", "mathptmx", "newcent", "NotoMono-TLF", "tgcursor", "txtt", 0 };
 
 const char * const known_math_fonts[] = { "eulervm", "newtxmath", 0};
 
@@ -733,22 +734,37 @@ void Preamble::handle_package(Parser &p, string const & 
name,
                h_font_roman[0] = "libertine";
                // this automatically invokes biolinum
                h_font_sans[0] = "biolinum";
+               // as well as libertineMono
+               h_font_typewriter[0] = "libertine-mono";
                if (opts == "osf")
                        h_font_osf = "true";
                else if (opts == "lining")
                        h_font_osf = "false";
        }
 
-       if (name == "libertine-type1") {
+       if (name == "libertineRoman" || name == "libertine-type1") {
                h_font_roman[0] = "libertine";
-               // NOTE: contrary to libertine.sty, libertine-type1
-               // does not automatically invoke biolinum
+               // NOTE: contrary to libertine.sty, libertineRoman
+               // and libertine-type1 do not automatically invoke
+               // biolinum and libertineMono
                if (opts == "lining")
                        h_font_osf = "false";
                else if (opts == "osf")
                        h_font_osf = "true";
        }
 
+       if (name == "MinionPro") {
+               h_font_roman[0] = "minionpro";
+               if (opts.find("lf") != string::npos)
+                       h_font_osf = "false";
+               else
+                       h_font_osf = "true";
+               if (opts.find("onlytext") != string::npos)
+                       h_font_math[0] = "default";
+               else
+                       h_font_math[0] = "auto";
+       }
+
        if (name == "mathdesign") {
                if (opts.find("charter") != string::npos)
                        h_font_roman[0] = "md-charter";
@@ -807,7 +823,7 @@ void Preamble::handle_package(Parser &p, string const & 
name,
                }
        }
 
-       if (name == "biolinum-type1") {
+       if (name == "biolinum" || name == "biolinum-type1") {
                h_font_sans[0] = "biolinum";
                // biolinum can have several options, e.g. [osf,scaled=0.97]
                string::size_type pos = opts.find("osf");
@@ -828,9 +844,8 @@ void Preamble::handle_package(Parser &p, string const & 
name,
                }
        }
 
-       if (name == "libertineMono-type1") {
+       if (name == "libertineMono" || name == "libertineMono-type1")
                h_font_typewriter[0] = "libertine-mono";
-       }
 
        // font uses old-style figure
        if (name == "eco")
diff --git a/src/tex2lyx/TODO.txt b/src/tex2lyx/TODO.txt
index 8f83133..767bccf 100644
--- a/src/tex2lyx/TODO.txt
+++ b/src/tex2lyx/TODO.txt
@@ -51,11 +51,7 @@ Format LaTeX feature                        LyX feature
 411    support for polyglossia              \language_package  (the cases of 
no package, of babel and of custom package is supported)
 415    automatic undertilde loading         \use_package undertilde
 438    \t*{ }                               InsetTIPA
-439    MinionPro.sty                        \font_roman, \font_osf
-440    MinionPro.sty,                       \font_math
 443    unicode-math.sty                     InsetMath*
-445    URW Classico LaTeX font              \font_sans uop
-       \renewcommand{\sffamily}{uop}
 448
 451    beamer overlay arguments             InsetArgument
        \command<arg>, \begin{env}<arg>
diff --git a/status.23x b/status.23x
index 73a43d8..ea89b77 100644
--- a/status.23x
+++ b/status.23x
@@ -27,6 +27,8 @@ What's new
 
 - Add support for \includeonly.
 
+- Add support for URW Classico, MinionPro and the new Libertine fonts.
+
 
 * USER INTERFACE
 

Reply via email to