Modul:LateinUtils
Aus KGS-Wiki
Die Dokumentation für dieses Modul kann unter Modul:LateinUtils/Doku erstellt werden
local p = {}
p.KASUS = {'Nominativ', 'Genitiv', 'Dativ', 'Akkusativ', 'Ablativ', 'Vokativ'}
p.NUMERI = {S = 'Singular', P = 'Plural'}
p.NABBRV = {S = 'Sg.', P = 'Pl.'}
p.STUFEN = {p = "[[Positiv (Steigerungsform|]]", k = "[[Komparativ]]", s = "[[Superlativ]]"}
p.GENERA = {m = 'maskulinum', f = 'femininum', n = 'neutrum'}
p.DEKLS = {
o = {
m = {
S = {'', 'i', 'o', 'um', 'o', 'e'};
P = {'i', 'orum', 'is', 'os', 'is'}
};
f = {
S = {'', 'i', 'o', 'um', 'o'};
P = {'i', 'orum', 'is', 'os', 'is'}
};
n = {
S = {'', 'i', 'o', 'um', 'o'};
P = {'a', 'orum', 'is', 'a', 'is'}
};
name = 'o-Deklination'
};
a = {
m = {
S = {'', 'ae', 'ae', 'am', 'ā'};
P = {'ae', 'arum', 'is', 'as', 'is'}
};
f = {
S = {'', 'ae', 'ae', 'am', 'ā'};
P = {'ae', 'arum', 'is', 'as', 'is'}
};
n = {
S = {'', 'ae', 'ae', 'am', 'ā'};
P = {'ae', 'arum', 'is', 'as', 'is'}
};
name = 'a-Deklination'
};
k = {
m = {
S = {'', 'is', 'i', 'em', 'e'};
P = {'es', 'um', 'ibus', 'es', 'ibus'}
};
f = {
S = {'', 'is', 'i', 'em', 'e'};
P = {'es', 'um', 'ibus', 'es', 'ibus'}
};
n = {
S = {'', 'is', 'i', 'em', 'e'};
P = {'a', 'um', 'ibus', 'a', 'ibus'}
};
name = '3. Deklination'
};
e = {
m = {
S = {'', 'ei', 'ei', 'em', 'e'};
P = {'es', 'erum', 'ebus', 'es', 'ebus'}
};
f = {
S = {'', 'ei', 'ei', 'em', 'e'};
P = {'es', 'erum', 'ebus', 'es', 'ebus'}
};
n = {
S = {'', 'ei', 'ei', 'em', 'e'};
P = {'es', 'erum', 'ebus', 'es', 'ebus'}
};
name = 'e-Deklination'
};
i = {
m = {
S = {'', 'is', 'i', 'em', 'i'};
P = {'es', 'ium', 'ibus', 'es', 'ibus'}
};
f = {
S = {'', 'is', 'i', 'em', 'i'};
P = {'es', 'ium', 'ibus', 'es', 'ibus'}
};
n = {
S = {'', 'is', 'i', 'em', 'i'};
P = {'ia', 'ium', 'ibus', 'ia', 'ibus'}
};
name = 'i-Deklination'
};
u = {
m = {
S = {'', 'ūs', 'ui', 'um', 'u'};
P = {'ūs', 'uum', 'ibus', 'ūs', 'ibus'}
};
f = {
S = {'', 'ūs', 'ui', 'um', 'u'};
P = {'ūs', 'uum', 'ibus', 'ūs', 'ibus'}
};
n = {
S = {'', 'ūs', 'ui', 'u', 'u'};
P = {'ūa', 'uum', 'ibus', 'ūa', 'ibus'}
};
name = 'u-Deklination'
}
}
function p.renderTemplate(name, params)
local frame = mw.getCurrentFrame()
local templateText
if mw.isSubsting() then
table.sort(params)
templateText = '{{' .. name
for k,v in pairs(params) do
templateText = templateText .. '|' .. k .. '=' .. v
end
templateText = templateText .. '}}'
else
templateText = frame:expandTemplate({title=name, args=params})
end
return templateText
end
function p.enclose(text)
return tostring(mw.html.create('span'):attr('lang', 'la'):wikitext(text))
end
function p.setIfPossible(maybeArray,index,value)
if maybeArray then
maybeArray[index] = value
end
end
function p.addCampusCategoryIfSet(lesson)
if lesson and tonumber(lesson) ~= 0 and lesson ~= '' then
return '[[Kategorie:Campus Lektion ' .. lesson .. ']]\n'
end
return ''
end
function p.parseArray(frame)
res = {}
for k, v in string.gmatch(frame.args[1], "([^,]+):([^,]+)") do
res[k] = v
end
return mw.af.export(res)
end
function p.renderLernformen(formen, erklaerung)
local innerDiv = mw.html.create('div')
:attr('class', 'mw-collapsible-content')
:wikitext(erklaerung)
local outerDiv = mw.html.create('div')
:attr('class', 'mw-collapsible mw-collapsed')
:attr('data-expandtext', 'Was heißt das?')
:attr('data-collapsetext', 'Erklärung verbergen')
:wikitext(formen .. tostring(innerDiv))
return outerDiv
end
return p