Modul:Genitiv: Forskjell mellom sideversjoner
Hopp til navigering
Hopp til søk
(selvfølgelig omvendt) |
(nå dah...) |
||
Linje 8: | Linje 8: | ||
return "<strong class='error'>Malen «genitiv» må ha ett argument</strong>" |
return "<strong class='error'>Malen «genitiv» må ha ett argument</strong>" |
||
else |
else |
||
local str |
|||
return p._genitiv(ord) |
|||
return pcall(function(ord) str = p._genetiv(ord) end) and str or ord |
|||
end |
end |
||
end |
end |
||
Linje 14: | Linje 15: | ||
sv = "sxzşŝșšśßžżź" |
sv = "sxzşŝșšśßžżź" |
||
sb = mw.ustring.toNFC(mw.ustring.lower(mw.ustring.sub(ord, -1))) |
sb = mw.ustring.toNFC(mw.ustring.lower(mw.ustring.sub(ord, -1))) |
||
if mw.ustring.find( |
if mw.ustring.find(sb, '%W') then |
||
return ord .. " sin" |
|||
end |
|||
if mw.ustring.find(sv, sb, nil, true) then |
|||
return ord .. "'" |
return ord .. "'" |
||
else |
else |
Sideversjonen fra 8. feb. 2016 kl. 01:18
Formål
Denne modulen returnerer et ord i riktig genitivsform, avhengig av hvilken bokstav ordet slutter på. Se Mal:Genitiv for nærmere dokumentasjon.
Funksjoner
genitiv
: Brukes i {{genitiv}}_genitiv
: For bruk i andre moduler.
Brukes av
local p = {} function p.genitiv(frame) local pframe = frame:getParent() local args = pframe.args ord = args[1] if ord == nil then return "<strong class='error'>Malen «genitiv» må ha ett argument</strong>" else local str return pcall(function(ord) str = p._genetiv(ord) end) and str or ord end end function p._genitiv(ord) sv = "sxzşŝșšśßžżź" sb = mw.ustring.toNFC(mw.ustring.lower(mw.ustring.sub(ord, -1))) if mw.ustring.find(sb, '%W') then return ord .. " sin" end if mw.ustring.find(sv, sb, nil, true) then return ord .. "'" else return ord .. "s" end end return p