From 1d8fb27656a10fb56ce24ea5866702187b6a70e7 Mon Sep 17 00:00:00 2001 From: "kr.angelov" Date: Thu, 6 Sep 2012 13:27:08 +0000 Subject: [PATCH] updates to ParseEng and ParseEngBul --- lib/src/bulgarian/AdjectiveBul.gf | 7 ++ lib/src/bulgarian/DictEngBul.gf | 147 +++++++++++++++--------------- lib/src/bulgarian/ParseEngBul.gf | 6 +- lib/src/english/DictEng.gf | 26 +++--- lib/src/english/DictEngAbs.gf | 20 ++-- lib/src/english/ParseEng.gf | 20 +++- lib/src/english/ParseEngAbs.gf | 7 +- 7 files changed, 136 insertions(+), 97 deletions(-) diff --git a/lib/src/bulgarian/AdjectiveBul.gf b/lib/src/bulgarian/AdjectiveBul.gf index 53a7088d2..36aa1d0c1 100644 --- a/lib/src/bulgarian/AdjectiveBul.gf +++ b/lib/src/bulgarian/AdjectiveBul.gf @@ -63,4 +63,11 @@ concrete AdjectiveBul of Adjective = CatBul ** open ResBul, Prelude in { adv = a.adv ; isPre = True } ; + + AdvAP ap adv = { + s = \\aform => ap.s ! aform ++ adv.s ; + adv = ap.adv ++ adv.s; + isPre = False + } ; + } diff --git a/lib/src/bulgarian/DictEngBul.gf b/lib/src/bulgarian/DictEngBul.gf index 2f3c0c642..b72fae99b 100644 --- a/lib/src/bulgarian/DictEngBul.gf +++ b/lib/src/bulgarian/DictEngBul.gf @@ -104,7 +104,7 @@ lin abortive_A = variants {}; lin abound_V = variants {}; lin about_AdN = ss "около"; lin about_Adv = variants {}; -lin about_Prep = variants {}; +lin about_Prep = mkPrep "за" Acc; lin about_face_N = variants {}; lin about_face_V = variants {}; lin above_Adv = variants {}; @@ -650,6 +650,7 @@ lin aft_Adv = variants {}; lin after_A = variants {}; lin after_Adv = variants {}; lin after_Prep = mkPrep "след" Acc; +lin after_Subj = {s="след като"}; lin aftercare_N = variants {}; lin afterdamp_N = variants {}; lin aftereffect_N = variants {}; @@ -1998,7 +1999,7 @@ lin assuage_V2 = variants {}; lin assume_V = variants {}; lin assume_V2 = variants {}; lin assume_VS = variants {}; -lin assumption_N = variants {}; +lin assumption_N = mkN072 "предположение"; lin assurance_N = variants {}; lin assure_V2 = variants {}; lin assure_VS = variants {}; @@ -3515,8 +3516,8 @@ lin blab_V2 = variants {}; lin blabber_V = variants {}; lin blabber_V2 = variants {}; lin blabbermouth_N = variants {}; -lin black_A = mkA079 "черен" ; -lin black_N = variants {}; +lin black_A = mkA079 "черен"; +lin black_N = mkN007 "черен"; lin black_V2 = variants {}; lin black_beetle_N = variants {}; lin black_lead_N = variants {}; @@ -4991,7 +4992,7 @@ lin call_V = variants {}; lin call_V2 = variants {}; lin call_V2V = variants {}; lin call_V2A = variants {}; -lin call_V3 = variants {}; +lin call_V3 = mkV3 (stateV (mkV186 "наричам")) noPrep noPrep; lin call_VS = variants {}; lin call_box_N = variants {}; lin call_girl_N = variants {}; @@ -6954,7 +6955,7 @@ lin combine_VV = variants {}; lin combustible_A = variants {}; lin combustible_N = variants {}; lin combustion_N = variants {}; -lin come_V = variants {}; +lin come_V = actionV (mkV186 "идвам") (mkV146a "дойда"); lin come_V2 = variants {}; lin come_VV = variants {}; lin come_VA = variants {}; @@ -7278,17 +7279,17 @@ lin concretion_N = variants {}; lin concubine_N = variants {}; lin concupiscence_N = variants {}; lin concur_V = variants {}; -lin concurrence_N = variants {}; -lin concurrent_A = variants {}; -lin concurrentness_N = mkN071 "компютъризиране"; +lin concurrence_N = mkN071 "конкуриране"; +lin concurrent_A = mkA079 "конкурентен"; +lin concurrentness_N = mkN049 "конкурентност"; lin concuss_V2 = variants {}; lin concussion_N = variants {}; -lin condemn_V2 = variants {}; +lin condemn_V2 = dirV2 (actionV (mkV186 "обричам") (mkV148 "обрека")); lin condemnation_N = variants {}; -lin condensation_N = variants {}; -lin condense_V = variants {}; -lin condense_V2 = variants {}; -lin condenser_N = variants {}; +lin condensation_N = mkN047 "кондензация"; +lin condense_V = stateV (mkV186 "кондензирам"); +lin condense_V2 = dirV2 (stateV (mkV186 "кондензирам")); +lin condenser_N = mkN007 "кондензатор"; lin condescend_V = variants {}; lin condescending_A = variants {}; lin condescension_N = variants {}; @@ -7308,15 +7309,15 @@ lin condor_N = variants {}; lin conduce_V = variants {}; lin conducive_A = variants {}; lin conduct_N = mkN071 "извеждане" ; -lin conduct_V = variants {}; -lin conduct_V2 = variants {}; -lin conduction_N = variants {}; -lin conductive_A = variants {}; -lin conductivity_N = variants {}; -lin conductor_N = variants {}; -lin conductress_N = variants {}; +lin conduct_V = actionV (mkV186 "извеждам") (mkV145 "изведа"); +lin conduct_V2 = dirV2 (actionV (mkV186 "извеждам") (mkV145 "изведа")); +lin conduction_N = mkN071 "провеждане"; +lin conductive_A = mkA076 "проводящ"; +lin conductivity_N = mkN049 "проводимост"; +lin conductor_N = mkN007 "кондуктор"; +lin conductress_N = mkN041 "кондукторка"; lin conduit_N = variants {}; -lin cone_N = variants {}; +lin cone_N = mkN007 "конус"; lin cone_V2 = variants {}; lin coney_N = variants {}; lin confab_N = variants {}; @@ -7605,7 +7606,7 @@ lin contact_N = mkN007 "контакт" ; lin contact_V2 = variants {}; lin contagion_N = variants {}; lin contagious_A = variants {}; -lin contain_V2 = variants {}; +lin contain_V2 = dirV2 (stateV (mkV186 "съдържам")); lin container_N = variants {}; lin containment_N = mkN071 "спречкване" ; lin contaminant_N = variants {}; @@ -8817,7 +8818,7 @@ lin customize_V2 = variants {}; lin cut_N = mkN071 "намаляване" ; lin cut_V = actionV (mkV186 "отрязвам") (mkV157 "отрежа"); lin cut_V2 = dirV2 (actionV (mkV186 "отрязвам") (mkV157 "отрежа")); -lin cut_VS = mkVS (actionV (mkV186 "отрязвам") (mkV157 "отрежа")); +lin cut_V2A = variants {}; lin cut_out_N = variants {}; lin cut_price_A = variants {}; lin cut_rate_A = variants {}; @@ -9619,6 +9620,7 @@ lin denude_V2 = variants {}; lin denunciation_N = variants {}; lin denver_PN = variants {}; lin deny_V2 = variants {}; +lin deny_V3 = mkV3 (actionV (mkV186 "отказвам") (mkV156 "откажа")) noPrep noPrep; lin deny_VS = variants {}; lin deodar_N = variants {}; lin deodorant_N = variants {}; @@ -9778,7 +9780,7 @@ lin designer_N = mkN007a "дизайнер"; lin designing_A = variants {}; lin designing_N = variants {}; lin desirability_N = variants {}; -lin desirable_A = variants {}; +lin desirable_A = mkA076 "желан"; lin desire_N = mkN072 "желание" ; lin desire_V2 = variants {}; lin desirous_A = variants {}; @@ -9894,7 +9896,7 @@ lin devaluation_N = mkN047 "девалвация" ; lin devalue_V2 = variants {}; lin devastate_V2 = variants {}; lin devastation_N = variants {}; -lin develop_V = variants {}; +lin develop_V = medialV (actionV (mkV186 "развивам") (mkV163 "развия")) Acc; lin develop_V2 = variants {}; lin developer_N = variants {}; lin development_N = mkN071 "развиване" ; @@ -10568,7 +10570,7 @@ lin distance_N = mkN049 "отдалеченост" ; lin distance_V2 = variants {}; lin distant_A = mkA079 "далечен" ; lin distaste_N = variants {}; -lin distasteful_A = variants {}; +lin distasteful_A = mkA079 "неприятен"; lin distastefulness_N = variants {}; lin distemper_N = variants {}; lin distemper_V2 = variants {}; @@ -11165,7 +11167,7 @@ lin droop_N = variants {}; lin droop_V = variants {}; lin droop_V2 = variants {}; lin droopingly_Adv = variants {}; -lin drop_N = variants {}; +lin drop_N = mkN041 "капка"; lin drop_V = variants {}; lin drop_V2 = variants {}; lin drop_curtain_N = variants {}; @@ -11368,7 +11370,7 @@ lin duteous_A = variants {}; lin dutiable_A = variants {}; lin dutiful_A = variants {}; lin duty_N = mkN054 "дежурство" ; -lin duty_free_A = variants {}; +lin duty_free_A = mkA079 "безмитен"; lin duvet_N = variants {}; lin dwarf_N = variants {}; lin dwarf_V2 = variants {}; @@ -11643,12 +11645,12 @@ lin eggplant_N = variants {}; lin eggshake_N = variants {}; lin eggshell_N = variants {}; lin eglantine_N = variants {}; -lin ego_N = variants {}; -lin egocentric_A = variants {}; +lin ego_N = mkN065 "его"; +lin egocentric_A = mkA079 "егоцентричен"; lin egoism_N = mkN011 "егоизъм"; lin egoist_N = mkN007a "егоист"; lin egoistic_A = mkA079 "егоистичен"; -lin egoistical_A = variants {}; +lin egoistical_A = mkA079 "егоистичен"; lin egotism_N = variants {}; lin egotist_N = variants {}; lin egotistic_A = variants {}; @@ -12989,7 +12991,7 @@ lin fail_V = variants {}; lin fail_V2 = variants {}; lin fail_V2V = variants {}; lin fail_VS = variants {}; -lin fail_VV = variants {}; +lin fail_VV = mkVV (medialV (actionV (mkV187 "провалям") (mkV174 "проваля")) Acc); lin fail_safe_A = variants {}; lin failing_N = variants {}; lin failure_N = mkN007 "провал" ; @@ -13027,7 +13029,6 @@ lin fall_N = variants {}; lin fall_V = actionV (mkV186 "изпадам") (mkV152 "изпадна"); lin fall_V2 = dirV2 (actionV (mkV186 "изпадам") (mkV152 "изпадна")); lin fall_VA = mkVA (actionV (mkV186 "изпадам") (mkV152 "изпадна")); -lin fall_VS = mkVS (actionV (mkV186 "изпадам") (mkV152 "изпадна")); lin fallacious_A = variants {}; lin fallacy_N = variants {}; lin fallibility_N = variants {}; @@ -13288,7 +13289,6 @@ lin fell_A = variants {}; lin fell_V2 = variants {}; lin fell_V2V = variants {}; lin fell_VA = variants {}; -lin fell_VS = variants {}; lin fellah_N = variants {}; lin fellow_N = variants {}; lin fellow_feeling_N = variants {}; @@ -13464,7 +13464,7 @@ lin filbert_N = variants {}; lin filch_V2 = variants {}; lin file_N = mkN065 "досие" ; lin file_V = variants {}; -lin file_V2 = variants {}; +lin file_V2 = dirV2 (actionV (mkV186 "завеждам") (mkV145 "заведа")); lin filial_A = variants {}; lin filibuster_N = variants {}; lin filibuster_V = variants {}; @@ -14408,7 +14408,7 @@ lin fratricide_N = variants {}; lin frau_N = variants {}; lin fraud_N = mkN071 "фалшифициране" ; lin fraudulent_A = mkA079 "измамен" ; -lin fraught_A = variants {}; +lin fraught_A = mkA076 "изпълнен"; lin fraulein_N = variants {}; lin fray_N = variants {}; lin fray_V = variants {}; @@ -15446,7 +15446,7 @@ lin gnu_N = mkN065 "гну"; lin go_N = variants {}; lin go_V = actionV (mkV186 "отивам") (mkV146 "отида"); lin go_V2 = dirV2 (actionV (mkV186 "отивам") (mkV146 "отида")); -lin go_VA = mkVA (actionV (mkV186 "отивам") (mkV146 "отида")); +lin go_VA = mkVA (actionV (mkV186 "ставам") (mkV186 "оставам")); lin go_VV = mkVV (actionV (mkV186 "отивам") (mkV146 "отида")); lin go_VS = mkVS (actionV (mkV186 "отивам") (mkV146 "отида")); lin go_ahead_N = variants {}; @@ -17225,7 +17225,7 @@ lin home_grown_A = variants {}; lin home_made_A = variants {}; lin homecoming_N = variants {}; lin homeland_N = variants {}; -lin homeless_A = variants {}; +lin homeless_A = mkA079 "бездомен"; lin homelike_A = variants {}; lin homeliness_N = variants {}; lin homely_A = variants {}; @@ -19867,7 +19867,8 @@ lin keenness_N = variants {}; lin keep_N = variants {}; lin keep_V = variants {}; lin keep_V2 = variants {}; -lin keep_V2V = variants {}; +lin keep_to_V2V = variants {}; +lin keep_ing_V2V = variants {}; lin keep_VA = variants {}; lin keep_VS = variants {}; lin keep_VV = variants {}; @@ -20117,6 +20118,7 @@ lin know_V = variants {}; lin know_V2 = variants {}; lin know_V2V = variants {}; lin know_VS = variants {}; +lin know_VQ = variants {}; lin know_all_N = variants {}; lin know_how_N = variants {}; lin knowing_A = variants {}; @@ -20518,7 +20520,7 @@ lin laxity_N = variants {}; lin lay_A = variants {}; lin lay_N = variants {}; lin lay_V = variants {}; -lin lay_V2 = variants {}; +lin lay_V2 = dirV2 (actionV (mkV186 "полагам") (mkV176 "положа")); lin lay_VS = variants {}; lin lay_figure_N = variants {}; lin lay_off_N = variants {}; @@ -20597,7 +20599,7 @@ lin leapfrog_V2 = variants {}; lin learn_V = variants {}; lin learn_V2 = variants {}; lin learn_VV = variants {}; -lin learn_VS = variants {}; +lin learn_VS = mkVS (actionV (mkV176 "уча") (mkV176 "науча")); lin learned_A = variants {}; lin learner_N = variants {}; lin learning_N = mkN071 "учене" ; @@ -20804,7 +20806,7 @@ lin levant_V = variants {}; lin levantine_A = variants {}; lin levantine_N = variants {}; lin levee_N = variants {}; -lin level_A = variants {}; +lin level_A = mkA079 "равен"; lin level_N = mkN054 "ниво" ; lin level_V = variants {}; lin level_V2 = variants {}; @@ -21455,10 +21457,10 @@ lin lorn_A = variants {}; lin lorna_PN = variants {}; lin lorry_N = mkN007 "камион" ; lin los_angeles_PN = variants {}; -lin lose_V = variants {}; -lin lose_V2 = variants {}; +lin lose_V = actionV (mkV173 "губя") (mkV173 "загубя"); +lin lose_V2 = dirV2 (actionV (mkV173 "губя") (mkV173 "загубя")); lin loser_N = variants {}; -lin loss_N = mkN072 "поражение" ; +lin loss_N = mkN041 "загуба"; lin loss_leader_N = variants {}; lin lossiemouth_PN = variants {}; lin lot_N = variants {}; @@ -21467,7 +21469,7 @@ lin lothian_PN = variants {}; lin lotion_N = variants {}; lin lottery_N = variants {}; lin lotto_N = variants {}; -lin lotus_N = variants {}; +lin lotus_N = mkN007 "лотос"; lin lotus_eater_N = variants {}; lin loud_A = variants {}; lin loud_Adv = variants {}; @@ -22458,7 +22460,7 @@ lin meaningless_A = variants {}; lin meanness_N = variants {}; lin meantime_Adv = variants {}; lin meantime_N = variants {}; -lin meanwhile_Adv = variants {}; +lin meanwhile_Adv = mkAdv "междувременно"; lin meany_N = variants {}; lin measles_N = variants {}; lin measly_A = variants {}; @@ -24364,7 +24366,7 @@ lin newsroom_N = variants {}; lin newssheet_N = variants {}; lin newsstand_N = variants {}; lin newsvendor_N = variants {}; -lin newsworthy_A = variants {}; +lin newsworthy_A = mkA079 "забележителен"; lin newsy_A = variants {}; lin newt_N = variants {}; lin newton_abbot_PN = variants {}; @@ -24701,13 +24703,13 @@ lin notch_V2 = variants {}; lin note_N = mkN041 "бележка"; lin note_V = actionV (mkV186 "забелязвам") (mkV183 "забележа"); lin note_V2 = dirV2 (actionV (mkV186 "забелязвам") (mkV183 "забележа")); -lin note_VS = mkVS (actionV (mkV186 "забелязвам") (mkV183 "забележа")); +lin note_VS = mkVS (actionV (mkV186 "отбелязвам") (mkV183 "отбележа")); lin notebook_N = mkN014 "бележник"; lin notecase_N = variants {}; lin noted_A = mkA079 "известен" ; lin notepaper_N = variants {}; lin noteworthy_A = variants {}; -lin nothing_Adv = variants {}; +lin nothing_NP = variants {}; lin nothingness_N = variants {}; lin notice_N = mkN072 "внимание" ; lin notice_V = variants {}; @@ -24928,7 +24930,7 @@ lin obsequiousness_N = variants {}; lin observable_A = variants {}; lin observance_N = variants {}; lin observant_A = variants {}; -lin observation_N = variants {}; +lin observation_N = mkN072 "наблюдение"; lin observatory_N = variants {}; lin observe_V = variants {}; lin observe_V2 = variants {}; @@ -25242,7 +25244,7 @@ lin opaqueness_N = mkN049 "непрозрачност"; lin opec_PN = mkPN "ОПЕК" Masc; lin open_A = mkA076 "отворен" ; lin open_N = variants {}; -lin open_V = actionV (mkV187 "отварям") (mkV152 "отбегна"); +lin open_V = actionV (mkV187 "отварям") (mkV173 "отворя"); lin open_V2 = dirV2 (actionV (mkV187 "отварям") (mkV152 "отбегна")); lin open_air_A = variants {}; lin open_ended_A = variants {}; @@ -29665,6 +29667,7 @@ lin quit_A = variants {}; lin quit_V = variants {}; lin quit_V2 = variants {}; lin quite_Predet = variants {}; +lin quite_AdA = variants {}; lin quito_PN = variants {}; lin quits_A = variants {}; lin quittance_N = variants {}; @@ -30520,7 +30523,7 @@ lin refutable_A = variants {}; lin refutation_N = variants {}; lin refute_V2 = variants {}; lin reg_PN = variants {}; -lin regain_V2 = variants {}; +lin regain_V2 = dirV2 (medialV (actionV (mkV186 "възвръщам") (mkV152 "възвърна")) Dat); lin regal_A = mkA078 "кралски" ; lin regale_V2 = variants {}; lin regard_N = mkN049 "почит" ; @@ -31007,9 +31010,9 @@ lin reshuffle_V2 = variants {}; lin reside_V = variants {}; lin residence_N = mkN054 "гражданство" ; lin residency_N = mkN047 "резиденция"; -lin resident_A = variants {}; -lin resident_N = mkN031a "жител" ; -lin residential_A = variants {}; +lin resident_A = mkA079 "жилищен"; +lin resident_N = mkN031a "жител"; +lin residential_A = mkA079 "жилищен"; lin residual_A = variants {}; lin residuary_A = variants {}; lin residue_N = variants {}; @@ -31226,7 +31229,7 @@ lin retrousse_A = variants {}; lin retroversion_N = variants {}; lin retsina_N = variants {}; lin return_N = mkN071 "връщане" ; -lin return_V = actionV (mkV186 "връщам") (mkV152 "върна"); +lin return_V = medialV (actionV (mkV186 "връщам") (mkV152 "върна")) Acc; lin return_V2 = dirV2 (actionV (mkV186 "връщам") (mkV152 "върна")); lin return_V2V = mkV2V (actionV (mkV186 "връщам") (mkV152 "върна")) noPrep noPrep; lin returnable_A = variants {}; @@ -31298,8 +31301,8 @@ lin revitalization_N = variants {}; lin revitalize_V2 = variants {}; lin revival_N = mkN071 "възстановяване" ; lin revivalist_N = variants {}; -lin revive_V = variants {}; -lin revive_V2 = variants {}; +lin revive_V = actionV (mkV186 "възобновявам") (mkV174 "възобновя"); +lin revive_V2 = dirV2 (actionV (mkV186 "възобновявам") (mkV174 "възобновя")); lin revivify_V2 = variants {}; lin revocable_A = variants {}; lin revocation_N = variants {}; @@ -31532,7 +31535,7 @@ lin risible_A = variants {}; lin rising_N = variants {}; lin risk_N = mkN001 "риск" ; lin risk_V2 = dirV2 (stateV (mkV186 "рискувам")); -lin risk_VS = mkVS (stateV (mkV186 "рискувам")); +lin risk_VV = mkVV (stateV (mkV186 "рискувам")); lin riskily_Adv = variants {}; lin riskiness_N = mkN049 "рискованост"; lin risky_A = mkA076 "рискован"; @@ -31864,7 +31867,7 @@ lin route_N = mkN072 "направление" ; lin route_V2 = variants {}; lin routemarch_N = variants {}; lin routine_A = mkA079 "рутинен" ; -lin routine_N = variants {}; +lin routine_N = mkN041 "рутина"; lin rove_V = variants {}; lin rove_V2 = variants {}; lin rover_N = variants {}; @@ -33706,7 +33709,7 @@ lin shipbuilder_N = variants {}; lin shipbuilding_N = variants {}; lin shipload_N = variants {}; lin shipmate_N = variants {}; -lin shipment_N = variants {}; +lin shipment_N = mkN041 "доставка"; lin shipowner_N = variants {}; lin shipper_N = variants {}; lin shipping_N = variants {}; @@ -34158,7 +34161,7 @@ lin sin_N = variants {}; lin sin_V = variants {}; lin since_Adv = variants {}; lin since_Subj = variants {}; -lin since_Prep = variants {}; +lin since_Prep = mkPrep "след" Acc; lin sincere_A = variants {}; lin sincerity_N = mkN049 "искреност" ; lin sine_N = variants {}; @@ -35263,7 +35266,7 @@ lin souvenir_N = variants {}; lin sovereign_A = variants {}; lin sovereign_N = variants {}; lin sovereignty_N = mkN007 "суверенитет" ; -lin soviet_A = variants {}; +lin soviet_A = mkA078 "съветски"; lin soviet_N = variants {}; lin sovietize_V2 = variants {}; lin sow_N = variants {}; @@ -35997,7 +36000,6 @@ lin starry_eyed_A = variants {}; lin start_N = mkN001 "старт" ; lin start_V = actionV (mkV186 "започвам") (mkV152 "започна"); lin start_V2 = dirV2 (actionV (mkV186 "започвам") (mkV152 "започна")); -lin start_VS = mkVS (actionV (mkV186 "започвам") (mkV152 "започна")); lin start_ing_VV = mkVV (actionV (mkV186 "започвам") (mkV152 "започна")); lin start_to_VV = mkVV (actionV (mkV186 "започвам") (mkV152 "започна")); lin starter_N = mkN007 "стартер"; @@ -36829,7 +36831,7 @@ lin succulence_N = variants {}; lin succulent_A = variants {}; lin succulent_N = variants {}; lin succumb_V = variants {}; -lin such_Predet = variants {}; +lin such_Predet = {s = table GenNum ["такъв";"такава";"таково";"такива"]}; lin such_as_Prep = mkPrep "като" Acc; lin suchlike_A = variants {}; lin suchow_PN = variants {}; @@ -37152,7 +37154,7 @@ lin surprise_N = mkN071 "изненадване" ; lin surprise_V2 = variants {}; lin surprise_V2V = variants {}; lin surprised_A = variants {}; -lin surprising_A = variants {}; +lin surprising_A = mkA076 "изненадващ"; lin surrealism_N = variants {}; lin surrealist_N = variants {}; lin surrealistic_A = variants {}; @@ -37591,7 +37593,7 @@ lin take_V = actionV (mkV186 "вземам") (mkV171 "взема"); lin take_V2 = dirV2 (actionV (mkV186 "вземам") (mkV171 "взема")); lin take_V2V = mkV2V (actionV (mkV186 "вземам") (mkV171 "взема")) noPrep noPrep; lin take_VA = mkVA (actionV (mkV186 "вземам") (mkV171 "взема")); -lin take_VS = mkVS (actionV (mkV186 "вземам") (mkV171 "взема")); +lin take_V2A = mkV2A (actionV (mkV186 "вземам") (mkV171 "взема")) noPrep; lin take_home_A = variants {}; lin take_off_N = variants {}; lin take_up_N = variants {}; @@ -38186,7 +38188,7 @@ lin thankful_A = variants {}; lin thankfulness_N = variants {}; lin thankless_A = variants {}; lin thanksgiving_N = variants {}; -lin that_Prep = variants {}; +lin that_Subj = {s="че"}; lin that_Quant = mkQuant "онзи" "онази" "онова" "онези"; lin thatch_N = variants {}; lin thatch_V2 = variants {}; @@ -39270,7 +39272,7 @@ lin treat_N = mkN041 "заплаха"; lin treat_V = actionV (mkV186 "заплашвам") (mkV176 "заплаша"); lin treat_V2 = dirV2 (actionV (mkV186 "заплашвам") (mkV176 "заплаша")); lin treatise_N = variants {}; -lin treatment_N = mkN072 "лечение" ; +lin treatment_N = mkN071 "третиране"; lin treaty_N = mkN041 "спогодба" ; lin treble_A = variants {}; lin treble_N = variants {}; @@ -39528,6 +39530,7 @@ lin truthfulness_N = mkN049 "истинност"; lin try_N = mkN007 "опит"; lin try_V = actionV (mkV186 "опитвам") (mkV186 "опитам"); lin try_V2 = dirV2 (actionV (mkV186 "опитвам") (mkV186 "опитам")); +lin try_V2V = variants {}; lin try_VV = variants {}; lin try_VS = variants {}; lin try_on_N = variants {}; @@ -40519,7 +40522,7 @@ lin unnatural_A = variants {}; lin unnecessary_A = variants {}; lin unnerve_V2 = variants {}; lin unnoticeable_A = variants {}; -lin unnoticed_A = variants {}; +lin unnoticed_A = mkA076 "незабелязан"; lin unnumbered_A = variants {}; lin unobjectionable_A = variants {}; lin unobservant_A = variants {}; diff --git a/lib/src/bulgarian/ParseEngBul.gf b/lib/src/bulgarian/ParseEngBul.gf index 2e7d11a92..525e522f8 100644 --- a/lib/src/bulgarian/ParseEngBul.gf +++ b/lib/src/bulgarian/ParseEngBul.gf @@ -23,6 +23,7 @@ open ResBul, Prelude in { flags literal=Symb ; + coding = utf8 ; lin GerundN v = { @@ -51,7 +52,10 @@ lin that_RP = { s = whichRP } ; - + no_RP = { + s = whichRP + } ; + UseQuantPN q pn = { s = table { RObj Dat => "на" ++ pn.s; _ => pn.s diff --git a/lib/src/english/DictEng.gf b/lib/src/english/DictEng.gf index 8203e2949..d489ad869 100644 --- a/lib/src/english/DictEng.gf +++ b/lib/src/english/DictEng.gf @@ -662,6 +662,7 @@ lin aft_Adv = mkAdv "aft"; lin after_A = compoundA (mkA "after"); lin after_Adv = mkAdv "after"; lin after_Prep = mkPrep "after"; +lin after_Subj = mkSubj "after"; lin aftercare_N = mkN "aftercare" ; lin afterdamp_N = mkN "afterdamp" ; lin aftereffect_N = mkN "aftereffect" "aftereffects"; @@ -5319,8 +5320,8 @@ lin carlisle_PN = mkPN "Carlisle"; lin carlow_PN = mkPN "Carlow"; lin carluke_PN = mkPN "Carluke"; lin carmarthen_PN = mkPN "Carmarthen"; -lin carmelite_A = compoundA (mkA "carmelite"); -lin carmelite_N = mkN "carmelite" "carmelites"; +lin carmelite_A = compoundA (mkA "Carmelite"); +lin carmelite_N = mkN "Carmelite" "Carmelites"; lin carmine_A = compoundA (mkA "carmine"); lin carmine_N = mkN "carmine" "carmines"; lin carnage_N = mkN "carnage" ; @@ -5666,7 +5667,7 @@ lin central_N = mkN "central" "centrals"; lin centralization_N = mkN "centralization" "centralizations"; lin centralize_V = mkV "centralize" "centralizes" "centralized" "centralized" "centralizing"; lin centralize_V2 = mkV2 (mkV "centralize" "centralizes" "centralized" "centralized" "centralizing"); -lin centre_N = mkN "centre" "centres"; +lin centre_N = mkN (variants {"centre"; "center"}); lin centre_V = mkV "centre" "centres" "centred" "centred" "centring"; lin centre_V2 = mkV2 (mkV "centre" "centres" "centred" "centred" "centring"); lin centre_bit_N = mkN "centre - bit" "centre - bits"; @@ -8831,7 +8832,7 @@ lin customize_V2 = mkV2 (mkV "customize"); lin cut_N = mkN "cut" "cuts"; lin cut_V = IrregEng.cut_V; lin cut_V2 = mkV2 (IrregEng.cut_V); -lin cut_VS = mkVS (IrregEng.cut_V); +lin cut_V2A = mkV2A (IrregEng.cut_V) noPrep; lin cut_out_N = mkN "cut - out" "cut - outs"; lin cut_price_A = compoundA (mkA "cut - price"); lin cut_rate_A = compoundA (mkA "cut - rate"); @@ -13045,7 +13046,6 @@ lin fall_N = mkN "fall" "falls"; lin fall_V = IrregEng.fall_V; lin fall_V2 = mkV2 (IrregEng.fall_V); lin fall_VA = mkVA (IrregEng.fall_V); -lin fall_VS = mkVS (IrregEng.fall_V); lin fallacious_A = compoundA (mkA "fallacious"); lin fallacy_N = mkN "fallacy" "fallacies"; lin fallibility_N = mkN "fallibility" ; @@ -13306,7 +13306,6 @@ lin fell_A = compoundA (mkA "fell"); lin fell_V2 = mkV2 (mkV "fell" "fells" "felled" "felled" "felling"); lin fell_V2V = mkV2V (mkV "fell") noPrep to_Prep ; lin fell_VA = mkVA (mkV "fell"); -lin fell_VS = mkVS (mkV "fell"); lin fellah_N = mkN "fellah" (variants {"fellahin"; "fellaheen"}); lin fellow_N = mkN "fellow" "fellows"; lin fellow_feeling_N = mkN "fellow - feeling" ; @@ -19875,7 +19874,8 @@ lin keenness_N = mkN "keenness" ; lin keep_N = mkN "keep" "keeps"; lin keep_V = IrregEng.keep_V; lin keep_V2 = mkV2 (IrregEng.keep_V); -lin keep_V2V = mkV2V (IrregEng.keep_V) noPrep to_Prep; +lin keep_to_V2V = mkV2V (IrregEng.keep_V) noPrep to_Prep; +lin keep_ing_V2V = ingV2V (IrregEng.keep_V) noPrep noPrep; lin keep_VA = mkVA (IrregEng.keep_V); lin keep_VS = mkVS (IrregEng.keep_V); lin keep_VV = ingVV (IrregEng.keep_V); @@ -20125,6 +20125,7 @@ lin know_V = mkV "know" "knows" "knew" "known" "knowing"; lin know_V2 = mkV2 (mkV "know" "knows" "knew" "known" "knowing"); lin know_V2V = mkV2V (mkV "know" "knows" "knew" "known" "knowing") noPrep to_Prep ; lin know_VS = mkVS (mkV "know" "knows" "knew" "known" "knowing"); +lin know_VQ = mkVQ (mkV "know" "knows" "knew" "known" "knowing"); lin know_all_N = mkN "know - all" "know - alls"; lin know_how_N = mkN "know - how" ; lin knowing_A = compoundA (mkA "knowing"); @@ -24722,7 +24723,7 @@ lin notecase_N = mkN "notecase" "notecases"; lin noted_A = compoundA (mkA "noted"); lin notepaper_N = mkN "notepaper" ; lin noteworthy_A = compoundA (mkA "noteworthy"); -lin nothing_Adv = mkAdv "nothing"; +lin nothing_NP = regNP "nothing" singular; lin nothingness_N = mkN "nothingness" ; lin notice_N = mkN "notice" "notices"; lin notice_V = mkV "notice" "notices" "noticed" "noticed" "noticing"; @@ -29669,6 +29670,7 @@ lin quit_A = compoundA (mkA "quit"); lin quit_V = variants {mkV "quit" "quits" "quit" "quit" "quitting"; mkV "quit" "quits" "quitted" "quitted" "quitting"}; lin quit_V2 = mkV2 (variants {mkV "quit" "quits" "quit" "quit" "quitting"; mkV "quit" "quits" "quitted" "quitted" "quitting"}); lin quite_Predet = ss "quite"; +lin quite_AdA = mkAdA "quite"; lin quito_PN = mkPN "Quito"; lin quits_A = compoundA (mkA "quits"); lin quittance_N = mkN "quittance" "quittances"; @@ -31534,7 +31536,7 @@ lin risible_A = compoundA (mkA "risible"); lin rising_N = mkN "rising" "risings"; lin risk_N = mkN "risk" "risks"; lin risk_V2 = mkV2 (mkV "risk" "risks" "risked" "risked" "risking"); -lin risk_VS = mkVS (mkV "risk"); +lin risk_VV = ingVV (mkV "risk"); lin riskily_Adv = mkAdv "riskily"; lin riskiness_N = mkN "riskiness" ; lin risky_A = mkA "risky" "riskier"; @@ -36001,7 +36003,6 @@ lin start_V = mkV "start" "starts" "started" "started" "starting"; lin start_V2 = mkV2 (mkV "start" "starts" "started" "started" "starting"); lin start_to_VV = mkVV (mkV "start" "starts" "started" "started" "starting"); lin start_ing_VV = ingVV (mkV "start" "starts" "started" "started" "starting"); -lin start_VS = mkVS (mkV "start" "starts" "started" "started" "starting"); lin starter_N = mkN "starter" "starters"; lin starting_gate_N = mkN "starting - gate" "starting - gates"; lin starting_point_N = mkN "starting - point" "starting - points"; @@ -37591,7 +37592,7 @@ lin take_V = IrregEng.take_V; lin take_V2 = mkV2 (IrregEng.take_V); lin take_V2V = mkV2V (IrregEng.take_V) noPrep to_Prep; lin take_VA = mkVA (IrregEng.take_V); -lin take_VS = mkVS (IrregEng.take_V); +lin take_V2A = mkV2A (IrregEng.take_V) noPrep; lin take_home_A = compoundA (mkA "take - home"); lin take_off_N = mkN "take - off" "take - offs"; lin take_up_N = mkN "take - up" ; @@ -38187,7 +38188,7 @@ lin thankful_A = compoundA (mkA "thankful"); lin thankfulness_N = mkN "thankfulness" ; lin thankless_A = compoundA (mkA "thankless"); lin thanksgiving_N = mkN "thanksgiving" "thanksgivings"; -lin that_Prep = mkPrep "that"; +lin that_Subj = mkSubj "that"; lin that_Quant = mkQuant "that" "those" ; lin thatch_N = mkN "thatch" ; lin thatch_V2 = mkV2 (mkV "thatch" "thatches" "thatched" "thatched" "thatching"); @@ -39533,6 +39534,7 @@ lin truthfulness_N = mkN "truthfulness" ; lin try_N = mkN "try" "tries"; lin try_V = mkV "try" "tries" "tried" "tried" "trying"; lin try_V2 = mkV2 (mkV "try" "tries" "tried" "tried" "trying"); +lin try_V2V = mkV2V (mkV "try" "tries" "tried" "tried" "trying") noPrep to_Prep; lin try_VV = mkVV (mkV "try" "tries" "tried" "tried" "trying"); lin try_VS = mkVS (mkV "try" "tries" "tried" "tried" "trying"); lin try_on_N = mkN "try - on" "try - ons"; diff --git a/lib/src/english/DictEngAbs.gf b/lib/src/english/DictEngAbs.gf index 4825389ca..712aaa95b 100644 --- a/lib/src/english/DictEngAbs.gf +++ b/lib/src/english/DictEngAbs.gf @@ -657,6 +657,7 @@ fun aft_Adv : Adv; fun after_A : A; fun after_Adv : Adv; fun after_Prep : Prep ; +fun after_Subj : Subj ; fun aftercare_N : N; fun afterdamp_N : N; fun aftereffect_N : N; @@ -8813,7 +8814,7 @@ fun customize_V2 : V2; fun cut_N : N; fun cut_V : V; fun cut_V2 : V2; -fun cut_VS : VS; +fun cut_V2A : V2A; fun cut_out_N : N; fun cut_price_A : A; fun cut_rate_A : A; @@ -13025,7 +13026,6 @@ fun fall_N : N; fun fall_V : V; fun fall_V2 : V2; fun fall_VA : VA; -fun fall_VS : VS; fun fallacious_A : A; fun fallacy_N : N; fun fallibility_N : N; @@ -13286,7 +13286,6 @@ fun fell_A : A; fun fell_V2 : V2; fun fell_V2V : V2V; fun fell_VA : VA; -fun fell_VS : VS; fun fellah_N : N; fun fellow_N : N; fun fellow_feeling_N : N; @@ -19851,7 +19850,8 @@ fun keenness_N : N; fun keep_N : N; fun keep_V : V; fun keep_V2 : V2; -fun keep_V2V : V2V; +fun keep_to_V2V : V2V; +fun keep_ing_V2V : V2V; fun keep_VA : VA; fun keep_VS : VS; fun keep_VV : VV; @@ -20101,6 +20101,7 @@ fun know_V : V; fun know_V2 : V2; fun know_V2V : V2V; fun know_VS : VS; +fun know_VQ : VQ; fun know_all_N : N; fun know_how_N : N; fun knowing_A : A; @@ -24670,7 +24671,7 @@ fun notecase_N : N; fun noted_A : A; fun notepaper_N : N; fun noteworthy_A : A; -fun nothing_Adv : Adv; +fun nothing_NP : NP; fun nothingness_N : N; fun notice_N : N; fun notice_V : V; @@ -29617,6 +29618,7 @@ fun quit_A : A; fun quit_V : V; fun quit_V2 : V2; fun quite_Predet : Predet; +fun quite_AdA : AdA; fun quito_PN : PN; fun quits_A : A; fun quittance_N : N; @@ -31480,7 +31482,7 @@ fun risible_A : A; fun rising_N : N; fun risk_N : N; fun risk_V2 : V2; -fun risk_VS : VS; +fun risk_VV : VV; fun riskily_Adv : Adv; fun riskiness_N : N; fun risky_A : A; @@ -35936,7 +35938,6 @@ fun start_V : V; fun start_V2 : V2; fun start_to_VV : VV; fun start_ing_VV : VV; -fun start_VS : VS; fun starter_N : N; fun starting_gate_N : N; fun starting_point_N : N; @@ -37526,7 +37527,7 @@ fun take_V : V; fun take_V2 : V2; fun take_V2V : V2V; fun take_VA : VA; -fun take_VS : VS; +fun take_V2A : V2A; fun take_home_A : A; fun take_off_N : N; fun take_up_N : N; @@ -38121,7 +38122,7 @@ fun thankful_A : A; fun thankfulness_N : N; fun thankless_A : A; fun thanksgiving_N : N; -fun that_Prep : Prep; +fun that_Subj : Subj; fun that_Quant : Quant; fun thatch_N : N; fun thatch_V2 : V2; @@ -39463,6 +39464,7 @@ fun truthfulness_N : N; fun try_N : N; fun try_V : V; fun try_V2 : V2; +fun try_V2V : V2V; fun try_VV : VV; fun try_VS : VS; fun try_on_N : N; diff --git a/lib/src/english/ParseEng.gf b/lib/src/english/ParseEng.gf index 4fea6e583..6c200bf15 100644 --- a/lib/src/english/ParseEng.gf +++ b/lib/src/english/ParseEng.gf @@ -134,7 +134,16 @@ lin a = np.a } ; -{- GerundRS rp vp = { +{- + PastPartRS ant pol vp = { + s = let + be = predAux auxBe ; + ppt = vps.ptp + in \\c => np.s ! c ++ vps.ad ++ vps.ptp ++ vps.s2 ! np.a ; + a = np.a + } ; + + PresPartRS rp vp = { s = \\t,ant,b,ag => let agr = case rp.a of { @@ -144,10 +153,17 @@ lin cl = mkClause (rp.s ! RC (fromAgr agr).g npNom) agr vp in cl.s ! t ! ant ! b ! ODir ; - c = npNom + c = npNom } ; -} + ApposNP np1 np2 = { + s = \\c => np1.s ! c ++ "," ++ np2.s ! npNom ; + a = np1.a + } ; + + AdAdV = cc2 ; + lin PPos = {s = [] ; p = CPos} ; PNeg = {s = [] ; p = CNeg True} ; -- contracted: don't diff --git a/lib/src/english/ParseEngAbs.gf b/lib/src/english/ParseEngAbs.gf index 5ad44fd31..b99d07ef6 100644 --- a/lib/src/english/ParseEngAbs.gf +++ b/lib/src/english/ParseEngAbs.gf @@ -58,6 +58,11 @@ fun CompoundCN : Num -> N -> CN -> CN ; UncNeg : Pol ; --- GerundRS : Anter -> Pol -> VP -> RS ; +-- PastPartRS : Anter -> Pol -> VP -> RS ; +-- PresPartRS : Anter -> Pol -> VP -> RS ; + + ApposNP : NP -> NP -> NP ; + + AdAdV : AdA -> AdV -> AdV ; }