Mòdul:eu-lema
A continuació es mostra la documentació transclosa de la subpàgina /ús. [salta a la caixa de codi]
Aquest mòdul presenta la capçalera d’una entrada en basc. Actualment dóna suport a les plantilles {{eu-nom}} i {{eu-nom propi}}. Vegeu la documentació de les plantilles per a la seva utilització.
local p = {}
local m_headword = require("Mòdul:lema")
local lang = {code = "eu", name = "basc", sc = "Latn"}
local pos_functions = {}
-- Funció d'entrada, l'única que s'invoca des d'una plantilla
function p.flex(frame)
local args = frame:getParent().args
pagename = args.pagename
if not pagename or pagename == "" then
pagename = mw.title.getCurrentTitle().subpageText
end
local data = {lang = lang, heads = {}, categories = {}, genders = {}}
local lema = args.lema; if lema == "" then lema = nil end
table.insert(data.heads, lema)
local poscat = frame.args[1] or error("Falta especificar la categoria lèxica com a primer paràmetre.")
if pos_functions[poscat] then
pos_functions[poscat].func(args, data)
else
table.insert(data.categories, poscat .. " en " .. lang.name)
end
if args.cat and args.cat ~= "" then
table.insert(data.categories, args.cat)
end
return m_headword.full_headword(data)
end
-- Informació per a substantius
pos_functions["Substantius"] = {func = function(args, data)
local genders = mw.text.split(args[1] or "", "/")
for _, g in ipairs(genders) do
local gender = string.gsub(g, "i$", "indef")
table.insert(data.genders, gender)
end
if mw.ustring.find(pagename, "[^ ]+ [^ ]+") then
table.insert(data.categories, "Locucions nominals en basc")
else
table.insert(data.categories, "Substantius en basc")
end
return
end
}
-- Informació per a noms propis
pos_functions["Noms propis"] = {func = function(args, data)
local genere = args[1] or ""
table.insert(data.genders, (genere == "" and "?" or genere))
table.insert(data.categories, "Noms propis en basc")
return
end
}
return p