Module:conjugaisons/group3-templates/Documentation
Ceci est la page de documentation pour Module:conjugaisons/group3-templates
Ce module est une dépendance du module conjugaisons/group3-templates. Il définit des modèles de verbes français du troisième groupe.
La table retournée par ce module contient des modèles de conjugaisons sous la forme suivante. Chaque clé représente le nom du modèle. La table associée contient deux entrées : ending
et endings
. La première définit la terminaison qu’un verbe doit posséder pour que ce modèle soit utilisé. La seconde est une table qui contient les terminaisons du modèle en question pour tous les temps simples. Sa structure est la suivante :
{
participe = {
present = { "" },
passe = { "" },
},
indicatif = {
present = { "", "", "", "", "", "" },
imparfait = { "", "", "", "", "", "" },
passeSimple = { "", "", "", "", "", "" },
futur = { "", "", "", "", "", "" },
},
subjonctif = {
present = { "", "", "", "", "", "" },
imparfait = { "", "", "", "", "", "" },
},
conditionnel = {
present = { "", "", "", "", "", "" },
},
imperatif = {
present = { "", "", "" },
},
}
Chaque chaîne ""
de cette table doit être remplacée par la terminaison correspondante.
Par exemple, les verbes se terminant en « -clure » se conjuguent de la même manière que « inclure ». L’entrée correspondante serait donc la suivante :
["inclure"] = {
ending = "clure", -- Terminaison de l’infinitif pour la détection automatique
endings = { -- Terminaisons pour chaque flexion simple
participe = {
present = { "cluant" },
passe = { "clus" },
},
indicatif = {
present = { "clus", "clus", "clut", "cluons", "cluez", "cluent" },
imparfait = { "clais", "cluais", "clait", "cluions", "cluiez", "cluaient" },
passeSimple = { "clus", "clus", "clut", "clûmes", "clûtes", "clurent" },
futur = { "clurai", "cluras", "clura", "clurons", "clurez", "cluront" },
},
subjonctif = {
present = { "clue", "clues", "clue", "cluions", "cluiez", "cluent" },
imparfait = { "clusse", "clusses", "clût", "clussions", "clussiez", "clussent" },
},
conditionnel = {
present = { "clurais", "clurais", "clurait", "clurions", "cluriez", "cluraient" },
},
imperatif = {
present = { "clus", "cluons", "cluez" },
},
},
}
La terminaison de l’infinitif est générée automatiquement à partir de la valeur de ending
.
Certains modèles représentent des variantes d’un autre et présentent donc la même valeur de ending
. Dans ce cas, pour éviter les ambigüités, il faut ajouter une propriété ignore_auto = true
dans la table pour le rendre inaccessible à la détection automatique. Le modèle ne pourra alors être utilisé uniquement avec le paramètre modèle
de la fonction p.conj()
dans Module:conjugaisons. Un exemple est disponible dans le modèle "ouïr-oirai"
. Plusieurs variantes de modèles sont définies après la table data
, en copiant un modèle existant et en modifiant certaines flexions.
La fonction stripICirc()
permet de créer un nouveau modèle à partir d’un modèle préexistant en y remplaçant les ‹ î › par des ‹ i ›. Cette fonction est utile par exemple pour générer rapidement les terminaisons d’une forme rectifée de 1990 à partir de la forme historique. Par exemple, le modèle "paitre"
est généré ainsi à partir du modèle "paître"
. Cette fonction est très basique et remplacera aussi les ‹ î › des terminaisons du passé simple et du subjonctif, qu’il faudra donc corriger après appel (cf. modèle "naitre"
par exemple).
La boucle for
située avant la fonction stripICirc()
génère la terminaison de l’infinitif à partir de la valeur de ending
pour chaque modèle défini avant.
La documentation de ce module est générée par le modèle {{Documentation module}}.
Elle est incluse depuis la page Module:conjugaisons/group3-templates/Documentation. Veuillez placer les catégories sur cette page-là.
Les éditeurs peuvent travailler dans le bac à sable (créer).
Voir les statistiques d'appel depuis le wikicode sur l'outil wstat et les appels depuis d'autres modules.