#ifndef OUTPUTPARAMS_H
#define OUTPUTPARAMS_H
-#include <string>
-#include "support/types.h"
-#include <boost/shared_ptr.hpp>
+#include "support/shared_ptr.h"
#include "Changes.h"
class Font;
class Language;
-
class OutputParams {
public:
enum FLAVOR {
LATEX,
+ LUATEX,
PDFLATEX,
XETEX,
XML,
HTML,
TEXT
};
+
+ enum MathFlavor {
+ NotApplicable,
+ MathAsMathML,
+ MathAsHTML,
+ MathAsImages,
+ MathAsLaTeX
+ };
enum TableCell {
NO,
OutputParams(Encoding const *);
~OutputParams();
- /** The latex that we export depends occasionally on what is to
+ /** The file that we export depends occasionally on what is to
compile the file.
*/
FLAVOR flavor;
-
+ /// is it some flavor of LaTeX?
+ bool isLaTeX() const;
+ /// does this flavour support full unicode?
+ bool isFullUnicode() const;
+
+ /// Same, but for math output, which only matter is XHTML output.
+ MathFlavor math_flavor;
+
/** Are we to write a 'nice' LaTeX file or not.
This esentially seems to mean whether InsetInclude, InsetGraphics
and InsetExternal should add the absolute path to any external
*/
bool use_babel;
+ /** Do we use polyglossia (instead of babel)?
+ */
+ bool use_polyglossia;
+
/** Are we generating multiple indices?
*/
bool use_indices;
This is a hack: Make it possible to add stuff to constant
OutputParams instances.
*/
- boost::shared_ptr<ExportData> exportdata;
+ shared_ptr<ExportData> exportdata;
/** Whether we are inside a comment inset. Insets that are including
* external files like InsetGraphics, InsetInclude and InsetExternal
/** allow output of only part of the top-level paragraphs
* par_begin: beginning paragraph
*/
- pit_type par_begin;
+ mutable pit_type par_begin;
/** allow output of only part of the top-level paragraphs
* par_end: par_end-1 is the ending paragraph
* if par_begin=par_end, output all paragraphs
*/
- pit_type par_end;
+ mutable pit_type par_end;
+
+ /// Id of the last paragraph before an inset
+ mutable int lastid;
+
+ /// Last position in the last paragraph before an inset
+ mutable int lastpos;
/// is this the last paragraph in the current buffer/inset?
bool isLastPar;
+
/** whether or not do actual file copying and image conversion
* This mode will be used to preview the source code
*/
bool dryrun;
+
/// Should we output verbatim or escape LaTeX's special chars?
- bool verbatim;
+ bool pass_thru;
+
/// Should we output captions?
bool html_disable_captions;
+
/// Are we already in a paragraph?
bool html_in_par;
+
+ /// Does the present context even permit paragraphs?
+ bool html_make_pars;
+
+ /// Are we generating this material for inclusion in a TOC-like entity?
+ bool for_toc;
+
+ /// Include all children notwithstanding the use of \includeonly
+ bool includeall;
};