Module:mg-noun: Difference between revisions

No edit summary
No edit summary
 
(3 intermediate revisions by the same user not shown)
Line 74: Line 74:
-- make the table
-- make the table
return make_table(data)
return make_table(data, parent_args)
end
end


function make_table(data)
function make_table(data, args)


local function show_form(form)
local function show_form(form)
Line 124: Line 124:
for _, case in ipairs(cases) do
for _, case in ipairs(cases) do
local case_short = sub(case, 1, 2)
local case_short = sub(case, 1, 2)
local form_s = args[case_short .. '_s'] and {args[case_short .. '_s']} or data.forms[case_short .. '_s'] or nil
local form_p = args[case_short .. '_p'] and {args[case_short .. '_p']} or data.forms[case_short .. '_p'] or nil
table.insert(ret, '|- \n! ' .. case .. '\n')
table.insert(ret, '|- \n! ' .. case .. '\n')
table.insert(ret, '| ' .. link(show_form(data.forms[case_short .. '_s'])) .. '\n')
table.insert(ret, '| ' .. link(show_form(form_s)) .. '\n')
if not data.nopl then
if not data.nopl then
table.insert(ret, '| ' .. link(show_form(data.forms[case_short .. '_p'])) .. '\n')
table.insert(ret, '| ' .. link(show_form(form_p)) .. '\n')
end
end
end
end