inkstitch/electron/src/lib/i18n.js

28 wiersze
926 B
JavaScript
Czysty Zwykły widok Historia

module.exports.selectLanguage = function (translations) {
// get a list of available translations
var availableTranslations = ['en_US'];
for(var k in translations) availableTranslations.push(k);
var lang = undefined;
// get system language / Inkscape language
['LANG', 'LC_MESSAGES', 'LC_ALL', 'LANGUAGE'].forEach(language => {
2020-04-28 16:34:05 +00:00
if (process.env[language]) {
// split encoding information, we don't need it
var current_lang = process.env[language].split(".")[0];
if (current_lang.length == 2) {
// current language has only two letters (e.g. en),
// compare with available languages and if present, set to a long locale name (e.g. en_US)
lang = availableTranslations.find(elem => elem.startsWith(current_lang));
} else {
lang = current_lang;
}
2020-04-28 16:34:05 +00:00
}
})
// set default language
if (lang === undefined) {
lang = "en_US"
}
return lang
2020-04-28 16:34:05 +00:00
}