Module:siwa-noun: Difference between revisions

No edit summary
No edit summary
Line 159: Line 159:
end
end


function export.make_cases(data, animacy)
function export.make_cases(data)
local cases = {"inessive", "illative", "elative", "adessive", "allative", "ablative"}
local cases = {"inessive", "illative", "elative", "adessive", "allative", "ablative"}
local all = {"u", "m"}
local all = {"u", "m"}
local numbers = {"singular", "plural"}
local numbers = {"singular", "plural"}; local numbers_short = {"sg", "pl"}
local ret = {}
local ret = {}
for _, case in ipairs(cases) do
if data.g == "i" then
local case_short = sub(case, 1, 3)
for _, case in ipairs(cases) do
table.insert(ret, "! " .. case .. "\n")
local case_short = sub(case, 1, 3)
table.insert(all, case_short)
table.insert(ret, "! " .. case .. "\n")
end
table.insert(all, case_short)
table.insert(ret, "|-\n")
end
for _, single in ipairs(all) do
table.insert(ret, "|-\n")
table.insert(ret, "| " .. link(show_form(data.forms[single])) .. "\n")
for _, single in ipairs(all) do
table.insert(ret, "| " .. link(show_form(data.forms[single])) .. "\n")
end
else
for _, single in ipairs(all) do
for n, number in ipairs(numbers) do
table.insert(ret, "! " .. number .. "\n")
table.insert(ret, "| " .. link(show_form(data.forms[single .. number_short[n]])) .. "\n")
end
end
end
end