Difference between revisions 40186 and 40187 on test2wiki

-- This is a test of scribbling. Using Italian templates from en.wiktionary.
-- Owner SemperBlotto
local p = {}

function p.itadj(frame)
    local pframe = frame:getParent()
    local args = pframe.args
    local stem = args[1] or error("1st parameter (stem of adjective) missing!")
(contracted; show full)
    local prem1p2 = p.wiki(args["prem1p2"]); local prem2p2 = p.wiki(args["prem2p2"]); local prem3p2 = p.wiki(args["prem3p2"])
    prem1s = p.alts(prem1s, prem1s2); prem2s = p.alts(prem2s, prem2s2); prem3s = p.alts(prem3s, prem3s2)
    prem1p = p.alts(prem1p, prem1p2); prem2p = p.alts(prem2p, prem2p2); prem3p = p.alts(prem3p, prem3p2)
-- Some extra alternatives
    local prem1s3 = p
,.wiki(args["prem1s3"]); prem1s = p.alts(prem1s, prem1s3)
    local prem3s3 = p,.wiki(args["prem3s3"]); prem1s = p.alts(prem3s, prem3s3)
-- Future
    local fut1s = p.wiki(args["fut1s"]); local fut2s = p.wiki(args["fut2s"]); local fut3s = p.wiki(args["fut3s"])
    local fut1p = p.wiki(args["fut1p"]); local fut2p = p.wiki(args["fut2p"]); local fut3p = p.wiki(args["fut3p"])
(contracted; show full)
    local imp2s2 = p.wiki(args["imp2s2"]); local imp3s2 = p.wiki(args["imp3s2"])
    local imp1p2 = p.wiki(args["imp1p2"]); local imp2p2 = p.wiki(args["imp2p2"]); local imp3p2 = p.wiki(args["imp3p2"])
    imp2s = p.alts(imp2s, imp2s2); imp3s = p.alts(imp3s, imp3s2)
    imp1p = p.alts(imp1p, imp1p2); imp2p = p.alts(imp2p, imp2p2); imp3p = p.alts(imp3p, imp3p2)
-- An extra alternative
    local imp2s3 = p
,.wiki(args["imp2s3"]); imp2s = p.alts(imp2s, imp2s3)
-- See if reflexive
    local mi = args["mi"] or " "; local ti = args["ti"] or " "; local si = args["si"] or " "; local ci = args["ci"] or " "; local vi = args["vi"] or " " 
    if mi ~= nil then mi = mi .. " "; ti = ti .." "; si = si .. " "; ci = ci .. " "; vi = vi .. " "; end
(contracted; show full)    conj = conj .. '|' .. ti .. imp2s .. '\n|' .. si .. imp3s .. '\n|' .. ci .. imp1p .. '\n|' .. vi .. imp2p .. '\n|' .. si .. imp3p .. '\n'
    conj = conj .. '|-\n'    
    conj = conj .. '|}</div></div>'
    return conj
    
end

return p