commit bd5d515aca37b7e21c9f5dffa4883085057ea9a2
parent b2931c5f46461eafd24a4a01e1d958fe5cef4a16
Auteur: Loïc Daignault-Pichette <loic@asteride.xyz>
Date: Wed, 3 Dec 2025 19:40:21 -0500
[sty] Réorganiser les fichiers de compilation
Diffstat:
11 fichiers modifiés, 67 insertions(+), 69 suppressions(-)
diff --git a/Makefile b/Makefile
@@ -18,21 +18,23 @@
.att.ext:
bin/extension.py "$<" | sort > "$@"
-tous: tef/verbes/verbes.fst tef/noms/noms.fst web
+# ------
+# DÉFAUT
+# ------
+
+tous: tef/mots.fst web
# ------
# VERBES
# ------
-tef/verbes/lexique.fst: tef/verbes/lexique.lex tef/phonologie.def
+tef/verbes/lexique.fst: tef/phonologie.def tef/verbes/lexique.lex
tef/verbes/tractuel.fst: tef/traits.def tef/verbes/lexique.fst
tef/verbes/morphemes.fst: tef/traits.def tef/morphemes.def \
tef/verbes/tractuel.fst
tef/verbes/realisation.fst: tef/phonologie.def tef/traits.def tef/morphemes.def \
tef/verbes/morphemes.fst
-tef/verbes/citation.fst: tef/traits.def tef/verbes/realisation.fst \
- tef/orthographe.fst
-tef/verbes/verbes.fst: tef/verbes/citation.fst
+tef/verbes/verbes.fst: tef/traits.def tef/verbes/realisation.fst
# ----
# NOMS
@@ -43,35 +45,30 @@ tef/noms/tractuel.fst: tef/traits.def tef/noms/lexique.fst
tef/noms/morphemes.fst: tef/traits.def tef/morphemes.def tef/noms/tractuel.fst
tef/noms/realisation.fst: tef/phonologie.def tef/traits.def tef/morphemes.def \
tef/noms/morphemes.fst
-tef/noms/citation.fst: tef/traits.def tef tef/noms/realisation.fst \
- tef/orthographe.fst
-tef/noms/noms.fst: tef/noms/citation.fst
+tef/noms/noms.fst: tef/traits.def tef/noms/realisation.fst
-# ------
-# COMMUN
-# ------
+# ----
+# MOTS
+# ----
-tef/orthographe.fst: tef/phonologie.def
+tef/orthographe.fst: tef/phonologie.def tef/verbes/verbes.fst tef/noms/noms.fst
+tef/fc.fst: tef/orthographe.fst
+tef/mots.fst: tef/traits.def tef/fc.fst
# -----
# TESTS
# -----
-tv: tef/verbes/verbes.ext ech/verbes.ech
- bin/rapport.py tef/verbes/verbes.ext \
- ech/verbes.ech | less
-
-tn: tef/noms/noms.ext ech/noms.ech
- bin/rapport.py tef/noms/noms.ext \
- ech/noms.ech | less
+tester: tef/mots.ext ech.tsv
+ bin/rapport.py tef/mots.ext ech.tsv | less
# -------------
# INTERFACE WEB
# -------------
-web: tef/verbes/verbes.ext
+web: tef/mots.ext
mkdir -p web
- bin/statef.py tef/verbes/verbes.ext web
+ bin/statef.py tef/mots.ext web
# ---------
# NETTOYAGE
diff --git a/ech/verbes.ech b/ech.tsv
diff --git a/ech/noms.ech b/ech/noms.ech
diff --git a/tef/fc.xfst b/tef/fc.xfst
@@ -0,0 +1,10 @@
+# ==================
+# FORMES DE CITATION
+# ==================
+
+define Orthographe @"tef/orthographe.fst";
+
+# Extraire les formes de citation.
+define Fc [[[[] <- "+Fc"] .o. $["+Fc"] .o. Orthographe] ?*].i;
+
+regex Fc .o. Orthographe;
diff --git a/tef/mots.xfst b/tef/mots.xfst
@@ -0,0 +1,9 @@
+# ====
+# MOTS
+# ====
+
+load defined tef/traits.def
+
+define Fc @"tef/fc.fst";
+
+regex [[] <- TAcc] .o. ~$["+Absent"] .o. Fc .o. [Traits -> []];
diff --git a/tef/noms/citation.xfst b/tef/noms/citation.xfst
@@ -1,16 +0,0 @@
-# ==================
-# FORMES DE CITATION
-# ==================
-
-load defined tef/traits.def
-
-define Realisation @"tef/noms/realisation.fst";
-define Orthographe @"tef/orthographe.fst";
-
-define TraitsCitation $["+Sg" "+Ntr"];
-
-define Citations [[[] <- TGrm] .o. TraitsCitation .o. Realisation] "+Fc":0;
-
-define Tef Citations .P. Realisation;
-
-regex Tef .o. Orthographe;
diff --git a/tef/noms/noms.xfst b/tef/noms/noms.xfst
@@ -1,5 +1,13 @@
-# ====
-# NOMS
-# ====
+# ==================
+# FORMES DE CITATION
+# ==================
-regex @"tef/noms/citation.fst";
+load defined tef/traits.def
+
+define Realisation @"tef/noms/realisation.fst";
+
+define TraitsCitation $["+Sg" "+Ntr"];
+
+define Citations [[[] <- TGrm] .o. TraitsCitation .o. Realisation] "+Fc":0;
+
+regex Citations .P. Realisation;
diff --git a/tef/orthographe.xfst b/tef/orthographe.xfst
@@ -6,6 +6,9 @@
load defined tef/phonologie.def
+define Verbes @"tef/verbes/verbes.fst";
+define Noms @"tef/noms/noms.fst";
+
define Ortho [
# Un « ᵘ » tombe devant un « u ».
[ᵘ -> [] || _ \Lettre* u]
@@ -14,4 +17,4 @@ define Ortho [
# Un « ᵘ » devient « u » lorsqu’il n’est pas en fin de mot.
.o. [ᵘ -> u || _ \Lettre* Lettre]];
-push Ortho
+regex [Verbes|Noms] .o. Ortho;
diff --git a/tef/verbes/citation.xfst b/tef/verbes/citation.xfst
@@ -1,25 +0,0 @@
-# ==================
-# FORMES DE CITATION
-# ==================
-
-load defined tef/traits.def
-
-define Realisation @"tef/verbes/realisation.fst";
-define Orthographe @"tef/orthographe.fst";
-
-define TraitsCitation [
- [$["+VTA"] $["+Indép" "+Ind" "+Prés"] $["+Sg" "+Ntr"] $["+Sg" "+Obv"]]|
- [$["+VAI"] $["+Indép" "+Ind" "+Prés"] $["+Sg" "+Ntr"]]|
- [$["+VTI"] $["+Indép" "+Ind" "+Prés"] $["+Sg" "+Ntr"]]|
- [$["+VII"] $["+Indép" "+Ind" "+Prés"] $["+Sg" "+Ntr"]]];
-
-define Citations [[[] <- [TGrm|">"]] .o. TraitsCitation .o. Realisation] "+Fc":0;
-
-define Tef Citations .P. Realisation;
-
-define Tef Tef .o. Orthographe;
-
-# Extraire les formes de citation et retirer les traits grammaticaux.
-define FC [[[[] <- [TGrm|">"]] .o. TraitsCitation .o. Tef] ?*].i;
-
-regex [[] <- TAcc] .o. FC .o. Tef .o. [Traits -> []];
diff --git a/tef/verbes/morphemes.xfst b/tef/verbes/morphemes.xfst
@@ -105,6 +105,6 @@ define CombMorphemes CombTraits
# Peut-être influence de « ń ».
.o. ["+DubPassLc" -> "+DubPassNLc" ||
_ $["+Est"] $["+Obv"] $["+2"|"+1"] $["+Sg"]]
- .o. [[Cases|TGrm|">"] -> []];
+ .o. [[Cases|TGrm] -> []];
push CombMorphemes
diff --git a/tef/verbes/verbes.xfst b/tef/verbes/verbes.xfst
@@ -2,4 +2,16 @@
# VERBES
# ======
-regex ~$["+Absent"] .o. @"tef/verbes/citation.fst";
+load defined tef/traits.def
+
+define Realisation @"tef/verbes/realisation.fst";
+
+define TraitsCitation [
+ [$["+VTA"] $["+Indép" "+Ind" "+Prés"] $["+Sg" "+Ntr"] $["+Sg" "+Obv"]]|
+ [$["+VAI"] $["+Indép" "+Ind" "+Prés"] $["+Sg" "+Ntr"]]|
+ [$["+VTI"] $["+Indép" "+Ind" "+Prés"] $["+Sg" "+Ntr"]]|
+ [$["+VII"] $["+Indép" "+Ind" "+Prés"] $["+Sg" "+Ntr"]]];
+
+define Citations [[[] <- TGrm] .o. TraitsCitation .o. Realisation] "+Fc":0;
+
+regex Citations .P. Realisation;