diff --git a/lib/src/translator/CheckDict.hs b/lib/src/translator/CheckDict.hs index dc5308b5b..54ee27463 100644 --- a/lib/src/translator/CheckDict.hs +++ b/lib/src/translator/CheckDict.hs @@ -34,6 +34,20 @@ mergeDict lang = do writeFile (gfFile "tmp/Dictionary" lang) $ unlines $ fromTop header ++ [unwords ("lin":f:"=":[ws]) | (f,ws) <- Data.Map.assocs newmap] ++ ["}"] -- print revised file to tmp/ +changeFunNames nameFile lang = do + ns <- readFile nameFile + let names = Data.Map.fromList [(old,new) | old:new:_ <- map words (lines ns)] -- format: "old new" on separate lines + let look w = Data.Map.lookup w names + dict <- readFile (gfFile "Dictionary" lang) >>= return . lines -- read old lexicon + let + change line = case words line of + "lin":f:ws -> case look f of + Just g -> unwords $ "lin":g:ws + _ -> line + _ -> line + writeFile (gfFile "tmp/Dictionary" lang) $ unlines $ map change dict + + -- get the part of Dict before the first lin rule getHeader = takeWhile ((/= "lin") . take 3) diff --git a/lib/src/translator/DictionaryGer.gf b/lib/src/translator/DictionaryGer.gf index 8be948333..fe59d2fc4 100644 --- a/lib/src/translator/DictionaryGer.gf +++ b/lib/src/translator/DictionaryGer.gf @@ -1402,7 +1402,7 @@ lin anonymity_N = variants {}; lin anonymous_A = mk3A "anonym" "anonymer" "anonymste"; lin anopheles_N = variants {}; lin anorak_N = reg2N "Anorak" "Anoraks" masculine; -lin another_Det = variants{} ; -- +lin another_Det = M.detLikeAdj False M.Sg "ander" ; lin anshan_PN = variants {}; lin answer_N = reg2N "Antwort" "Antworten" feminine; lin answer_V = variants{} ; -- @@ -1764,7 +1764,7 @@ lin ardour_N = variants {}; lin ardrossan_PN = variants {}; lin arduous_A = mk3A "anstrengend" "anstrengender" "anstrengendste"; lin are_N = variants {}; -lin area_1_N = variants{} ; -- +lin area_1_N = reg2N "Gebiet" "Gebiete" neuter; lin area_2_N = variants{} ; -- lin area_3_N = variants{} ; -- lin area_4_N = variants{} ; -- @@ -1979,12 +1979,12 @@ lin asiatic_N = variants {}; lin aside_Adv = variants{} ; -- lin aside_N = variants {}; lin asinine_A = variants {}; -lin ask_V = irregV "bitten" "bittet" "bat" "bäte" "gebeten" ; -lin ask_V2 = dirV2 (irregV "bitten" "bittet" "bat" "bäte" "gebeten" ); -lin ask_V2V = variants{}; -- dirV2 (irregV "bitten" "bittet" "bat" "bäte" "gebeten" ); -lin ask_VQ = variants{}; -- dirV2 (irregV "bitten" "bittet" "bat" "bäte" "gebeten" ); -lin ask_VS = variants{}; -- dirV2 (irregV "bitten" "bittet" "bat" "bäte" "gebeten" ); -lin ask_VV = variants{}; -- irregV "bitten" "bittet" "bat" "bäte" "gebeten" ; +lin ask_V = I.bitten_V ; +lin ask_V2 = mkV2 I.bitten_V ; +lin ask_V2V = mkV2V I.bitten_V ; +lin ask_VQ = mkVQ (mkV "fragen") ; +lin ask_VS = mkVS (mkV "fragen") ; +lin ask_VV = mkVV I.bitten_V ; lin ask_about_V2 = variants {}; lin ask_after_V2 = variants {}; lin ask_around_V = variants {}; @@ -3078,7 +3078,7 @@ lin beckon_V2 = dirV2 (regV "winken"); lin become_V = seinV werden_V ; lin become_V2 = mkV2 (seinV werden_V) ; ---- subcat : VN lin become_VA = mkVA (seinV werden_V) ; -lin become_VS = variants{}; -- dirV2 (irregV "stehen" "steht" "stand" "stände" "gestanden" ); +lin become_VS = mkVS (seinV werden_V) ; ---- subcat lin becoming_A = variants {}; lin bed_N = reg2N "Bank" "Bänke" feminine; lin bed_V2 = variants {}; @@ -5121,9 +5121,9 @@ lin calk_V2 = variants {}; lin call_N = reg2N "Anruf" "Anrufe" masculine; lin call_V = I.rufen_V ; lin call_V2 = mkV2 (prefixV "an" I.rufen_V) ; -lin call_V2A = variants{} ; -- -lin call_V2V = variants{} ; -- -lin call_V3 = variants{} ; -- +lin call_V2A = variants{}; -- mkV2 (prefixV "an" I.rufen_V) ; +lin call_V2V = variants{}; -- mkV2 (prefixV "an" I.rufen_V) ; +lin call_V3 = variants{}; -- mkV2 (prefixV "an" I.rufen_V) ; lin call_VS = variants {}; lin call_box_N = variants {}; lin call_girl_N = variants {}; @@ -5530,7 +5530,7 @@ lin caryatid_N = variants {}; lin casablanca_PN = variants {}; lin cascade_N = reg2N "Kaskade" "Kaskaden" feminine; lin cascade_V = variants {}; -lin case_N = reg2N "Behälter" "Behälter" masculine; +lin case_N = mkN "Fall" "Fälle" masculine | reg2N "Behälter" "Behälter" masculine ; ---- split lin case_V2 = variants {}; lin case_hardened_A = variants {}; lin case_history_N = variants {}; @@ -13852,11 +13852,11 @@ lin financially_Adv = variants{} ; -- lin financier_N = reg2N "Finanzier" "Finanziers" masculine; lin finch_N = reg2N "Fink" "Finken" masculine; lin find_N = variants {}; -lin find_V = irregV "finden" "findet" "fand" "fände" "gefunden" ; -lin find_V2 = dirV2 (irregV "finden" "findet" "fand" "fände" "gefunden"); -lin find_V2A = variants{}; -- dirV2 (irregV "finden" "findet" "fand" "fände" "gefunden"); -lin find_V2V = variants{}; -- dirV2 (irregV "finden" "findet" "fand" "fände" "gefunden"); -lin find_VS = variants{}; -- dirV2 (irregV "finden" "findet" "fand" "fände" "gefunden"); +lin find_V = I.finden_V ; +lin find_V2 = mkV2 I.finden_V ; +lin find_V2A = mkV2A I.finden_V ; +lin find_V2V = mkV2V I.finden_V ; +lin find_VS = mkVS I.finden_V ; lin finder_N = variants {}; lin finding_N = variants{} ; -- lin fine_A = mk3A "filigran" "filigraner" "filigranste"; @@ -16167,7 +16167,7 @@ lin greaser_N = variants {}; lin greasily_Adv = variants {}; lin greasiness_N = variants {}; lin greasy_A = mk3A "schmierig" "schmieriger" "schmierigste"; -lin great_A = mk3A "fein" "feiner" "feinste"; +lin great_A = mkA "grossartig" | mk3A "fein" "feiner" "feinste"; lin great_harwood_PN = variants {}; lin great_malvern_PN = variants {}; lin great_shelford_PN = variants {}; @@ -17209,9 +17209,9 @@ lin helot_N = variants {}; lin help_N = reg2N "Hilfe" "Hilfen" feminine; lin help_V = helfen_V ; lin help_V2 = mkV2 helfen_V dative ; -lin help_V2V = variants{} ; -- -lin help_VS = variants{} ; -- -lin help_VV = variants{} ; -- +lin help_V2V = variants{}; -- mkV2 helfen_V dative ; +lin help_VS = variants{}; -- mkV2 helfen_V dative ; +lin help_VV = variants{}; -- helfen_V ; lin helperFem_N = variants {}; lin helperMasc_N = variants {}; lin helpful_A = mk3A "hilfreich" "hilfreicher" "hilfreichste"; @@ -19789,7 +19789,7 @@ lin issue_V = variants{} ; -- lin issue_V2 = variants{} ; -- lin istanbul_PN = variants {}; lin isthmus_N = reg2N "Isthmus" "Isthmen" masculine; -lin it_Pron = M.mkPronPers "es" "es" "ihm" "seiner" "sein" R.Neutr R.Sg R.P3; +lin it_Pron = M.mkPronPers "es" "es" "ihm" "seiner" "sein" R.Neutr R.Sg R.P3 | let s = Predef.BIND ++ "'s" in M.mkPronPers s s "ihm" "seiner" "sein" R.Neutr R.Sg R.P3; lin italian_A = mk3A "italienisch" "italienischer" "italienischste"; lin italian_N = variants {}; lin italic_A = regA "kursiv"; @@ -21098,11 +21098,11 @@ lin leatherneck_N = variants {}; lin leatherwork_N = variants {}; lin leathery_A = variants {}; lin leave_N = variants{} ; -- -lin leave_V = irregV "lassen" "lasst" "ließ" "ließe" "gelassen" ; -lin leave_V2 = dirV2 (irregV "verlassen" "verläßt" "verließ" "verließe" "verlassen"); -lin leave_V2V = variants{}; -- dirV2 (irregV "verlassen" "verläßt" "verließ" "verließe" "verlassen"); -lin leave_VS = variants{}; -- dirV2 (irregV "verlassen" "verläßt" "verließ" "verließe" "verlassen"); -lin leave_VV = variants{}; -- irregV "lassen" "lasst" "ließ" "ließe" "gelassen" ; +lin leave_V = seinV (mkV "ab" I.fahren_V) ; +lin leave_V2 = mkV2 (fixprefixV "ver" I.lassen_V) ; +lin leave_V2V = mkV2V I.lassen_V ; +lin leave_VS = mkVS I.lassen_V ; ---- subcat +lin leave_VV = mkVV I.lassen_V ; ---- subcat lin leave_taking_N = variants {}; lin leaven_N = reg2N "Treibmittel" "Treibmittel" neuter; lin leaven_V2 = variants {}; @@ -21474,7 +21474,7 @@ lin likable_A = variants {}; lin like_A = variants{} ; -- lin like_Adv = variants{} ; -- lin like_N = variants{} ; -- -lin like_Prep = variants{} ; -- +lin like_Prep = mkPrep "wie"nominative ; -- lin like_Subj = variants{} ; -- lin like_V2 = dirV2 (irregV "mögen" "mag" "mochte" "möchte" "gemocht"); lin like_V2V = variants{}; -- dirV2 (irregV "mögen" "mag" "mochte" "möchte" "gemocht"); @@ -21903,10 +21903,10 @@ lin loofa_N = variants {}; lin loofah_N = variants {}; lin look_N = variants{} ; -- lin look_V = regV "blicken"; -lin look_V2 = dirV2 (regV "blicken"); -lin look_V2V = variants{}; -- dirV2 (regV "blicken"); -lin look_VA = variants{}; -- regV "blicken"; -lin look_VV = variants{}; -- regV "blicken"; +lin look_V2 = dirV2 (regV "gucken"); +lin look_V2V = mkV2V (mkV "gucken") ; ---- subcat +lin look_VA = mkVA (mkV "aus" I.sehen_V) ; +lin look_VV = mkVV (mkV "gucken") ; ---- subcat lin look_over_N = variants {}; lin looker_N = variants {}; lin looker_on_N = variants {}; @@ -22972,9 +22972,9 @@ lin mean_A = mk3A "mittel" "mittlere" "mittelstee"; lin mean_N = reg2N "Durchschnitt" "Durchschnitte" masculine; lin mean_V = mkV "meinen" ; ---- subcat lin mean_V2 = mkV2 "meinen" ; -lin mean_V2V = variants{}; -- dirV2 (regV "beabsichtigen"); -lin mean_VA = variants{}; -- regV "beabsichtigen"; -lin mean_VS = mkVS (mkV "meinen") ; +lin mean_V2V = mkV2V (mkV "meinen") ; ---- subcat +lin mean_VA = mkVA (no_geV (mkV "bedeuten")) ; +lin mean_VS = mkVS (mkV "meinen") | mkVS (no_geV (mkV "bedeuten")) ; lin mean_VV = mkVV (mkV "meinen") ; lin meander_V = variants {}; lin meanderingly_Adv = variants {}; @@ -24719,8 +24719,8 @@ lin nee_A = variants {}; lin need_N = reg2N "Bedarf" "Bedarfe" masculine; lin need_V = mkV "brauchen" ; lin need_V2 = mkV2 (mkV "brauchen") ; -lin need_V2V = variants{} ; -- -lin need_VS = variants{} ; -- +lin need_V2V = mkV2V (mkV "brauchen") ; +lin need_VS = mkVS (mkV "brauchen") ; lin need_VV = mkVV (mkV "brauchen") ; lin needful_A = variants {}; lin needle_N = reg2N "Nadel" "Nadeln" feminine; @@ -25047,7 +25047,7 @@ lin nitwit_N = variants {}; lin nitwitted_A = variants {}; lin nix_N = variants {}; lin nix_V2 = variants {}; -lin no_Interj = variants{} ; -- +lin no_Interj = mkInterj "nein" ; lin no_Quant = S.no_Quant ; lin no_ball_N = variants {}; lin no_fewer_than_AdN = variants {}; @@ -25343,7 +25343,7 @@ lin nullity_N = variants {}; lin numb_A = variants {}; lin numb_V2 = variants {}; lin number_1_N = mkN "Zahl" "Zahlen" feminine ; -lin number_2_N = variants{} ; -- +lin number_2_N = mkN "Anzahl" "Anzahlen" feminine ; lin number_3_N = variants{} ; -- lin number_N = reg2N "Zahl" "Zahlen" feminine; lin number_V2 = variants {}; @@ -25767,7 +25767,7 @@ lin omniscience_N = variants {}; lin omniscient_A = variants {}; lin omnivorous_A = variants {}; lin omsk_PN = variants {}; -lin on_Adv = variants{}; -- mkPrep "auf" dative; +lin on_Adv = mkAdv "auf" ; lin on_Prep = mkPrep "auf" dative; lin on_licence_N = variants {}; lin once_AdV = variants {}; @@ -30108,10 +30108,10 @@ lin pussycat_N = variants {}; lin pussyfoot_V = variants {}; lin pustule_N = variants {}; lin put_N = variants {}; -lin put_V = irregV "legen" "legt" "legte" "legte" "legt"; +lin put_V = mkV "setzen" ; ---- subcat lin put_V2 = dirV2 (regV "setzen"); -lin put_V2V = variants{}; -- dirV2 (regV "setzen"); -lin put_VS = variants{}; -- dirV2 (regV "setzen"); +lin put_V2V = mkV2V (regV "setzen"); +lin put_VS = mkVS (regV "setzen"); lin put_down_N = variants {}; lin put_on_N = variants {}; lin putative_A = regA "mutmaßlich"; @@ -33851,11 +33851,11 @@ lin seek_V2 = dirV2 (regV "suchen"); lin seek_VS = variants {}; lin seek_VV = variants{}; -- dirV2 (regV "suchen"); lin seeker_N = variants {}; -lin seem_V = irregV "dünken" "dünkt" "deuchte" "deuche" "gedeucht" ; -lin seem_V2 = dirV2 (irregV "dünken" "dünkt" "deuchte" "deuche" "gedeucht" ); -lin seem_VA = variants{}; -- irregV "dünken" "dünkt" "deuchte" "deuche" "gedeucht" ; -lin seem_VS = variants{}; -- dirV2 (irregV "dünken" "dünkt" "deuchte" "deuche" "gedeucht" ); -lin seem_VV = variants{}; -- irregV "dünken" "dünkt" "deuchte" "deuche" "gedeucht" ; +lin seem_V = mkV "aus" I.sehen_V ; +lin seem_V2 = mkV2 (mkV "aus" I.sehen_V) ; +lin seem_VA = mkVA (mkV "aus" I.sehen_V) ; +lin seem_VS = mkVS (mkV "aus" I.sehen_V) ; +lin seem_VV = mkVV (mkV "aus" I.sehen_V) ; lin seeming_A = variants {}; lin seemingly_Adv = variants{} ; -- lin seemliness_N = variants {}; @@ -34305,6 +34305,7 @@ lin shaking_N = variants {}; lin shaky_A = variants {}; lin shale_N = reg2N "Schiefer" "Schiefer" masculine; lin shale_oil_N = variants {}; +lin shall_VV = auxVV I.sollen_V ; lin shallot_N = reg2N "Schalotte" "Schalotten" feminine; lin shallow_A = mk3A "flach" "flacher" "flachste"; lin shallow_N = variants {}; @@ -34623,7 +34624,6 @@ lin shot_tower_N = variants {}; lin shotgun_N = reg2N "Beifahrersitz" "Beifahrersitze" masculine; lin shotton_PN = variants {}; lin shotts_PN = variants {}; -lin shall_VV = auxVV I.sollen_V ; lin should_VV = auxVV I.sollen_V ; ---- lin shoulder_N = reg2N "Schulter" "Schultern" feminine; lin shoulder_V2 = variants {}; @@ -34644,10 +34644,10 @@ lin shovel_board_N = variants {}; lin shovelful_N = variants {}; lin show_N = variants{} ; -- lin show_V = regV "zeigen"; -lin show_V2 = dirV2 (regV "zeigen"); -lin show_V2V = variants{}; -- dirV2 (regV "zeigen"); -lin show_VQ = variants{}; -- dirV2 (regV "zeigen"); -lin show_VS = variants{}; -- dirV2 (regV "zeigen"); +lin show_V2 = mkV2 (regV "zeigen"); +lin show_V2V = mkV2V (regV "zeigen"); +lin show_VQ = mkVQ (regV "zeigen"); +lin show_VS = mkVS (regV "zeigen"); lin show_business_N = variants {}; lin show_off_N = variants {}; lin show_up_V = variants {}; @@ -38823,16 +38823,16 @@ lin television_N = reg2N "Fernsehen" "Fernsehen" neuter; lin telex_N = variants {}; lin telfer_N = variants {}; lin telford_PN = variants {}; -lin tell_1_V3 = variants{} ; -- -lin tell_2_V3 = variants{} ; -- -lin tell_V = irregV "erzählen" "erzählt" "erzählte" "erzählte" "erzählt"; -lin tell_V2 = dirV2 (irregV "erzählen" "erzählt" "erzählte" "erzählte" "erzählt"); -lin tell_V2Q = variants{}; -- dirV2 (irregV "erzählen" "erzählt" "erzählte" "erzählte" "erzählt"); -lin tell_V2S = variants{}; -- dirV2 (irregV "erzählen" "erzählt" "erzählte" "erzählte" "erzählt"); -lin tell_V2V = variants{}; -- dirV2 (irregV "erzählen" "erzählt" "erzählte" "erzählte" "erzählt"); -lin tell_V3 = variants{}; -- dirV2 (irregV "erzählen" "erzählt" "erzählte" "erzählte" "erzählt"); -lin tell_VS = variants{}; -- dirV2 (irregV "erzählen" "erzählt" "erzählte" "erzählte" "erzählt"); -lin tell_VV = variants{}; -- irregV "erzählen" "erzählt" "erzählte" "erzählte" "erzählt"; +lin tell_1_V3 = mkV3 (no_geV (mkV "erzählen")) ; +lin tell_2_V3 = mkV3 (fixprefixV "unter" I.scheiden_V) accPrep von_Prep ; +lin tell_V = no_geV (mkV "erzählen") ; +lin tell_V2 = mkV2 (no_geV (mkV "erzählen")) ; +lin tell_V2Q = mkV2Q (no_geV (mkV "erzählen")) ; +lin tell_V2S = mkV2S (no_geV (mkV "erzählen")) ; +lin tell_V2V = mkV2V (no_geV (mkV "erzählen")) ; +lin tell_V3 = mkV3 (no_geV (mkV "erzählen")) ; +lin tell_VS = mkVS (no_geV (mkV "erzählen")) ; +lin tell_VV = mkVV (no_geV (mkV "erzählen")) ; ---- subcat lin teller_N = reg2N "Bankautomat" "Bankautomaten" masculine; lin telling_A = variants {}; lin telltale_N = variants {}; @@ -39429,6 +39429,7 @@ lin tilde_N = reg2N "Tilde" "Tilden" feminine; lin tile_N = reg2N "Dachziegel" "Dachziegel" masculine; lin tile_V2 = variants {}; lin till_N = variants {}; +lin till_Prep = variants{} ; -- lin till_Subj = variants{} ; -- lin till_V2 = variants {}; lin tillage_N = variants {}; @@ -41680,7 +41681,7 @@ lin untidiness_N = variants {}; lin untidy_A = mk3A "unordentlich" "unordentlicher" "unordentlichste"; lin untie_V = variants {}; lin untie_V2 = variants {}; -lin until_Prep = mkPrep "bis" ; +lin until_Prep = variants{} ; -- lin until_Subj = ss "bis" ; lin untimely_A = variants {}; lin untiring_A = variants {}; @@ -41861,10 +41862,10 @@ lin usable_A = regA "nutzbar"; lin usaf_N = variants {}; lin usage_N = reg2N "Gebrauch" "Gebräuche" masculine; lin use_N = mkN "Verwendung"; -lin use_V = variants{}; -- dirV2 (irregV "verwenden" "verwendet" "verwendete" "verwendete" "verwendet"); +lin use_V = no_geV (mkV "benützen") ; lin use_V2 = dirV2 (irregV "verwenden" "verwendet" "verwendete" "verwendete" "verwendet"); -lin use_V2V = variants{}; -- dirV2 (irregV "verwenden" "verwendet" "verwendete" "verwendete" "verwendet"); -lin use_VV = variants{}; -- dirV2 (irregV "verwenden" "verwendet" "verwendete" "verwendete" "verwendet"); +lin use_V2V = mkV2V (no_geV (mkV "benützen")) ; +lin use_VV = mkVV (mkV "pflegen") ; lin used_A = variants{} ; -- lin useful_A = mk3A "nützlich" "nützlicher" "nützlichste"; lin usefulness_N = variants {}; @@ -42685,10 +42686,10 @@ lin wank_N = variants {}; lin wank_V = irregV "onanieren" "onaniert" "onanierte" "onanierte" "onaniert"; lin wanness_N = variants {}; lin want_N = variants{} ; -- -lin want_V = regV "wollen"; -lin want_V2 = dirV2 (regV "wollen"); -lin want_V2V = variants{}; -- S.want_VV ; -lin want_VS = variants{}; -- dirV2 (regV "wollen"); +lin want_V = I.wollen_V ; +lin want_V2 = mkV2 I.wollen_V ; +lin want_V2V = mkV2V I.wollen_V ; +lin want_VS = mkVS I.wollen_V ; lin want_VV = S.want_VV ; lin want_ad_N = variants {}; lin wantage_PN = variants {}; @@ -43723,8 +43724,8 @@ lin work_1_V = mkV "arbeiten" ; lin work_2_V = mkV "funktionieren" ; lin work_N = reg2N "Arbeit" "Arbeiten" feminine; lin work_V = mkV "arbeiten" ; -lin work_V2 = variants{} ; -- -lin work_VV = variants{} ; -- +lin work_V2 = mkV2 (no_geV (mkV "bearbeiten")) ; +lin work_VV = mkVV (no_geV (mkV "funktionieren")) ; lin work_in_N = variants {}; lin work_out_N = variants {}; lin work_study_N = variants {}; diff --git a/lib/src/translator/todo/TopDictionaryGer.gf b/lib/src/translator/todo/TopDictionaryGer.gf index 7d081ec05..cc9ad5d33 100644 --- a/lib/src/translator/todo/TopDictionaryGer.gf +++ b/lib/src/translator/todo/TopDictionaryGer.gf @@ -14,7 +14,7 @@ lin have_VS = mkVS haben_V ; ---- subcat lin have_V2V = mkV2V haben_V accPrep ; ---- subcat lin have_V2 = dirV2 IrregGer.haben_V; lin have_V = irregV "bekommen" "bekommt" "bekam" "bekäme" "bekommen" ; -lin it_Pron = M.mkPronPers "es" "es" "ihm" "seiner" "sein" R.Neutr R.Sg R.P3; +lin it_Pron = M.mkPronPers "es" "es" "ihm" "seiner" "sein" R.Neutr R.Sg R.P3 | let s = Predef.BIND ++ "'s" in M.mkPronPers s s "ihm" "seiner" "sein" R.Neutr R.Sg R.P3; lin to_Prep = zu_Prep ; --- mkPrep "nach" dative; lin for_Prep = mkPrep "für" accusative; lin i_Pron = M.mkPronPers "ich" "mich" "mir" "meiner" "mein" R.Masc R.Sg R.P1; @@ -117,29 +117,29 @@ lin when_Subj = ss "wenn" | ss "als" ; ---- split in German ; could be parametri lin way_N = mkN "Weg" ; lin way_2_N = mkN "Weise" ; lin way_1_N = mkN "Weg" ; ---- end of edits by AR -lin look_VV = variants{}; -- regV "blicken"; -lin look_VA = variants{}; -- regV "blicken"; -lin look_V2V = variants{}; -- dirV2 (regV "blicken"); -lin look_V2 = dirV2 (regV "blicken"); +lin look_VV = mkVV (mkV "gucken") ; ---- subcat +lin look_VA = mkVA (mkV "aus" I.sehen_V) ; +lin look_V2V = mkV2V (mkV "gucken") ; ---- subcat +lin look_V2 = dirV2 (regV "gucken"); lin look_V = regV "blicken"; -lin like_Prep = variants{} ; -- -lin use_VV = variants{}; -- dirV2 (irregV "verwenden" "verwendet" "verwendete" "verwendete" "verwendet"); -lin use_V2V = variants{}; -- dirV2 (irregV "verwenden" "verwendet" "verwendete" "verwendete" "verwendet"); +lin like_Prep = mkPrep "wie"nominative ; -- +lin use_VV = mkVV (mkV "pflegen") ; +lin use_V2V = mkV2V (no_geV (mkV "benützen")) ; lin use_V2 = dirV2 (irregV "verwenden" "verwendet" "verwendete" "verwendete" "verwendet"); -lin use_V = variants{}; -- dirV2 (irregV "verwenden" "verwendet" "verwendete" "verwendete" "verwendet"); +lin use_V = no_geV (mkV "benützen") ; lin because_Subj = ss "weil"; lin good_A = mk3A "gut" "besser" "beste"; -lin find_VS = variants{}; -- dirV2 (irregV "finden" "findet" "fand" "fände" "gefunden"); -lin find_V2V = variants{}; -- dirV2 (irregV "finden" "findet" "fand" "fände" "gefunden"); -lin find_V2A = variants{}; -- dirV2 (irregV "finden" "findet" "fand" "fände" "gefunden"); -lin find_V2 = dirV2 (irregV "finden" "findet" "fand" "fände" "gefunden"); -lin find_V = irregV "finden" "findet" "fand" "fände" "gefunden" ; +lin find_VS = mkVS I.finden_V ; +lin find_V2V = mkV2V I.finden_V ; +lin find_V2A = mkV2A I.finden_V ; +lin find_V2 = mkV2 I.finden_V ; +lin find_V = I.finden_V ; lin man_N = reg2N "Mann" "Männer" masculine; lin want_VV = S.want_VV ; -lin want_VS = variants{}; -- dirV2 (regV "wollen"); -lin want_V2V = variants{}; -- S.want_VV ; -lin want_V2 = dirV2 (regV "wollen"); -lin want_V = regV "wollen"; +lin want_VS = mkVS I.wollen_V ; +lin want_V2V = mkV2V I.wollen_V ; +lin want_V2 = mkV2 I.wollen_V ; +lin want_V = I.wollen_V ; lin day_N = mkN "Tag"; lin between_Prep = mkPrep "zwischen" dative; lin even_Adv = mkAdv "sogar" ; @@ -150,16 +150,16 @@ lin down_Adv = mkAdv "unter" ; lin yeah_Interj = ss "jawohl" ; lin so_Subj = ss "so dass" ; lin thing_N = mkN "Sache" | mkN "Ding" "Dinge" neuter ; -lin tell_VV = variants{}; -- irregV "erzählen" "erzählt" "erzählte" "erzählte" "erzählt"; -lin tell_VS = variants{}; -- dirV2 (irregV "erzählen" "erzählt" "erzählte" "erzählte" "erzählt"); -lin tell_V3 = variants{}; -- dirV2 (irregV "erzählen" "erzählt" "erzählte" "erzählte" "erzählt"); -lin tell_1_V3 = variants{} ; -- -lin tell_2_V3 = variants{} ; -- -lin tell_V2V = variants{}; -- dirV2 (irregV "erzählen" "erzählt" "erzählte" "erzählte" "erzählt"); -lin tell_V2S = variants{}; -- dirV2 (irregV "erzählen" "erzählt" "erzählte" "erzählte" "erzählt"); -lin tell_V2Q = variants{}; -- dirV2 (irregV "erzählen" "erzählt" "erzählte" "erzählte" "erzählt"); -lin tell_V2 = dirV2 (irregV "erzählen" "erzählt" "erzählte" "erzählte" "erzählt"); -lin tell_V = irregV "erzählen" "erzählt" "erzählte" "erzählte" "erzählt"; +lin tell_VV = mkVV (no_geV (mkV "erzählen")) ; ---- subcat +lin tell_VS = mkVS (no_geV (mkV "erzählen")) ; +lin tell_V3 = mkV3 (no_geV (mkV "erzählen")) ; +lin tell_1_V3 = mkV3 (no_geV (mkV "erzählen")) ; +lin tell_2_V3 = mkV3 (fixprefixV "unter" I.scheiden_V) accPrep von_Prep ; +lin tell_V2V = mkV2V (no_geV (mkV "erzählen")) ; +lin tell_V2S = mkV2S (no_geV (mkV "erzählen")) ; +lin tell_V2Q = mkV2Q (no_geV (mkV "erzählen")) ; +lin tell_V2 = mkV2 (no_geV (mkV "erzählen")) ; +lin tell_V = no_geV (mkV "erzählen") ; lin through_Prep = mkPrep "durch" accusative; lin back_Adv = mkAdv "zurück" ; lin still_Adv = mkAdv "immer noch" ; @@ -167,50 +167,49 @@ lin child_N = reg2N "Kind" "Kinder" neuter; lin here_Adv = ss "hier"; lin over_Prep = mkPrep "über" accusative ; ---- split dative lin too_Adv = mkAdv "zu" ; -lin put_VS = variants{}; -- dirV2 (regV "setzen"); -lin put_V2V = variants{}; -- dirV2 (regV "setzen"); +lin put_VS = mkVS (regV "setzen"); +lin put_V2V = mkV2V (regV "setzen"); lin put_V2 = dirV2 (regV "setzen"); -lin put_V = irregV "legen" "legt" "legte" "legte" "legt"; -lin on_Adv = variants{}; -- mkPrep "auf" dative; -lin no_Interj = variants{} ; -- -lin work_VV = variants{}; -- mkV "arbeiten" ; -lin work_V2 = variants{}; -- mkV "arbeiten" ; +lin put_V = mkV "setzen" ; ---- subcat +lin on_Adv = mkAdv "auf" ; +lin no_Interj = mkInterj "nein" ; +lin work_VV = mkVV (no_geV (mkV "funktionieren")) ; +lin work_V2 = mkV2 (no_geV (mkV "bearbeiten")) ; lin work_V = mkV "arbeiten" ; lin work_2_V = mkV "funktionieren" ; lin work_1_V = mkV "arbeiten" ; -lin become_VS = variants{}; -- dirV2 (irregV "stehen" "steht" "stand" "stände" "gestanden" ); +lin become_VS = mkVS (seinV werden_V) ; ---- subcat lin become_VA = mkVA (seinV werden_V) ; lin become_V2 = mkV2 (seinV werden_V) ; ---- subcat : VN lin become_V = seinV werden_V ; lin old_A = mk3A "alt" "älter" "älteste"; lin government_N = mkN "Regierung"; lin mean_VV = mkVV (mkV "meinen") ; -lin mean_VS = mkVS (mkV "meinen") ; -lin mean_VA = variants{}; -- regV "beabsichtigen"; -lin mean_V2V = variants{}; -- dirV2 (regV "beabsichtigen"); +lin mean_VS = mkVS (mkV "meinen") | mkVS (no_geV (mkV "bedeuten")) ; +lin mean_VA = mkVA (no_geV (mkV "bedeuten")) ; +lin mean_V2V = mkV2V (mkV "meinen") ; ---- subcat lin mean_V2 = mkV2 "meinen" ; lin mean_V = mkV "meinen" ; ---- subcat lin part_N = reg2N "Rolle" "Rollen" feminine; -lin leave_VV = variants{}; -- irregV "lassen" "lasst" "ließ" "ließe" "gelassen" ; -lin leave_VS = variants{}; -- dirV2 (irregV "verlassen" "verläßt" "verließ" "verließe" "verlassen"); -lin leave_V2V = variants{}; -- dirV2 (irregV "verlassen" "verläßt" "verließ" "verließe" "verlassen"); -lin leave_V2 = dirV2 (irregV "verlassen" "verläßt" "verließ" "verließe" "verlassen"); -lin leave_V = irregV "lassen" "lasst" "ließ" "ließe" "gelassen" ; +lin leave_VV = mkVV I.lassen_V ; ---- subcat +lin leave_VS = mkVS I.lassen_V ; ---- subcat +lin leave_V2V = mkV2V I.lassen_V ; +lin leave_V2 = mkV2 (fixprefixV "ver" I.lassen_V) ; +lin leave_V = seinV (mkV "ab" I.fahren_V) ; lin life_N = reg2N "Leben" "Leben" neuter; -lin great_A = mk3A "fein" "feiner" "feinste"; -lin case_N = reg2N "Behälter" "Behälter" masculine; +lin great_A = mkA "grossartig" | mk3A "fein" "feiner" "feinste"; +lin case_N = mkN "Fall" "Fälle" masculine | reg2N "Behälter" "Behälter" masculine ; ---- split lin woman_N = reg2N "Frau" "Frauen" feminine; lin over_Adv = mkAdv "vorbei" ; ---- split -lin seem_VV = variants{}; -- irregV "dünken" "dünkt" "deuchte" "deuche" "gedeucht" ; -lin seem_VS = variants{}; -- dirV2 (irregV "dünken" "dünkt" "deuchte" "deuche" "gedeucht" ); -lin seem_VA = variants{}; -- irregV "dünken" "dünkt" "deuchte" "deuche" "gedeucht" ; -lin seem_V2 = dirV2 (irregV "dünken" "dünkt" "deuchte" "deuche" "gedeucht" ); -lin seem_V = irregV "dünken" "dünkt" "deuchte" "deuche" "gedeucht" ; +lin seem_VV = mkVV (mkV "aus" I.sehen_V) ; +lin seem_VS = mkVS (mkV "aus" I.sehen_V) ; +lin seem_VA = mkVA (mkV "aus" I.sehen_V) ; +lin seem_V2 = mkV2 (mkV "aus" I.sehen_V) ; +lin seem_V = mkV "aus" I.sehen_V ; lin work_N = reg2N "Arbeit" "Arbeiten" feminine; lin need_VV = mkVV (mkV "brauchen") ; -lin need_VV = mkVV (mkV "brauchen") ; -lin need_VS = variants{}; -- mkV2 (mkV "brauchen") ; -lin need_V2V = variants{}; -- mkVV (mkV "brauchen") ; +lin need_VS = mkVS (mkV "brauchen") ; +lin need_V2V = mkV2V (mkV "brauchen") ; lin need_V2 = mkV2 (mkV "brauchen") ; lin need_V = mkV "brauchen" ; lin feel_VS = variants{}; -- dirV2 (irregV "denken" "denkt" "dachte" "dächte" "gedacht" ); @@ -222,20 +221,20 @@ lin each_Det = variants{} ; -- lin may_2_VV = mkVV dürfen_V ; lin may_1_VV = mkVV können_V ; lin much_Adv = mkAdv "viel" ; -lin ask_VV = variants{}; -- irregV "bitten" "bittet" "bat" "bäte" "gebeten" ; -lin ask_VS = variants{}; -- dirV2 (irregV "bitten" "bittet" "bat" "bäte" "gebeten" ); -lin ask_VQ = variants{}; -- dirV2 (irregV "bitten" "bittet" "bat" "bäte" "gebeten" ); -lin ask_V2V = variants{}; -- dirV2 (irregV "bitten" "bittet" "bat" "bäte" "gebeten" ); -lin ask_V2 = dirV2 (irregV "bitten" "bittet" "bat" "bäte" "gebeten" ); -lin ask_V = irregV "bitten" "bittet" "bat" "bäte" "gebeten" ; +lin ask_VV = mkVV I.bitten_V ; +lin ask_VS = mkVS (mkV "fragen") ; +lin ask_VQ = mkVQ (mkV "fragen") ; +lin ask_V2V = mkV2V I.bitten_V ; +lin ask_V2 = mkV2 I.bitten_V ; +lin ask_V = I.bitten_V ; lin group_N = reg2N "Gruppe" "Gruppen" feminine; lin number_N = reg2N "Zahl" "Zahlen" feminine; lin number_3_N = variants{} ; -- -lin number_2_N = variants{} ; -- +lin number_2_N = mkN "Anzahl" "Anzahlen" feminine ; lin number_1_N = mkN "Zahl" "Zahlen" feminine ; lin yes_Interj = ss "ja" ; lin however_Adv = mkAdv "aber" ; ---- -lin another_Det = variants{} ; -- +lin another_Det = M.detLikeAdj False M.Sg "ander" ; lin again_Adv = mkAdv "wieder" ; lin world_N = reg2N "Welt" "Welten" feminine; lin area_N = reg2N "Gebiet" "Gebiete" neuter; @@ -244,11 +243,11 @@ lin area_5_N = variants{} ; -- lin area_4_N = variants{} ; -- lin area_3_N = variants{} ; -- lin area_2_N = variants{} ; -- -lin area_1_N = variants{} ; -- -lin show_VS = variants{}; -- dirV2 (regV "zeigen"); -lin show_VQ = variants{}; -- dirV2 (regV "zeigen"); -lin show_V2V = variants{}; -- dirV2 (regV "zeigen"); -lin show_V2 = dirV2 (regV "zeigen"); +lin area_1_N = reg2N "Gebiet" "Gebiete" neuter; +lin show_VS = mkVS (regV "zeigen"); +lin show_VQ = mkVQ (regV "zeigen"); +lin show_V2V = mkV2V (regV "zeigen"); +lin show_V2 = mkV2 (regV "zeigen"); lin show_V = regV "zeigen"; lin course_N = reg2N "Bahn" "Bahnen" feminine; lin company_2_N = variants{} ; --