Module:Localization: Difference between revisions
From Eco - English Wiki
[checked revision] | [checked revision] |
Created page with "return { words = { ['Tag'] = 'Tag' }, phrases = {} }" |
No edit summary |
||
(4 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
local p = {} | |||
local Utils = require('Module:Utils') | |||
function p.t(msg, count) | |||
if count == nil then | |||
count=1 | |||
end | |||
l = mw.loadData('Module:LocalizationData') | |||
local msgs = l.msgs[msg] | |||
if msgs == nil then | |||
mw.log('WARNING: Word not translated: ' .. msg) | |||
return msg | |||
end | |||
if count==1 or Utils.tableLen(msgs) == 1 then | |||
return msgs[1] | |||
else | |||
-- Pluralise | |||
local lang = mw.getContentLanguage() | |||
return lang:plural(count, msgs) | |||
end | |||
end | |||
function p.translate(frame) | |||
local args = Utils.normaliseArgs(frame) | |||
local msg = args.msg or args[1] | |||
local count = tonumber(args.count or args[2]) | |||
return p.t(msg, count) | |||
end | |||
return p |
Latest revision as of 10:55, 27 June 2024
local p = {}
local Utils = require('Module:Utils')
function p.t(msg, count)
if count == nil then
count=1
end
l = mw.loadData('Module:LocalizationData')
local msgs = l.msgs[msg]
if msgs == nil then
mw.log('WARNING: Word not translated: ' .. msg)
return msg
end
if count==1 or Utils.tableLen(msgs) == 1 then
return msgs[1]
else
-- Pluralise
local lang = mw.getContentLanguage()
return lang:plural(count, msgs)
end
end
function p.translate(frame)
local args = Utils.normaliseArgs(frame)
local msg = args.msg or args[1]
local count = tonumber(args.count or args[2])
return p.t(msg, count)
end
return p