X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FLaTeXFeatures.cpp;h=029124286f189eea970a20177638a56e754784ea;hb=a17dfeee0ea15100be4ff615339f96c2f7db9598;hp=54cf237eb5a822441d2142240b81a8fd514a5964;hpb=c5c480bb3c3d99a70e4b3cc6336fda171b080c15;p=lyx.git diff --git a/src/LaTeXFeatures.cpp b/src/LaTeXFeatures.cpp index 54cf237eb5..029124286f 100644 --- a/src/LaTeXFeatures.cpp +++ b/src/LaTeXFeatures.cpp @@ -682,7 +682,7 @@ TexString getSnippets(std::list const & list) return snip.release(); } -} //anon namespace +} // namespace void LaTeXFeatures::addPreambleSnippet(TexString ts, bool allow_dupes) @@ -974,6 +974,8 @@ char const * simplefeatures[] = { "todonotes", "forest", "varwidth", + "footnote", + "tablefootnote", }; char const * bibliofeatures[] = { @@ -997,7 +999,7 @@ int const nb_bibliofeatures = sizeof(bibliofeatures) / sizeof(char const *); int const nb_simplefeatures = sizeof(simplefeatures) / sizeof(char const *); -} +} // namespace string const LaTeXFeatures::getColorOptions() const @@ -1096,6 +1098,15 @@ string const LaTeXFeatures::getPackages() const // The rest of these packages are somewhat more complicated // than those above. + // [pdf]lscape is used to rotate longtables + if (mustProvide("lscape")) { + if (runparams_.flavor == OutputParams::LATEX + || runparams_.flavor == OutputParams::DVILUATEX) + packages << "\\usepackage{lscape}\n"; + else + packages << "\\usepackage{pdflscape}\n"; + } + // The tipa package and its extensions (tipx, tone) must not // be loaded with non-TeX fonts, since fontspec includes the // respective macros @@ -1230,7 +1241,11 @@ string const LaTeXFeatures::getPackages() const // Some classes load natbib themselves, but still allow (or even require) // plain numeric citations (ReVTeX is such a case, see bug 5182). // This special case is indicated by the "natbib-internal" key. - if (mustProvide("natbib") && !isProvided("natbib-internal")) { + if (mustProvide("natbib") + && !isProvided("natbib-internal") + && !isProvided("biblatex") + && !isProvided("biblatex-natbib") + && !isProvided("jurabib")) { packages << "\\usepackage["; if (params_.citeEngineType() == ENGINE_TYPE_NUMERICAL) packages << "numbers"; @@ -1249,7 +1264,11 @@ string const LaTeXFeatures::getPackages() const } // jurabib -- we need version 0.6 at least. - if (mustProvide("jurabib")) { + if (mustProvide("jurabib") + && !isProvided("natbib-internal") + && !isProvided("natbib") + && !isProvided("biblatex") + && !isProvided("biblatex-natbib")) { packages << "\\usepackage"; if (!params_.biblio_opts.empty()) packages << '[' << params_.biblio_opts << ']'; @@ -1316,6 +1335,9 @@ TexString LaTeXFeatures::getMacros() const macros << getPreambleSnippets(); } + if (mustProvide("xetexdashbreakstate")) + macros << "\\XeTeXdashbreakstate 0" << '\n'; + if (mustProvide("papersize")) { if (runparams_.flavor == OutputParams::LATEX || runparams_.flavor == OutputParams::DVILUATEX) @@ -1770,7 +1792,7 @@ docstring const i18npreamble(docstring const & templ, Language const * lang, return from_utf8(preamble); } -} +} // namespace docstring const LaTeXFeatures::getTClassI18nPreamble(bool use_babel,