X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2FInsetExternal.cpp;h=b68a09d77fc10e1663b7f645eb1ed6dabac70018;hb=860accd01fb8115ec7c6ad80b054f1046e19c62f;hp=5a7a07a8e3ba1af988d4c9a8b5f24986cd4fcab4;hpb=3703a0235c7929982f121c494b4601690e11ace1;p=lyx.git diff --git a/src/insets/InsetExternal.cpp b/src/insets/InsetExternal.cpp index 5a7a07a8e3..b68a09d77f 100644 --- a/src/insets/InsetExternal.cpp +++ b/src/insets/InsetExternal.cpp @@ -30,6 +30,8 @@ #include "MetricsInfo.h" #include "OutputParams.h" #include "output_latex.h" +#include "output_xhtml.h" +#include "texstream.h" #include "TocBackend.h" #include "frontends/alert.h" @@ -560,9 +562,8 @@ static bool isPreviewWanted(InsetExternalParams const & params) static docstring latexString(InsetExternal const & inset) { - TexRow texrow; odocstringstream ods; - otexstream os(ods, texrow); + otexstream os(ods); // We don't need to set runparams.encoding since it is not used by // latex(). OutputParams runparams(0); @@ -730,12 +731,12 @@ int InsetExternal::plaintext(odocstringstream & os, if (runparams.for_tooltip) return 0; - TexRow texrow; - otexstream ots(os, texrow); + bool const external_in_tmpdir = !runparams.nice; + bool const dryrun = runparams.dryrun || runparams.inComment; + otexstream ots(os); ots << '\n'; // output external material on a new line external::writeExternal(params_, "Ascii", buffer(), ots, - *(runparams.exportdata), false, - runparams.dryrun || runparams.inComment); + *(runparams.exportdata), external_in_tmpdir, dryrun); return PLAINTEXT_NEWLINE; } @@ -743,23 +744,27 @@ int InsetExternal::plaintext(odocstringstream & os, int InsetExternal::docbook(odocstream & os, OutputParams const & runparams) const { - TexRow texrow; + bool const external_in_tmpdir = !runparams.nice; + bool const dryrun = runparams.dryrun || runparams.inComment; odocstringstream ods; - otexstream ots(ods, texrow); + otexstream ots(ods); external::writeExternal(params_, "DocBook", buffer(), ots, - *(runparams.exportdata), false, - runparams.dryrun || runparams.inComment); + *(runparams.exportdata), external_in_tmpdir, dryrun); os << ods.str(); return int(count(ods.str().begin(), ods.str().end(), '\n')); } -docstring InsetExternal::xhtml(XHTMLStream & /*xs*/, - OutputParams const & /*rp*/) const +docstring InsetExternal::xhtml(XHTMLStream & xs, + OutputParams const & runparams) const { -// external::writeExternal(params_, "XHTML", buffer(), os, -// *(runparams.exportdata), false, -// runparams.dryrun || runparams.inComment); + bool const external_in_tmpdir = !runparams.nice; + bool const dryrun = runparams.dryrun || runparams.inComment; + odocstringstream ods; + otexstream ots(ods); + external::writeExternal(params_, "XHTML", buffer(), ots, + *(runparams.exportdata), external_in_tmpdir, dryrun); + xs << XHTMLStream::ESCAPE_NONE << ods.str(); return docstring(); } @@ -823,10 +828,8 @@ void InsetExternal::validate(LaTeXFeatures & features) const external::TemplateManager & etm = external::TemplateManager::get(); - it = cit->second.preambleNames.begin(); - end = cit->second.preambleNames.end(); - for (; it != end; ++it) { - string const preamble = etm.getPreambleDefByName(*it); + for (string const & name : cit->second.preambleNames) { + docstring const preamble = etm.getPreambleDefByName(name); if (!preamble.empty()) features.addPreambleSnippet(preamble); }