This is a private module sandbox of Undekagon30, for their own experimentation. Items in this module may be added and removed at Undekagon30's discretion; do not rely on this module's stability.
local export = {}
-- WIP: don't use this before it is officially approved
--[=[
Authorship: <undekagon30>
]=]
-- nom = nominative is the direct case
-- obl = oblique is the base for all other cases
local basic_cases = { "nom", "obl" }
local cases_with_abl_voc = { "nom", "obl", "dat_acc", "loc", "abl", "voc", "gen" }
-- numbers are sg = singular and pl = plural
local numbers = { "sg", "pl" }
-- ToDo: question how is this used exactly in the other modules like de???
local gender_spec_to_full_gender = {
m = "masculine",
f = "feminine",
n = "neuter",
}
-- ToDo: enum or function, what is better?
--local case_to_affixes = {
-- dat_acc: {sg:-la,pl:-la}
--}
-- Entry point for {{mr-ndecl}}.
-- Template-callable function to parse and decline a noun given
-- user-specified arguments and generate a displayable table
-- of the declined forms.
-- example: ToDo give an example here how it looks like
function export.new(frame)
local parent_args = frame:getParent().args
-- ???? todo understand the details and adapt it to marathi
--local alternant_multiword_spec = export.do_generate_forms(parent_args)
--show_forms(alternant_multiword_spec)
-- FIXME!
--alternant_multiword_spec.forms.decl_type = "foo"
--return make_table(alternant_multiword_spec) .. require("Module:utilities").format_categories(
-- alternant_multiword_spec.categories, lang, nil, nil, force_cat)
-- todo something
result = "abcdefg"
result = result .. " mama mia"
return result
end
return export