Module:I18n/or

From Wikidata
Jump to navigation Jump to search
Lua
CodeDiscussionLinksLink count SubpagesDocumentationTestsResultsSandboxLive code All modules

Code

local p = { --indicate white =spaces before but not after "or" to be consistent with int:and
	['ar'] = 'أو',
	['bg'] = ' или',
	['bn'] = ' অথবা',
	['ca'] = ' o',
	['cs'] = ' nebo',
	['da'] = ' eller',
	['de'] = ' oder',
	['el'] = ' ή',
	['en'] = ' or',
	['eo'] = ' aŭ',
	['es'] = ' o',
	['et'] = ' või',
	['fa'] = 'یا ',
	['fi'] = ' tai',
	['fr'] = ' ou',
	['fy'] = ' of',
	['gl'] = ' ou',
	['he'] = ' או',
	['hsb'] = ' abo',
	['hu'] = ' vagy',
	['io'] = ' o',
	['it'] = ' o',
	['ja'] = 'または',
	['ko'] = ' 또는 ',
	['lt'] = 'arba',
	['mk'] = ' или',
	['ml'] = ' അഥവാ',
	['nds'] = ' oder',
	['ne']	= ' अथवा', 
	['nl'] = ' of',
	['nn'] = ' eller',
	['no'] = ' eller',
	['os'] = ' ó',
    ['pa'] = ' ਜਾਂ',
	['pl'] = ' lub',
    ['pnb'] = ' یا',
	['pt'] = ' ou',
	['pt-br'] = ' ou',
	['ru'] = ' или',
	['sl'] = ' ali',
	['sr'] = ' или',
	['sv'] = ' eller',
	['tg'] = ' ё',
	['th'] = ' หรือ',
	['tr'] = ' ve',
	['tzl'] = ' eda',
	['uk'] = ' або',
	['ur'] = 'یا ',
	['vi'] = ' hoặc',
	['zh'] = ' 或',
	['zh-hans']=' 或',
	['zh-hant']=' 或',
}

setmetatable(p, { quickTests = function()
    for k, v in pairs(p) do
        if type(k) ~= 'string' or #k < 2 or #k > 16 or (k):find('^[a-z][%-0-9a-z]*[0-9a-z]$') ~= 1
        or type(v) ~= 'string' or #v < 1 or #v > 32 then return false, ": Invalid mapping for language code ['" .. tostring(k) .. "'] = '" .. tostring(v) .. "'" end
        if not mw.language.isSupportedLanguage(k) and not mw.language.isKnownLanguageTag(k) then return false, ": Unknown and unsupported language code '" .. tostring(k) .. "'" end
    end
    if p[mw.getContentLanguage():getCode()] == nil then return false, ": Missing mapping for content language ['" .. tostring(mw.getContentLanguage():getCode()) .. "']" end
    return true
end })
--[[ Type this to run quick tests in Lua console:
=getmetatable(p).quickTests() -- must return true
--]]

return p