BASECLASS, //>This is a base class, i.e., top-level layout file
MERGE, //>This is a file included in a layout file
MODULE, //>This is a layout module
+ CITE_ENGINE, //>This is a cite engine
VALIDATION //>We're just validating
};
/// return values for read()
ReturnValues read(Lexer & lex, ReadType rt = BASECLASS);
/// validates the layout information passed in str
static ReturnValues validate(std::string const & str);
- ///
+ /// \return the conversion of \param str to the latest layout format
+ /// compatible with the lyx format.
static std::string convert(std::string const & str);
///////////////////////////////////////////////////////////////////
mutable std::string prerequisites_;
/// The possible cite engine types
std::string opt_enginetype_;
+ /// The cite framework (bibtex, biblatex)
+ std::string citeframework_;
///
std::string opt_fontsize_;
///
/// Citation macros
std::map<CiteEngineType, std::map<std::string, std::string> > cite_macros_;
/// The default BibTeX bibliography style file
- std::string cite_default_biblio_style_;
+ std::map<std::string, std::string> cite_default_biblio_style_;
+ /// Citation command aliases
+ std::map<std::string, std::string> cite_command_aliases_;
+ /// The maximum number of citations before "et al."
+ size_t maxcitenames_;
/// Whether full author lists are supported
bool cite_full_author_list_;
/// The possible citation styles
///
std::string const & opt_enginetype() const { return opt_enginetype_; }
///
+ std::string const & citeFramework() const { return citeframework_; }
+ ///
std::string const & opt_fontsize() const { return opt_fontsize_; }
///
std::string const & opt_pagestyle() const { return opt_pagestyle_; }
///
std::vector<CitationStyle> const & citeStyles(CiteEngineType const &) const;
///
- std::string const & defaultBiblioStyle() const { return cite_default_biblio_style_; }
+ std::map<std::string, std::string> const & defaultBiblioStyle() const
+ { return cite_default_biblio_style_; }
+ ///
+ std::map<std::string, std::string> const & citeCommandAliases() const
+ { return cite_command_aliases_; }
+ /// The maximum number of citations before "et al."
+ size_t max_citenames() const { return maxcitenames_; }
///
bool const & fullAuthorList() const { return cite_full_author_list_; }
protected:
/// The only way to make a DocumentClass is to call this function.
friend DocumentClassPtr
getDocumentClass(LayoutFile const &, LayoutModuleList const &,
+ LayoutModuleList const &,
bool const clone);
};
/// on the CutStack.
DocumentClassPtr getDocumentClass(LayoutFile const & baseClass,
LayoutModuleList const & modlist,
+ LayoutModuleList const & celist,
bool const clone = false);
/// convert page sides option to text 1 or 2
/// current format of layout files
extern int const LAYOUT_FORMAT;
+/// layout format for the current lyx file format (usually equal to
+/// LAYOUT_FORMAT)
+extern int const LYXFILE_LAYOUT_FORMAT;
} // namespace lyx