4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
7 * \author Lars Gullik Bjønnes
8 * \author Jean-Marc Lasgouttes
10 * \author Jürgen Vigna
12 * Full author contact details are available in file CREDITS.
24 namespace support
{ class FileName
; }
32 Language() : rightToLeft_(false) {}
34 Language(std::string
const & l
, std::string
const & b
, std::string
const & d
,
35 bool rtl
, std::string
const & es
, Encoding
const * e
, std::string
const & c
,
36 std::string
const & o
)
37 : lang_(l
), babel_(b
), display_(d
), rightToLeft_(rtl
),
38 encodingStr_(es
), encoding_(e
), code_(c
), latex_options_(o
)
41 std::string
const & lang() const { return lang_
; }
43 std::string
const & babel() const { return babel_
; }
45 std::string
const & display() const { return display_
; }
47 bool rightToLeft() const { return rightToLeft_
; }
49 Encoding
const * encoding() const { return encoding_
; }
51 std::string
const & encodingStr() const { return encodingStr_
; }
53 std::string
const & code() const { return code_
; }
55 std::string
const & latex_options() const { return latex_options_
; }
66 std::string encodingStr_
;
68 Encoding
const * encoding_
;
72 std::string latex_options_
;
79 typedef std::map
<std::string
, Language
> LanguageList
;
81 typedef LanguageList::const_iterator const_iterator
;
83 typedef LanguageList::size_type size_type
;
85 void read(support::FileName
const & filename
);
87 Language
const * getLanguage(std::string
const & language
) const;
89 size_type
size() const { return languagelist
.size(); }
91 const_iterator
begin() const { return languagelist
.begin(); }
93 const_iterator
end() const { return languagelist
.end(); }
98 LanguageList languagelist
;
101 extern Languages languages
;
102 extern Language
const * default_language
;
103 extern Language
const * english_language
;
104 extern Language
const * ignore_language
;
105 extern Language
const * latex_language
;