Module:br-pronominal

Définition, traduction, prononciation, anagramme et synonyme sur le dictionnaire libre Wiktionnaire.
Ce module permet de générer la forme pronominale d’un verbe en breton avec la mutation adéquate si nécessaire.

Il est utilisé dans le modèle {{lien pronominal}} pour lequel in a été créé.

Fonction utilisable dans un modèle ou dans une page

pronominal
affiche la forme pronominale du verbe donné en argument
  • {{#invoke:br-pronominal|pronominal|kavout}} affiche « en em gavout »
  • {{#invoke:br-pronominal|pronominal|soñjal}} affiche « en em soñjal »

info Documentation du Module:br-pronominal : v · d · m · h.


--============================================================================--
-- Module:br-pronominal : génération de la forme pronominale d'un verbe en    --
--                        breton avec la mutation adéquate si nécessaire      --
--------------------------------------------------------------------------------
-- auteurs principaux : Yun                                                   --
-- licence :
--============================================================================--
local p={}

local function lenition(lettre) -- lénition - mutation adoucissante
  if lettre == "p" then
    return "b"
  elseif lettre == "b" then
    return "v"
  elseif lettre == "m" then
    return "v"
  elseif lettre == "t" then
    return "d"
  elseif lettre == "d" then
    return "z"
  elseif lettre == "k" then
    return "g"
  elseif lettre == "g" then
    return "cʼh"
  else
    return lettre  -- pas de mutation
  end
end

function p.pronominal(frame)
	local verbe = frame.args[1]
	if mw.ustring.sub(verbe,1,2) == "gw" then
		return "en em " .. mw.ustring.sub(verbe,2)
	elseif mw.ustring.sub(verbe,1,3) == "gou" and ( mw.ustring.sub(verbe,4,4) == "a" or mw.ustring.sub(verbe,4,4) == "e" or mw.ustring.sub(verbe,4,4) == "i ") then
		return "en em ou" .. mw.ustring.sub(verbe,4)
	else 
		return "en em " .. lenition(mw.ustring.sub(verbe,1,1)) .. mw.ustring.sub(verbe,2)
	end
end

return p