positionnel.xfst (1977B)
1 # ================== 2 # MODULE POSITIONNEL 3 # ================== 4 # 5 # Passer du niveau profond au niveau positionnel. 6 7 load defined tf/orthographe.def 8 load defined tf/traits.def 9 load defined tf//morphemes.def 10 11 define Profond @"tf/verbes/profond.fst"; 12 13 # ------- 14 # RACINES 15 # ------- 16 17 # Préserver la forme de citation. 18 define Fc Profond & $["+Fc"]; 19 20 # Retrouver les racines. 21 define Racines Profond 22 .o. [{au} -> â || _ \Lettre* "+Râ"] 23 .o. [{au} -> {au} || _ \Lettre* "+Rau"] 24 .o. [{eu} -> e || _ \Lettre* "+Re"] 25 .o. [ u -> i || _ \Lettre* "+Ri" $["+VII"|"+VAI"]] 26 .o. [{eu} -> [] || _ \Lettre* "+Ri" $["+VTA"]] 27 .o. [{iu} -> î || _ \Lettre* "+Rî"] 28 .o. [{eu} -> [] || _ \Lettre* "+Rm"] 29 .o. [ u -> [] || _ \Lettre* "+Rn" $["+VII"|"+VAI"]] 30 .o. [{eu} -> [] || _ \Lettre* "+Rn" $["+VTA"]] 31 .o. [ u -> [] || _ \Lettre* "+Rń"] 32 .o. [{eu} -> [] || _ \Lettre* "+Rshu"] 33 .o. [{teu} -> {sh} || _ \Lettre* "+Rsh"] 34 .o. [ u -> u || _ \Lettre* "+Ru" $["+VII"|"+VAI"]] 35 .o. [{eu} -> [] || _ \Lettre* "+Ru" $["+VTA"]] 36 .o. [ u -> û || _ \Lettre* "+Rû"] 37 .o. [{eu} -> [] || _ \Lettre* "+Rua"] 38 .o. [ u -> û || _ n \Lettre* "+Rûn"] 39 .o. [{amᵘ} -> [] || _ \Lettre* "+RC"] 40 .o. [{mᵘ} -> [] || _ \Lettre* "+RD" $["+VTI"]] 41 .o. [{eu} -> [] || _ \Lettre* "+RD" $["+VTA"]]; 42 43 # Rétablir les formes de citation. 44 define Racines [Fc .P. Racines]; 45 46 # --------- 47 # POSITIONS 48 # --------- 49 # 50 # Les positions seront substituées par le nom de morphème approprié. Elles sont 51 # placées de chaque côté de la racine. 52 # 53 # La méthode employée actuellement n’est pas très efficace. Elle mène à un 54 # transducteur très disaligné. 55 56 read regex Racines 57 .o. [[..] -> "[PPers]" || .#. _] 58 .o. [[..] -> "[ThDéc]" "[ThDir]" "[Obv]" "[SPers]" "[NbLc]" "[Tir]" 59 "[NbNLc]" "[Percep]" || Lettre _ TLex] 60 # Les formes diverses n’ont pas de positions. 61 .o. [Positions -> [] || _ $[TFrm]];