+ void suppressDate(bool suppress);
+ ///
+ std::string citeEngine() const { return h_cite_engine; }
+ ///
+ void citeEngine(std::string const & e) { h_cite_engine = e; }
+ ///
+ bool titleLayoutFound() const { return title_layout_found; }
+ ///
+ void titleLayoutFound(bool found) { title_layout_found = found; }
+ /// Register an author named \p name in the author list
+ void registerAuthor(std::string const & name);
+ /// Get author named \p name (must be registered first)
+ Author const & getAuthor(std::string const & name) const;
+ /// Get number of arguments of special table column type \c or -1
+ /// if no column type \p c exists
+ int getSpecialTableColumnArguments(char c) const;
+
+ /// Parses the LaTeX preamble into internal data
+ void parse(Parser & p, std::string const & forceclass,
+ TeX2LyXDocClass & tc);
+ /// Parse the encoding from a preamble. *this is unusable afterwards.
+ std::string parseEncoding(Parser & p, std::string const & forceclass);
+ /// Writes the LyX file header from internal data
+ bool writeLyXHeader(std::ostream & os, bool subdoc,
+ std::string const & outfiledir);
+
+ /// known polyglossia language names (including variants)
+ static const char * const polyglossia_languages[];
+ /// the same as polyglossia_languages with .lyx names
+ static const char * const coded_polyglossia_languages[];