Modul:translit-redirect/templates

Üdvözlöm, Ön a Modul:translit-redirect/templates szó jelentését keresi. A DICTIOUS-ban nem csak a Modul:translit-redirect/templates szó összes szótári jelentését megtalálod, hanem megismerheted az etimológiáját, a jellemzőit és azt is, hogyan kell a Modul:translit-redirect/templates szót egyes és többes számban mondani. Minden, amit a Modul:translit-redirect/templates szóról tudni kell, itt található. A Modul:translit-redirect/templates szó meghatározása segít abban, hogy pontosabban és helyesebben fogalmazz, amikor beszélsz vagy írsz. AModul:translit-redirect/templates és más szavak definíciójának ismerete gazdagítja a szókincsedet, és több és jobb nyelvi forráshoz juttat.

A modult a Modul:translit-redirect/templates/doc lapon tudod dokumentálni

local export = {}

local getByCode = require("Module:languages").getByCode

local combining = {}
for i = 0x300, 0x36f do
	combining = ''
end

local function ucfirst(str)
	return mw.getContentLanguage():ucfirst(str)
end

local function normalize(str)
	return mw.ustring.gsub(mw.ustring.toNFD(str:match("|(]+)")), '.', combining)
end

local langs = {}
setmetatable(langs, { -- Auto-create language objects: langs.en -> language object for English.
	__index = function(self, key)
		local lang = getByCode(key) or error("No language with code " .. key .. ".")
		self = lang
		return lang
	end
})

function export.documentation(frame)
	local data = mw.loadData "Module:translit-redirect/data"
	local documentation_page = mw.title.getCurrentTitle().subpageText == "doc"
	
	local output = {}
	for lang_code in pairs(data) do
		local lang = langs
		local canonical_name = lang:getCanonicalName()
		table.insert(output, 
			documentation_page and ("] (<code>%s</code>)")
					:format(lang:getCategoryName(), canonical_name, lang:getCode())
			or ("] (<code>%s</code>) ]")
				:format(lang:getCategoryName(), canonical_name, lang:getCode(), ucfirst(canonical_name)))
	end
	
	-- Sort by canonical name.
	table.sort(
		output,
		function (label1, label2)
			return normalize(label1) < normalize(label2)
		end)
	
	return string.format("A modul által kezelt átírású nyelvek: %s.", mw.text.listToText(output))
end

return export