Modul:Vzor scheuern
Vzhled
Dokumentaci tohoto modulu lze vytvořit na stránce Nápověda:Modul:Vzor scheuern
--pracuje se--
local p = {}
function p.vzor(frame)
local pargs = frame:getParent().args
local title = mw.title.getCurrentTitle()
local deklination = {"st","sw","mi"}
local gender = {{"s","m"},{"s","f"},{"s","n"},{"p",""}}
local casus = {"nom","gen","dat","acc"}
local artikel = {
["swsnomm"] = "der",
["swsgenm"] = "des",
["swsdatm"] = "dem",
["swsaccm"] = "den",
["swsnomf"] = "die",
["swsgenf"] = "der",
["swsdatf"] = "der",
["swsaccf"] = "die",
["swsnomn"] = "das",
["swsgenn"] = "des",
["swsdatn"] = "dem",
["swsaccn"] = "das",
["swpnom"] = "die",
["swpgen"] = "der",
["swpdat"] = "den",
["swpacc"] = "die",
["misnomm"] = "ein",
["misgenm"] = "eines",
["misdatm"] = "einem",
["misaccm"] = "einen",
["misnomf"] = "eine",
["misgenf"] = "einer",
["misdatf"] = "einer",
["misaccf"] = "eine",
["misnomn"] = "ein",
["misgenn"] = "eines",
["misdatn"] = "einem",
["misaccn"] = "ein",
["mipnom"] = "keine",
["mipgen"] = "keiner",
["mipdat"] = "keinen",
["mipacc"] = "keine",
}
local suffixA = {
["stsnomm"] = "er",
["stsgenm"] = "en",
["stsdatm"] = "em",
["stsaccm"] = "en",
["stsnomf"] = "e",
["stsgenf"] = "er",
["stsdatf"] = "er",
["stsaccf"] = "e",
["stsnomn"] = "es",
["stsgenn"] = "en",
["stsdatn"] = "em",
["stsaccn"] = "es",
["stpnom"] = "e",
["stpgen"] = "er",
["stpdat"] = "en",
["stpacc"] = "e",
["swsnomm"] = "e",
["swsgenm"] = "en",
["swsdatm"] = "en",
["swsaccm"] = "en",
["swsnomf"] = "e",
["swsgenf"] = "en",
["swsdatf"] = "en",
["swsaccf"] = "e",
["swsnomn"] = "e",
["swsgenn"] = "en",
["swsdatn"] = "en",
["swsaccn"] = "e",
["swpnom"] = "en",
["swpgen"] = "en",
["swpdat"] = "en",
["swpacc"] = "en",
["misnomm"] = "er",
["misgenm"] = "en",
["misdatm"] = "en",
["misaccm"] = "en",
["misnomf"] = "e",
["misgenf"] = "en",
["misdatf"] = "en",
["misaccf"] = "e",
["misnomn"] = "es",
["misgenn"] = "en",
["misdatn"] = "en",
["misaccn"] = "es",
["mipnom"] = "en",
["mipgen"] = "en",
["mipdat"] = "en",
["mipacc"] = "en",
}
local suffixV = {
["pr"] = {
["1s"] = "e",
["2s"] = "st",
["3s"] = "t",
["1p"] = "en",
["2p"] = "et",
["3p"] = "en",
},
["pt"] = {
["1s"] = "e",
["2s"] = "est",
["3s"] = "e",
["1p"] = "en",
["2p"] = "et",
["3p"] = "en",
},
}
local auTvary = {
["sein"] ={
["inf"] = "sein",
["papr"] = "gewesen",
["inpra"] = {
["1s"] = "bin",
["2s"] = "bist",
["3s"] = "ist",
["1p"] = "sind",
["2p"] = "seid",
["3p"] = "sind",
},
["inpta"] = {
["1s"] = "war",
["2s"] = "warst",
["3s"] = "war",
["1p"] = "waren",
["2p"] = "wart",
["3p"] = "waren",
},
["k1pra"] = {
["1s"] = "sei",
["2s"] = {"seist", "seiest",},
["3s"] = "sei",
["1p"] = "seien",
["2p"] = "seiet",
["3p"] = "seien",
},
["k2pta"] = {
["1s"] = "wäre",
["2s"] = {"wärst", "wärest",},
["3s"] = "wäre",
["1p"] = "wären",
["2p"] = {"wärt", "wäret",},
["3p"] = "wären",
},
},
["haben"] = {
["inf"] = "haben",
["papr"] = "gehabt",
["inpra"] = {
["1s"] = "habe",
["2s"] = "hast",
["3s"] = "hat",
["1p"] = "haben",
["2p"] = "habt",
["3p"] = "haben",
},
["inpta"] = {
["1s"] = "hatte",
["2s"] = "hattest",
["3s"] = "hatte",
["1p"] = "hatten",
["2p"] = "hattet",
["3p"] = "hatten",
},
["k1pra"] = {
["1s"] = "habe",
["2s"] = "habest",
["3s"] = "habe",
["1p"] = "haben",
["2p"] = "habet",
["3p"] = "haben",
},
["k2pta"] = {
["1s"] = "hätte",
["2s"] = "hättest",
["3s"] = "hätte",
["1p"] = "hätten",
["2p"] = "hättet",
["3p"] = "hätten",
},
},
["werden"] = {
["inf"] = "werden",
["papr"] = "worden",
["inpra"] = {
["1s"] = "werde",
["2s"] = "wirst",
["3s"] = "wird",
["1p"] = "werden",
["2p"] = "werdet",
["3p"] = "werden",
},
["inpta"] = {
["1s"] = "wurde",
["2s"] = "wurdest",
["3s"] = "wurde",
["1p"] = "wurden",
["2p"] = "wurdet",
["3p"] = "wurden",
},
["k1pra"] = {
["1s"] = "werde",
["2s"] = "werdest",
["3s"] = "werde",
["1p"] = "werden",
["2p"] = "werdet",
["3p"] = "werden",
},
["k2pta"] = {
["1s"] = "würde",
["2s"] = "würdest",
["3s"] = "würde",
["1p"] = "würden",
["2p"] = "würdet",
["3p"] = "würden",
},
},
}
local tvary = {}
local au = pargs["au"] or frame.args["au"] or"haben"
local wurzel = pargs[3] or frame.args[3] or mw.ustring.sub(title.fullText, 1, -2 )
local kurzwurzel = mw.ustring.sub(wurzel, 1, -3) .. mw.ustring.sub(wurzel, -1, -1)
if pargs[1] and (#pargs[1]>0) then
lzPrefix = " " .. pargs[1]
lzZu = "zu"
else
lzPrefix = ""
lzZu = "zu "
end
local papr = pargs["papr"] or (wurzel .. "nd")
local pape = pargs["pape"] or ((pargs[1] or frame.args[1] or "") .. (pargs[2] or frame.args[2] or "ge") .. wurzel .. "t")
local ifpra = pargs["ifpra"] or (wurzel .. "n")
table.insert(tvary,"==== časování ====\n{{Sloveso (de)\n")
table.insert(tvary," | au = " .. au .. "\n")
for i,v in pairs(suffixV["pr"]) do
table.insert(tvary," | inpra" .. i .. " = " .. wurzel .. v .. lzPrefix)
if i == "s1" then
table.insert(tvary," / " .. kurzwurzel .. v .. lzPrefix .. " / " .. wurzel .. lzPrefix .. "\n")
else
table.insert(tvary,"\n")
end
end
for i,v in pairs(suffixV["pt"]) do
table.insert(tvary," | inpta" .. i .. " = " .. wurzel .."t" .. v .. lzPrefix .. "\n")
end
for i,v in pairs(auTvary[au]["inpra"]) do
table.insert(tvary," | inpea" .. i .. " = " .. v .. " " .. pape .. "\n")
end
for i,v in pairs(auTvary[au]["inpta"]) do
table.insert(tvary," | inpla" .. i .. " = " .. v .. " " .. pape .. "\n")
end
for i,v in pairs(auTvary["werden"]["inpra"]) do
table.insert(tvary," | inf1a" .. i .. " = " .. v .. " " .. ifpra .. "\n")
end
for i,v in pairs(auTvary["werden"]["inpra"]) do
table.insert(tvary," | inf2a" .. i .. " = " .. v .. " " .. pape .. " " .. au .. "\n")
end
for i,v in pairs(suffixV["pt"]) do
table.insert(tvary," | k1pra" .. i .. " = " .. wurzel .. v .. lzPrefix .. "\n")
end
for i,v in pairs(auTvary[au]["k1pra"]) do
table.insert(tvary," | k1pea" .. i .. " = " .. v .. " " .. pape .. "\n")
end
for i,v in pairs(auTvary["werden"]["k1pra"]) do
table.insert(tvary," | k1f1a" .. i .. " = " .. v .. " " .. ifpra .. "\n")
end
for i,v in pairs(auTvary["werden"]["k1pra"]) do
table.insert(tvary," | k1f2a" .. i .. " = " .. v .. " " .. pape .. " " .. au .. "\n")
end
for i,v in pairs(suffixV["pt"]) do
table.insert(tvary," | k2pta" .. i .. " = " .. wurzel .. "t" .. v .. lzPrefix .. "\n")
end
for i,v in pairs(auTvary[au]["k2pta"]) do
table.insert(tvary," | k2pla" .. i .. " = " .. v .. " " .. pape .. "\n")
end
for i,v in pairs(auTvary["werden"]["k2pta"]) do
table.insert(tvary," | k2f1a" .. i .. " = " .. v .. " " .. ifpra .. "\n")
end
for i,v in pairs(auTvary["werden"]["k2pta"]) do
table.insert(tvary," | k2f2a" .. i .. " = " .. v .. " " .. pape .. " " .. au .. "\n")
end
table.insert(tvary," | impra2s = " .. wurzel .. "e / " .. kurzwurzel .. "e / " .. wurzel .. "\n")
table.insert(tvary," | impra2p = " .. wurzel .. "t\n")
table.insert(tvary," | impra3p = " .. wurzel .. "n Sie\n")
table.insert(tvary," | ifpra = " .. ifpra .. "\n")
table.insert(tvary," | ifpea = " .. pape .. " " .. au.. "\n")
table.insert(tvary," | iff1a = " .. ifpra .. " werden\n")
table.insert(tvary," | iff2a = " .. pape .. " " .. au.. " werden\n")
for _ ,vD in ipairs(deklination) do
for _ ,vG in ipairs(gender) do
for _ ,vC in ipairs(casus) do
table.insert(tvary," | papr" .. vD .. vG[1] .. vC .. vG[2] .. " = " .. (artikel[vD .. vG[1] .. vC .. vG[2]] or "") .. " " .. papr .. suffixA[vD .. vG[1] .. vC .. vG[2]] .. "\n")
end
end
end
for i,v in pairs(suffixA) do
table.insert(tvary," | pape" .. i .. " = " .. (artikel[i] or "") .. " " .. pape.. v .. "\n")
end
for i,v in pairs(suffixA) do
table.insert(tvary," | ge" .. i .. " = " .. (artikel[i] or "") .. " " .. (pargs[1] or "")..lzZu .. wurzel .. "nd" .. v .. "\n")
end
result = table.concat(tvary) .. "}}\n"
return result
end
return p