X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Flanguage.C;h=e2523b5021210f8fffae6d4d5ba3986f71041e12;hb=d2574b7d8e2716d3d3aea92df6576bd01c421a6c;hp=9a81295ba81949eb434a9291b89fbf9a5eaaf375;hpb=91de22ef340abbf1e9ba7d422bcd9024fa90d63f;p=lyx.git diff --git a/src/language.C b/src/language.C index 9a81295ba8..e2523b5021 100644 --- a/src/language.C +++ b/src/language.C @@ -13,25 +13,35 @@ #include #include "language.h" + +#include "debug.h" #include "encoding.h" #include "lyxlex.h" -#include "debug.h" +#include "lyxrc.h" + +#include "support/filename.h" + + +namespace lyx { using std::endl; +using std::string; + Languages languages; Language const * english_language; Language const * default_language; -Language ignore_lang("ignore", "ignore", "Ignore", false, 0, "ignore", ""); +Language ignore_lang("ignore", "ignore", "Ignore", false, "", 0, "ignore", ""); Language const * ignore_language = &ignore_lang; -Language latex_lang("latex", "latex", "Latex", false, 0, "latex", ""); +Language latex_lang("latex", "latex", "Latex", false, "", 0, "latex", ""); Language const * latex_language = &latex_lang; -void Languages::read(string const & filename) + +void Languages::read(support::FileName const & filename) { // We need to set the encoding of latex_lang - latex_lang = Language("latex", "latex", "Latex", false, - encodings.getEncoding("iso8859-1"), + latex_lang = Language("latex", "latex", "Latex", false, "iso8859-1", + encodings.getFromLyXName("iso8859-1"), "latex", ""); LyXLex lex(0, 0); @@ -49,7 +59,7 @@ void Languages::read(string const & filename) lang = lex.getString(); else break; - lyxerr[Debug::INIT] << "Reading language " << lang << endl; + lyxerr[Debug::INFO] << "Reading language " << lang << endl; if (lex.next()) babel = lex.getString(); @@ -64,14 +74,14 @@ void Languages::read(string const & filename) if (lex.next()) latex_options = lex.getString(); - Encoding const * encoding = encodings.getEncoding(encoding_str); + Encoding const * encoding = encodings.getFromLyXName(encoding_str); if (!encoding) { - encoding = encodings.getEncoding("iso8859-1"); + encoding = encodings.getFromLyXName("iso8859-1"); lyxerr << "Unknown encoding " << encoding_str << endl; } languagelist[lang] = Language(lang, babel, display, rtl, - encoding, code, latex_options); + encoding_str, encoding, code, latex_options); } default_language = getLanguage(lyxrc.default_language); @@ -89,11 +99,12 @@ void Languages::read(string const & filename) english_language = default_language; } + Language const * Languages::getLanguage(string const & language) const { const_iterator it = languagelist.find(language); - if (it != languagelist.end()) - return &it->second; - else - return 0; + return it == languagelist.end() ? 0 : &it->second; } + + +} // namespace lyx