X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FOutputParams.h;h=1abbfe8dc776c29e45a6eb16d4be77f1130ac7af;hb=2098f1d8c20d51e63e670bcdc9da8996068975bf;hp=b4bf7f9283affddb7efc62b06348897ace218d5f;hpb=a287184d720bc57a5b248939f81cfd26276086c7;p=lyx.git diff --git a/src/OutputParams.h b/src/OutputParams.h index b4bf7f9283..1abbfe8dc7 100644 --- a/src/OutputParams.h +++ b/src/OutputParams.h @@ -12,13 +12,12 @@ #ifndef OUTPUTPARAMS_H #define OUTPUTPARAMS_H -#include "support/types.h" +#include +#include "support/types.h" +#include #include "Changes.h" -#include -#include - namespace lyx { @@ -26,6 +25,7 @@ namespace lyx { class Encoding; class ExportData; class Font; +class Language; class OutputParams { @@ -33,7 +33,10 @@ public: enum FLAVOR { LATEX, PDFLATEX, - XML + XETEX, + XML, + HTML, + TEXT }; enum TableCell { @@ -42,6 +45,12 @@ public: ALIGNED }; + enum Float { + NONFLOAT, + MAINFLOAT, + SUBFLOAT + }; + OutputParams(Encoding const *); ~OutputParams(); @@ -69,6 +78,14 @@ public: */ bool intitle; + /** inulemcmd == true means that the environment in which the + inset is typeset is part of a ulem command (\uline, \uuline, + \uwave, or \sout). Insets that output latex commands relying + on local assignments (such as \cite) should enclose such + commands in \mbox{} in order to avoid breakage. + */ + mutable bool inulemcmd; + /** the font at the point where the inset is */ Font const * local_font; @@ -77,6 +94,10 @@ public: */ mutable std::string document_language; + /** The master language. Non-null only for child documents. + */ + mutable Language const * master_language; + /** Current stream encoding. Only used for LaTeX. This must be set to the document encoding (via the constructor) before output starts. Afterwards it must be kept up to date for @@ -105,11 +126,23 @@ public: */ bool use_babel; + /** Are we generating multiple indices? + */ + bool use_indices; + /** Are we using japanese (pLaTeX)? */ bool use_japanese; - /** Line length to use with plaintext export. + /** Customized bibtex_command + */ + mutable std::string bibtex_command; + + /** Customized index_command + */ + mutable std::string index_command; + + /** Line length to use with plaintext or LaTeX export. */ size_type linelen; @@ -122,7 +155,7 @@ public: This is a hack: Make it possible to add stuff to constant OutputParams instances. */ - std::tr1::shared_ptr exportdata; + boost::shared_ptr exportdata; /** Whether we are inside a comment inset. Insets that are including * external files like InsetGraphics, InsetInclude and InsetExternal @@ -137,6 +170,16 @@ public: */ TableCell inTableCell; + /** Whether we are inside a float or subfloat. + * Needed for subfloat detection on the command line. + */ + Float inFloat; + + /** Whether we are inside an index inset. + * ERT needs to know this, due to the active chars. + */ + bool inIndexEntry; + /** Whether we are inside an inset that is logically deleted. * A value > 0 indicates a deleted inset. */ @@ -167,6 +210,12 @@ public: bool dryrun; /// Should we output verbatim or escape LaTeX's special chars? bool verbatim; + /// 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; };