Jump to content

Module:accel/es

From Wiktionary, the free dictionary

This module contains new entry creation rules for Spanish; see WT:ACCEL for an overview, and Module:accel for information on creating new rules.


return {generate = function (params, entry)
	-- special handling for female equivalents
	if params.pos == "noun" and params.form == "f" then
		entry.head = "{{es-noun|f}}"
		-- definition already correct
		return
	end
	-- special handling for verb forms
	local gerund_verb_spec = params.form:match("^gerund%-(.*)$")
	if gerund_verb_spec then
		entry.head = "{{head|es|gerund}}"
		entry.def = "{{es-verb form of|" .. gerund_verb_spec .. "}}"
		return
	end
	local verb_spec = params.form:match("^verb%-form%-(.*)$")
	if verb_spec then
		entry.def = "{{es-verb form of|" .. verb_spec .. "}}"
		return
	end
	-- special handling for participles and participle forms
	if params.form == "pp_ms" then
		entry.pos_header = "Participle"
		entry.head = "{{es-past participle}}"
		entry.def = "{{past participle of|es|" .. params.origin .. "}}"
	elseif params.form:find("^pp_") then
		entry.pos_header = "Participle"
		local form_of_template = {pp_fs = "feminine singular of", pp_mp = "masculine plural of", pp_fp = "feminine plural of"}
		local gender = {pp_fs = "f-s", pp_mp = "m-p", pp_fp = "f-p"}
		entry.head = "{{head|es|past participle form|g=" .. gender[params.form] .. "}}"
		entry.def = "{{" .. form_of_template[params.form] .. "|es|" .. params.target:gsub("[ao]s?$", "o") .. "}}"
	end
end}