Mòdul:ca-verb/lluir

De Viccionari

La documentació d'ús d'aquest mòdul es pot crear a Mòdul:ca-verb/lluir/ús

-- Formes incoatives del verb lluir i derivats (entrelluir, relluir, traslluir).
local export = {}

local function llista_zones(llista, zona)
	local zones = {}
	for k, v in pairs(llista) do
		if zona[v == "or" and "ori" or v == "n-occ" and "nocc" or v] then
			table.insert(zones, v)
		end
	end
	return #zones > 3 and "" or table.concat(zones, ", ")
end

function export.make_irregulars(forma, zona)
	local radical = forma.inf:gsub("ir$", "")
	
	local fila = #forma["pres-ind"] + 1
	forma["pres-ind"][fila] = {}
	forma["pres-ind"][fila][1] = radical .. "eixo"
	forma["pres-ind"][fila][2] = radical .. "eixes"
	forma["pres-ind"][fila][3] = radical .. "eix"
	forma["pres-ind"][fila][6] = radical .. "eixen"
	fila = fila + 1
	
	if zona.bal then
		forma["pres-ind"][fila] = {}
		forma["pres-ind"][fila][1] = radical .. "esc"
		forma["pres-ind"][fila]["nota"] = "bal"
		fila = fila + 1
	end
	if zona.sept then
		forma["pres-ind"][fila] = {}
		forma["pres-ind"][fila][1] = radical .. "eixi"
		forma["pres-ind"][fila]["nota"] = "sept"
		fila = fila + 1
	end
	if zona.occ then
		forma["pres-ind"][fila] = {}
		forma["pres-ind"][fila][1] = radical .. "ïsc"
		forma["pres-ind"][fila][2] = radical .. "ïxes"
		forma["pres-ind"][fila][3] = radical .. "ïx"
		forma["pres-ind"][fila][6] = radical .. "ïxen"
		forma["pres-ind"][fila]["nota"] = "occ"
	end
	if zona.nocc then
		forma["pres-ind"][fila] = {}
		forma["pres-ind"][fila][1] = radical .. "ïxo"
		forma["pres-ind"][fila]["nota"] = "n-occ"
	end
	
	fila = #forma["pres-subj"] + 1
	forma["pres-subj"][fila] = {}
	forma["pres-subj"][fila][1] = radical .. "eixi"
	forma["pres-subj"][fila][2] = radical .. "eixis"
	forma["pres-subj"][fila][3] = radical .. "eixi"
	forma["pres-subj"][fila][6] = radical .. "eixin"
	fila = fila + 1
	
	if zona.occ then
		forma["pres-subj"][fila] = {}
		forma["pres-subj"][fila][1] = radical .. "ïsca"
		forma["pres-subj"][fila][2] = radical .. "ïsques"
		forma["pres-subj"][fila][3] = radical .. "ïsca"
		forma["pres-subj"][fila][6] = radical .. "ïsquen"
		forma["pres-subj"][fila]["nota"] = "occ"
		fila = fila + 1
	end
	
	if zona.bal then
		forma["pres-subj"][fila] = {}
		forma["pres-subj"][fila][1] = radical .. "esqui"
		forma["pres-subj"][fila][2] = radical .. "esquis"
		forma["pres-subj"][fila][3] = radical .. "esqui"
		forma["pres-subj"][fila][6] = radical .. "esquin"
		forma["pres-subj"][fila]["nota"] = "bal"
	end
	
	return forma
end

return export