]> git.lyx.org Git - lyx.git/blobdiff - src/output_latex.h
Account for old versions of Pygments
[lyx.git] / src / output_latex.h
index 9a7de7ed69d12714ac07b5c5f162b0c97408fca7..0969d22c03b91baec50f6bc616bd92f7981fac14 100644 (file)
@@ -15,8 +15,7 @@
 #include <utility>
 
 #include "support/docstream.h"
-#include "Paragraph.h"
-#include "ParIterator.h"
+#include "Layout.h"
 #include "ParagraphList.h"
 
 
@@ -28,17 +27,36 @@ class Encoding;
 class Layout;
 class Paragraph;
 class OutputParams;
-class TexRow;
 class Text;
 
-/// Export up to \p reqargs required arguments and
-/// \p optargs optional ones. If not enough required
-/// ones are given, we'll output: {}. The optional ones
-/// must all come first.
-int latexArgInsets(Paragraph const & par,
-               odocstream & os, OutputParams const & runparams,
-               unsigned int reqargs, unsigned int optargs);
+/** Register a language switch when using polyglossia or begin/end commands.
+    Set \p localswitch to true if a local command switch is used.
+ */
+void pushLanguageName(std::string const & lang, bool localswitch = false);
+
+/** Unregister the last language switch when using polyglossia
+    or begin/end commands.
+ */
+void popLanguageName();
 
+/** 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 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.
@@ -46,8 +64,7 @@ int latexArgInsets(Paragraph const & par,
  */
 void latexParagraphs(Buffer const & buf,
                     Text const & text,
-                    odocstream & ofs,
-                    TexRow & texrow,
+                    otexstream & ofs,
                     OutputParams const &,
                     std::string const & everypar = std::string());
 
@@ -61,13 +78,13 @@ std::pair<bool, int> switchEncoding(odocstream & os,
                     bool force = false);
 
 /// FIXME: this should not be visible.
-ParagraphList::const_iterator TeXOnePar(Buffer const & buf,
-                     Text const & text,
-                     ParagraphList::const_iterator pit,
-                     odocstream & os, TexRow & texrow,
-                     OutputParams const & runparams,
-                     std::string const & everypar = std::string(),
-                     int start_pos = -1, int end_pos = -1);
+void TeXOnePar(Buffer const & buf,
+                  Text const & text,
+                  pit_type pit,
+                  otexstream & os,
+                  OutputParams const & runparams,
+                  std::string const & everypar = std::string(),
+                  int start_pos = -1, int end_pos = -1);
 
 } // namespace lyx