From 2198d18d3a94f418aa6ddd8207e47a6a6b8ff35e Mon Sep 17 00:00:00 2001 From: aarne Date: Tue, 8 Apr 2014 12:53:03 +0000 Subject: [PATCH] TopDictFre checked to 500 --- lib/src/translator/todo/TopDictFre.gf | 239 +++++++++++++------------- 1 file changed, 122 insertions(+), 117 deletions(-) diff --git a/lib/src/translator/todo/TopDictFre.gf b/lib/src/translator/todo/TopDictFre.gf index eea377614..5bf92032d 100644 --- a/lib/src/translator/todo/TopDictFre.gf +++ b/lib/src/translator/todo/TopDictFre.gf @@ -1,4 +1,4 @@ ----- checked by AR till quite_Adv +---- checked by AR till long_Adv concrete TopDictFre of TopDict = CatFre ** open ParadigmsFre, (S = StructuralFre), @@ -12,7 +12,12 @@ concrete TopDictFre of TopDict = CatFre ** open ParadigmsFre, oper mkInterj : Str -> Interj = \s -> lin Interj (ss s) ; mkConj : Str -> Conj = \s -> lin Conj {s1 = [] ; s2 = s ; n = Pl} ; - mkDet : Str -> Det = \s -> lin Det {s,sp = \\_,c => prepCase c ++ s ; n = Sg ; s2 = [] ; isNeg = False} ; + mkDet = overload { + mkDet : Str -> Det = \s -> lin Det {s,sp = \\_,c => prepCase c ++ s ; n = Sg ; s2 = [] ; isNeg = False} ; + mkDet : Str -> Str -> Number -> Det = \m,f,n -> lin Det { + s,sp = \\g,c => prepCase c ++ case g of {Masc => m ; Fem => f} ; n = n ; s2 = [] ; isNeg = False + } ; + } ; lin of_Prep = ParadigmsFre.genitive ; @@ -331,7 +336,7 @@ lin during_Prep = S.during_Prep ; lin bring_V3 = mkV3 (mkV "apporter") ; lin bring_V2V = mkV2V (mkV "apporter") ; ---- subcat lin bring_V2 = mkV2 "apporter" ; -lin most_Det = mkDet ("la plupart" ++ Ph.elisDe) ; +lin most_Det = mkDet ("la plupart" ++ Ph.elisDe) ("la plupart" ++ Ph.elisDe) plural ; lin word_N = mkN "mot" masculine ; lin begin_V2 = mkV2 (mkV "commencer") ; lin begin_V = mkV "commencer" ; @@ -354,151 +359,151 @@ lin state_N = mkN "état" masculine ; lin state_2_N = mkN "état" masculine ; lin state_1_N = mkN "état" masculine ; lin percent_N = mkN "pourcent" masculine ; -lin quite_Adv = S.quite_Adv ; ---- checked by AR -lin both_Det = variants{} ; -lin start_V2 = mkV2 (mkV "commencer") | mkV2 (mkV "démarrer") ; -- tocheck -lin start_V = variants{} ; -lin run_VS = variants{} ; -lin run_V2 = mkV2 (mkV "marcher") | mkV2 (reflV (mkV "écouler")) | mkV2 (mkV I.courir_V2) ; -- tocheck +lin quite_Adv = S.quite_Adv ; +lin both_Det = mkDet "tous les deux" "toutes les deux" plural ; +lin start_V2 = mkV2 (mkV "commencer") | mkV2 (mkV "démarrer") ; +lin start_V = mkV "commencer" ; +lin run_VS = mkVS (mkV I.courir_V2) ; ---- subcat +lin run_V2 = mkV2 (mkV "opérer") ; ---- run a program lin run_V = L.run_V ; lin long_A = L.long_A ; -lin right_Adv = variants{} ; -lin right_2_Adv = variants{} ; -lin right_1_Adv = variants{} ; -lin set_VV = variants{} ; -lin set_VS = variants{} ; -lin set_V2 = mkV2 (reflV (mkV "coucher")) | mkV2 (mkV I.mettre_V2) | mkV2 (mkV "régler") | mkV2 (mkV "fixer") | mkV2 (mkV "assigner") | mkV2 (mkV "enfoncer") | mkV2 (mkV "geler") ; -- tocheck -lin set_V = variants{} ; -lin help_VV = variants{} ; -lin help_VS = variants{} ; -lin help_V2V = mkV2V (mkV "aider") ; -- tocheck -lin help_V2 = variants{} ; -lin help_V = variants{} ; +lin right_Adv = mkAdv "correctement" ; +lin right_2_Adv = mkAdv "à droite" ; +lin right_1_Adv = mkAdv "correctement" ; +lin set_VV = aVV (mkV "commencer") ; +lin set_VS = mkVS (mkV "supposer") ; ---- subcat +lin set_V2 = mkV2 (mkV I.mettre_V2) ; +lin set_V = I.mettre_V2 ; ---- subcat +lin help_VV = aVV (mkV "aider") ; ---- subcat +lin help_VS = mkVS (mkV "aider") ; +lin help_V2V = mkV2V (mkV "aider") accusative dative ; +lin help_V2 = mkV2 "aider" ; +lin help_V = mkV "aider" ; lin every_Det = S.every_Det ; -lin home_N = mkN "maison" feminine | mkN "patrie" feminine ; -- tocheck +lin home_N = mkN "maison" feminine ; lin month_N = mkN "mois" masculine ; -- tocheck -lin side_N = mkN "face" feminine | mkN "côté" masculine | mkN "équipe" feminine | mkN "page" feminine ; -- tocheck +lin side_N = mkN "côté" masculine | mkN "face" feminine ; lin night_N = L.night_N ; lin important_A = L.important_A ; lin eye_N = L.eye_N ; lin head_N = L.head_N ; -lin information_N = mkN "renseignement" masculine ; -- tocheck +lin information_N = mkN "information" | mkN "renseignement" masculine ; lin question_N = L.question_N ; -lin business_N = mkN "entreprise" feminine | mkN "affaire" ; -- tocheck -lin play_VV = variants{} ; +lin business_N = mkN "entreprise" feminine | mkN "affaire" feminine ; +lin play_VV = aVV (mkV "jouer") ; ---- subcat lin play_V2 = L.play_V2 ; lin play_V = L.play_V ; -lin play_3_V2 = variants{} ; -lin play_3_V = variants{} ; -lin play_2_V2 = variants{} ; -lin play_2_V = variants{} ; -lin play_1_V2 = variants{} ; -lin play_1_V = variants{} ; -lin power_N = mkN "électricité" feminine | mkN "puissance" feminine | mkN "pouvoir" masculine ; -- tocheck -lin money_N = mkN "argent" | mkN "liquide" masculine | mkN "argent" masculine ; -- tocheck -lin change_N = mkN "monnaie" feminine | mkN "changement" masculine ; -- tocheck -lin move_VV = variants{} ; -lin move_V2V = mkV2V (reflV (mkV I.mouvoir_V2)) | mkV2V (mkV I.émouvoir_V2) | mkV2V (mkV "déplacer") | mkV2V (mkV "déménager") | mkV2V (mkV "bouger") ; -- tocheck -lin move_V2A = variants{} ; -lin move_V2 = variants{} ; -lin move_V = variants{} ; -lin move_2_V = variants{} ; -lin move_1_V = variants{} ; -lin interest_N = mkN "intérêt" masculine ; -- tocheck -lin interest_4_N = variants{} ; -lin interest_2_N = variants{} ; -lin interest_1_N = variants{} ; -lin order_N = mkN "ordre" masculine | mkN "commande" feminine ; -- tocheck +lin play_3_V2 = mkV2 (mkV "jouer") genitive ; +lin play_3_V = mkV "jouer" ; +lin play_2_V2 = mkV2 (mkV "jouer") dative ; +lin play_2_V = mkV "jouer" ; +lin play_1_V2 = mkV2 (mkV "jouer") dative ; +lin play_1_V = mkV "jouer" ; +lin power_N = mkN "puissance" feminine | mkN "pouvoir" masculine | mkN "électricité" feminine ; --- split -- | electricity +lin money_N = mkN "argent" ; +lin change_N = mkN "changement" masculine | mkN "correspondance" | mkN "monnaie" feminine ; --- split 3 +lin move_VV = aVV (reflV (mkV "bouger")) ; --- subcat +lin move_V2V = mkV2V (mkV "bouger") ; --- subcat +lin move_V2A = mkV2A (mkV "bouger") ; --- subcat +lin move_V2 = I.émouvoir_V2 | mkV2 "déplacer" | mkV2 "déménager" | mkV2 "bouger" ; --- split move emotionally +lin move_V = reflV (mkV "bouger") | mkV "déménager" ; +lin move_2_V = mkV "déménager" ; +lin move_1_V = reflV (mkV I.mouvoir_V2) | reflV (mkV "bouger") ; +lin interest_N = mkN "intérêt" masculine ; +lin interest_4_N = mkN "intérêt" masculine ; +lin interest_2_N = mkN "intérêt" masculine ; +lin interest_1_N = mkN "intérêt" masculine ; +lin order_N = mkN "ordre" masculine | mkN "commande" feminine ; --- split -- | order of things -- | my orders lin book_N = L.book_N ; -lin often_Adv = mkAdv "souvent" ; -- tocheck -lin development_N = mkN "développement" masculine ; -- tocheck +lin often_Adv = mkAdv "souvent" ; +lin development_N = mkN "développement" masculine ; lin young_A = L.young_A ; -lin national_A = mkA "national" ; -- tocheck -lin pay_V3 = mkV3 (mkV "payer") ; -- tocheck -lin pay_V2V = variants{} ; -lin pay_V2 = variants{} ; -lin pay_V = variants{} ; -lin hear_VS = variants{} ; -lin hear_V2V = mkV2V (mkV I.entendre_V2) ; -- tocheck +lin national_A = mkA "national" ; +lin pay_V3 = mkV3 (mkV "payer") ; +lin pay_V2V = mkV2V (mkV "payer") ; --- subcat +lin pay_V2 = mkV2 (mkV "payer") ; +lin pay_V = reflV (mkV "payer") ; +lin hear_VS = mkVS (mkV I.entendre_V2) ; +lin hear_V2V = mkV2V (mkV I.entendre_V2) ; lin hear_V2 = L.hear_V2 ; -lin hear_V = variants{} ; +lin hear_V = mkV I.entendre_V2 ; lin room_N = mkN "pièce" feminine | mkN "espace" feminine ; -- tocheck -lin room_1_N = variants{} ; -lin room_2_N = variants{} ; -lin whether_Subj = variants{} ; +lin room_1_N = mkN "chambre" | mkN "pièce" ; +lin room_2_N = mkN "place" | mkN "espace" ; +lin whether_Subj = M.mkSubj "si" ; ---- s'il lin water_N = L.water_N ; -lin form_N = mkN "formulaire" masculine | mkN "forme" feminine ; -- tocheck +lin form_N = mkN "formulaire" masculine | mkN "forme" feminine ; --- split -- | geometric form -- | form to fill lin car_N = L.car_N ; -lin other_N = variants{} ; +lin other_N = mkN "autre" masculine ; ---- l'enfer c'est les autres :-) lin yet_Adv = mkAdv "encore" ; -- tocheck -lin yet_2_Adv = variants{} ; -lin yet_1_Adv = variants{} ; +lin yet_2_Adv = mkAdv "pourtant" ; +lin yet_1_Adv = mkAdv "encore" ; lin perhaps_Adv = mkAdv "peut-être" ; -- tocheck -lin meet_V2V = mkV2V (mkV I.rejoindre_V2) | mkV2V (mkV "rencontrer") | mkV2V (mkV I.satisfaire_V2) | mkV2V (reflV (mkV I.rejoindre_V2)) | mkV2V (reflV (mkV "réunir")) | mkV2V (mkV "heurter") | mkV2V (reflV (mkV "retrouver")) ; -- tocheck -lin meet_V2 = variants{} ; -lin meet_V = variants{} ; -lin level_N = mkN "niveau" masculine ; -- tocheck -lin level_2_N = variants{} ; -lin level_1_N = variants{} ; -lin until_Subj = variants{} ; -lin though_Subj = variants{} ; -lin policy_N = mkN "police" feminine | mkN "politique" feminine ; -- tocheck -lin include_VV = variants{} ; -lin include_V2 = mkV2 (mkV I.inclure_V2) ; -- tocheck -lin include_V = variants{} ; -lin believe_VS = variants{} ; -lin believe_V2V = mkV2V (mkV I.croire_V2) ; -- tocheck -lin believe_V2 = variants{} ; -lin believe_V = variants{} ; +lin meet_V2V = mkV2V (mkV I.rejoindre_V2) | mkV2V (mkV "rencontrer") ; --- subcat +lin meet_V2 = I.rejoindre_V2 | mkV2 (mkV "rencontrer") ; +lin meet_V = reflV (mkV I.voir_V2) ; +lin level_N = mkN "niveau" masculine ; +lin level_2_N = mkN "niveau" masculine | mkN "plan" ; +lin level_1_N = mkN "niveau" masculine ; +lin until_Subj = M.mkSubjSubj ("jusqu´à ce" ++ Ph.elisQue) ; +lin though_Subj = M.mkSubjSubj ("bien" + Ph.elisQue) | M.mkSubjSubj ("quoi" + Ph.elisQue) ; +lin policy_N = mkN "politique" feminine ; +lin include_VV = deVV (mkV I.inclure_V2) ; --- subcat +lin include_V2 = mkV2 (mkV I.inclure_V2) ; +lin include_V = mkV I.inclure_V2 ; +lin believe_VS = subjVS (mkV I.croire_V2) ; ---- ind/subj +lin believe_V2V = mkV2V (mkV I.croire_V2) ; +lin believe_V2 = I.croire_V2 ; +lin believe_V = mkV I.croire_V2 ; lin council_N = mkN "conseil" masculine ; -- tocheck lin already_Adv = L.already_Adv ; -lin possible_A = mkA "#French#possible" | mkA "possible" ; -- tocheck +lin possible_A = mkA "possible" ; lin nothing_NP = S.nothing_NP ; -lin line_N = mkN "droite" feminine | mkN "ligne" feminine | mkN "ride" feminine ; -- tocheck -lin allow_VS = variants{} ; -lin allow_V2V = mkV2V (mkV "laisser") | mkV2V (mkV I.permettre_V2) ; -- tocheck -lin allow_V2 = variants{} ; -lin allow_V = variants{} ; -lin need_N = mkN "besoin" masculine ; -- tocheck -lin effect_N = mkN "effet" ; -- tocheck +lin line_N = mkN "ligne" feminine | mkN "droite" feminine ; --- split -- | straight-line +lin allow_VS = subjVS (mkV I.permettre_V2) ; +lin allow_V2V = mkV2V (mkV "laisser") | mkV2V (mkV I.permettre_V2) ; +lin allow_V2 = mkV2 (mkV "laisser") | I.permettre_V2 ; +lin allow_V = mkV "laisser" ; --- subcat +lin need_N = mkN "besoin" masculine ; +lin effect_N = mkN "effet" ; lin big_A = L.big_A ; -lin use_N = mkN "usage" masculine | mkN "utilité" feminine ; -- tocheck -lin lead_VS = variants{} ; -lin lead_V2V = mkV2V (mkV "diriger") | mkV2V (mkV "mener") | mkV2V (mkV "guider") ; -- tocheck -lin lead_V2 = variants{} ; -lin lead_V = variants{} ; -lin stand_VV = variants{} ; -lin stand_VS = variants{} ; -lin stand_V2 = mkV2 (reflV (mkV "lever")) ; -- tocheck -lin stand_V = L.stand_V ; +lin use_N = mkN "usage" masculine | mkN "utilité" feminine ; --- split -- | actual use -- | usability +lin lead_VS = mkVS (mkV "mener") ; --- subcat +lin lead_V2V = mkV2V (mkV "diriger") | mkV2V (mkV "mener") | mkV2V (mkV "guider") ; +lin lead_V2 = mkV2 (mkV "diriger") | mkV2 (mkV "mener") ; --- split --- | lead a company -- | lead a competition +lin lead_V = mkV "diriger" ; +lin stand_VV = deVV (mkV "supporter") ; --- subcat +lin stand_VS = mkVS I.dire_V2 ; --- sense ?? +lin stand_V2 = mkV2 "supporter" ; +lin stand_V = L.stand_V | reflV (mkV "lever") ; lin idea_N = mkN "idée" feminine ; -- tocheck lin study_N = mkN "étude" feminine ; -- tocheck -lin lot_N = mkN "bande" feminine | mkN "groupe" masculine | mkN "destin" masculine ; -- tocheck -lin live_VV = variants{} ; -lin live_V2 = mkV2 (mkV "habiter") | mkV2 (mkV I.vivre_V2) ; -- tocheck -lin live_V = L.live_V ; -lin job_N = mkN "tâche" feminine | mkN "travail" masculine | mkN "plastie" feminine ; -- tocheck -lin since_Subj = variants{} ; +lin lot_N = mkN "bande" feminine | mkN "groupe" masculine ; +lin live_VV = aVV (mkV I.vivre_V2) ; --- subcat +lin live_V2 = mkV2 (mkV "habiter") ; +lin live_V = L.live_V ; --- split -- | vivre -- | habiter +lin job_N = mkN "travail" masculine | mkN "tâche" feminine ; --- split -- | profession -- | task +lin since_Subj = M.mkSubj ("depuis" ++ Ph.elisQue) ; lin name_N = L.name_N ; lin result_N = mkN "résultat" masculine ; -- tocheck -lin body_N = mkN "corps" masculine | mkN "carrosserie" feminine | mkN "corpus" masculine | mkN "organisation" feminine | mkN "torse" masculine ; -- tocheck -lin happen_VV = variants{} ; -lin happen_V2 = mkV2 (mkV I.advenir_V) ; -- tocheck -lin happen_V = variants{} ; +lin body_N = mkN "corps" masculine ; +lin happen_VV = aVV (mkV I.advenir_V) ; ---- sense +lin happen_V2 = mkV2 (mkV "arriver") ; --- subcat +lin happen_V = mkV "arriver" ; lin friend_N = L.friend_N ; lin right_N = mkN "droit" masculine | mkN "droite" feminine ; -- tocheck -lin least_Adv = variants{} ; +lin least_Adv = mkAdv "le moins" ; lin right_A = mkA "droit" | mkA "correct" ; -- tocheck -lin right_2_A = variants{} ; -lin right_1_A = variants{} ; -lin almost_Adv = mkAdv "presque" ; -- tocheck +lin right_2_A = mkA "droit" ; +lin right_1_A = mkA "correct" ; +lin almost_Adv = mkAdv "quasiment" | mkAdv "presque" ; lin much_Det = S.much_Det ; -lin carry_V2 = mkV2 (mkV I.retenir_V2) | mkV2 (mkV "porter") ; -- tocheck -lin carry_V = variants{} ; -lin authority_N = mkN "autorité" feminine ; -- tocheck -lin authority_2_N = variants{} ; -lin authority_1_N = variants{} ; -lin long_Adv = variants{} ; +lin carry_V2 = mkV2 (mkV "porter") ; +lin carry_V = mkV "porter" ; +lin authority_N = mkN "autorité" feminine ; +lin authority_2_N = mkN "autorité" feminine ; +lin authority_1_N = mkN "autorité" feminine ; +lin long_Adv = mkAdv "longtemps" ; ---- checked up to this by AR lin early_A = mkA "ancien" ; -- tocheck lin view_N = mkN "vision" feminine | mkN "vue" feminine | mkN "regard" masculine ; -- tocheck lin view_2_N = variants{} ;