|
|
| Line 190: |
Line 190: |
| ["dative"] = {short_form = "dat", link = "''[[dative case|dative]]''"}, | | ["dative"] = {short_form = "dat", link = "''[[dative case|dative]]''"}, |
| } | | } |
|
| |
| -- Make the table
| |
| function make_table(data)
| |
| local function repl(param)
| |
| if param == "info" then
| |
| return mw.getContentLanguage():ucfirst(data.info or "")
| |
| end
| |
|
| |
| local form = data.forms[param]
| |
|
| |
| if not form or #form == 0 then
| |
| return "—"
| |
| end
| |
|
| |
| local ret = {}
| |
|
| |
| for key, subform in ipairs(form) do
| |
| table.insert(ret, m_links.full_link({lang = lang, alt = "" .. subform}))
| |
| end
| |
|
| |
| return table.concat(ret, ", ")
| |
| end
| |
|
| |
| local numbers = {"sg", "pl"}
| |
| local cases = {"nom", "acc", "gen", "dat"}
| |
|
| |
| local wikicode = {}
| |
|
| |
| table.insert(wikicode, "{| class=\"inflection-table vsSwitcher mw-collapsible mw-collapsed\" data-toggle-category=\"inflection\" style=\"background: #FAFAFA; border: 1px solid #d0d0d0; text-align: left;\" cellspacing=\"1\" cellpadding=\"2\"")
| |
| table.insert(wikicode, "|- style=\"background: #FFCCCC;\"\n! class=\"vsToggleElement\" style=\"min-width: 41em;\" colspan=\"" .. (#numbers + 1) .. "\" | {{{info}}}")
| |
|
| |
| table.insert(wikicode, "|- class=\"vsHide\" style=\"background: #FFCCCC;\"")
| |
| table.insert(wikicode, "!")
| |
|
| |
| for _, number in ipairs(numbers) do
| |
| table.insert(wikicode, "! style=\"min-width: 11em; background: #FFCCCC;\" | " .. names[number])
| |
| end
| |
|
| |
| for _, case in ipairs(cases) do
| |
| table.insert(wikicode, "|- class=\"vsHide\" style=\"background-color: #FFF2F2;\"\n! style=\"min-width: 8em; background-color: #FFE6E6;\" | " .. names[case])
| |
|
| |
| for _, number in ipairs(numbers) do
| |
| table.insert(wikicode, "| {{{" .. case .. "_" .. number .. "}}}")
| |
| end
| |
| end
| |
|
| |
| table.insert(wikicode, "|}")
| |
|
| |
| wikicode = table.concat(wikicode, "\n")
| |
|
| |
| return (mw.ustring.gsub(wikicode, "{{{([a-z0-9_]+)}}}", repl))
| |
| end
| |
|
| |
| return export
| |