#ifndef LANGUAGE_H
#define LANGUAGE_H
+#include "BufferParams.h"
+
#include "support/docstring.h"
#include "support/trivstring.h"
#include <map>
+#include <vector>
namespace lyx {
std::string const polyglossiaOpts() const { return polyglossia_opts_; }
/// Is this language only supported by polyglossia?
bool isPolyglossiaExclusive() const;
+ /// Is this language only supported by babel?
+ bool isBabelExclusive() const;
/// quotation marks style
std::string const quoteStyle() const { return quote_style_; }
/// requirement (package, function)
std::string const requires() const { return requires_; }
+ /// provides feature
+ std::string const provides() const { return provides_; }
/// translatable GUI name
std::string const display() const { return display_; }
/// is this a RTL language?
docstring babel_presettings() const { return babel_presettings_; }
/// This language internally sets a font encoding
bool internalFontEncoding() const { return internal_enc_; }
- /// fontenc encoding(s)
- std::string const fontenc() const { return fontenc_; }
+ /// The most suitable font encoding(s) for the selected document font
+ std::string fontenc(BufferParams const &) const;
+ /// Return the localized date formats (long, medium, short format)
+ std::string dateFormat(size_t i) const;
/// This language needs to be passed to babel itself (not the class)
bool asBabelOptions() const { return as_babel_options_; }
/// This language corresponds to a translation of the GUI
///
trivstring requires_;
///
+ trivstring provides_;
+ ///
trivstring display_;
///
bool rightToLeft_;
///
trivdocstring babel_presettings_;
///
- trivstring fontenc_;
+ std::vector<std::string> fontenc_;
+ ///
+ std::vector<std::string> dateformats_;
///
bool internal_enc_;
///
///
void read(support::FileName const & filename);
///
+ Language const * getFromCode(std::string const & code) const;
+ ///
void readLayoutTranslations(support::FileName const & filename);
///
Language const * getLanguage(std::string const & language) const;