X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FLaTeXFeatures.cpp;h=d5163a09d4328c7ec2a5bc3cdf41d464baaac6eb;hb=e08e5afeea7194d95be1f02fe9484383574d203f;hp=dae61ec0695457ecc983d48d66a40571f956eb64;hpb=547bceb62e6a1c6b820410a38a1aab1bb2bf162f;p=lyx.git diff --git a/src/LaTeXFeatures.cpp b/src/LaTeXFeatures.cpp index dae61ec069..d5163a09d4 100644 --- a/src/LaTeXFeatures.cpp +++ b/src/LaTeXFeatures.cpp @@ -31,13 +31,6 @@ #include "frontends/controllers/frontend_helpers.h" -namespace lyx { - -using support::isSGMLFilename; -using support::libFileSearch; -using support::makeRelPath; -using support::onlyPath; - using std::endl; using std::find; using std::string; @@ -46,6 +39,14 @@ using std::ostream; using std::ostringstream; using std::set; + +namespace lyx { + +using support::isSGMLFilename; +using support::libFileSearch; +using support::makeRelPath; +using support::onlyPath; + ///////////////////////////////////////////////////////////////////// // // Strings @@ -254,7 +255,7 @@ void LaTeXFeatures::getAvailable() } -void LaTeXFeatures::useLayout(string const & layoutname) +void LaTeXFeatures::useLayout(docstring const & layoutname) { // Some code to avoid loops in dependency definition static int level = 0; @@ -262,15 +263,15 @@ void LaTeXFeatures::useLayout(string const & layoutname) if (level > maxlevel) { lyxerr << "LaTeXFeatures::useLayout: maximum level of " << "recursion attained by layout " - << layoutname << endl; + << to_utf8(layoutname) << endl; return; } TextClass const & tclass = params_.getTextClass(); if (tclass.hasLayout(layoutname)) { // Is this layout already in usedLayouts? - list::const_iterator cit = usedLayouts_.begin(); - list::const_iterator end = usedLayouts_.end(); + list::const_iterator cit = usedLayouts_.begin(); + list::const_iterator end = usedLayouts_.end(); for (; cit != end; ++cit) { if (layoutname == *cit) return; @@ -285,7 +286,7 @@ void LaTeXFeatures::useLayout(string const & layoutname) usedLayouts_.push_back(layoutname); } else { lyxerr << "LaTeXFeatures::useLayout: layout `" - << layoutname << "' does not exist in this class" + << to_utf8(layoutname) << "' does not exist in this class" << endl; } @@ -445,8 +446,11 @@ string const LaTeXFeatures::getPackages() const // than those above. // - if (mustProvide("amsmath") - && params_.use_amsmath != BufferParams::package_off) { + // esint is preferred for esintoramsmath + if ((mustProvide("amsmath") && + params_.use_amsmath != BufferParams::package_off) || + (mustProvide("esintoramsmath") && + params_.use_esint == BufferParams::package_off)) { packages << "\\usepackage{amsmath}\n"; } @@ -539,8 +543,8 @@ string const LaTeXFeatures::getPackages() const // esint must be after amsmath and wasysym, since it will redeclare // inconsistent integral symbols - if (mustProvide("esint") - && params_.use_esint != BufferParams::package_off) + if ((mustProvide("esint") || mustProvide("esintoramsmath")) && + params_.use_esint != BufferParams::package_off) packages << "\\usepackage{esint}\n"; // url.sty @@ -709,8 +713,8 @@ docstring const LaTeXFeatures::getTClassPreamble() const tcpreamble << tclass.preamble(); - list::const_iterator cit = usedLayouts_.begin(); - list::const_iterator end = usedLayouts_.end(); + list::const_iterator cit = usedLayouts_.begin(); + list::const_iterator end = usedLayouts_.end(); for (; cit != end; ++cit) { tcpreamble << tclass[*cit]->preamble(); }