tef-innu

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

commit 8d5267e185f68ea29f86c811e5a4116cdb875c1b
parent 6046ad66bf6541fa20d349c16a9c2975694d8e89
Auteur: Loïc Daignault-Pichette <loic@asteride.xyz>
Date:   Thu, 21 May 2026 14:47:05 -0400

[chm] Supprimer un morphème grâce à une règle

La forme « iht » peut être obtenue régulièrement à partir de « it-it ».

Diffstat:
Mtef/morphemes.var | 3+--
Mtef/verbes/morphemes.xfst | 1-
Mtef/verbes/realisation.xfst | 11++++++-----
3 fichiers modifiés, 7 insertions(+), 8 suppressions(-)

diff --git a/tef/morphemes.var b/tef/morphemes.var @@ -24,8 +24,7 @@ define MNbNLc ["<NtrPl>"|"<ObvSg>"|"<ObvPl>"| # Suffixes de nombre non local "<NtrPlPass>"|"<ObvSgPass>"| "<ObvPlPass>"]; define MFus ["<1PlExConj>"|"<1PlInConj>"| # Morphèmes fusionnels - "<2PlConj>"|"<3PlConj>"| - "<NLcPlConj>"]; + "<2PlConj>"|"<3PlConj>"]; define MSN ["<PlA>"|"<ObvI>"|"<PlObv>"]; # Suffixes nominaux diff --git a/tef/verbes/morphemes.xfst b/tef/verbes/morphemes.xfst @@ -102,7 +102,6 @@ define CombMorphemes CombTraits .o. ["<NLcPass>" -> [] || _ ?* "+Dub" [~$["+2"] & ~$["+1"]] .#.] .o. ["<NLcPass>" -> "<LcPass>" || _ [$["+2"|"+1"] & $["+3"]]] .o. ["<NLc>" -> "<NLcConj>" || _ $["+Conj"]] - .o. ["<NLcConj>" -> "<NLcPlConj>" , "[NbNLc]" -> [] || _ $["+VAI"] $["+Conj"] $["+3"] $["+Pl"] $["+Ntr"]] # Choisir le suffixe de nombre local .o. ["[NbLc]" -> "<2Pl>" || _ [$["+2" "+Pl"] - $["+Ex"]] .#.] .o. ["[NbLc]" -> "<1Pl>" || _ [$["+1" "+Pl"] | $["+Ex"]] .#.] diff --git a/tef/verbes/realisation.xfst b/tef/verbes/realisation.xfst @@ -49,6 +49,7 @@ define RealMorphemes CombMorphemes .o. ["<NtrPl>" -> {a} "<NtrPl>" , "<NtrPlPass>" -> {a} "<NtrPlPass>" || _ $["+VII"]] .o. ["<NtrPlConj>" -> {i} "<NtrPlConj>" || _ $["+VII"]] + .o. ["<NtrPlConj>" -> {it} "<NtrPlConj>" || _ ~$["+VII"] .#.] .o. ["<NtrPl>" -> {at} "<NtrPl>" , "<NtrPlPass>" -> {at} "<NtrPlPass>" || _ ~$["+VII"] .#.] .o. ["<ObvSg>" -> {a} "<ObvSg>" , @@ -59,8 +60,7 @@ define RealMorphemes CombMorphemes # Morphèmes fusionnels .o. ["<1PlExConj>" -> {iat} "<1PlExConj>"] .o. ["<1PlInConj>" -> {iakᵘ} "<1PlInConj>"] - .o. ["<2PlConj>" -> {iekᵘ} "<2PlConj>"] - .o. ["<NLcPlConj>" -> {iht} "<NLcPlConj>"]; + .o. ["<2PlConj>" -> {iekᵘ} "<2PlConj>"]; define AltMorphemes RealMorphemes # Base @@ -80,7 +80,7 @@ define AltMorphemes RealMorphemes .o. [{e} -> [] || [{ei}|{ai}] Mrphm* _ \Mrphm* "<ThNLc>"] # Suffixe d’obviatif .o. [{i} -> [] || [Voy|n|ń] Mrphm* _ - \Mrphm* "<3Obv>" $[TVrbe - "+VTI"]] + \Mrphm* "<3Obv>" $[TVrbe - "+VTI"]] # Suffixes de personne .o. [\Mrphm+ -> [] || _ "<NLc>" Mrphm* \Mrphm* CMCNLc] .o. [{n} -> [] || [n|ń] Mrphm* _ \Mrphm* "<Lc>" TLex] @@ -108,7 +108,8 @@ define AltMorphemes RealMorphemes ["<ObvSgPass>"|"<ObvPlPass>"|"<NtrPlPass>" ?* "+VII"] , [n|ń] ["<DubPrésNLc>"|"<DubPrésLc>"] Mrphm* _ ["<ObvSg>"|"<ObvPl>"|"<NtrPl>"]] - # Morphèmes fusionnels - .o. [{i} -> [] || Voy Mrphm* _ \Mrphm* "<NLcPlConj>"]; + .o. [{i} -> [] || Voy Mrphm* _ \Mrphm* "<NtrPlConj>"] + .o. [{t} -> {h} || _ "<NLcConj>" {it} "<NtrPlConj>" ,, + {i} -> [] || {t} "<NLcConj>" _ {t} "<NtrPlConj>"]; push AltMorphemes