From a5cc2639f284e3393b7d5ffb8fd06806cbd22139 Mon Sep 17 00:00:00 2001 From: BrunoMine Date: Sun, 16 Jul 2017 12:40:15 -0300 Subject: [PATCH] Add variant methods for gettext and ngettext for selected language --- init.lua | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/init.lua b/init.lua index 0778a73..a874cc4 100644 --- a/init.lua +++ b/init.lua @@ -178,8 +178,21 @@ function intllib.make_gettext_pair(modname) or getter(msgid)) return do_replacements(msgstr, ...) end - gettext_getters[modname] = { gettext_func, ngettext_func } - return gettext_func, ngettext_func + -- Get string of Selected language + local function sgettext_func(lang, msgid, ...) + local scatalogs = gettext.load_catalogs(localedir, lang) + local msgstr = (catgettext(scatalogs, msgid) + or getter(msgid)) + return do_replacements(msgstr, ...) + end + local function sngettext_func(lang, msgid, msgid_plural, n, ...) + local scatalogs = gettext.load_catalogs(localedir, lang) + local msgstr = (catngettext(scatalogs, msgid, msgid_plural, n) + or getter(msgid)) + return do_replacements(msgstr, ...) + end + gettext_getters[modname] = { gettext_func, ngettext_func, sgettext_func, sngettext_func } + return gettext_func, ngettext_func, sgettext_func, sngettext_func end