]> git.lyx.org Git - lyx.git/blobdiff - src/LaTeXFeatures.cpp
Allow using \binom without amsmath and add support for \brace and \brack
[lyx.git] / src / LaTeXFeatures.cpp
index 4b47083660359ab38ce85ebee0c489465a26ed3f..46caa8671ce579a5da621efcd569700a383d8813 100644 (file)
@@ -36,6 +36,7 @@
 using namespace std;
 using namespace lyx::support;
 
+
 namespace lyx {
 
 /////////////////////////////////////////////////////////////////////
@@ -448,8 +449,7 @@ char const * simplefeatures[] = {
        "endnotes",
        "ifthen",
        "amsthm",
-       "listings",
-       "bm"
+       "listings"
 };
 
 int const nb_simplefeatures = sizeof(simplefeatures) / sizeof(char const *);
@@ -516,9 +516,8 @@ string const LaTeXFeatures::getPackages() const
        }
 
        // pdfcolmk must be loaded after color
-       if (mustProvide("pdfcolmk")) {
+       if (mustProvide("pdfcolmk"))
                packages << "\\usepackage{pdfcolmk}\n";
-       }
 
        // makeidx.sty
        if (isRequired("makeidx")) {
@@ -552,13 +551,12 @@ string const LaTeXFeatures::getPackages() const
        }
 
        // lyxskak.sty --- newer chess support based on skak.sty
-       if (mustProvide("chess")) {
+       if (mustProvide("chess"))
                packages << "\\usepackage[ps,mover]{lyxskak}\n";
-       }
 
        // setspace.sty
        if (mustProvide("setspace") && !tclass.provides("SetSpace"))
-                   packages << "\\usepackage{setspace}\n";
+    packages << "\\usepackage{setspace}\n";
 
        // amssymb.sty
        if (mustProvide("amssymb")
@@ -574,29 +572,25 @@ string const LaTeXFeatures::getPackages() const
        // natbib.sty
        if (mustProvide("natbib")) {
                packages << "\\usepackage[";
-               if (params_.getEngine() == biblio::ENGINE_NATBIB_NUMERICAL) {
+               if (params_.citeEngine() == biblio::ENGINE_NATBIB_NUMERICAL)
                        packages << "numbers";
-               } else {
+               else
                        packages << "authoryear";
-               }
                packages << "]{natbib}\n";
        }
 
        // jurabib -- we need version 0.6 at least.
-       if (mustProvide("jurabib")) {
+       if (mustProvide("jurabib"))
                packages << "\\usepackage{jurabib}[2004/01/25]\n";
-       }
        
        // xargs -- we need version 1.09 at least
-       if (mustProvide("xargs")) {
+       if (mustProvide("xargs"))
                packages << "\\usepackage{xargs}[2008/03/08]\n";
-       }
 
        // bibtopic -- the dot provides the aux file naming which
        // LyX can detect.
-       if (mustProvide("bibtopic")) {
+       if (mustProvide("bibtopic"))
                packages << "\\usepackage[dot]{bibtopic}\n";
-       }
 
        if (mustProvide("xy"))
                packages << "\\usepackage[all]{xy}\n";
@@ -612,6 +606,12 @@ string const LaTeXFeatures::getPackages() const
                            "\\makenomenclature\n";
        }
 
+       // bm -- this package interrogates the font allocations to determine
+       // which bold fonts are available, so it is best loaded as the last one,
+       // and, in any case, after amsmath.
+       if (mustProvide("bm"))
+               packages << "\\usepackage{bm}\n";
+
        return packages.str();
 }