commit 60eecd314f3b5441b1718283e552e4ff810718d1
parent 33a99c6b59e363f9b1602360ce57e2430b03bf8f
Auteur: Loïc Daignault-Pichette <loic@asteride.xyz>
Date: Thu, 4 Dec 2025 18:38:55 -0500
[chm] Générer divers déclinaisons du tef
Diffstat:
5 fichiers modifiés, 35 insertions(+), 9 suppressions(-)
diff --git a/Makefile b/Makefile
@@ -55,7 +55,10 @@ tef/noms/noms.fst: tef/noms/realisation.fst
# ----
tef/orthographe.fst: tef/phonologie.def tef/verbes/verbes.fst tef/noms/noms.fst
-tef/mots.fst: tef/traits.def tef/orthographe.fst
+tef/mots_mrphm_prod.fst: tef/traits.def tef/morphemes.def tef/orthographe.fst
+tef/mots_prod.fst: tef/morphemes.def tef/mots_mrphm_prod.fst
+tef/mots_mrphm.fst: tef/mots_mrphm_prod.fst
+tef/mots.fst: tef/mots_prod.fst
# -----
# TESTS
diff --git a/tef/mots.xfst b/tef/mots.xfst
@@ -2,12 +2,6 @@
# MOTS
# ====
-load defined tef/traits.def
-load defined tef/morphemes.def
+define MotsProd @"tef/mots_prod.fst";
-define Orthographe @"tef/orthographe.fst";
-
-# Retirer les traits de base et accidentels des non absents.
-define Retirer [[] <- [TAcc|TBase] || .#. ~$["+Absent"] _] .o. Orthographe;
-
-regex ~$["+Absent"] .o. Retirer .o. [Traits -> []] .o. [Mrphm -> []];
+regex ~$["+Absent"] .o. MotsProd;
diff --git a/tef/mots_mrphm.xfst b/tef/mots_mrphm.xfst
@@ -0,0 +1,7 @@
+# ================
+# MOTS (MORPHÈMES)
+# ================
+
+define MotsMrphmProd @"tef/mots_mrphm_prod.fst";
+
+regex ~$["+Absent"] .o. MotsMrphmProd;
diff --git a/tef/mots_mrphm_prod.xfst b/tef/mots_mrphm_prod.xfst
@@ -0,0 +1,13 @@
+# ===========================
+# MOTS (MORPHÈMES, PRODUCTIF)
+# ===========================
+
+load defined tef/traits.def
+load defined tef/morphemes.def
+
+define Orthographe @"tef/orthographe.fst";
+
+# Retirer les traits de base et accidentels des non absents.
+define Retirer [[] <- [TAcc|TBase] || .#. ~$["+Absent"] _] .o. Orthographe;
+
+regex Retirer .o. [Traits -> []];
diff --git a/tef/mots_prod.xfst b/tef/mots_prod.xfst
@@ -0,0 +1,9 @@
+# ================
+# MOTS (PRODUCTIF)
+# ================
+
+load defined tef/morphemes.def
+
+define MotsMrphmProd @"tef/mots_mrphm_prod.fst";
+
+regex MotsMrphmProd .o. [Mrphm -> []];