Moduuli:sanarivi/fr

Wikisanakirjasta

Tämän moduulin ohjeistuksen voi tehdä sivulle Moduuli:sanarivi/fr/ohje

local p = {}

local kielilinkki = require("Moduuli:Kielilinkki")

p["järjestysluku"] = function (frame, luokat)
    local pagename = frame.args[2] or mw.title.getCurrentTitle().text
    
    local sanariviElem = mw.html.create('b')
        :attr("lang", "fr")
        :attr("class", "hakusana Latn")
        :node(pagename)
        :done()
    
    local feminiini = frame.args.f
    if not feminiini then
        local suku_mf = frame:expandTemplate{ ['title'] = 'suku-teksti', ['args'] = { "mf" } }
        local mon_lnk = kielilinkki.linkki_tai_nil{
	    kieli = "fr",
	    kohde = pagename .. "s",
	    elem   = "b", 
	    kuvaus = "mon-mf"
        }
        
        return tostring(sanariviElem) .. " " .. suku_mf .. " (''monikko'' " .. mon_lnk .." " .. suku_mf .. ")" .. luokat.hae()
    else
        local suku_m    = frame:expandTemplate{ ['title'] = 'suku-teksti', ['args'] = { "m" } }
        local suku_f    = frame:expandTemplate{ ['title'] = 'suku-teksti', ['args'] = { "f" } }
        local mon_m_lnk = kielilinkki.linkki_tai_nil{
            kieli  = "fr",
            kohde  = pagename .. "s",
            elem   = "b", 
            kuvaus = "mon-m"
        }
        
        local mon_f_lnk = kielilinkki.linkki_tai_nil{
            kieli  = "fr",
            kohde  = feminiini .. "s",  
            elem   = "b", 
            kuvaus = "mon-f"
        }
        
        local f_lnk = kielilinkki.linkki_tai_nil{
            kieli = "fr",
            kohde = feminiini, 
            elem   = "b", 
            kuvaus = "yks-f"
        }
        
        return tostring(sanariviElem) .. " " .. suku_m .. " " ..  f_lnk .. " " .. suku_f .. " (''monikko'' " .. mon_m_lnk .. " " .. suku_m .. ", " .. mon_f_lnk .. " " .. suku_f .. ")" .. luokat.hae()
    end
end

return p