tef-innu

Transducteur à états finis de l’innu
git clone git://git.asteride.xyz/tef-innu.git
Journaux | Fichiers | Références

commit 0b8852370c182cf0eb4c0214297567dd120d7d33
parent 70a29d57023b5553c283a0ff55bee935922d16b5
Auteur: Loïc Daignault-Pichette <loic@asteride.net>
Date:   Sat,  8 Aug 2026 12:17:52 -0400

[chm] Ajouter l’impératif passé des VAI

Diffstat:
Mtef/morphemes.var | 3++-
Mtef/phonologie.var | 16+++++++++-------
Mtef/verbes/lexique.xfst | 23+++++++++++++----------
Mtef/verbes/morphemes.xfst | 6++++--
Mtef/verbes/realisation.xfst | 3+++
5 fichiers modifiés, 31 insertions(+), 20 suppressions(-)

diff --git a/tef/morphemes.var b/tef/morphemes.var @@ -10,7 +10,8 @@ define MThDec ["<ThDec>"|"<ThDec2>"]; # Thèmes de décalage define MThDir ["<ThLcI>"|"<ThMxt>"|"<ThI>"| # Thèmes de direction "<ThNLc>"|"<ThAmu>"|"<ThAm>"| "<ThAmu2>"|"<ThI2>"|"<ThLcImp>"| - "<ThLcImp2>"]; + "<ThLcImp2>"|"<ThLcImpPas>"| + "<ThLcImpPas2>"]; define MObv ["<3Obv>"]; # Suffixe d’obviativité define MSPers ["<Lc>"|"<NLc>"| # Suffixes de personne "<1SgConj>"|"<2SgConj>"| diff --git a/tef/phonologie.var b/tef/phonologie.var @@ -8,21 +8,23 @@ # VOYELLES # -------- -define VoyCourte [a|i|u]; -define VoyLongue [â|î|e|û]; -define VoyAcc [â|î|û]; -define Voy [VoyCourte|VoyLongue|ᵘ]; +define VoyCourte [a|i|u]; # Voyelle courte +define VoyLongue [â|î|e|û]; # Voyelle longue +define VoyAcc [â|î|û]; # Voyelle accentuée +define Voy [VoyCourte|VoyLongue|ᵘ]; # Voyelle -define SemiVoy [i|î|u|û]; +define SemiVoy [i|î|u|û]; # Semi-voyelle # --------- # CONSONNES # --------- -define Cons [h|k|m|n|ń|p|s|t]; +define Cons [h|k|m|n|ń|p|s|t]; # Consonne # ------- # LETTRES # ------- -define Lettre [Voy|Cons]; +define Lettre [Voy|Cons]; # Lettre +define LettreAcc [VoyAcc]; # Lettre accentuée +define LettreOrtho [Lettre-LettreAcc]; # Lettre de l’orthographe innue diff --git a/tef/verbes/lexique.xfst b/tef/verbes/lexique.xfst @@ -8,20 +8,23 @@ load defined tef/phonologie.def load defined tef/traits.def define Lexique [@stxt"tef/verbes/lexique.lexs" - .o. [[..] -> ["+e"|"+o"] || _ "+Run"] - .o. [[..] -> "+Ru" || "+e" ?* _ ?* "+Run"] - .o. [{n} -> [] || _ \Lettre* "+e" ?* "+Run"]].l; + # Les verbes en « +Run » n’existent que dans l’ouest. Leurs homologues + # en « +Ru » n’existent que dans l’est. + .o. [[..] -> ["+e"|"+o"] || _ "+Run"] + .o. [[..] -> "+Ru" || "+e" ?* _ ?* "+Run"] + .o. [{n} -> [] || _ \LettreOrtho* "+e" ?* "+Run"]].l; +# Créer le lexique productif define Productifs [ - [[Lettre-{ᵘ}]-VoyAcc]* [Lettre-VoyAcc] "+Prod" - (TRacineV) (TFlexV) (TADial) (TImpers) - ["+VII"|"+VAI"|"+VTI"|"+VTA"]]; + [LettreOrtho-ᵘ]* LettreOrtho "+Prod" + (TId) (TRacineV) (TFlexV) (TADial) (TImpers) + ["+VII"|"+VAI"|"+VTI"|"+VTA"]]; define Lexique [Lexique|Productifs] TDial - # Certaines racines sont spécifiques à l’Est. - - [$["+e"] - $["+Est"]] - # Certaines racines sont spécifiques à l’Ouest. - - [$["+o"] - $["+Ouest"]]; + # Certaines racines sont spécifiques à l’Est. + - [$["+e"] - $["+Est"]] + # Certaines racines sont spécifiques à l’Ouest. + - [$["+o"] - $["+Ouest"]]; # Ajouter le trait facultatif de longueur de la voyelle initiale. read regex [Lexique .o. [[..] (->) TVILngr || _ TVrbe]].l; diff --git a/tef/verbes/morphemes.xfst b/tef/verbes/morphemes.xfst @@ -159,8 +159,10 @@ define CombMorphemes CombTraits _ $["+u"] $["+Conj"] $["+Ntr"] $["+Ex"] , _ $["+u"] $["+Est"] $["+Conj"] $["+Obv"] $["+Ex"]] # Choisir le thème - .o. ["[ThDir]" -> "<ThLcImp>" || _ $["+VAI"] $["+Imp"] $[["+2"|"+1"]]] - .o. ["[ThDir]" -> "<ThLcImp2>" || _ $["+VTA"] $["+Imp"] [$["+2"] & $["+1"]]] + .o. ["[ThDir]" -> "<ThLcImp>" || _ $["+VAI"] $["+Imp"] $["+Prés"] $[["+2"|"+1"]]] + .o. ["[ThDir]" -> "<ThLcImp2>" || _ $["+VTA"] $["+Imp"] $["+Prés"] [$["+2"] & $["+1"]]] + .o. ["[ThDir]" -> "<ThLcImpPas>" || _ $["+VAI"] $["+Imp"] $["+Pas"] $[["+2"|"+1"]]] + .o. ["[ThDir]" -> "<ThLcImpPas2>" || _ $["+VTA"] $["+Imp"] $["+Pas"] [$["+2"] & $["+1"]]] .o. ["[ThDir]" -> "<ThMxt>" || _ $["+VTI"] $["+Imp"] $["+2" "+Sg"]] .o. ["[ThDir]" -> "<ThAmu>" || _ $["+VTI"] $["+Est"] $["+Imp"] $["+In"]] .o. ["[ThDir]" -> "<ThNLc>" || _ $["+VTI"] $["+Ouest"] $["+Imp"] $["+In"]] diff --git a/tef/verbes/realisation.xfst b/tef/verbes/realisation.xfst @@ -41,6 +41,8 @@ define RealMorphemes CombMorphemes .o. ["<ThAm>" -> {am} "<ThAm>"] .o. ["<ThLcImp>" -> {in} "<ThLcImp>"] .o. ["<ThLcImp2>" -> {in} "<ThLcImp2>"] + .o. ["<ThLcImpPas>" -> {i} "<ThLcImpPas>"] + .o. ["<ThLcImpPas2>" -> {i} "<ThLcImpPas2>"] # Suffixe d’obviation .o. ["<3Obv>" -> {iń} "<3Obv>"] # Suffixes de personne @@ -148,6 +150,7 @@ define AltMorphemes RealMorphemes .o. [{i} -> [] || [Voy] Mrphm* _ \Mrphm* "<ThLcImp>" Mrphm* \Mrphm+ Mrphm] .o. [{i} -> [] || [Voy] Mrphm* _ \Mrphm* "<ThLcImp2>" Mrphm* \Mrphm+ Mrphm] .o. [{i} -> [] || [ń] Mrphm* _ \Mrphm* "<ThLcImp2>" Mrphm* Voy] + .o. [{i} -> [] || [e|â|î|i] Mrphm* _ \Mrphm* "<ThLcImpPas>"] # Suffixe d’obviatif .o. [{i} -> [] || [Voy|n|ń] Mrphm* _ \Mrphm* "<3Obv>" $[TVrbe - "+VTI"]]