X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Foutput_latex.h;h=cf37173604b2b03bd4daa4447fd774f16532ba72;hb=a6e3c59b94589c9043cd55ceaa3700849b4484dc;hp=71af3221c97e130598826039b8b6dbd2f5c955d0;hpb=8c14d9e0413978aa11f581e9c6f2d0587bb0b189;p=lyx.git diff --git a/src/output_latex.h b/src/output_latex.h index 71af3221c9..cf37173604 100644 --- a/src/output_latex.h +++ b/src/output_latex.h @@ -29,26 +29,41 @@ class Paragraph; class OutputParams; class Text; -/** Register a language switch when using polyglossia. +/** Register a language switch when using polyglossia or begin/end commands. + Set \p localswitch to true if a local command switch is used. */ -void pushPolyglossiaLang(std::string const & lang); +void pushLanguageName(std::string const & lang, bool localswitch = false); -/** Unregister the last language switch when using polyglossia. +/** Unregister the last language switch when using polyglossia + or begin/end commands. */ -void popPolyglossiaLang(); +void popLanguageName(); + +/** Return a reference to the last active language opened with + polyglossia or when using begin/end commands. If none or when + using babel with only a begin command, return a reference to + an empty string. + */ +std::string const & openLanguageName(); /** Export optional and required arguments of the paragraph \p par. Non-existing required arguments are output empty: {}. */ void latexArgInsets(Paragraph const & par, - otexstream & os, OutputParams const & runparams, - Layout::LaTeXArgMap const & latexargs, - std::string const & prefix = std::string()); -/// Same for multi-par sequences (e.g. merged environments or InsetLayouts) -void latexArgInsets(ParagraphList const & pars, ParagraphList::const_iterator pit, - otexstream & os, OutputParams const & runparams, - Layout::LaTeXArgMap const & latexargs, - std::string const & prefix = std::string()); + otexstream & os, OutputParams const & runparams, + Layout::LaTeXArgMap const & latexargs, + std::string const & prefix = std::string()); +/// Same for merged environments +void latexArgInsets(ParagraphList const & pars, + ParagraphList::const_iterator pit, + otexstream & os, OutputParams const & runparams, + Layout::LaTeXArgMap const & latexargs, + std::string const & prefix = std::string()); +/// Same for InsetLayouts +void latexArgInsetsForParent(ParagraphList const & pars, otexstream & os, + OutputParams const & runparams, + Layout::LaTeXArgMap const & latexargs, + std::string const & prefix = std::string()); /** Export \p paragraphs of buffer \p buf to LaTeX. Don't use a temporary stringstream for \p os if the final output is supposed to go to a file. @@ -76,7 +91,8 @@ void TeXOnePar(Buffer const & buf, otexstream & os, OutputParams const & runparams, std::string const & everypar = std::string(), - int start_pos = -1, int end_pos = -1); + int start_pos = -1, int end_pos = -1, + bool const force = false); } // namespace lyx