lexical.xfst (3648B)
1 # ============== 2 # MODULE LEXICAL 3 # ============== 4 # 5 # Former le lexique. 6 7 load defined tf/orthographe.def 8 load defined tf/traits.def 9 10 # Charger et terminer de construire le lexique non-productif. 11 define NProductif [[@stxt"tf/verbes/lexique.lexs" TDial] 12 # Les verbes en « +Run » n’existent que dans l’ouest. Leurs homologues 13 # en « +Ru » n’existent que dans l’est. Ces paires de verbes portent 14 # toutes « +Run » dans le lexique. 15 .o. [[..] -> ["+e"|"+o"] || _ "+Rûn"] 16 .o. [[..] -> "+Rû" || "+e" ?* _ ?* "+Rûn"] 17 .o. [n -> [] || _ \LettreOrtho* "+e" ?* "+Rûn"] 18 .o. ["+Rûn" -> [] || "+Rû" ?* _]].l; 19 20 # Créer le lexique productif. 21 # Les traits accidentels sont inutils aux formes productives. 22 define Productif [LettreOrtho-ᵘ]* LettreOrtho "+Prod" 23 (TId) TRacineV TVrbe TDial; 24 25 # Fusionner les lexiques et les rendre cohérents. 26 define Lexique [NProductif|Productif] 27 # Certaines racines sont spécifiques à l’Est. 28 - [$["+e"] & ~$["+Est"]] 29 # Certaines racines sont spécifiques à l’Ouest. 30 - [$["+o"] & ~$["+Ouest"]] 31 32 # Contraindres les traits de racine selon la classe de verbes 33 - [$["+Râ"] & ~$["+VII"|"+VAI" ]] 34 - [$["+Rau"] & ~$[ "+VAI" ]] 35 - [$["+Re"] & ~$["+VII"|"+VAI" ]] 36 - [$["+Ri"] & ~$["+VII"|"+VAI"| "+VTA"]] 37 - [$["+Rî"] & ~$["+VII"|"+VAI" ]] 38 - [$["+Rm"] & ~$[ "+VTA"]] 39 - [$["+Rn"] & ~$["+VII"|"+VAI"| "+VTA"]] 40 - [$["+Rń"] & ~$["+VII" ]] 41 - [$["+Rshu"] & ~$[ "+VTA"]] 42 - [$["+Rsh"] & ~$[ "+VTA"]] 43 - [$["+Ru"] & ~$["+VII"|"+VAI"| "+VTA"]] 44 - [$["+Rû"] & ~$["+VII"|"+VAI" ]] 45 - [$["+Rua"] & ~$[ "+VTA"]] 46 - [$["+Rûn"] & ~$["+VII" ]] 47 - [$["+RC"] & ~$[ "+VTI" ]] 48 - [$["+RD"] & ~$[ "+VTI"|"+VTA"]] 49 50 # Contraindre les traits identificateurs selon la forme de citation 51 - [$["+IdItau"] & ~[{itau} \LettreOrtho*]] 52 53 # Contraindre les traits de racine selon la forme de citation 54 - [$["+Râ" ] & ~[?* {au} \LettreOrtho*]] 55 - [$["+Rau" ] & ~[?* {au} \LettreOrtho*]] 56 - [$["+Re" ] & ~[?* {eu} \LettreOrtho*]] 57 - [$["+Ri" ?* ["+VII"|"+VAI"]] & ~[?* u \LettreOrtho*]] 58 - [$["+Ri" ?* "+VTA" ] & ~[?* {ieu} \LettreOrtho*]] 59 - [$["+Rî" ] & ~[?* {iu} \LettreOrtho*]] 60 - [$["+Rm" ] & ~[?* {meu} \LettreOrtho*]] 61 - [$["+Rn" ?* "+VII" ] & ~[?* n \LettreOrtho*]] 62 - [$["+Rn" ?* "+VAI" ] & ~[?* [n|ń] u \LettreOrtho*]] 63 - [$["+Rn" ?* "+VTA" ] & ~[?* [n|ń] {eu} \LettreOrtho*]] 64 - [$["+Rń" ] & ~[?* {ńu} \LettreOrtho*]] 65 - [$["+Rshu" ] & ~[?* {shueu} \LettreOrtho*]] 66 - [$["+Ru" ?* ["+VII"|"+VAI"]] & ~[?* \ń u \LettreOrtho*]] 67 - [$["+Ru" ?* "+VTA" ] & ~[?* {ueu} \LettreOrtho*]] 68 - [$["+Rû" ?* ["+VII"|"+VAI"]] & ~[?* u \LettreOrtho*]] 69 - [$["+Rua" ] & ~[?* {ueu} \LettreOrtho*]] 70 - [$["+Rûn" ] & ~[?* {un} \LettreOrtho*]] 71 - [$["+RC" ] & ~[?* Cons {amᵘ} \LettreOrtho*]] 72 - [$["+RD" ?* "+VTI" ] & ~[?* [a|e] {imᵘ} \LettreOrtho*]] 73 - [$["+RD" ?* "+VTA" ] & ~[?* [a|e] {ueu} \LettreOrtho*]]; 74 75 # Ajouter le trait facultatif de longueur de la voyelle initiale. 76 read regex [Lexique .o. [[..] (->) TVILngr || \TIdVoc _ (TIdVoc) TVrbe]].l;