Use engine translator, ditch intllib

This commit is contained in:
Jean-Patrick Guerrero 2019-02-13 14:15:29 +01:00
parent 40b5f8725a
commit 8f6f8dda7e
6 changed files with 2 additions and 49 deletions

@ -1,3 +1,2 @@
sfinv?
sfinv_buttons?
intllib?

@ -21,8 +21,7 @@ local show_formspec = mt.show_formspec
local get_player_by_name = mt.get_player_by_name
local serialize, deserialize = mt.serialize, mt.deserialize
-- Intllib
local S = dofile(mt.get_modpath("craftguide") .. "/intllib.lua")
local S = mt.get_translator("craftguide")
-- Lua 5.3 removed `table.maxn`, use this alternative in case of breakage:
-- https://github.com/kilbith/xdecor/blob/master/handlers/helpers.lua#L1

@ -1,45 +0,0 @@
-- Fallback functions for when `intllib` is not installed.
-- Code released under Unlicense <http://unlicense.org>.
-- Get the latest version of this file at:
-- https://raw.githubusercontent.com/minetest-mods/intllib/master/lib/intllib.lua
local function format(str, ...)
local args = { ... }
local function repl(escape, open, num, close)
if escape == "" then
local replacement = tostring(args[tonumber(num)])
if open == "" then
replacement = replacement..close
end
return replacement
else
return "@"..open..num..close
end
end
return (str:gsub("(@?)@(%(?)(%d+)(%)?)", repl))
end
local gettext, ngettext
if minetest.get_modpath("intllib") then
if intllib.make_gettext_pair then
-- New method using gettext.
gettext, ngettext = intllib.make_gettext_pair()
else
-- Old method using text files.
gettext = intllib.Getter()
end
end
-- Fill in missing functions.
gettext = gettext or function(msgid, ...)
return format(msgid, ...)
end
ngettext = ngettext or function(msgid, msgid_plural, n, ...)
return format(n==1 and msgid or msgid_plural, ...)
end
return gettext, ngettext