From e199fbbb0c004707c04e3cd265fa17ac2434043a Mon Sep 17 00:00:00 2001 From: "John J. Camilleri" Date: Wed, 17 Jun 2020 09:17:56 +0200 Subject: [PATCH] (Bul) Change encodings from CP1251 to UTF8 (#343) --- src/bulgarian/AdjectiveBul.gf | 10 +- src/bulgarian/AdverbBul.gf | 6 +- src/bulgarian/CompatibilityBul.gf | 20 +- src/bulgarian/ConjunctionBul.gf | 4 +- src/bulgarian/ExtendBul.gf | 2 + src/bulgarian/ExtraBul.gf | 28 +- src/bulgarian/ExtraBulAbs.gf | 4 +- src/bulgarian/GrammarBul.gf | 4 +- src/bulgarian/IdiomBul.gf | 22 +- src/bulgarian/LexiconBul.gf | 716 +++++----- src/bulgarian/MorphoBul.gf | 150 +-- src/bulgarian/MorphoFunsBul.gf | 26 +- src/bulgarian/NounBul.gf | 30 +- src/bulgarian/NumeralBul.gf | 90 +- src/bulgarian/ParadigmsBul.gf | 2084 ++++++++++++++--------------- src/bulgarian/PhraseBul.gf | 4 +- src/bulgarian/QuestionBul.gf | 10 +- src/bulgarian/RelativeBul.gf | 6 +- src/bulgarian/ResBul.gf | 344 ++--- src/bulgarian/SentenceBul.gf | 10 +- src/bulgarian/StructuralBul.gf | 214 +-- src/bulgarian/SymbolBul.gf | 24 +- src/bulgarian/TextBul.gf | 4 +- src/bulgarian/VerbBul.gf | 8 +- 24 files changed, 1911 insertions(+), 1909 deletions(-) diff --git a/src/bulgarian/AdjectiveBul.gf b/src/bulgarian/AdjectiveBul.gf index 921fa875..a5bd1d5e 100644 --- a/src/bulgarian/AdjectiveBul.gf +++ b/src/bulgarian/AdjectiveBul.gf @@ -1,6 +1,6 @@ ---# -coding=cp1251 +--# -coding=utf8 concrete AdjectiveBul of Adjective = CatBul ** open ResBul, Prelude in { - flags coding=cp1251 ; + flags coding=utf8 ; lin PositA a = { @@ -9,11 +9,11 @@ concrete AdjectiveBul of Adjective = CatBul ** open ResBul, Prelude in { } ; ComparA a np = { - s = \\aform,_ => "" ++ hyphen ++ a.s ! aform ++ "" ++ np.s ! RObj CPrep ; + s = \\aform,_ => "по" ++ hyphen ++ a.s ! aform ++ "от" ++ np.s ! RObj CPrep ; isPre = True } ; UseComparA a = { - s = \\aform,_ => "" ++ hyphen ++ a.s ! aform ; + s = \\aform,_ => "по" ++ hyphen ++ a.s ! aform ; isPre = True } ; @@ -35,7 +35,7 @@ concrete AdjectiveBul of Adjective = CatBul ** open ResBul, Prelude in { } ; ReflA2 a = { - s = \\aform,_ => a.s ! aform ++ linPrep a.c2 ++ [" "] ; + s = \\aform,_ => a.s ! aform ++ linPrep a.c2 ++ ["себе си"] ; isPre = False } ; diff --git a/src/bulgarian/AdverbBul.gf b/src/bulgarian/AdverbBul.gf index af224bcb..97f3caea 100644 --- a/src/bulgarian/AdverbBul.gf +++ b/src/bulgarian/AdverbBul.gf @@ -1,6 +1,6 @@ ---# -coding=cp1251 +--# -coding=utf8 concrete AdverbBul of Adverb = CatBul ** open ResBul, Prelude in { - flags coding=cp1251 ; + flags coding=utf8 ; lin PositAdvAdj a = {s = a.adv} ; @@ -8,7 +8,7 @@ concrete AdverbBul of Adverb = CatBul ** open ResBul, Prelude in { s = cadv.s ++ a.s ! ASg Neut Indef ++ cadv.p ++ np.s ! RObj CPrep } ; ComparAdvAdjS cadv a s = { - s = cadv.s ++ a.s ! ASg Neut Indef ++ cadv.p ++ "" ++ s.s + s = cadv.s ++ a.s ! ASg Neut Indef ++ cadv.p ++ "колкото" ++ s.s } ; PrepNP prep np = {s = prep.s ++ np.s ! RObj prep.c} ; diff --git a/src/bulgarian/CompatibilityBul.gf b/src/bulgarian/CompatibilityBul.gf index 24762e89..ded5395d 100644 --- a/src/bulgarian/CompatibilityBul.gf +++ b/src/bulgarian/CompatibilityBul.gf @@ -4,21 +4,21 @@ concrete CompatibilityBul of Compatibility = CatBul ** open Prelude, ResBul in { -- from Noun 19/4/2008 flags - coding = cp1251 ; + coding = utf8 ; lin NumInt n = {s = \\_ => n.s; n = Pl; nonEmpty = True} ; OrdInt n = {s = \\aform => n.s ++ "-" ++ case aform of { - ASg Masc Indef => "" ; - ASg Fem Indef => "" ; - ASg Neut Indef => "" ; - ASg Masc Def => "" ; - ASg Fem Def => "" ; - ASg Neut Def => "" ; - ASgMascDefNom => "" ; - APl Indef => "" ; - APl Def => "" + ASg Masc Indef => "ти" ; + ASg Fem Indef => "та" ; + ASg Neut Indef => "то" ; + ASg Masc Def => "тия" ; + ASg Fem Def => "тата" ; + ASg Neut Def => "тото" ; + ASgMascDefNom => "тият" ; + APl Indef => "ти" ; + APl Def => "тите" } } ; diff --git a/src/bulgarian/ConjunctionBul.gf b/src/bulgarian/ConjunctionBul.gf index 88a6ab82..75c3b892 100644 --- a/src/bulgarian/ConjunctionBul.gf +++ b/src/bulgarian/ConjunctionBul.gf @@ -1,7 +1,7 @@ ---# -coding=cp1251 +--# -coding=utf8 concrete ConjunctionBul of Conjunction = CatBul ** open ResBul, Coordination, Prelude, Predef in { - flags coding=cp1251 ; + flags coding=utf8 ; flags optimize=all_subs ; diff --git a/src/bulgarian/ExtendBul.gf b/src/bulgarian/ExtendBul.gf index 38f8a530..318a70f2 100644 --- a/src/bulgarian/ExtendBul.gf +++ b/src/bulgarian/ExtendBul.gf @@ -1,5 +1,7 @@ --# -path=.:../abstract:../common:prelude concrete ExtendBul of Extend = CatBul ** open Prelude, Predef, ResBul, GrammarBul, MorphoFunsBul in { +flags + coding=utf8; lin GenModNP num np cn = DetCN (DetQuant DefArt num) (AdvCN cn (PrepNP (mkPrep "на") np)) ; diff --git a/src/bulgarian/ExtraBul.gf b/src/bulgarian/ExtraBul.gf index 9eb18fc1..653d7443 100644 --- a/src/bulgarian/ExtraBul.gf +++ b/src/bulgarian/ExtraBul.gf @@ -1,7 +1,7 @@ ---# -coding=cp1251 +--# -coding=utf8 concrete ExtraBul of ExtraBulAbs = CatBul ** open ResBul, MorphoFunsBul, Coordination, Prelude, Predef in { - flags coding=cp1251 ; + flags coding=utf8 ; lin @@ -30,21 +30,21 @@ concrete ExtraBul of ExtraBulAbs = CatBul ** s = \\t,a,p,agr => slash.c2.s ++ whichRP ! agr.gn ++ slash.s ! agr ! t ! a ! p ! Main } ; - i8fem_Pron = mkPron "" "" "" "" "" "" "" "" "" "" (GSg Fem) PronP1 ; - i8neut_Pron = mkPron "" "" "" "" "" "" "" "" "" "" (GSg Neut) PronP1 ; + i8fem_Pron = mkPron "аз" "мой" "моя" "моят" "моя" "моята" "мое" "моето" "мои" "моите" (GSg Fem) PronP1 ; + i8neut_Pron = mkPron "аз" "мой" "моя" "моят" "моя" "моята" "мое" "моето" "мои" "моите" (GSg Neut) PronP1 ; - whatSg8fem_IP = mkIP "" "" (GSg Fem) ; - whatSg8neut_IP = mkIP "" "" (GSg Neut) ; + whatSg8fem_IP = mkIP "каква" "каква" (GSg Fem) ; + whatSg8neut_IP = mkIP "какво" "какво" (GSg Neut) ; - whoSg8fem_IP = mkIP "" "" (GSg Fem) ; - whoSg8neut_IP = mkIP "" "" (GSg Neut) ; + whoSg8fem_IP = mkIP "коя" "кого" (GSg Fem) ; + whoSg8neut_IP = mkIP "кое" "кого" (GSg Neut) ; - youSg8fem_Pron = mkPron "" "" "" "" "" "" "" "" "" "" (GSg Fem) PronP2 ; - youSg8neut_Pron = mkPron "" "" "" "" "" "" "" "" "" "" (GSg Neut) PronP2 ; + youSg8fem_Pron = mkPron "ти" "твой" "твоя" "твоят" "твоя" "твоята" "твое" "твоето" "твои" "твоите" (GSg Fem) PronP2 ; + youSg8neut_Pron = mkPron "ти" "твой" "твоя" "твоят" "твоя" "твоята" "твое" "твоето" "твои" "твоите" (GSg Neut) PronP2 ; onePl_Num = {s = table { - CFMasc Indef _ | CFFem Indef | CFNeut Indef => "" ; - CFMasc Def _ | CFMascDefNom _ | CFFem Def | CFNeut Def => "" + CFMasc Indef _ | CFFem Indef | CFNeut Indef => "едни" ; + CFMasc Def _ | CFMascDefNom _ | CFFem Def | CFNeut Def => "едните" } ; nn = NCountable; nonEmpty = True @@ -53,7 +53,7 @@ concrete ExtraBul of ExtraBulAbs = CatBul ** UttImpSg8fem pol imp = {s = pol.s ++ imp.s ! pol.p ! GSg Fem} ; UttImpSg8neut pol imp = {s = pol.s ++ imp.s ! pol.p ! GSg Fem} ; - IAdvAdv adv = {s = \\qf => (mkIAdv "").s ! qf ++ adv.s} ; + IAdvAdv adv = {s = \\qf => (mkIAdv "колко").s ! qf ++ adv.s} ; lincat VPI = {s : Agr => Str} ; @@ -95,7 +95,7 @@ concrete ExtraBul of ExtraBulAbs = CatBul ** vp.compl1 ! a ++ vp.compl2 ! a) Pos (predV verbBe) ; PassAgentVPSlash vp np = - insertObj (\\_ => "" ++ np.s ! RObj CPrep) Pos + insertObj (\\_ => "от" ++ np.s ! RObj CPrep) Pos (insertObj (\\a => vp.ad.s ++ vp.s ! Perf ! VPassive (aform a.gn Indef (RObj Acc)) ++ vp.compl1 ! a ++ vp.compl2 ! a) Pos (predV verbBe)) ; diff --git a/src/bulgarian/ExtraBulAbs.gf b/src/bulgarian/ExtraBulAbs.gf index e33a3c55..71a5537e 100644 --- a/src/bulgarian/ExtraBulAbs.gf +++ b/src/bulgarian/ExtraBulAbs.gf @@ -1,6 +1,6 @@ ---# -coding=cp1251 +--# -coding=utf8 abstract ExtraBulAbs = Extra ** { - flags coding=cp1251 ; + flags coding=utf8 ; fun diff --git a/src/bulgarian/GrammarBul.gf b/src/bulgarian/GrammarBul.gf index db81c73c..f9a05a99 100644 --- a/src/bulgarian/GrammarBul.gf +++ b/src/bulgarian/GrammarBul.gf @@ -1,5 +1,5 @@ --# -path=.:../abstract:../common:prelude ---# -coding=cp1251 +--# -coding=utf8 concrete GrammarBul of Grammar = NounBul, @@ -17,7 +17,7 @@ concrete GrammarBul of Grammar = IdiomBul, TenseX - [CAdv,IAdv,AdV,SC] ** { - flags coding=cp1251 ; + flags coding=utf8 ; flags startcat = Phr ; unlexer = text ; lexer = text ; diff --git a/src/bulgarian/IdiomBul.gf b/src/bulgarian/IdiomBul.gf index adf90ee2..c8cd86c2 100644 --- a/src/bulgarian/IdiomBul.gf +++ b/src/bulgarian/IdiomBul.gf @@ -1,19 +1,19 @@ ---# -coding=cp1251 +--# -coding=utf8 concrete IdiomBul of Idiom = CatBul ** open Prelude, ParadigmsBul, ResBul in { - flags coding=cp1251 ; + flags coding=utf8 ; flags optimize=all_subs ; lin ImpersCl vp = mkClause [] (GSg Neut) (NounP3 Pos) vp ; - GenericCl vp = mkClause "" (GSg Neut) (NounP3 Pos) vp ; + GenericCl vp = mkClause "някой" (GSg Neut) (NounP3 Pos) vp ; CleftNP np rs = mkClause (np.s ! RSubj) (GSg Neut) np.p (insertObj (\\_ => thisRP ! np.gn ++ rs.s ! personAgr np.gn np.p) (personPol np.p) (predV verbBe)) ; - CleftAdv ad s = {s = \\t,a,p,o => case p of {Pos=>[]; Neg=>""} ++ ad.s ++ s.s } ; + CleftAdv ad s = {s = \\t,a,p,o => case p of {Pos=>[]; Neg=>"не"} ++ ad.s ++ s.s } ; ExistNP np = ExistNPAdv np (lin Adv {s = ""}) ; ExistIP ip = ExistIPAdv ip (lin Adv {s = ""}) ; @@ -21,8 +21,8 @@ concrete IdiomBul of Idiom = CatBul ** open Prelude, ParadigmsBul, ResBul in { ExistNPAdv np adv = { s = \\t,a,p,o => let verb = case orPol p (personPol np.p) of { - Pos => mkV186 "" ; - Neg => mkV186 "" + Pos => mkV186 "имам" ; + Neg => mkV186 "нямам" } ; agr=agrP3 (GSg Neut); @@ -42,21 +42,21 @@ concrete IdiomBul of Idiom = CatBul ** open Prelude, ParadigmsBul, ResBul in { => {aux1=[]; aux2=auxPres; main=perfect} ; --# notpresent => {aux1=[]; aux2=[]; main=aorist} ; --# notpresent => {aux1=[]; aux2=auxAorist; main=perfect} ; --# notpresent - => {aux1=""; aux2=[]; main=present} ; --# notpresent - => {aux1=""++auxPres; aux2=[]; main=perfect} ; --# notpresent + => {aux1="ще"; aux2=[]; main=present} ; --# notpresent + => {aux1="ще"++auxPres; aux2=[]; main=perfect} ; --# notpresent => {aux1=auxCondS; aux2=[]; main=perfect} --# notpresent } ; in case o of { Main => v.aux1 ++ v.main ++ v.aux2 ++ np.s ! RObj Acc ++ adv.s ; Inv => np.s ! RObj Acc ++ v.aux1 ++ v.main ++ v.aux2 ++ adv.s ; - Quest => v.aux1 ++ v.main ++ "" ++ v.aux2 ++ np.s ! RObj Acc ++ adv.s + Quest => v.aux1 ++ v.main ++ "ли" ++ v.aux2 ++ np.s ! RObj Acc ++ adv.s } } ; ExistIPAdv ip adv = mkQuestion {s = ip.s ! RSubj} - (mkClause "" ip.gn (NounP3 Pos) (insertObj (\\_ => adv.s) Pos (predV verbBe))) ; + (mkClause "тук" ip.gn (NounP3 Pos) (insertObj (\\_ => adv.s) Pos (predV verbBe))) ; ProgrVP vp = { s = \\_ => vp.s ! Imperf ; @@ -68,6 +68,6 @@ concrete IdiomBul of Idiom = CatBul ** open Prelude, ParadigmsBul, ResBul in { isSimple = False } ; - ImpPl1 vp = {s = "" ++ daComplex Simul Pos vp ! Perf ! {gn = GPl ; p = P1}} ; + ImpPl1 vp = {s = "нека" ++ daComplex Simul Pos vp ! Perf ! {gn = GPl ; p = P1}} ; } diff --git a/src/bulgarian/LexiconBul.gf b/src/bulgarian/LexiconBul.gf index cda724e3..3a0653ed 100644 --- a/src/bulgarian/LexiconBul.gf +++ b/src/bulgarian/LexiconBul.gf @@ -1,383 +1,383 @@ --# -path=.:prelude ---# -coding=cp1251 +--# -coding=utf8 concrete LexiconBul of Lexicon = CatBul ** open ParadigmsBul, ResBul, Prelude in { - flags coding=cp1251 ; + flags coding=utf8 ; flags optimize=values ; lin - airplane_N = mkN007 "" ; - answer_V2S = mkV2S (actionV (mkV187 "") (mkV173 "")) naP noPrep ; - apartment_N = mkN007 "" ; - apple_N = mkN041 "" ; - art_N = mkN054 "" ; - ask_V2Q = mkV2Q (stateV (mkV186 "")) noPrep noPrep ; - baby_N = mkN065 "" ; - bad_A = mkA076 "" ; - bank_N = mkN041 "" ; - beautiful_A = mkA076 "" ; - become_VA = mkVA (actionV (mkV186 "") (mkV152 "")) ; - beer_N = mkN041 "" ; - beg_V2V = mkV2V (stateV (mkV173 "")) noPrep zaP ; - big_A = mkA081 "" ; - bike_N = mkN061 "" ; - bird_N = mkN041 "" ; - black_A = mkA079 "" ; - blue_A = mkA086 "" ; - boat_N = mkN007 "" ; - book_N = mkN041 "" ; - boot_N = mkN041 "" ; - boss_N = mkN001 "" ; - boy_N = mkN065 "" ; - bread_N = mkN001 "" ; - break_V2 = dirV2 (actionV (mkV173 "") (mkV173 "")) ; - broad_A = mkA079 "" ; - brother_N2 = prepN2 (mkN025 "") naP ; - brown_A = mkA076 "" ; - butter_N = mkN054 "" ; - buy_V2 = dirV2 (actionV (mkV186 "") (mkV173 "")) ; - camera_N = mkN041 "" ; - cap_N = mkN041 "" ; - car_N = mkN041 "" ; - carpet_N = mkN007 "" ; - cat_N = mkN041 "" ; - ceiling_N = mkN007 "" ; - chair_N = mkN001 "" ; - cheese_N = mkN066 "" ; - child_N = mkN067 "" ; - church_N = mkN041 "" ; - city_N = mkN001 "" ; - clean_A = mkA076 "" ; - clever_A = mkA079 "" ; - close_V2 = dirV2 (actionV (mkV187 "") (mkV173 "")) ; - coat_N = mkN054 "" ; - cold_A = mkA076 "" ; - come_V = actionV (mkV186 "") (table { -- special case "", "" are archaic - VImperative Sg => ""; - VImperative Pl => ""; - vform => mkV146a "" ! vform}) ; - computer_N = mkN009 "" ; - country_N = mkN041 "" ; - cousin_N = mkN007a "" ; - cow_N = mkN041 "" ; - die_V = actionV (mkV186 "") (mkV150a "") ; - dirty_A = mkA079 "" ; - distance_N3 = prepN3 (mkN072 "") otP doP ; - doctor_N = mkN007a "" ; - dog_N = mkN065 "" ; - door_N = mkN041 "" ; - drink_V2 = dirV2 (stateV (mkV163 "")) ; - easy_A2V = mkA2V (mkA079 "") zaP ; - eat_V2 = dirV2 (stateV (mkV169 "")) ; - empty_A = mkA079 "" ; - enemy_N = mkN001 "" ; - factory_N = mkN041 "" ; - father_N2 = prepN2 (mkN038 "") naP ; - fear_VS = mkVS (stateV (mkV186 "")) ; - find_V2 = dirV2 (actionV (mkV186 "") (mkV173 "")) ; - fish_N = mkN041 "" ; - floor_N = mkN007 "" ; - fridge_N = mkN007 "" ; - friend_N = mkN031a "" ; - fruit_N = mkN001 "" ; - fun_AV = mkA079 "" ; - forget_V2 = dirV2 (actionV (mkV187 "") (mkV173 "")) ; - garden_N = mkN041 "" ; - girl_N = mkN065 "" ; - glove_N = mkN041 "" ; - gold_N = mkN054 "" ; - good_A = adjAdv (mkA080 "") "" ; - go_V = actionV (mkV186 "") (mkV146 "") ; - green_A = mkA076 "" ; - harbour_N = mkN066 "" ; - hate_V2 = dirV2 (stateV (mkV173 "")) ; - hat_N = mkN041 "" ; - hear_V2 = dirV2 (actionV (mkV186 "") (mkV163 "")) ; - hill_N = mkN001 "" ; - hope_VS = mkVS (medialV (stateV (mkV186 "")) Acc) ; - horse_N = mkN035 "" ; - hot_A = mkA076 "" ; - house_N = mkN041 "" ; - important_A = mkA079 "" ; - industry_N = mkN047 "" ; - iron_N = mkN057 "" ; - king_N = mkN035a "" ; + airplane_N = mkN007 "самолет" ; + answer_V2S = mkV2S (actionV (mkV187 "отговарям") (mkV173 "отговоря")) naP noPrep ; + apartment_N = mkN007 "апартамент" ; + apple_N = mkN041 "ябълка" ; + art_N = mkN054 "изкуство" ; + ask_V2Q = mkV2Q (stateV (mkV186 "питам")) noPrep noPrep ; + baby_N = mkN065 "бебе" ; + bad_A = mkA076 "лош" ; + bank_N = mkN041 "банка" ; + beautiful_A = mkA076 "красив" ; + become_VA = mkVA (actionV (mkV186 "ставам") (mkV152 "стана")) ; + beer_N = mkN041 "бира" ; + beg_V2V = mkV2V (stateV (mkV173 "моля")) noPrep zaP ; + big_A = mkA081 "голям" ; + bike_N = mkN061 "колело" ; + bird_N = mkN041 "птица" ; + black_A = mkA079 "черен" ; + blue_A = mkA086 "син" ; + boat_N = mkN007 "кораб" ; + book_N = mkN041 "книга" ; + boot_N = mkN041 "обувка" ; + boss_N = mkN001 "шеф" ; + boy_N = mkN065 "момче" ; + bread_N = mkN001 "хляб" ; + break_V2 = dirV2 (actionV (mkV173 "чупя") (mkV173 "счупя")) ; + broad_A = mkA079 "обширен" ; + brother_N2 = prepN2 (mkN025 "брат") naP ; + brown_A = mkA076 "кафяв" ; + butter_N = mkN054 "масло" ; + buy_V2 = dirV2 (actionV (mkV186 "купувам") (mkV173 "купя")) ; + camera_N = mkN041 "камера" ; + cap_N = mkN041 "шапка" ; + car_N = mkN041 "кола" ; + carpet_N = mkN007 "килим" ; + cat_N = mkN041 "котка" ; + ceiling_N = mkN007 "таван" ; + chair_N = mkN001 "стол" ; + cheese_N = mkN066 "сирене" ; + child_N = mkN067 "дете" ; + church_N = mkN041 "църква" ; + city_N = mkN001 "град" ; + clean_A = mkA076 "чист" ; + clever_A = mkA079 "умен" ; + close_V2 = dirV2 (actionV (mkV187 "затварям") (mkV173 "затворя")) ; + coat_N = mkN054 "палто" ; + cold_A = mkA076 "студен" ; + come_V = actionV (mkV186 "идвам") (table { -- special case "дойди", "дойдете" are archaic + VImperative Sg => "ела"; + VImperative Pl => "елате"; + vform => mkV146a "дойда" ! vform}) ; + computer_N = mkN009 "компютър" ; + country_N = mkN041 "държава" ; + cousin_N = mkN007a "братовчед" ; + cow_N = mkN041 "крава" ; + die_V = actionV (mkV186 "умирам") (mkV150a "умра") ; + dirty_A = mkA079 "мръсен" ; + distance_N3 = prepN3 (mkN072 "разстояние") otP doP ; + doctor_N = mkN007a "доктор" ; + dog_N = mkN065 "куче" ; + door_N = mkN041 "врата" ; + drink_V2 = dirV2 (stateV (mkV163 "пия")) ; + easy_A2V = mkA2V (mkA079 "лесен") zaP ; + eat_V2 = dirV2 (stateV (mkV169 "ям")) ; + empty_A = mkA079 "празен" ; + enemy_N = mkN001 "враг" ; + factory_N = mkN041 "фабрика" ; + father_N2 = prepN2 (mkN038 "баща") naP ; + fear_VS = mkVS (stateV (mkV186 "страхувам")) ; + find_V2 = dirV2 (actionV (mkV186 "намирам") (mkV173 "намеря")) ; + fish_N = mkN041 "риба" ; + floor_N = mkN007 "етаж" ; + fridge_N = mkN007 "фризер" ; + friend_N = mkN031a "приятел" ; + fruit_N = mkN001 "плод" ; + fun_AV = mkA079 "забавен" ; + forget_V2 = dirV2 (actionV (mkV187 "забравям") (mkV173 "забравя")) ; + garden_N = mkN041 "градина" ; + girl_N = mkN065 "момиче" ; + glove_N = mkN041 "ръкавица" ; + gold_N = mkN054 "злато" ; + good_A = adjAdv (mkA080 "добър") "добре" ; + go_V = actionV (mkV186 "отивам") (mkV146 "отида") ; + green_A = mkA076 "зелен" ; + harbour_N = mkN066 "пристанище" ; + hate_V2 = dirV2 (stateV (mkV173 "мразя")) ; + hat_N = mkN041 "шапка" ; + hear_V2 = dirV2 (actionV (mkV186 "чувам") (mkV163 "чуя")) ; + hill_N = mkN001 "хълм" ; + hope_VS = mkVS (medialV (stateV (mkV186 "надявам")) Acc) ; + horse_N = mkN035 "кон" ; + hot_A = mkA076 "горещ" ; + house_N = mkN041 "къща" ; + important_A = mkA079 "важен" ; + industry_N = mkN047 "индустрия" ; + iron_N = mkN057 "желязо" ; + king_N = mkN035a "цар" ; know_V2 = dirV2 { s = \\_,vform => case vform of { - VPassive aform => (mkA079 "").s ! aform ; - _ => mkV162 "" ! vform + VPassive aform => (mkA079 "известен").s ! aform ; + _ => mkV162 "зная" ! vform } ; vtype = VNormal ; lock_V = <> } ; - know_VQ = mkVQ (actionV (mkV188 "") (mkV162 "")) ; - know_VS = mkVS (actionV (mkV188 "") (mkV162 "")) ; - lake_N = mkN054 "" ; - lamp_N = mkN041 "" ; - learn_V2 = dirV2 (actionV (mkV176 "") (mkV176 "")) ; - leather_N = mkN041 "" ; - leave_V2 = dirV2 (actionV (mkV187 "") (mkV173 "")) ; - like_V2 = dirV2 (actionV (mkV186 "") (mkV186 "")) ; - listen_V2 = dirV2 (stateV (mkV186 "")) ; - live_V = stateV (mkV160 "") ; - long_A = mkA080 "" ; - lose_V2 = dirV2 (actionV (mkV173 "") (mkV173 "")) ; - love_N = mkN049 "" ; - love_V2 = dirV2 (stateV (mkV186 "")) ; - man_N = mkN024 "" ; - married_A2 = mkA2 (mkA076 "") zaP ; - meat_N = mkN054 "" ; - milk_N = mkN057 "" ; - moon_N = mkN041 "" ; - mother_N2 = prepN2 (mkN041a "") naP ; - mountain_N = mkN041 "" ; - music_N = mkN041 "" ; - narrow_A = mkA084 "" ; - new_A = mkA076 "" ; - newspaper_N = mkN014 "" ; - oil_N = mkN065 "" ; - old_A = mkA076 "" ; - open_V2 = dirV2 (actionV (mkV187 "") (mkV173 "")) ; - paint_V2A = mkV2A (actionV (mkV186 "") (mkV186 "")) noPrep ; - paper_N = mkN047 "" ; - paris_PN = mkPN "" Masc ; - peace_N = mkN040a "" ; - pen_N = mkN041 "" ; - planet_N = mkN041 "" ; - plastic_N = mkN041 "" ; - play_V2 = dirV2 (stateV (mkV161 "")) ; - policeman_N = mkN032a "" ; - priest_N = mkN014 "" ; - probable_AS = mkA079 "" ; - queen_N = mkN041 "" ; - radio_N = mkN054 "" ; - rain_V0 = mkV0 (stateV (mkV174 "")) ; - read_V2 = dirV2 (stateV (mkV145 "")) ; - red_A = mkA076 "" ; - religion_N = mkN047 "" ; - restaurant_N = mkN007 "" ; - river_N = mkN041 "" ; - rock_N = mkN041 "" ; - roof_N = mkN007 "" ; - rubber_N = mkN041 "" ; - run_V = stateV (mkV186 "") ; - say_VS = mkVS (actionV (mkV186 "") (mkV156 "")) ; - school_N = mkN066 "" ; - science_N = mkN041 "" ; - sea_N = mkN065 "" ; - seek_V2 = dirV2 (stateV (mkV173 "")) ; - see_V2 = dirV2 (actionV (mkV186 "") (mkV181 "")) ; - sell_V3 = dirV3 (stateV (mkV186 "")) naP ; - send_V3 = dirV3 (actionV (mkV186 "") (mkV173 "")) doP ; - sheep_N = mkN044 "" ; - ship_N = mkN007 "" ; - shirt_N = mkN041 "" ; - shoe_N = mkN041 "" ; - shop_N = mkN007 "" ; - short_A = mkA076 "" ; - silver_N = mkN054 "" ; - sister_N = mkN041a "" ; - sleep_V = stateV (mkV182 "") ; - small_A = mkA080 "" ; - snake_N = mkN047 "" ; - sock_N = mkN007 "" ; - speak_V2 = dirV2 (stateV (mkV173 "")) ; - star_N = mkN041 "" ; - steel_N = mkN041 "" ; - stone_N = mkN017 "" ; - stove_N = mkN041 "" ; - student_N = mkN007a "" ; - stupid_A = mkA076 "" ; - sun_N = mkN066 "" ; - switch8off_V2 = dirV2 (actionV (mkV186 "") (mkV176 "")) ; - switch8on_V2 = dirV2 (actionV (mkV186 "") (mkV176 "")) ; - table_N = mkN041 "" ; - talk_V3 = mkV3 (stateV (mkV173 "")) naP zaP ; - teacher_N = mkN031a "" ; - teach_V2 = dirV2 (actionV (mkV186 "") (mkV168 "")) ; - television_N = mkN047 "" ; - thick_A = mkA076 "" ; - thin_A = mkA080 "" ; - train_N = mkN001 "" ; - travel_V = stateV (mkV186 "") ; - tree_N = mkN061 "" ; - ugly_A = mkA076 "" ; - understand_V2 = dirV2 (actionV (mkV186 "") (mkV170 "")) ; - university_N = mkN007 "" ; - village_N = mkN054 "" ; - wait_V2 = prepV2 (stateV (mkV186 "")) zaP ; - walk_V = stateV (mkV173 "") ; - warm_A = mkA080 "" ; - war_N = mkN041 "" ; - watch_V2 = dirV2 (stateV (mkV186 "")) ; - water_N = mkN041 "" ; - white_A = mkA081 "" ; - window_N = mkN008 "" ; - wine_N = mkN054 "" ; - win_V2 = dirV2 (actionV (mkV186 "") (mkV174 "")) ; - woman_N = mkN041a "" ; - wonder_VQ = mkVQ (medialV (actionV (mkV186 "") (mkV173 "")) Acc) ; - wood_N = mkN041 "" ; - write_V2 = dirV2 (stateV (mkV159 "")) ; - yellow_A = mkA076 "" ; - young_A = mkA076 "" ; - do_V2 = dirV2 (actionV (mkV173 "") (mkV173 "")) ; - now_Adv = mkAdv "" ; - already_Adv = mkAdv "" ; - song_N = mkN050 "" ; - add_V3 = dirV3 (actionV (mkV186 "") (mkV170 "")) sP ; - number_N = mkN054 "" ; - put_V2 = prepV2 (actionV (mkV186 "") (mkV176 "")) noPrep ; - stop_V = actionV (mkV186 "") (mkV150 "") ; - jump_V = actionV (mkV186 "") (mkV176 "") ; - left_Ord = mkA081 "" ** {nonEmpty=True} ; - right_Ord = mkA084 "" ** {nonEmpty=True} ; - far_Adv = mkAdv "" ; - correct_A = mkA079 "" ; - dry_A = mkA076 "" ; - dull_A = mkA076 "" ; - full_A = mkA079 "" ; - heavy_A = mkA080 "" ; - near_A = mkA080 "" ; - rotten_A = mkA076 "" ; - round_A = mkA080 "" ; - sharp_A = mkA080 "" ; - smooth_A = mkA080 "" ; - straight_A = mkA081 "" ; - wet_A = mkA080 "" ; ---- - wide_A = mkA076 "" ; - animal_N = mkN062 "" ; - ashes_N = mkN049 "e" ; - back_N = mkN003 "" ; - bark_N = mkN028 "" ; - belly_N = mkN007 "" ; - blood_N = mkN053 "" ; - bone_N = mkN049 "" ; - breast_N = mkN041 "" ; - cloud_N = mkN014 "" ; - day_N = mkN033 "" ; - dust_N = mkN001 "" ; - ear_N = mkN064 "" ; - earth_N = mkN047 "" ; - egg_N = mkN066 "" ; - eye_N = mkN063 "" ; - fat_N = mkN041 "" ; - feather_N = mkN054 "" ; - fingernail_N = mkN034 "" ; - fire_N = mkN030 "" ; - flower_N = mkN068 "" ; - fog_N = mkN041 "" ; - foot_N = mkN041 "" ; - forest_N = mkN041 "" ; - grass_N = mkN041 "" ; - guts_N = mkN054 "" ; - hair_N = mkN041 "" ; - hand_N = mkN045 "" ; - head_N = mkN041 "" ; - heart_N = mkN066 "" ; - horn_N = mkN001 "" ; - husband_N = mkN015 "" ; -- personal - ice_N = mkN001 "" ; - knee_N = mkN058 "" ; - leaf_N = mkN054 "" ; - leg_N = mkN022 "" ; - liver_N = mkN001 "" ; - louse_N = mkN041 "" ; - mouth_N = mkN042 "" ; - name_N = mkN069 "" ; - neck_N = mkN003 "" ; - night_N = mkN049 "" ; - nose_N = mkN001 "" ; - person_N = mkN014 "" ; - rain_N = mkN001 "" ; - road_N = mkN037 "" ; - root_N = mkN007 "" ; - rope_N = mkN065 "" ; - salt_N = mkN049 "" ; - sand_N = mkN014 "" ; - seed_N = mkN069 "" ; - skin_N = mkN041 "" ; - sky_N = mkN070 "" ; - smoke_N = mkN014 "" ; - snow_N = mkN002 "" ; - stick_N = mkN041 "" ; - tail_N = mkN041 "" ; - tongue_N = mkN014 "" ; - tooth_N = mkN007 "" ; - wife_N = mkN041 "" ; - wind_N = mkN004 "" ; - wing_N = mkN056 "" ; - worm_N = mkN032 "" ; - year_N = mkN041 "" ; - blow_V = stateV (mkV186 "") ; - breathe_V = dirV2 (stateV (mkV186 "")) ; - burn_V = actionV (mkV187 "") (mkV177 "") ; - dig_V = stateV (mkV161 "") ; - fall_V = actionV (mkV186 "") (mkV152 "") ; - float_V = stateV (mkV186 "") ; - flow_V = stateV (mkV148 "") ; - fly_V = stateV (mkV177 "") ; - freeze_V = stateV (mkV186 "") ; - give_V3 = dirV3 (actionV (mkV186 "") (mkV186 "")) naP ; - laugh_V = medialV (stateV (mkV160 "")) Acc ; - lie_V = stateV (mkV178 "") ; - play_V = stateV (mkV161 "") ; - sew_V = stateV (mkV163 "") ; - sing_V = stateV (mkV164 "") ; - sit_V = stateV (mkV177 "") ; - smell_V = stateV (mkV159 "") ; - spit_V = stateV (mkV163 "") ; - stand_V = stateV (mkV180 "") ; - swell_V = actionV (mkV186 "") (mkV163 "") ; - swim_V = stateV (mkV186 "") ; - think_V = stateV (mkV173 "") ; - turn_V = actionV (mkV186 "") (mkV152 "") ; - vomit_V = actionV (mkV186 "") (mkV152 "") ; + know_VQ = mkVQ (actionV (mkV188 "знам") (mkV162 "зная")) ; + know_VS = mkVS (actionV (mkV188 "знам") (mkV162 "зная")) ; + lake_N = mkN054 "езеро" ; + lamp_N = mkN041 "лампа" ; + learn_V2 = dirV2 (actionV (mkV176 "уча") (mkV176 "науча")) ; + leather_N = mkN041 "кожа" ; + leave_V2 = dirV2 (actionV (mkV187 "оставям") (mkV173 "оставя")) ; + like_V2 = dirV2 (actionV (mkV186 "харесвам") (mkV186 "харесам")) ; + listen_V2 = dirV2 (stateV (mkV186 "слушам")) ; + live_V = stateV (mkV160 "живея") ; + long_A = mkA080 "дълъг" ; + lose_V2 = dirV2 (actionV (mkV173 "губя") (mkV173 "загубя")) ; + love_N = mkN049 "любов" ; + love_V2 = dirV2 (stateV (mkV186 "обичам")) ; + man_N = mkN024 "мъж" ; + married_A2 = mkA2 (mkA076 "женен") zaP ; + meat_N = mkN054 "месо" ; + milk_N = mkN057 "мляко" ; + moon_N = mkN041 "луна" ; + mother_N2 = prepN2 (mkN041a "майка") naP ; + mountain_N = mkN041 "планина" ; + music_N = mkN041 "музика" ; + narrow_A = mkA084 "тесен" ; + new_A = mkA076 "нов" ; + newspaper_N = mkN014 "вестник" ; + oil_N = mkN065 "олио" ; + old_A = mkA076 "стар" ; + open_V2 = dirV2 (actionV (mkV187 "отварям") (mkV173 "отворя")) ; + paint_V2A = mkV2A (actionV (mkV186 "рисувам") (mkV186 "нарисувам")) noPrep ; + paper_N = mkN047 "хартия" ; + paris_PN = mkPN "Париж" Masc ; + peace_N = mkN040a "мир" ; + pen_N = mkN041 "писалка" ; + planet_N = mkN041 "планета" ; + plastic_N = mkN041 "пластмаса" ; + play_V2 = dirV2 (stateV (mkV161 "играя")) ; + policeman_N = mkN032a "полицай" ; + priest_N = mkN014 "свещеник" ; + probable_AS = mkA079 "вероятен" ; + queen_N = mkN041 "кралица" ; + radio_N = mkN054 "радио" ; + rain_V0 = mkV0 (stateV (mkV174 "вали")) ; + read_V2 = dirV2 (stateV (mkV145 "чета")) ; + red_A = mkA076 "червен" ; + religion_N = mkN047 "религия" ; + restaurant_N = mkN007 "ресторант" ; + river_N = mkN041 "река" ; + rock_N = mkN041 "скала" ; + roof_N = mkN007 "покрив" ; + rubber_N = mkN041 "гума" ; + run_V = stateV (mkV186 "бягам") ; + say_VS = mkVS (actionV (mkV186 "казвам") (mkV156 "кажа")) ; + school_N = mkN066 "училище" ; + science_N = mkN041 "наука" ; + sea_N = mkN065 "море" ; + seek_V2 = dirV2 (stateV (mkV173 "търся")) ; + see_V2 = dirV2 (actionV (mkV186 "виждам") (mkV181 "видя")) ; + sell_V3 = dirV3 (stateV (mkV186 "продавам")) naP ; + send_V3 = dirV3 (actionV (mkV186 "пращам") (mkV173 "пратя")) doP ; + sheep_N = mkN044 "овца" ; + ship_N = mkN007 "кораб" ; + shirt_N = mkN041 "риза" ; + shoe_N = mkN041 "обувка" ; + shop_N = mkN007 "магазин" ; + short_A = mkA076 "къс" ; + silver_N = mkN054 "сребро" ; + sister_N = mkN041a "сестра" ; + sleep_V = stateV (mkV182 "спя") ; + small_A = mkA080 "малък" ; + snake_N = mkN047 "змия" ; + sock_N = mkN007 "чорап" ; + speak_V2 = dirV2 (stateV (mkV173 "говоря")) ; + star_N = mkN041 "звезда" ; + steel_N = mkN041 "стомана" ; + stone_N = mkN017 "камък" ; + stove_N = mkN041 "печка" ; + student_N = mkN007a "студент" ; + stupid_A = mkA076 "глупав" ; + sun_N = mkN066 "слънце" ; + switch8off_V2 = dirV2 (actionV (mkV186 "изключвам") (mkV176 "изключа")) ; + switch8on_V2 = dirV2 (actionV (mkV186 "включвам") (mkV176 "включа")) ; + table_N = mkN041 "маса" ; + talk_V3 = mkV3 (stateV (mkV173 "говоря")) naP zaP ; + teacher_N = mkN031a "учител" ; + teach_V2 = dirV2 (actionV (mkV186 "преподавам") (mkV168 "преподам")) ; + television_N = mkN047 "телевизия" ; + thick_A = mkA076 "дебел" ; + thin_A = mkA080 "тънък" ; + train_N = mkN001 "влак" ; + travel_V = stateV (mkV186 "пътувам") ; + tree_N = mkN061 "дърво" ; + ugly_A = mkA076 "глупав" ; + understand_V2 = dirV2 (actionV (mkV186 "разбирам") (mkV170 "разбера")) ; + university_N = mkN007 "университет" ; + village_N = mkN054 "село" ; + wait_V2 = prepV2 (stateV (mkV186 "чакам")) zaP ; + walk_V = stateV (mkV173 "ходя") ; + warm_A = mkA080 "топъл" ; + war_N = mkN041 "война" ; + watch_V2 = dirV2 (stateV (mkV186 "гледам")) ; + water_N = mkN041 "вода" ; + white_A = mkA081 "бял" ; + window_N = mkN008 "прозорец" ; + wine_N = mkN054 "вино" ; + win_V2 = dirV2 (actionV (mkV186 "побеждавам") (mkV174 "победя")) ; + woman_N = mkN041a "жена" ; + wonder_VQ = mkVQ (medialV (actionV (mkV186 "учудвам") (mkV173 "чудя")) Acc) ; + wood_N = mkN041 "дървесина" ; + write_V2 = dirV2 (stateV (mkV159 "пиша")) ; + yellow_A = mkA076 "жълт" ; + young_A = mkA076 "млад" ; + do_V2 = dirV2 (actionV (mkV173 "правя") (mkV173 "направя")) ; + now_Adv = mkAdv "сега" ; + already_Adv = mkAdv "вече" ; + song_N = mkN050 "песен" ; + add_V3 = dirV3 (actionV (mkV186 "събирам") (mkV170 "събера")) sP ; + number_N = mkN054 "число" ; + put_V2 = prepV2 (actionV (mkV186 "слагам") (mkV176 "сложа")) noPrep ; + stop_V = actionV (mkV186 "спирам") (mkV150 "спра") ; + jump_V = actionV (mkV186 "скачам") (mkV176 "скоча") ; + left_Ord = mkA081 "ляв" ** {nonEmpty=True} ; + right_Ord = mkA084 "десен" ** {nonEmpty=True} ; + far_Adv = mkAdv "далече" ; + correct_A = mkA079 "правилен" ; + dry_A = mkA076 "сух" ; + dull_A = mkA076 "тъп" ; + full_A = mkA079 "пълен" ; + heavy_A = mkA080 "тежък" ; + near_A = mkA080 "близък" ; + rotten_A = mkA076 "прогнил" ; + round_A = mkA080 "кръгъл" ; + sharp_A = mkA080 "остър" ; + smooth_A = mkA080 "гладък" ; + straight_A = mkA081 "пряк" ; + wet_A = mkA080 "мокър" ; ---- + wide_A = mkA076 "широк" ; + animal_N = mkN062 "животно" ; + ashes_N = mkN049 "пепeл" ; + back_N = mkN003 "гръб" ; + bark_N = mkN028 "лай" ; + belly_N = mkN007 "корем" ; + blood_N = mkN053 "кръв" ; + bone_N = mkN049 "кост" ; + breast_N = mkN041 "гърда" ; + cloud_N = mkN014 "облак" ; + day_N = mkN033 "ден" ; + dust_N = mkN001 "прах" ; + ear_N = mkN064 "ухо" ; + earth_N = mkN047 "земя" ; + egg_N = mkN066 "яйце" ; + eye_N = mkN063 "око" ; + fat_N = mkN041 "мазнина" ; + feather_N = mkN054 "перо" ; + fingernail_N = mkN034 "нокът" ; + fire_N = mkN030 "огън" ; + flower_N = mkN068 "цвете" ; + fog_N = mkN041 "мъгла" ; + foot_N = mkN041 "стъпка" ; + forest_N = mkN041 "гора" ; + grass_N = mkN041 "трева" ; + guts_N = mkN054 "черво" ; + hair_N = mkN041 "коса" ; + hand_N = mkN045 "ръка" ; + head_N = mkN041 "глава" ; + heart_N = mkN066 "сърце" ; + horn_N = mkN001 "рог" ; + husband_N = mkN015 "съпруг" ; -- personal + ice_N = mkN001 "лед" ; + knee_N = mkN058 "коляно" ; + leaf_N = mkN054 "листо" ; + leg_N = mkN022 "крак" ; + liver_N = mkN001 "дроб" ; + louse_N = mkN041 "въшка" ; + mouth_N = mkN042 "уста" ; + name_N = mkN069 "име" ; + neck_N = mkN003 "гръб" ; + night_N = mkN049 "нощ" ; + nose_N = mkN001 "нос" ; + person_N = mkN014 "човек" ; + rain_N = mkN001 "дъжд" ; + road_N = mkN037 "път" ; + root_N = mkN007 "корен" ; + rope_N = mkN065 "въже" ; + salt_N = mkN049 "сол" ; + sand_N = mkN014 "пясък" ; + seed_N = mkN069 "семе" ; + skin_N = mkN041 "кожа" ; + sky_N = mkN070 "небе" ; + smoke_N = mkN014 "пушек" ; + snow_N = mkN002 "сняг" ; + stick_N = mkN041 "пръчка" ; + tail_N = mkN041 "опашка" ; + tongue_N = mkN014 "език" ; + tooth_N = mkN007 "зъб" ; + wife_N = mkN041 "съпруга" ; + wind_N = mkN004 "вятър" ; + wing_N = mkN056 "крило" ; + worm_N = mkN032 "червей" ; + year_N = mkN041 "година" ; + blow_V = stateV (mkV186 "духам") ; + breathe_V = dirV2 (stateV (mkV186 "дишам")) ; + burn_V = actionV (mkV187 "изгарям") (mkV177 "изгоря") ; + dig_V = stateV (mkV161 "копая") ; + fall_V = actionV (mkV186 "падам") (mkV152 "падна") ; + float_V = stateV (mkV186 "плавам") ; + flow_V = stateV (mkV148 "тека") ; + fly_V = stateV (mkV177 "летя") ; + freeze_V = stateV (mkV186 "замръзвам") ; + give_V3 = dirV3 (actionV (mkV186 "давам") (mkV186 "дам")) naP ; + laugh_V = medialV (stateV (mkV160 "смея")) Acc ; + lie_V = stateV (mkV178 "лежа") ; + play_V = stateV (mkV161 "играя") ; + sew_V = stateV (mkV163 "шия") ; + sing_V = stateV (mkV164 "пея") ; + sit_V = stateV (mkV177 "седя") ; + smell_V = stateV (mkV159 "мириша") ; + spit_V = stateV (mkV163 "плюя") ; + stand_V = stateV (mkV180 "стоя") ; + swell_V = actionV (mkV186 "надувам") (mkV163 "надуя") ; + swim_V = stateV (mkV186 "плувам") ; + think_V = stateV (mkV173 "мисля") ; + turn_V = actionV (mkV186 "обръщам") (mkV152 "обърна") ; + vomit_V = actionV (mkV186 "повръщам") (mkV152 "повърна") ; - bite_V2 = dirV2 (stateV (mkV154 "")) ; - count_V2 = dirV2 (stateV (mkV175 "")) ; - cut_V2 = dirV2 (stateV (mkV157 "")) ; - fear_V2 = prepV2 (medialV (stateV (mkV186 "")) Acc) otP; - fight_V2 = prepV2 (medialV (stateV (mkV173 "")) Acc) sP; - hit_V2 = dirV2 (actionV (mkV187 "") (mkV173 "")) ; - hold_V2 = dirV2 (stateV (mkV179 "")) ; - hunt_V2 = dirV2 (stateV (mkV174 "")) ; - kill_V2 = dirV2 (actionV (mkV186 "") (mkV163 "")) ; - pull_V2 = dirV2 (stateV (mkV186 "")) ; - push_V2 = dirV2 (stateV (mkV186 "")) ; - rub_V2 = dirV2 (stateV (mkV163 "")) ; - scratch_V2 = dirV2 (actionV (mkV186 "") (mkV152 "")) ; - split_V2 = dirV2 (actionV (mkV187 "") (mkV174 "")) ; - squeeze_V2 = dirV2 (actionV (mkV186 "") (mkV152 "")) ; - stab_V2 = dirV2 (actionV (mkV186 "") (mkV176 "")) ; - suck_V2 = dirV2 (stateV (mkV155 "")) ; - throw_V2 = dirV2 (actionV (mkV187 "") (mkV173 "")) ; - tie_V2 = dirV2 (actionV (mkV186 "") (mkV156 "")) ; - wash_V2 = dirV2 (stateV (mkV163 "")) ; - wipe_V2 = dirV2 (stateV (mkV159 "")) ; + bite_V2 = dirV2 (stateV (mkV154 "хапя")) ; + count_V2 = dirV2 (stateV (mkV175 "броя")) ; + cut_V2 = dirV2 (stateV (mkV157 "режа")) ; + fear_V2 = prepV2 (medialV (stateV (mkV186 "страхувам")) Acc) otP; + fight_V2 = prepV2 (medialV (stateV (mkV173 "боря")) Acc) sP; + hit_V2 = dirV2 (actionV (mkV187 "удрям") (mkV173 "ударя")) ; + hold_V2 = dirV2 (stateV (mkV179 "държа")) ; + hunt_V2 = dirV2 (stateV (mkV174 "ловя")) ; + kill_V2 = dirV2 (actionV (mkV186 "убивам") (mkV163 "убия")) ; + pull_V2 = dirV2 (stateV (mkV186 "дърпам")) ; + push_V2 = dirV2 (stateV (mkV186 "бутам")) ; + rub_V2 = dirV2 (stateV (mkV163 "трия")) ; + scratch_V2 = dirV2 (actionV (mkV186 "драскам") (mkV152 "драсна")) ; + split_V2 = dirV2 (actionV (mkV187 "разделям") (mkV174 "разделя")) ; + squeeze_V2 = dirV2 (actionV (mkV186 "стискам") (mkV152 "стисна")) ; + stab_V2 = dirV2 (actionV (mkV186 "промушвам") (mkV176 "промуша")) ; + suck_V2 = dirV2 (stateV (mkV155 "суча")) ; + throw_V2 = dirV2 (actionV (mkV187 "хвърлям") (mkV173 "хвърля")) ; + tie_V2 = dirV2 (actionV (mkV186 "връзвам") (mkV156 "вържа")) ; + wash_V2 = dirV2 (stateV (mkV163 "мия")) ; + wipe_V2 = dirV2 (stateV (mkV159 "бърша")) ; - grammar_N = mkN041 "" ; - language_N = mkN014 "" ; - rule_N = mkN054 "" ; + grammar_N = mkN041 "граматика" ; + language_N = mkN014 "език" ; + rule_N = mkN054 "правило" ; - john_PN = mkPN "" Masc ; - question_N = mkN007 "" ; - ready_A = mkA076 "" ; - reason_N = mkN041 "" ; - today_Adv = mkAdv "" ; - uncertain_A = mkA079 "" ; + john_PN = mkPN "Джон" Masc ; + question_N = mkN007 "въпрос" ; + ready_A = mkA076 "готов" ; + reason_N = mkN041 "причина" ; + today_Adv = mkAdv "днес" ; + uncertain_A = mkA079 "неясен" ; oper - zaP = mkPrep "" Acc ; + zaP = mkPrep "за" Acc ; naP = mkPrep [] Dat ; - otP = mkPrep "" Acc ; - doP = mkPrep "" Acc ; - sP = mkPrep (pre { "" ; - "" / strs {"" ; "" ; "" ; ""} + otP = mkPrep "от" Acc ; + doP = mkPrep "до" Acc ; + sP = mkPrep (pre { "с" ; + "със" / strs {"с" ; "з" ; "С" ; "З"} }) Acc ; } ; diff --git a/src/bulgarian/MorphoBul.gf b/src/bulgarian/MorphoBul.gf index 044ea38f..b9d5f06d 100644 --- a/src/bulgarian/MorphoBul.gf +++ b/src/bulgarian/MorphoBul.gf @@ -1,5 +1,5 @@ --# -path=.:../../prelude ---# -coding=cp1251 +--# -coding=utf8 --1 A Simple English Resource Morphology -- @@ -14,7 +14,7 @@ resource MorphoBul = ResBul ** open Prelude, CatBul in { - flags coding=cp1251 ; + flags coding=utf8 ; flags optimize=all ; @@ -95,73 +95,73 @@ oper \cheta,chete,chetoh,chetqh,chel,chetql,cheten,chetqst,cheti,chetene -> table { VPres Sg P1 => cheta; - VPres Sg P2 => chete + ""; + VPres Sg P2 => chete + "ш"; VPres Sg P3 => chete; VPres Pl P1 => case chete of { - _ + (""|"") => chete + ""; - _ => chete + "" + _ + ("а"|"я") => chete + "ме"; + _ => chete + "м" }; - VPres Pl P2 => chete + ""; + VPres Pl P2 => chete + "те"; VPres Pl P3 => case cheta of { - vika + "" => case chete of { - zn + "" => zn + ""; - dad + "" => dad + ""; - vika => vika + "" + vika + "м" => case chete of { + zn + "ае" => zn + "аят"; + dad + "е" => dad + "ат"; + vika => vika + "т" }; - _ => cheta + "" + _ => cheta + "т" }; VAorist Sg P1 => chetoh; VAorist Sg _ => case chetoh of { - chet+"" => chete; - zova+ "" => zova + chet+"ох" => chete; + zova+ "х" => zova }; - VAorist Pl P1 => chetoh + ""; - VAorist Pl P2 => chetoh + ""; - VAorist Pl P3 => chetoh + ""; + VAorist Pl P1 => chetoh + "ме"; + VAorist Pl P2 => chetoh + "те"; + VAorist Pl P3 => chetoh + "а"; VImperfect Sg P1 => chetqh; VImperfect Sg _ => case chete of { - rabot + "" => rabot + "e"; - _ => chete + "" + rabot + "и" => rabot + "eше"; + _ => chete + "ше" }; - VImperfect Pl P1 => chetqh + ""; - VImperfect Pl P2 => chetqh + ""; - VImperfect Pl P3 => chetqh + ""; + VImperfect Pl P1 => chetqh + "ме"; + VImperfect Pl P2 => chetqh + "те"; + VImperfect Pl P3 => chetqh + "а"; VPerfect aform =>let chel1 : Str = case chel of { - pas+"" => pas+""; + pas+"ъл" => pas+"л"; _ => chel } ; chel2 : Str = case chel of { - w+"" => w+""; + w+"лязъл" => w+"лезл"; _ => chel } in (mkAdjective chel - (chel2+"") - (chel2+"") + (chel2+"ия") + (chel2+"ият") (chel1+"a") - (chel1+"") - (chel1+"") - (chel1+"") - (ia2e chel1+"") - (ia2e chel1+"")).s ! aform ; + (chel1+"ата") + (chel1+"о") + (chel1+"ото") + (ia2e chel1+"и") + (ia2e chel1+"ите")).s ! aform ; VPluPerfect aform => regAdjective chetql ! aform ; VPassive aform => regAdjective cheten ! aform ; VPresPart aform => regAdjective chetqst ! aform ; VImperative Sg => cheti; VImperative Pl => case cheti of { - chet + "" => chet + ""; - ela => ela + "" + chet + "и" => chet + "ете"; + ela => ela + "те" }; VNoun nform => let v0 = init chetene - in (mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in (mkNoun (v0+"е") + (v0+"ия") + (v0+"ия") + (v0+"е") ANeut) ! nform; VGerund => case chete of { - rabot + "" => rabot + ""; - _ => chete + "" + rabot + "и" => rabot + "ейки"; + _ => chete + "йки" } } ; @@ -172,51 +172,51 @@ oper table { NF Sg Indef => sg ; NF Sg Def => case sg of { - _+""=>sg+"" ; - _+""=>sg+"" ; - _+""=>sg+"" ; - _+""=>sg+"" ; - _+""=>sg+"" ; - _+""=>sg+"" ; - s+""=>s +"" ; - _+("") - =>sg +"" ; - _+(""|""|""|"" - |""|""|"" - |""|""|"" - |""|""|"") - =>sg +"" ; + _+"а"=>sg+"та" ; + _+"я"=>sg+"та" ; + _+"о"=>sg+"то" ; + _+"у"=>sg+"то" ; + _+"е"=>sg+"то" ; + _+"и"=>sg+"то" ; + s+"й"=>s +"я" ; + _+("ър") + =>sg +"а" ; + _+("тел"|"ар"|"яр"|"ден" + |"път"|"огън"|"сън" + |"кон"|"крал"|"цар" + |"зет"|"лакът"|"нокът") + =>sg +"я" ; _ =>case g of { - AFem => sg+"" ; - _ => sg+"" + AFem => sg+"та" ; + _ => sg+"а" } } ; NF Pl Indef => pl ; NF Pl Def => case pl of { - _+""=>pl+"" ; - _+""=>pl+"" ; - _+""=>pl+"" ; - _+""=>pl+"" ; - _ =>pl+"" + _+"а"=>pl+"та" ; + _+"е"=>pl+"те" ; + _+"и"=>pl+"те" ; + _+"я"=>pl+"та" ; + _ =>pl+"те" } ; NFSgDefNom => case sg of { - _+""=>sg+"" ; - _+""=>sg+"" ; - _+""=>sg+"" ; - _+""=>sg+"" ; - _+""=>sg+"" ; - _+""=>sg+"" ; - s+""=>s +"" ; - _+("") - =>sg +"" ; - _+(""|""|""|"" - |""|""|"" - |""|""|"" - |""|""|"") - =>sg+"" ; + _+"а"=>sg+"та" ; + _+"я"=>sg+"та" ; + _+"о"=>sg+"то" ; + _+"у"=>sg+"то" ; + _+"е"=>sg+"то" ; + _+"и"=>sg+"то" ; + s+"й"=>s +"ят" ; + _+("ър") + =>sg +"ът" ; + _+("тел"|"ар"|"яр"|"ден" + |"път"|"огън"|"сън" + |"кон"|"крал"|"цар" + |"зет"|"лакът"|"нокът") + =>sg+"ят" ; _ =>case g of { - AFem => sg+"" ; - _ => sg+"" + AFem => sg+"та" ; + _ => sg+"ът" } } ; NFPlCount => count ; diff --git a/src/bulgarian/MorphoFunsBul.gf b/src/bulgarian/MorphoFunsBul.gf index 9171f30f..92798d20 100644 --- a/src/bulgarian/MorphoFunsBul.gf +++ b/src/bulgarian/MorphoFunsBul.gf @@ -1,4 +1,4 @@ ---# -coding=cp1251 +--# -coding=utf8 --# -path=.:../abstract:../../prelude:../common resource MorphoFunsBul = open @@ -6,7 +6,7 @@ resource MorphoFunsBul = open CatBul, MorphoBul in { - flags coding=cp1251 ; + flags coding=utf8 ; oper @@ -57,11 +57,11 @@ oper dualV : VTable -> VTable -> V ; dualV imperf perf = { s = table {Imperf=>imperf; Perf=>perf}; - n = let v0 = init (imperf ! (VImperfect Sg P1)) + "" - in (mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + n = let v0 = init (imperf ! (VImperfect Sg P1)) + "н" + in (mkNoun (v0+"е") + (v0+"ия") + (v0+"ия") + (v0+"е") ANeut).s; vtype = VNormal; lock_V=<> @@ -72,11 +72,11 @@ oper singleV : VTable -> V ; singleV vtable = { s = \\_=>vtable; - n = let v0 = init (vtable ! (VImperfect Sg P1)) + "" - in (mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + n = let v0 = init (vtable ! (VImperfect Sg P1)) + "н" + in (mkNoun (v0+"е") + (v0+"ия") + (v0+"ия") + (v0+"е") ANeut).s; vtype = VNormal; lock_V=<> @@ -286,5 +286,5 @@ oper -- mkIAdv : Str -> IAdv ; - mkIAdv s = {s = table {QDir=>s;QIndir=>s+""}; lock_IAdv = <>} ; + mkIAdv s = {s = table {QDir=>s;QIndir=>s+"то"}; lock_IAdv = <>} ; } diff --git a/src/bulgarian/NounBul.gf b/src/bulgarian/NounBul.gf index aa278485..dbf8b51e 100644 --- a/src/bulgarian/NounBul.gf +++ b/src/bulgarian/NounBul.gf @@ -1,6 +1,6 @@ ---# -coding=cp1251 +--# -coding=utf8 concrete NounBul of Noun = CatBul ** open ResBul, Prelude in { - flags optimize=all_subs ; coding=cp1251 ; + flags optimize=all_subs ; coding=utf8 ; lin DetCN det cn = @@ -123,17 +123,17 @@ concrete NounBul of Noun = CatBul ** open ResBul, Prelude in { AdNum adn num = {s = \\gspec => adn.s ++ num.s ! gspec; nn = num.nn} ; - OrdSuperl a = {s = \\aform => "" ++ hyphen ++ a.s ! aform} ; + OrdSuperl a = {s = \\aform => "най" ++ hyphen ++ a.s ! aform} ; DefArt = { s = table { True => \\_ => [] ; False => table { - ASg Masc _ => "" ; - ASgMascDefNom => "" ; - ASg Fem _ => "" ; - ASg Neut _ => "" ; - APl _ => "" + ASg Masc _ => "той" ; + ASgMascDefNom => "той" ; + ASg Fem _ => "тя" ; + ASg Neut _ => "то" ; + APl _ => "те" } } ; nonEmpty = False ; @@ -145,11 +145,11 @@ concrete NounBul of Noun = CatBul ** open ResBul, Prelude in { s = table { True => \\_ => [] ; False => table { - ASg Masc _ => "" ; - ASgMascDefNom => "" ; - ASg Fem _ => "" ; - ASg Neut _ => "" ; - APl _ => "" + ASg Masc _ => "един" ; + ASgMascDefNom => "един" ; + ASg Fem _ => "една" ; + ASg Neut _ => "едно" ; + APl _ => "едни" } } ; nonEmpty = False ; @@ -197,9 +197,9 @@ concrete NounBul of Noun = CatBul ** open ResBul, Prelude in { ApposCN cn np = {s = \\nf => cn.s ! nf ++ np.s ! RSubj; g=cn.g} ; - PossNP cn np = {s = \\nf => cn.s ! nf ++ "" ++ np.s ! (RObj CPrep); g = cn.g} ; + PossNP cn np = {s = \\nf => cn.s ! nf ++ "на" ++ np.s ! (RObj CPrep); g = cn.g} ; - PartNP cn np = {s = \\nf => cn.s ! nf ++ "" ++ np.s ! (RObj CPrep); g = cn.g} ; + PartNP cn np = {s = \\nf => cn.s ! nf ++ "от" ++ np.s ! (RObj CPrep); g = cn.g} ; CountNP det np = { s = \\role => let g = case np.gn of { -- this is lossy diff --git a/src/bulgarian/NumeralBul.gf b/src/bulgarian/NumeralBul.gf index a111935a..cc18e870 100644 --- a/src/bulgarian/NumeralBul.gf +++ b/src/bulgarian/NumeralBul.gf @@ -1,6 +1,6 @@ ---# -coding=cp1251 +--# -coding=utf8 concrete NumeralBul of Numeral = CatBul [Numeral,Digits] ** open Prelude, ResBul in { - flags coding=cp1251 ; + flags coding=utf8 ; lincat @@ -11,43 +11,43 @@ lincat Sub1000000 = {s : CardOrd => NumF => Str; n : Number} ; lin num x = {s = \\c => x.s ! c ! Formal; n=x.n} ; -lin n2 = mkDigit "" "" "" "" "" "" "" ; -lin n3 = mkDigit "" "" "" "" "" "" "" ; -lin n4 = mkDigit "" "" "" "" "" "" "" ; -lin n5 = mkDigit "" "" "" "" "" "" "" ; -lin n6 = mkDigit "" "" "" "" "" "" "" ; -lin n7 = mkDigit "" "" "" "" "" "" "" ; -lin n8 = mkDigit "" "" "" "" "" "" "" ; -lin n9 = mkDigit "" "" "" "" "" "" "" ; +lin n2 = mkDigit "два" "двама" "две" "втори" "двайсет" "двеста" "двестата" ; +lin n3 = mkDigit "три" "трима" "три" "трети" "трийсет" "триста" "тристата" ; +lin n4 = mkDigit "четири" "четирима" "четири" "четвърти" "четирийсет" "четиристотин" "четиристотинте" ; +lin n5 = mkDigit "пет" "петима" "пет" "пети" "петдесет" "петстотин" "петстотинте" ; +lin n6 = mkDigit "шест" "шестима" "шест" "шести" "шейсет" "шестстотин" "шестстотинте" ; +lin n7 = mkDigit "седем" "седмина" "седем" "седми" "седемдесет" "седемстотин" "седемстотинте" ; +lin n8 = mkDigit "осем" "осмина" "осем" "осми" "осемдесет" "осемстотин" "осемстотинте" ; +lin n9 = mkDigit "девет" "деветима" "девет" "девети" "деветдесет" "деветстотин" "деветстотинте" ; lin pot01 = {s = table { unit => table { - NCard (CFMasc Indef _) => "" ; - NCard (CFMasc Def _) => "" ; - NCard (CFMascDefNom _) => "" ; - NCard (CFFem Indef) => "" ; - NCard (CFFem Def) => "" ; - NCard (CFNeut Indef) => "" ; - NCard (CFNeut Def) => "" ; + NCard (CFMasc Indef _) => "един" ; + NCard (CFMasc Def _) => "единия" ; + NCard (CFMascDefNom _) => "единият" ; + NCard (CFFem Indef) => "една" ; + NCard (CFFem Def) => "едната" ; + NCard (CFNeut Indef) => "едно" ; + NCard (CFNeut Def) => "едното" ; NOrd aform => case aform of { - ASg Masc Indef => "" ; - ASg Masc Def => "" ; - ASgMascDefNom => "" ; - ASg Fem Indef => "" ; - ASg Fem Def => "" ; - ASg Neut Indef => "" ; - ASg Neut Def => "" ; - APl Indef => "" ; - APl Def => "" + ASg Masc Indef => "първи" ; + ASg Masc Def => "първия" ; + ASgMascDefNom => "първият" ; + ASg Fem Indef => "първа" ; + ASg Fem Def => "първата" ; + ASg Neut Indef => "първо" ; + ASg Neut Def => "първото" ; + APl Indef => "първи" ; + APl Def => "първите" } } ; teen nf => case nf of { - Formal => mkCardOrd "" "" "" "" ; - Informal => mkCardOrd "" "" "" "" + Formal => mkCardOrd "единадесет" "единадесетима" "единадесет" "единадесети" ; + Informal => mkCardOrd "единайсет" "единайсет" "единайсет" "единайсти" } ; - ten nf => mkCardOrd "" "" "" "" ; - hundred => mkCardOrd100 "" "" "" + ten nf => mkCardOrd "десет" "десетима" "десет" "десети" ; + hundred => mkCardOrd100 "сто" "стоте" "стотен" } ;n = Sg } ; @@ -59,12 +59,12 @@ lin pot1to19 d = {s = \\c,nf => d.s ! teen nf ! c; n = Pl; i = True} ; lin pot0as1 n = {s = \\c,nf => n.s ! unit ! c; n = n.n; i = True} ; lin pot1 d = {s = \\c,nf => d.s ! ten nf ! c; n = Pl; i = True} ; lin pot1plus d e = { - s = \\c,nf => d.s ! ten nf ! NCard (CFMasc Indef NonHuman) ++ "" ++ e.s ! unit ! c ; n = Pl; i = False} ; + s = \\c,nf => d.s ! ten nf ! NCard (CFMasc Indef NonHuman) ++ "и" ++ e.s ! unit ! c ; n = Pl; i = False} ; lin pot1as2 n = n ; lin pot2 n = {s = \\c,nf => n.s ! hundred ! c; n = Pl; i = True} ; lin pot2plus d e = { - s = \\c,nf => d.s ! hundred ! NCard (CFMasc Indef NonHuman) ++ case e.i of {False => []; True => ""} ++ e.s ! c ! nf ; + s = \\c,nf => d.s ! hundred ! NCard (CFMasc Indef NonHuman) ++ case e.i of {False => []; True => "и"} ++ e.s ! c ! nf ; n = Pl ; i = False } ; @@ -72,17 +72,17 @@ lin pot2plus d e = { lin pot2as3 n = n ; lin pot3 n = { s = \\c,nf => case n.n of { - Sg => mkCardOrd100 "" "" "" ! c ; - Pl => n.s ! NCard (CFFem Indef) ! nf ++ mkCardOrd100 "" "" "" ! c + Sg => mkCardOrd100 "хиляда" "хилядата" "хиляден" ! c ; + Pl => n.s ! NCard (CFFem Indef) ! nf ++ mkCardOrd100 "хиляди" "хилядите" "хиляден" ! c } ; n = Pl } ; lin pot3plus n m = { s = \\c,nf => case n.n of { - Sg => mkCardOrd100 "" "" "" ! NCard (CFMasc Indef NonHuman) ; - Pl => n.s ! NCard (CFFem Indef) ! nf ++ mkCardOrd100 "" "" "" ! NCard (CFMasc Indef NonHuman) + Sg => mkCardOrd100 "хиляда" "хилядата" "хиляден" ! NCard (CFMasc Indef NonHuman) ; + Pl => n.s ! NCard (CFFem Indef) ! nf ++ mkCardOrd100 "хиляди" "хилядите" "хиляден" ! NCard (CFMasc Indef NonHuman) } - ++ case m.i of {False => []; True => ""} ++ m.s ! c ! nf ; + ++ case m.i of {False => []; True => "и"} ++ m.s ! c ! nf ; n = Pl } ; @@ -101,16 +101,16 @@ lin pot3plus n m = { tail = inc i.tail } ; - D_0 = mk3Dig "0" "0" "0" Pl ; - D_1 = mk3Dig "1" "1" "1" Sg ; - D_2 = mk2Dig "2" "2" ; + D_0 = mk3Dig "0" "0" "0ев" Pl ; + D_1 = mk3Dig "1" "1" "1ви" Sg ; + D_2 = mk2Dig "2" "2ри" ; D_3 = mkDig "3" ; D_4 = mkDig "4" ; D_5 = mkDig "5" ; D_6 = mkDig "6" ; - D_7 = mk3Dig "7" "7" "7" Pl ; - D_8 = mk3Dig "8" "8" "8" Pl ; - D_9 = mk3Dig "9" "9" "9" Pl ; + D_7 = mk3Dig "7" "7на" "7ми" Pl ; + D_8 = mk3Dig "8" "8на" "8ми" Pl ; + D_9 = mk3Dig "9" "9има" "9ти" Pl ; oper spaceIf : DTail -> Str = \t -> case t of { @@ -124,8 +124,8 @@ lin pot3plus n m = { T3 => T1 } ; - mk2Dig : Str -> Str -> TDigit = \c,o -> mk3Dig c (c+"") o Pl ; - mkDig : Str -> TDigit = \c -> mk2Dig c (c + "") ; + mk2Dig : Str -> Str -> TDigit = \c,o -> mk3Dig c (c+"ма") o Pl ; + mkDig : Str -> TDigit = \c -> mk2Dig c (c + "ти") ; mk3Dig : Str -> Str -> Str -> Number -> TDigit = \c1,c2,o,n -> { s = mkCardOrd c1 c2 c1 o ; diff --git a/src/bulgarian/ParadigmsBul.gf b/src/bulgarian/ParadigmsBul.gf index b486a42e..6181bcc8 100644 --- a/src/bulgarian/ParadigmsBul.gf +++ b/src/bulgarian/ParadigmsBul.gf @@ -1,5 +1,5 @@ --# -path=.:../abstract:../common:../prelude ---# -coding=cp1251 +--# -coding=utf8 resource ParadigmsBul = MorphoFunsBul ** open Predef, @@ -7,7 +7,7 @@ resource ParadigmsBul = MorphoFunsBul ** open MorphoBul, CatBul in { - flags coding=cp1251 ; + flags coding=utf8 ; oper -- numbers refer to Krustev, Bulg. Morph. in 187 Tables @@ -15,12 +15,12 @@ oper mkN001 : Str -> N ; mkN001 base = {s = table { NF Sg Indef => base ; - NF Sg Def => base+"" ; - NF Pl Indef => base+"" ; - NF Pl Def => base+"" ; - NFSgDefNom => base+"" ; - NFPlCount => base+"" ; - NFVocative => base+"" + NF Sg Def => base+"а" ; + NF Pl Indef => base+"ове" ; + NF Pl Def => base+"овете" ; + NFSgDefNom => base+"ът" ; + NFPlCount => base+"а" ; + NFVocative => base+"е" } ; rel = \\_ => base ; relType = Pref ; g = AMasc NonHuman ; @@ -29,12 +29,12 @@ oper mkN001a : Str -> N ; mkN001a base = {s = table { NF Sg Indef => base ; - NF Sg Def => base+"" ; - NF Pl Indef => base+"" ; - NF Pl Def => base+"" ; - NFSgDefNom => base+"" ; - NFPlCount => base+"" ; - NFVocative => base+"" + NF Sg Def => base+"а" ; + NF Pl Indef => base+"ове" ; + NF Pl Def => base+"овете" ; + NFSgDefNom => base+"ът" ; + NFPlCount => base+"ове" ; + NFVocative => base+"е" } ; rel = \\_ => base ; relType = Pref ; g = AMasc Human ; @@ -45,13 +45,13 @@ oper v1 = last (base); g = AMasc NonHuman in {s = table { - NF Sg Indef => v0+""+v1 ; - NF Sg Def => v0+""+v1+"" ; - NF Pl Indef => v0+""+v1+"" ; - NF Pl Def => v0+""+v1+"" ; - NFSgDefNom => v0+""+v1+"" ; - NFPlCount => v0+""+v1+"" ; - NFVocative => v0+""+v1 + NF Sg Indef => v0+"я"+v1 ; + NF Sg Def => v0+"е"+v1+"а" ; + NF Pl Indef => v0+"е"+v1+"ове" ; + NF Pl Def => v0+"е"+v1+"овете" ; + NFSgDefNom => v0+"е"+v1+"а" ; + NFPlCount => v0+"я"+v1+"а" ; + NFVocative => v0+"я"+v1 } ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -62,13 +62,13 @@ oper v1 = last (base); g = AMasc NonHuman in {s = table { - NF Sg Indef => v0+""+v1 ; - NF Sg Def => v0+""+v1+"" ; - NF Pl Indef => v0+""+v1+"" ; - NF Pl Def => v0+""+v1+"" ; - NFSgDefNom => v0+""+v1+"" ; - NFPlCount => v0+""+v1+"" ; - NFVocative => v0+""+v1 + NF Sg Indef => v0+"я"+v1 ; + NF Sg Def => v0+"я"+v1+"а" ; + NF Pl Indef => v0+"е"+v1+"ове" ; + NF Pl Def => v0+"е"+v1+"овете" ; + NFSgDefNom => v0+"е"+v1+"а" ; + NFPlCount => v0+"я"+v1+"а" ; + NFVocative => v0+"я"+v1 } ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -79,13 +79,13 @@ oper v1 = last (base); g = AMasc NonHuman in {s = table { - NF Sg Indef => v0+""+v1 ; - NF Sg Def => v0+""+v1+"" ; - NF Pl Indef => v0+""+v1+"" ; - NF Pl Def => v0+""+v1+"" ; - NFSgDefNom => v0+""+v1+"" ; - NFPlCount => v0+""+v1+"" ; - NFVocative => v0+""+v1 + NF Sg Indef => v0+"ръ"+v1 ; + NF Sg Def => v0+"ър"+v1+"а" ; + NF Pl Indef => v0+"ър"+v1+"ове" ; + NF Pl Def => v0+"ър"+v1+"овете" ; + NFSgDefNom => v0+"ър"+v1+"ът" ; + NFPlCount => v0+"ър"+v1+"ове" ; + NFVocative => v0+"ръ"+v1 } ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -94,10 +94,10 @@ oper mkN004 : Str -> N ; mkN004 base = let v0 = tk 4 base; g = AMasc NonHuman - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ятър") + (v0+"етрове") + (v0+"ятъра") + (v0+"етре") g; rel = \\_ => base; relType = Pref; g = g ; @@ -107,8 +107,8 @@ oper mkN005 base = let v0 = base; g = AMasc NonHuman in {s = mkNoun (v0) - (v0+"") - (v0+"") + (v0+"ове") + (v0+"а") (v0) g; rel = \\_ => base; relType = Pref; @@ -119,8 +119,8 @@ oper mkN006 base = let v0 = base; g = AMasc NonHuman in {s = mkNoun (v0) - (v0+"") - (v0+"") + (v0+"ове") + (v0+"а") (v0) g; rel = \\_ => base; relType = Pref; @@ -130,12 +130,12 @@ oper mkN007 : Str -> N ; mkN007 base = {s = table { NF Sg Indef => base ; - NF Sg Def => base+"" ; - NF Pl Indef => base+"" ; - NF Pl Def => base+"" ; - NFSgDefNom => base+"" ; - NFPlCount => base+"" ; - NFVocative => base+"" + NF Sg Def => base+"а" ; + NF Pl Indef => base+"и" ; + NF Pl Def => base+"ите" ; + NFSgDefNom => base+"ът" ; + NFPlCount => base+"а" ; + NFVocative => base+"е" } ; rel = \\_ => base; relType = Pref; g = AMasc NonHuman; @@ -145,9 +145,9 @@ oper mkN007b base = let v0 = base; g = AMasc NonHuman in {s = mkNoun (v0) - (v0+"") - (v0+"") - (v0+"") + (v0+"и") + (v0+"а") + (v0+"о") g ; rel = \\_ => base; relType = Pref; g = g ; @@ -156,14 +156,14 @@ oper mkN007a : Str -> N ; mkN007a base = {s = table { NF Sg Indef => base ; - NF Sg Def => base+"" ; - NF Pl Indef => base+"" ; - NF Pl Def => base+"" ; - NFSgDefNom => base+"" ; - NFPlCount => base+"" ; - NFVocative => base+"" + NF Sg Def => base+"а" ; + NF Pl Indef => base+"и" ; + NF Pl Def => base+"ите" ; + NFSgDefNom => base+"ът" ; + NFPlCount => base+"и" ; + NFVocative => base+"е" } ; - rel = (mkA078 (base+"")).s; relType = AdjMod; + rel = (mkA078 (base+"ски")).s; relType = AdjMod; g = AMasc Human ; lock_N = <> } ; @@ -171,10 +171,10 @@ oper mkN008 base = let v0 = tk 2 base; v1 = last base; g = AMasc NonHuman - in {s = mkNoun (v0+""+v1) - (v0+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") + in {s = mkNoun (v0+"е"+v1) + (v0+v1+"и") + (v0+"е"+v1+"а") + (v0+"е"+v1+"о") g ; rel = \\_ => base; relType = Pref; g = g ; @@ -184,10 +184,10 @@ oper mkN008b base = let v0 = tk 2 base; v1 = last (base); g = AMasc NonHuman - in {s = mkNoun (v0+""+v1) - (v0+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") + in {s = mkNoun (v0+"е"+v1) + (v0+v1+"и") + (v0+"е"+v1+"а") + (v0+"е"+v1+"е") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -197,10 +197,10 @@ oper mkN008c base = let v0 = tk 2 base; v1 = last (base); g = AMasc NonHuman - in {s = mkNoun (v0+""+v1) - (v0+v1+"") - (v0+""+v1+"") - (v0+v1+"") + in {s = mkNoun (v0+"е"+v1) + (v0+v1+"и") + (v0+"е"+v1+"а") + (v0+v1+"е") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -209,12 +209,12 @@ oper mkN008a : Str -> N ; mkN008a base = let v0 = tk 2 base; g = AMasc Human - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ец") + (v0+"ци") + (v0+"ци") + (v0+"ецо") g ; - rel = (mkA078 (v0+"")).s ; relType = AdjMod; + rel = (mkA078 (v0+"ски")).s ; relType = AdjMod; g = g ; lock_N = <> } ; @@ -222,10 +222,10 @@ oper mkN009 base = let v0 = tk 2 base; v1 = last (base); g = AMasc NonHuman - in {s = mkNoun (v0+""+v1) - (v0+v1+"") - (v0+""+v1+"") - (v0+v1+"") + in {s = mkNoun (v0+"ъ"+v1) + (v0+v1+"и") + (v0+"ъ"+v1+"а") + (v0+v1+"е") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -234,10 +234,10 @@ oper mkN009a : Str -> N ; mkN009a base = let v0 = tk 2 base; g = AMasc NonHuman - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ър") + (v0+"рове") + (v0+"ъра") + (v0+"ре") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -246,10 +246,10 @@ oper mkN010 : Str -> N ; mkN010 base = let v0 = tk 2 base; g = AMasc NonHuman - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ър") + (v0+"ри") + (v0+"ра") + (v0+"ре") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -259,13 +259,13 @@ oper mkN011 base = let v0 = tk 2 base; g = AMasc NonHuman in {s = table { - NF Sg Indef => v0+"" ; - NF Sg Def => v0+"" ; - NF Pl Indef => v0+"" ; - NF Pl Def => v0+"" ; - NFSgDefNom => v0+"" ; - NFPlCount => v0+"" ; - NFVocative => v0+"" + NF Sg Indef => v0+"ъм" ; + NF Sg Def => v0+"ма" ; + NF Pl Indef => v0+"ми" ; + NF Pl Def => v0+"мите" ; + NFSgDefNom => v0+"мът" ; + NFPlCount => v0+"ма" ; + NFVocative => v0+"ме" } ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -274,10 +274,10 @@ oper mkN012 : Str -> N ; mkN012 base = let v0 = tk 3 base; g = AMasc NonHuman - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"рък") + (v0+"ърци") + (v0+"ърци") + (v0+"ърко") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -286,22 +286,22 @@ oper mkN013 : Str -> N ; mkN013 base = let v0 = tk 2 base; g = AMasc Human - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ец") + (v0+"йци") + (v0+"йци") + (v0+"ецо") g ; - rel = (mkA078 (base+"")).s; relType = AdjMod; + rel = (mkA078 (base+"йски")).s; relType = AdjMod; g = g ; lock_N = <> }; mkN014 : Str -> N ; mkN014 base = let v0 = tk 1 base; g = AMasc NonHuman - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"к") + (v0+"ци") + (v0+"ка") + (v0+"к") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -310,22 +310,22 @@ oper mkN014a : Str -> N ; mkN014a base = let v0 = tk 1 base; g = AMasc Human - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"к") + (v0+"ци") + (v0+"ка") + (v0+"ко") g ; - rel = (mkA078 (v0+"")).s; relType = AdjMod; + rel = (mkA078 (v0+"чески")).s; relType = AdjMod; g = g ; lock_N = <> }; mkN015 : Str -> N ; mkN015 base = let v0 = tk 1 base; g = AMasc NonHuman - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"г") + (v0+"зи") + (v0+"га") + (v0+"зе") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -334,10 +334,10 @@ oper mkN015a : Str -> N ; mkN015a base = let v0 = tk 1 base; g = AMasc Human - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"г") + (v0+"зи") + (v0+"га") + (v0+"зе") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -346,10 +346,10 @@ oper mkN016 : Str -> N ; mkN016 base = let v0 = tk 1 base; g = AMasc NonHuman - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"х") + (v0+"си") + (v0+"ха") + (v0+"хо") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -358,10 +358,10 @@ oper mkN016a : Str -> N ; mkN016a base = let v0 = tk 1 base; g = AMasc NonHuman - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"х") + (v0+"си") + (v0+"ха") + (v0+"се") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -370,10 +370,10 @@ oper mkN017 : Str -> N ; mkN017 base = let v0 = tk 1 base; g = AMasc NonHuman - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"к") + (v0+"ни") + (v0+"ка") + (v0+"ко") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -382,10 +382,10 @@ oper mkN018 : Str -> N ; mkN018 base = let v0 = tk 2 base; g = AMasc NonHuman - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ин") + (v0+"и") + (v0+"и") + (v0+"ине") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -395,10 +395,10 @@ oper mkN018a base = let v0 = tk 2 base; v1 = last (base); g = AMasc NonHuman - in {s = mkNoun (v0+""+v1) - (v0+"") - (v0+"") - (v0+""+v1+"") + in {s = mkNoun (v0+"и"+v1) + (v0+"и") + (v0+"и") + (v0+"и"+v1+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -407,22 +407,22 @@ oper mkN019 : Str -> N ; mkN019 base = let v0 = tk 2 base; g = AMasc Human - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ък") + (v0+"ци") + (v0+"ци") + (v0+"ко") g ; - rel = (mkA078 (v0+"")).s; relType = AdjMod; + rel = (mkA078 (v0+"ски")).s; relType = AdjMod; g = g ; lock_N = <> }; mkN019a : Str -> N ; mkN019a base = let v0 = tk 2 base; g = AMasc NonHuman - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ек") + (v0+"йци") + (v0+"ека") + (v0+"йо") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -432,10 +432,10 @@ oper mkN020 base = let v0 = tk 3 base; v1 = last (tk 2 base); g = AMasc Human - in {s = mkNoun (v0+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+v1+"") + in {s = mkNoun (v0+v1+"ец") + (v0+"ъ"+v1+"ци") + (v0+"ъ"+v1+"ци") + (v0+v1+"ецо") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -444,10 +444,10 @@ oper mkN021 : Str -> N ; mkN021 base = let v0 = tk 3 base; g = AMasc Human - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"чин") + (v0+"ци") + (v0+"ци") + (v0+"чино") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -457,9 +457,9 @@ oper mkN022 base = let v0 = base; g = AMasc NonHuman in {s = mkNoun (v0) - (v0+"") - (v0+"") - (v0+"") + (v0+"а") + (v0+"а") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -468,10 +468,10 @@ oper mkN023 : Str -> N ; mkN023 base = let v0 = tk 2 base; g = AMasc Human - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ин") + (v0+"а") + (v0+"а") + (v0+"ине") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -480,10 +480,10 @@ oper mkN024a : Str -> N ; mkN024a base = let v0 = tk 1 base; g = AMasc Human - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"з") + (v0+"зе") + (v0+"зе") + (v0+"же") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -493,9 +493,9 @@ oper mkN024 base = let v0 = base; g = AMasc Human in {s = mkNoun (v0) - (v0+"") - (v0+"") - (v0+"") + (v0+"е") + (v0+"е") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -505,11 +505,11 @@ oper mkN025 base = let v0 = base; g = AMasc Human in {s = mkNoun (v0) - (v0+"") - (v0+"") - (v0+"") + (v0+"я") + (v0+"я") + (v0+"е") g ; - rel = (mkA078 (base+"")).s; relType = AdjMod; + rel = (mkA078 (base+"ски")).s; relType = AdjMod; g = g ; lock_N = <> }; @@ -517,9 +517,9 @@ oper mkN026 base = let v0 = base; g = AMasc NonHuman in {s = mkNoun (v0) - (v0+"") - (v0+"") - (v0+"") + (v0+"илища") + (v0+"илища") + (v0+"е") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -528,10 +528,10 @@ oper mkN027 : Str -> N ; mkN027 base = let v0 = tk 2 base; g = AMasc NonHuman - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ец") + (v0+"овце") + (v0+"еца") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -540,10 +540,10 @@ oper mkN028 : Str -> N ; mkN028 base = let v0 = tk 1 base; g = AMasc NonHuman - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"й") + (v0+"еве") + (v0+"я") + (v0+"е") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -552,10 +552,10 @@ oper mkN028a : Str -> N ; mkN028a base = let v0 = tk 1 base; g = AMasc NonHuman - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"й") + (v0+"йове") + (v0+"я") + (v0+"йо") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -565,21 +565,21 @@ oper mkN029 base = let v0 = base; g = AMasc Human in {s = mkNoun (v0) - (v0+"") - (v0+"") - (v0+"") + (v0+"ьове") + (v0+"ьове") + (v0+"ко") g ; - rel = (mkA078 (base+"")).s; relType = AdjMod; + rel = (mkA078 (base+"ски")).s; relType = AdjMod; g = g ; lock_N = <> }; mkN030 : Str -> N ; mkN030 base = let v0 = tk 2 base; g = AMasc NonHuman - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ън") + (v0+"ньове") + (v0+"ъня") + (v0+"е") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -589,9 +589,9 @@ oper mkN031 base = let v0 = base; g = AMasc NonHuman in {s = mkNoun (v0) - (v0+"") - (v0+"") - (v0+"") + (v0+"и") + (v0+"я") + (v0+"е") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -601,11 +601,11 @@ oper mkN031a base = let v0 = base; g = AMasc Human in {s = mkNoun (v0) - (v0+"") - (v0+"") - (v0+"") + (v0+"и") + (v0+"и") + (v0+"ю") g ; - rel = (mkA078 (base+"")).s ; relType = AdjMod ; + rel = (mkA078 (base+"ски")).s ; relType = AdjMod ; g = g ; lock_N = <> }; @@ -614,9 +614,9 @@ oper v1 = tk 1 base ; g = AMasc NonHuman in {s = mkNoun (v0) - (v1+"") - (v1+"") - (v0+"") + (v1+"и") + (v1+"я") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -625,22 +625,22 @@ oper mkN032a : Str -> N ; mkN032a base = let v0 = tk 1 base; g = AMasc Human - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"й") + (v0+"и") + (v0+"я") + (v0+"ю") g ; - rel = (mkA078 (base+"")).s ; relType = AdjMod ; + rel = (mkA078 (base+"ски")).s ; relType = AdjMod ; g = g ; lock_N = <> }; mkN033 : Str -> N ; mkN033 base = let v0 = tk 2 base; g = AMasc NonHuman - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ен") + (v0+"ни") + (v0+"ена") + (v0+"ене") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -649,10 +649,10 @@ oper mkN034 : Str -> N ; mkN034 base = let v0 = tk 2 base; g = AMasc NonHuman - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ът") + (v0+"ти") + (v0+"ътя") + (v0+"е") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -662,9 +662,9 @@ oper mkN035 base = let v0 = base; g = AMasc NonHuman in {s = mkNoun (v0) - (v0+"") - (v0+"") - (v0+"") + (v0+"е") + (v0+"я") + (v0+"е") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -674,21 +674,21 @@ oper mkN035a base = let v0 = base; g = AMasc Human in {s = mkNoun (v0) - (v0+"") - (v0+"") - (v0+"") + (v0+"е") + (v0+"я") + (v0+"ю") g ; - rel = (mkA078 (base+"")).s ; relType = AdjMod ; + rel = (mkA078 (base+"ски")).s ; relType = AdjMod ; g = g ; lock_N = <> }; mkN036 : Str -> N ; mkN036 base = let v0 = tk 1 base; g = AMasc NonHuman - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"й") + (v0+"ища") + (v0+"я") + (v0+"е") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -698,9 +698,9 @@ oper mkN037 base = let v0 = base; g = AMasc NonHuman in {s = mkNoun (v0) - (v0+"") - (v0+"") - (v0+"") + (v0+"ища") + (v0+"я") + (v0+"е") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -709,12 +709,12 @@ oper mkN038 : Str -> N ; mkN038 base = let v0 = tk 1 base; g = AMasc Human - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"а") + (v0+"и") + (v0+"и") + (v0+"а") g ; - rel = (mkAdjective base (base+"") (base+"") base (base+"") base (base+"") (v0+"") (v0+"")).s ; + rel = (mkAdjective base (base+"та") (base+"та") base (base+"та") base (base+"та") (v0+"и") (v0+"ите")).s ; relType = AdjMod ; g = g ; lock_N = <> @@ -722,22 +722,22 @@ oper mkN039 : Str -> N ; mkN039 base = let v0 = tk 1 base; g = AMasc Human - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"o") + in {s = mkNoun (v0+"я") + (v0+"и") + (v0+"и") + (v0+"йo") g ; - rel = (mkA078 (v0+"")).s ; relType = AdjMod ; + rel = (mkA078 (v0+"йски")).s ; relType = AdjMod ; g = g ; lock_N = <> }; mkN040 : Str -> N ; mkN040 base = let v0 = tk 1 base; g = AMasc Human - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"о") + (v0+"овци") + (v0+"овци") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -747,9 +747,9 @@ oper mkN040a base = let v0 = base; g = AMasc NonHuman in {s = mkNoun (v0) - (v0+"") - (v0+"") - (v0+"") + (v0+"и") + (v0+"а") + (v0+"е") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -758,10 +758,10 @@ oper mkN041 : Str -> N ; mkN041 base = let v0 = tk 1 base; g = AFem - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"а") + (v0+"и") + (v0+"и") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -770,10 +770,10 @@ oper mkN041a : Str -> N ; mkN041a base = let v0 = tk 1 base; g = AFem - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"а") + (v0+"и") + (v0+"и") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -782,10 +782,10 @@ oper mkN041b : Str -> N ; mkN041b base = let v0 = tk 1 base; g = AFem - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"а") + (v0+"и") + (v0+"и") + (v0+"е") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -807,10 +807,10 @@ oper mkN043 base = let v0 = tk 3 base; v1 = last (tk 1 base); g = AFem - in {s = mkNoun (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+"") + in {s = mkNoun (v0+"я"+v1+"а") + (v0+"е"+v1+"и") + (v0+"е"+v1+"и") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -820,10 +820,10 @@ oper mkN043a base = let v0 = tk 4 base; v1 = last (tk 2 base); g = AFem - in {s = mkNoun (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+"") + in {s = mkNoun (v0+"я"+v1+"ка") + (v0+"е"+v1+"ки") + (v0+"е"+v1+"ки") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -832,10 +832,10 @@ oper mkN044 : Str -> N ; mkN044 base = let v0 = tk 1 base; g = AFem - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"а") + (v0+"е") + (v0+"е") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -844,10 +844,10 @@ oper mkN045 : Str -> N ; mkN045 base = let v0 = tk 2 base; g = AFem - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ка") + (v0+"це") + (v0+"це") + (v0+"ка") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -856,10 +856,10 @@ oper mkN046 : Str -> N ; mkN046 base = let v0 = tk 2 base; g = AFem - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"га") + (v0+"зе") + (v0+"зе") + (v0+"га") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -868,10 +868,10 @@ oper mkN047 : Str -> N ; mkN047 base = let v0 = tk 1 base; g = AFem - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"я") + (v0+"и") + (v0+"и") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -880,10 +880,10 @@ oper mkN048 : Str -> N ; mkN048 base = let v0 = tk 1 base; g = AFem - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"я") + (v0+"е") + (v0+"е") + (v0+"ьо") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -893,8 +893,8 @@ oper mkN049 base = let v0 = base; g = AFem in {s = mkNoun (v0) - (v0+"") - (v0+"") + (v0+"и") + (v0+"и") (v0) g ; rel = \\_ => base ; relType = Pref ; @@ -904,10 +904,10 @@ oper mkN050 : Str -> N ; mkN050 base = let v0 = tk 2 base; g = AFem - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ен") + (v0+"ни") + (v0+"ни") + (v0+"ен") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -917,10 +917,10 @@ oper mkN051 base = let v0 = tk 2 base; v1 = last (base); g = AFem - in {s = mkNoun (v0+""+v1) - (v0+v1+"") - (v0+v1+"") - (v0+""+v1) + in {s = mkNoun (v0+"ъ"+v1) + (v0+v1+"и") + (v0+v1+"и") + (v0+"ъ"+v1) g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -929,10 +929,10 @@ oper mkN052 : Str -> N ; mkN052 base = let v0 = tk 5 base; g = AFem - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ялост") + (v0+"ялости") + (v0+"ялости") + (v0+"ялост") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -941,10 +941,10 @@ oper mkN052a : Str -> N ; mkN052a base = let v0 = tk 6 base; g = AFem - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ярност") + (v0+"ярности") + (v0+"ярности") + (v0+"ярност") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -954,10 +954,10 @@ oper mkN053 base = let v0 = tk 3 base; v1 = last (base); g = AFem - in {s = mkNoun (v0+""+v1) - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1) + in {s = mkNoun (v0+"ръ"+v1) + (v0+"ър"+v1+"и") + (v0+"ър"+v1+"и") + (v0+"ръ"+v1) g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -966,10 +966,10 @@ oper mkN054 : Str -> N ; mkN054 base = let v0 = tk 1 base; g = ANeut - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"о") + (v0+"а") + (v0+"а") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -978,10 +978,10 @@ oper mkN055 : Str -> N ; mkN055 base = let v0 = tk 1 base; g = ANeut - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"о") + (v0+"а") + (v0+"а") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -990,10 +990,10 @@ oper mkN056 : Str -> N ; mkN056 base = let v0 = tk 1 base; g = ANeut - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"о") + (v0+"а") + (v0+"а") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -1003,10 +1003,10 @@ oper mkN057 base = let v0 = tk 3 base; v1 = last (tk 1 base); g = ANeut - in {s = mkNoun (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") + in {s = mkNoun (v0+"я"+v1+"о") + (v0+"е"+v1+"а") + (v0+"е"+v1+"а") + (v0+"я"+v1+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -1015,10 +1015,10 @@ oper mkN057a : Str -> N ; mkN057a base = let v0 = tk 4 base; g = ANeut - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ясто") + (v0+"еста") + (v0+"еста") + (v0+"ясто") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -1027,10 +1027,10 @@ oper mkN058 : Str -> N ; mkN058 base = let v0 = tk 3 base; g = ANeut - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"яно") + (v0+"ена") + (v0+"ена") + (v0+"яно") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -1039,10 +1039,10 @@ oper mkN059 : Str -> N ; mkN059 base = let v0 = tk 1 base; g = ANeut - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"о") + (v0+"ене") + (v0+"ене") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -1051,10 +1051,10 @@ oper mkN060 : Str -> N ; mkN060 base = let v0 = tk 1 base; g = ANeut - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"о") + (v0+"еса") + (v0+"еса") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -1063,10 +1063,10 @@ oper mkN061 : Str -> N ; mkN061 base = let v0 = tk 1 base; g = ANeut - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"о") + (v0+"а") + (v0+"а") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -1075,10 +1075,10 @@ oper mkN062 : Str -> N ; mkN062 base = let v0 = tk 1 base; g = ANeut - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"о") + (v0+"и") + (v0+"и") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -1087,10 +1087,10 @@ oper mkN063 : Str -> N ; mkN063 base = let v0 = tk 2 base; g = ANeut - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"ко") + (v0+"чи") + (v0+"чи") + (v0+"ко") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -1099,10 +1099,10 @@ oper mkN064 : Str -> N ; mkN064 base = let v0 = tk 2 base; g = ANeut - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"хо") + (v0+"ши") + (v0+"ши") + (v0+"хо") g ; rel = \\_ => base ; relType = Pref ; g = g; @@ -1112,8 +1112,8 @@ oper mkN065 base = let v0 = base; g = ANeut in {s = mkNoun (v0) - (v0+"") - (v0+"") + (v0+"та") + (v0+"та") (v0) g ; rel = \\_ => base ; relType = Pref ; @@ -1123,10 +1123,10 @@ oper mkN066 : Str -> N ; mkN066 base = let v0 = tk 1 base; g = ANeut - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"е") + (v0+"а") + (v0+"а") + (v0+"е") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -1135,10 +1135,10 @@ oper mkN067 : Str -> N ; mkN067 base = let v0 = tk 2 base; g = ANeut - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"те") + (v0+"ца") + (v0+"ца") + (v0+"те") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -1147,10 +1147,10 @@ oper mkN068 : Str -> N ; mkN068 base = let v0 = tk 1 base; g = ANeut - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"е") + (v0+"я") + (v0+"я") + (v0+"е") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -1160,8 +1160,8 @@ oper mkN069 base = let v0 = base; g = ANeut in {s = mkNoun (v0) - (v0+"") - (v0+"") + (v0+"на") + (v0+"на") (v0) g ; rel = \\_ => base ; relType = Pref ; @@ -1172,8 +1172,8 @@ oper mkN070 base = let v0 = base; g = ANeut in {s = mkNoun (v0) - (v0+"") - (v0+"") + (v0+"са") + (v0+"са") (v0) g ; rel = \\_ => base ; relType = Pref ; @@ -1183,10 +1183,10 @@ oper mkN071 : Str -> N ; mkN071 base = let v0 = tk 1 base; g = ANeut - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"е") + (v0+"ия") + (v0+"ия") + (v0+"е") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -1195,10 +1195,10 @@ oper mkN072 : Str -> N ; mkN072 base = let v0 = tk 1 base; g = ANeut - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"е") + (v0+"я") + (v0+"я") + (v0+"е") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -1208,8 +1208,8 @@ oper mkN073 base = let v0 = base; g = ANeut in {s = mkNoun (v0) - (v0+"") - (v0+"") + (v0+"та") + (v0+"та") (v0) g ; rel = \\_ => base ; relType = Pref ; @@ -1221,7 +1221,7 @@ oper in { s = table { NF Sg _ => v0 ; NF Pl Indef => v0 ; - NF Pl Def => v0+"" ; + NF Pl Def => v0+"та" ; NFSgDefNom => v0 ; NFPlCount => v0 ; NFVocative => v0 @@ -1235,7 +1235,7 @@ oper in { s = table { NF Sg _ => Prelude.nonExist ; NF Pl Indef => v0 ; - NF Pl Def => v0+"" ; + NF Pl Def => v0+"те" ; NFSgDefNom => Prelude.nonExist ; NFPlCount => v0 ; NFVocative => v0 @@ -1247,10 +1247,10 @@ oper mkN076 : Str -> N ; mkN076 base = let v0 = tk 1 base; g = ANeut - in {s = mkNoun (v0+"") - (v0+"") - (v0+"") - (v0+"") + in {s = mkNoun (v0+"о") + (v0+"ета") + (v0+"ета") + (v0+"о") g ; rel = \\_ => base ; relType = Pref ; g = g ; @@ -1271,173 +1271,173 @@ oper mkA076 : Str -> A ; mkA076 base = let v0 = base in mkAdjective (v0) - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + (v0+"ия") + (v0+"ият") + (v0+"а") + (v0+"ата") + (v0+"о") + (v0+"ото") + (v0+"и") + (v0+"ите") ; mkA077 : Str -> A ; mkA077 base = let v0 = base in mkAdjective (v0) - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + (v0+"ия") + (v0+"ият") + (v0+"а") + (v0+"ата") + (v0+"е") + (v0+"ето") + (v0+"и") + (v0+"ите") ; mkA078 : Str -> A ; mkA078 base = let v0 = tk 1 base - in adjAdv (mkAdjective (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"")) (v0+"") ; + in adjAdv (mkAdjective (v0+"и") + (v0+"ия") + (v0+"ият") + (v0+"а") + (v0+"ата") + (v0+"о") + (v0+"ото") + (v0+"и") + (v0+"ите")) (v0+"и") ; mkA079 : Str -> A ; mkA079 base = let v0 = tk 2 base - in mkAdjective (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkAdjective (v0+"ен") + (v0+"ния") + (v0+"ният") + (v0+"на") + (v0+"ната") + (v0+"но") + (v0+"ното") + (v0+"ни") + (v0+"ните") ; mkA080 : Str -> A ; mkA080 base = let v0 = tk 2 base; v1 = last (base) - in mkAdjective (v0+""+v1) - (v0+v1+"") - (v0+v1+"") - (v0+v1+"") - (v0+v1+"") - (v0+v1+"") - (v0+v1+"") - (v0+v1+"") - (v0+v1+"") ; + in mkAdjective (v0+"ъ"+v1) + (v0+v1+"ия") + (v0+v1+"ият") + (v0+v1+"а") + (v0+v1+"ата") + (v0+v1+"о") + (v0+v1+"ото") + (v0+v1+"и") + (v0+v1+"ите") ; mkA081 : Str -> A ; mkA081 base = let v0 = tk 2 base; v1 = last (base) - in mkAdjective (v0+""+v1) - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") ; + in mkAdjective (v0+"я"+v1) + (v0+"е"+v1+"ия") + (v0+"е"+v1+"ият") + (v0+"я"+v1+"а") + (v0+"я"+v1+"ата") + (v0+"я"+v1+"о") + (v0+"я"+v1+"ото") + (v0+"е"+v1+"и") + (v0+"е"+v1+"ите") ; mkA082 : Str -> A ; mkA082 base = let v0 = tk 3 base; v1 = last (base) - in mkAdjective (v0+""+v1) - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") ; + in mkAdjective (v0+"ръ"+v1) + (v0+"ър"+v1+"ия") + (v0+"ър"+v1+"ият") + (v0+"ър"+v1+"а") + (v0+"ър"+v1+"ата") + (v0+"ър"+v1+"о") + (v0+"ър"+v1+"ото") + (v0+"ър"+v1+"и") + (v0+"ър"+v1+"ите") ; mkA082a : Str -> A ; mkA082a base = let v0 = tk 5 base - in mkAdjective (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkAdjective (v0+"ързък") + (v0+"ръзкия") + (v0+"ръзкият") + (v0+"ръзка") + (v0+"ръзката") + (v0+"ръзко") + (v0+"ръзкото") + (v0+"ръзки") + (v0+"ръзките") ; mkA083 : Str -> A ; mkA083 base = let v0 = tk 4 base; v1 = last (tk 2 base) - in mkAdjective (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") ; + in mkAdjective (v0+"я"+v1+"ък") + (v0+"е"+v1+"кия") + (v0+"е"+v1+"кият") + (v0+"я"+v1+"ка") + (v0+"я"+v1+"ката") + (v0+"я"+v1+"ко") + (v0+"я"+v1+"кото") + (v0+"е"+v1+"ки") + (v0+"е"+v1+"ките") ; mkA084 : Str -> A ; mkA084 base = let v0 = tk 4 base; v1 = last (tk 2 base) - in mkAdjective (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") - (v0+""+v1+"") ; + in mkAdjective (v0+"е"+v1+"ен") + (v0+"е"+v1+"ния") + (v0+"е"+v1+"ният") + (v0+"я"+v1+"на") + (v0+"я"+v1+"ната") + (v0+"я"+v1+"но") + (v0+"я"+v1+"ното") + (v0+"е"+v1+"ни") + (v0+"е"+v1+"ните") ; mkA084a : Str -> A ; mkA084a base = let v0 = tk 5 base - in mkAdjective (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkAdjective (v0+"естен") + (v0+"естния") + (v0+"естният") + (v0+"ястна") + (v0+"ястната") + (v0+"ястно") + (v0+"ястнота") + (v0+"естни") + (v0+"естните") ; mkA085 : Str -> A ; mkA085 base = let v0 = tk 2 base - in mkAdjective (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkAdjective (v0+"ен") + (v0+"йния") + (v0+"йният") + (v0+"йна") + (v0+"йната") + (v0+"йно") + (v0+"йното") + (v0+"йни") + (v0+"йните") ; mkA086 : Str -> A ; mkA086 base = let v0 = base in mkAdjective (v0) - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + (v0+"ия") + (v0+"ият") + (v0+"я") + (v0+"ята") + (v0+"ьо") + (v0+"ьото") + (v0+"и") + (v0+"ите") ; mkA087 : Str -> A ; mkA087 base = let v0 = tk 1 base - in mkAdjective (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkAdjective (v0+"и") + (v0+"ия") + (v0+"ият") + (v0+"а") + (v0+"ата") + (v0+"е") + (v0+"ето") + (v0+"и") + (v0+"ите") ; mkA088 : Str -> A ; mkA088 base = let v0 = tk 1 base - in mkAdjective (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkAdjective (v0+"и") + (v0+"ия") + (v0+"ият") + (v0+"я") + (v0+"ята") + (v0+"е") + (v0+"ето") + (v0+"и") + (v0+"ите") ; mkA089a : Str -> A ; mkA089a base = let v0 = base in mkAdjective (v0) @@ -1451,654 +1451,654 @@ oper (v0) ; mkV142 : Str -> VTable ; mkV142 base = let v0 = tk 3 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"съм") + (v0+"е") + (v0+"бях") + (v0+"бях") + (v0+"бил") + (v0+"бил") (v0+"-") (v0+"-") - (v0+"") - (v0+"") ; + (v0+"бъди") + (v0+"бяне") ; mkV143 : Str -> VTable ; mkV143 base = let v0 = tk 3 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"ъда") + (v0+"ъде") + (v0+"их") + (v0+"ъдех") + (v0+"ил") + (v0+"ъдел") (v0+"-") - (v0+"") - (v0+"") - (v0+"") ; + (v0+"ъдещ") + (v0+"ъди") + (v0+"ъдене") ; mkV144 : Str -> VTable ; mkV144 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"а") + (v0+"е") + (v0+"ях") + (v0+"ях") + (v0+"ял") + (v0+"ял") (v0+"-") (v0+"-") (v0+"-") - (v0+"") ; + (v0+"яне") ; mkV145 : Str -> VTable ; mkV145 base = let v0 = tk 2 base; v1 = last (tk 1 base) - in mkVerb (v0+v1+"") - (v0+v1+"") - (v0+v1+"") - (v0+v1+"") - (v0+"") - (v0+v1+"") - (v0+v1+"") - (v0+v1+"") - (v0+v1+"") - (v0+v1+"") ; + in mkVerb (v0+v1+"а") + (v0+v1+"е") + (v0+v1+"ох") + (v0+v1+"ях") + (v0+"л") + (v0+v1+"ял") + (v0+v1+"ен") + (v0+v1+"ящ") + (v0+v1+"и") + (v0+v1+"ене") ; mkV145a : Str -> VTable ; mkV145a base = let v0 = tk 3 base; v1 = last (tk 2 base) - in mkVerb (v0+v1+"") - (v0+v1+"") - (v0+v1+"") - (v0+v1+"") - (v0+v1+"") - (v0+v1+"") - (v0+v1+"") - (v0+v1+"") - (v0+v1+"") - (v0+v1+"") ; + in mkVerb (v0+v1+"са") + (v0+v1+"се") + (v0+v1+"сох") + (v0+v1+"сях") + (v0+v1+"съл") + (v0+v1+"сял") + (v0+v1+"сен") + (v0+v1+"сящ") + (v0+v1+"си") + (v0+v1+"сяне") ; mkV145b : Str -> VTable ; mkV145b base = let v0 = tk 2 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"та") + (v0+"те") + (v0+"тох") + (v0+"тях") + (v0+"ъл") + (v0+"тял") (v0+"-") - (v0+"") - (v0+"") - (v0+"") ; + (v0+"тящ") + (v0+"ти") + (v0+"тяне") ; mkV146 : Str -> VTable ; mkV146 base = let v0 = tk 2 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"да") + (v0+"де") + (v0+"дох") + (v0+"дех") + (v0+"шъл") + (v0+"дел") (v0+"-") (v0+"-") - (v0+"") - (v0+"") ; + (v0+"ди") + (v0+"дене") ; mkV146a : Str -> VTable ; mkV146a base = let v0 = tk 3 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"йда") + (v0+"йде") + (v0+"йдох") + (v0+"йдех") + (v0+"шъл") + (v0+"йдел") (v0+"-") (v0+"-") - (v0+"") - (v0+"") ; + (v0+"йди") + (v0+"йдене") ; mkV147 : Str -> VTable ; mkV147 base = let v0 = tk 3 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"яза") + (v0+"езе") + (v0+"язох") + (v0+"езех") + (v0+"язъл") + (v0+"езел") + (v0+"язъл") + (v0+"изащ") + (v0+"ез") + (v0+"езене") ; mkV148 : Str -> VTable ; mkV148 base = let v0 = tk 2 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"ка") + (v0+"че") + (v0+"кох") + (v0+"чех") + (v0+"къл") + (v0+"чел") + (v0+"чен") + (v0+"чащ") + (v0+"чи") + (v0+"чене") ; mkV149 : Str -> VTable ; mkV149 base = let v0 = tk 3 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"ека") + (v0+"ече") + (v0+"якох") + (v0+"ечех") + (v0+"якъл") + (v0+"ечел") + (v0+"ечен") (v0+"-") - (v0+"") - (v0+"") ; + (v0+"ечи") + (v0+"ечене") ; mkV150 : Str -> VTable ; mkV150 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"а") + (v0+"е") + (v0+"ях") + (v0+"ях") + (v0+"ял") + (v0+"ял") + (v0+"ян") (v0+"-") - (v0+"") - (v0+"") ; + (v0+"и") + (v0+"яне") ; mkV150a : Str -> VTable ; mkV150a base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"а") + (v0+"е") + (v0+"ях") + (v0+"ях") + (v0+"ял") + (v0+"ял") (v0+"-") (v0+"-") - (v0+"") - (v0+"") ; + (v0+"и") + (v0+"яне") ; mkV151 : Str -> VTable ; mkV151 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"а") + (v0+"е") + (v0+"ах") + (v0+"ях") + (v0+"ал") + (v0+"ял") + (v0+"ан") + (v0+"ящ") + (v0+"и") + (v0+"яне") ; mkV152 : Str -> VTable ; mkV152 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"а") + (v0+"е") + (v0+"ах") + (v0+"ех") + (v0+"ал") + (v0+"ел") + (v0+"ат") (v0+"-") - (v0+"") - (v0+"") ; + (v0+"и") + (v0+"ене") ; mkV152a : Str -> VTable ; mkV152a base = let v0 = tk 4 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"ягна") + (v0+"егне") + (v0+"ягнах") + (v0+"ягнех") + (v0+"ягнал") + (v0+"ягнел") + (v0+"ягнат") (v0+"-") - (v0+"") - (v0+"") ; + (v0+"егни") + (v0+"ягнене") ; mkV153 : Str -> VTable ; mkV153 base = let v0 = tk 3 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"яна") + (v0+"ене") + (v0+"янах") + (v0+"енех") + (v0+"янал") + (v0+"енел") + (v0+"янат") (v0+"-") - (v0+"") - (v0+"") ; + (v0+"ени") + (v0+"енене") ; mkV154 : Str -> VTable ; mkV154 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"я") + (v0+"е") + (v0+"ах") + (v0+"ех") + (v0+"ал") + (v0+"ел") + (v0+"ан") + (v0+"ещ") + (v0+"и") + (v0+"ене") ; mkV155 : Str -> VTable ; mkV155 base = let v0 = tk 2 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"ча") + (v0+"че") + (v0+"ках") + (v0+"чех") + (v0+"кал") + (v0+"чел") + (v0+"кан") + (v0+"чещ") + (v0+"чи") + (v0+"чене") ; mkV156 : Str -> VTable ; mkV156 base = let v0 = tk 2 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"жа") + (v0+"же") + (v0+"зах") + (v0+"жех") + (v0+"зал") + (v0+"жел") + (v0+"зан") (v0+"-") - (v0+"") - (v0+"") ; + (v0+"жи") + (v0+"жене") ; mkV157 : Str -> VTable ; mkV157 base = let v0 = tk 3 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"ежа") + (v0+"еже") + (v0+"язах") + (v0+"ежех") + (v0+"язал") + (v0+"ежел") + (v0+"язан") + (v0+"ежещ") + (v0+"ежи") + (v0+"ежене") ; mkV158 : Str -> VTable ; mkV158 base = let v0 = tk 2 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"жа") + (v0+"же") + (v0+"гах") + (v0+"жех") + (v0+"гал") + (v0+"жел") + (v0+"ган") + (v0+"жещ") + (v0+"жи") + (v0+"жене") ; mkV159 : Str -> VTable ; mkV159 base = let v0 = tk 2 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"ша") + (v0+"ше") + (v0+"сах") + (v0+"шех") + (v0+"сал") + (v0+"шел") + (v0+"сан") + (v0+"шещ") + (v0+"ши") + (v0+"шене") ; mkV160 : Str -> VTable ; mkV160 base = let v0 = tk 2 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"ея") + (v0+"ее") + (v0+"ях") + (v0+"еех") + (v0+"ял") + (v0+"еел") + (v0+"ян") + (v0+"еещ") + (v0+"ей") + (v0+"еене") ; mkV160a : Str -> VTable ; mkV160a base = let v0 = tk 2 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"ея") + (v0+"ее") + (v0+"ах") + (v0+"еех") + (v0+"ал") + (v0+"еел") + (v0+"ан") + (v0+"еещ") + (v0+"ей") + (v0+"еене") ; mkV161 : Str -> VTable ; mkV161 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"я") + (v0+"е") + (v0+"х") + (v0+"ех") + (v0+"л") + (v0+"ел") + (v0+"н") + (v0+"ещ") + (v0+"й") + (v0+"ене") ; mkV161a : Str -> VTable ; mkV161a base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"я") + (v0+"е") + (v0+"х") + (v0+"ех") + (v0+"л") + (v0+"ел") + (v0+"т") + (v0+"ещ") + (v0+"й") + (v0+"ене") ; mkV162 : Str -> VTable ; mkV162 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"я") + (v0+"е") + (v0+"ях") + (v0+"ех") + (v0+"ял") + (v0+"ел") + (v0+"ян") + (v0+"ещ") + (v0+"й") + (v0+"ене") ; mkV163 : Str -> VTable ; mkV163 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"я") + (v0+"е") + (v0+"х") + (v0+"ех") + (v0+"л") + (v0+"ел") + (v0+"т") + (v0+"ещ") + (v0+"й") + (v0+"ене") ; mkV164 : Str -> VTable ; mkV164 base = let v0 = tk 2 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"ея") + (v0+"ее") + (v0+"ях") + (v0+"еех") + (v0+"ял") + (v0+"еел") + (v0+"ят") + (v0+"еещ") + (v0+"ей") + (v0+"еене") ; mkV165 : Str -> VTable ; mkV165 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"а") + (v0+"е") + (v0+"ох") + (v0+"ех") (v0+"-") - (v0+"") + (v0+"ел") (v0+"-") - (v0+"") - (v0+"") - (v0+"") ; + (v0+"ещ") + (v0+"и") + (v0+"ене") ; mkV166 : Str -> VTable ; mkV166 base = let v0 = tk 2 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"га") + (v0+"же") + (v0+"жах") + (v0+"жех") + (v0+"гъл") + (v0+"жел") (v0+"-") - (v0+"") + (v0+"жещ") (v0+"-") - (v0+"") ; + (v0+"жене") ; mkV167 : Str -> VTable ; mkV167 base = let v0 = tk 2 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"ка") + (v0+"че") + (v0+"ках") + (v0+"чех") + (v0+"кал") + (v0+"чел") + (v0+"кан") + (v0+"чещ") + (v0+"чи") + (v0+"чене") ; mkV168 : Str -> VTable ; mkV168 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"м") + (v0+"де") + (v0+"дох") + (v0+"дях") + (v0+"л") + (v0+"дял") + (v0+"ден") (v0+"-") - (v0+"") - (v0+"") ; + (v0+"й") + (v0+"дяне") ; mkV169 : Str -> VTable ; mkV169 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"м") + (v0+"де") + (v0+"дох") + (v0+"дях") + (v0+"л") + (v0+"дял") + (v0+"ден") + (v0+"дещ") + (v0+"ж") + (v0+"дяне") ; mkV170 : Str -> VTable ; mkV170 base = let v0 = tk 3 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"ера") + (v0+"ере") + (v0+"рах") + (v0+"ерях") + (v0+"рал") + (v0+"ерял") + (v0+"ран") + (v0+"ерящ") + (v0+"ери") + (v0+"еряне") ; mkV171 : Str -> VTable ; mkV171 base = let v0 = tk 2 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"ма") + (v0+"ме") + (v0+"х") + (v0+"мех") + (v0+"л") + (v0+"мел") + (v0+"т") (v0+"-") - (v0+"") - (v0+"") ; + (v0+"ми") + (v0+"мене") ; mkV172 : Str -> VTable ; mkV172 base = let v0 = tk 4 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"ълна") + (v0+"ълне") + (v0+"лех") + (v0+"ълнех") + (v0+"лел") + (v0+"ълнел") + (v0+"ълнат") + (v0+"ълнещ") + (v0+"ълни") + (v0+"ълнене") ; mkV173 : Str -> VTable ; mkV173 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"я") + (v0+"и") + (v0+"их") + (v0+"ех") + (v0+"ил") + (v0+"ел") + (v0+"ен") + (v0+"ещ") + (v0+"и") + (v0+"ене") ; mkV174 : Str -> VTable ; mkV174 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"я") + (v0+"и") + (v0+"их") + (v0+"ях") + (v0+"ил") + (v0+"ял") + (v0+"ен") + (v0+"ящ") + (v0+"и") + (v0+"яне") ; mkV175 : Str -> VTable ; mkV175 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"я") + (v0+"и") + (v0+"их") + (v0+"ях") + (v0+"ил") + (v0+"ял") + (v0+"ен") + (v0+"ящ") + (v0+"й") + (v0+"ене") ; mkV176 : Str -> VTable ; mkV176 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"а") + (v0+"и") + (v0+"их") + (v0+"ех") + (v0+"ил") + (v0+"ел") + (v0+"ен") + (v0+"ещ") + (v0+"и") + (v0+"ене") ; mkV177 : Str -> VTable ; mkV177 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"я") + (v0+"и") + (v0+"ях") + (v0+"ях") + (v0+"ял") + (v0+"ял") + (v0+"ян") + (v0+"ящ") + (v0+"и") + (v0+"ене") ; mkV178 : Str -> VTable ; mkV178 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"а") + (v0+"и") + (v0+"ах") + (v0+"ех") + (v0+"ал") + (v0+"ел") + (v0+"ителен") + (v0+"ащ") + (v0+"и") + (v0+"ене") ; mkV179 : Str -> VTable ; mkV179 base = let v0 = tk 4 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"ържа") + (v0+"ържи") + (v0+"ържах") + (v0+"ържех") + (v0+"ържал") + (v0+"ържел") + (v0+"ържан") + (v0+"ържащ") + (v0+"ръж") + (v0+"ържене") ; mkV180 : Str -> VTable ; mkV180 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"я") + (v0+"и") + (v0+"ях") + (v0+"ях") + (v0+"ял") + (v0+"ял") (v0+"-") - (v0+"") - (v0+"") - (v0+"") ; + (v0+"ящ") + (v0+"й") + (v0+"яне") ; mkV181 : Str -> VTable ; mkV181 base = let v0 = tk 2 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") + in mkVerb (v0+"дя") + (v0+"ди") + (v0+"дях") + (v0+"дех") + (v0+"дял") + (v0+"дел") + (v0+"дян") (v0+"-") - (v0+"") - (v0+"") ; + (v0+"ж") + (v0+"дене") ; mkV182 : Str -> VTable ; mkV182 base = let v0 = tk 1 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"я") + (v0+"и") + (v0+"ах") + (v0+"ях") + (v0+"ал") + (v0+"ял") + (v0+"ан") + (v0+"ящ") + (v0+"и") + (v0+"ане") ; mkV183 : Str -> VTable ; mkV183 base = let v0 = tk 3 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"ежа") + (v0+"ежи") + (v0+"язах") + (v0+"ежех") + (v0+"язал") + (v0+"ежел") + (v0+"язан") + (v0+"ежещ") + (v0+"ежи") + (v0+"ежене") ; mkV184 : Str -> VTable ; mkV184 base = let v0 = tk 3 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"еля") + (v0+"ели") + (v0+"лях") + (v0+"елех") + (v0+"лял") + (v0+"елел") + (v0+"лян") + (v0+"елещ") + (v0+"ели") + (v0+"елене") ; mkV185 : Str -> VTable ; mkV185 base = let v0 = tk 3 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"оля") + (v0+"оли") + (v0+"лах") + (v0+"олех") + (v0+"лал") + (v0+"олел") + (v0+"лан") + (v0+"олещ") + (v0+"оли") + (v0+"олене") ; mkV186 : Str -> VTable ; mkV186 base = let v0 = tk 2 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"ам") + (v0+"а") + (v0+"ах") + (v0+"ах") + (v0+"ал") + (v0+"ал") + (v0+"ан") + (v0+"ащ") + (v0+"ай") + (v0+"ане") ; mkV187 : Str -> VTable ; mkV187 base = let v0 = tk 2 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"ям") + (v0+"я") + (v0+"ях") + (v0+"ях") + (v0+"ял") + (v0+"ял") + (v0+"ян") + (v0+"ящ") + (v0+"яй") + (v0+"яне") ; mkV188 : Str -> VTable ; mkV188 base = let v0 = tk 2 base - in mkVerb (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") - (v0+"") ; + in mkVerb (v0+"ам") + (v0+"ае") + (v0+"ах") + (v0+"ах") + (v0+"ал") + (v0+"ал") + (v0+"ан") + (v0+"ащ") + (v0+"ай") + (v0+"ане") ; adjAdv : A -> Str -> A = \a,adv -> a ** {adv = adv} ; diff --git a/src/bulgarian/PhraseBul.gf b/src/bulgarian/PhraseBul.gf index 8a41ad3d..9711be67 100644 --- a/src/bulgarian/PhraseBul.gf +++ b/src/bulgarian/PhraseBul.gf @@ -1,6 +1,6 @@ ---# -coding=cp1251 +--# -coding=utf8 concrete PhraseBul of Phrase = CatBul ** open Prelude, ResBul in { - flags coding=cp1251 ; + flags coding=utf8 ; lin diff --git a/src/bulgarian/QuestionBul.gf b/src/bulgarian/QuestionBul.gf index 446e03c0..13c38531 100644 --- a/src/bulgarian/QuestionBul.gf +++ b/src/bulgarian/QuestionBul.gf @@ -1,6 +1,6 @@ ---# -coding=cp1251 +--# -coding=utf8 concrete QuestionBul of Question = CatBul ** open ResBul, Prelude in { - flags coding=cp1251 ; + flags coding=utf8 ; flags optimize=all_subs ; @@ -12,7 +12,7 @@ concrete QuestionBul of Question = CatBul ** open ResBul, Prelude in { let cls = cl.s ! t ! a ! p in table { QDir => cls ! Quest ; - QIndir => "" ++ cls ! Main + QIndir => "ако" ++ cls ! Main } ---- "whether" in ExtEng } ; @@ -22,7 +22,7 @@ concrete QuestionBul of Question = CatBul ** open ResBul, Prelude in { } ; QuestSlash ip slash = - mkQuestion {s = \\qform => slash.c2.s ++ case slash.c2.c of {Dat=>"";_=>[]} ++ ip.s ! (RObj slash.c2.c) ! qform} + mkQuestion {s = \\qform => slash.c2.s ++ case slash.c2.c of {Dat=>"на";_=>[]} ++ ip.s ! (RObj slash.c2.c) ! qform} {s = slash.s ! (agrP3 ip.gn) } ; QuestIAdv iadv cl = mkQuestion iadv cl ; @@ -30,7 +30,7 @@ concrete QuestionBul of Question = CatBul ** open ResBul, Prelude in { QuestIComp icomp np = mkQuestion icomp (mkClause (np.s ! RSubj) np.gn np.p (predV verbBe)) ; - PrepIP p ip = {s = \\qform => p.s ++ case p.c of {Dat=>"";_=>[]} ++ ip.s ! RSubj ! qform} ; + PrepIP p ip = {s = \\qform => p.s ++ case p.c of {Dat=>"на";_=>[]} ++ ip.s ! RSubj ! qform} ; AdvIP ip adv = { s = \\role,qform => ip.s ! role ! qform ++ adv.s ; diff --git a/src/bulgarian/RelativeBul.gf b/src/bulgarian/RelativeBul.gf index 44c12fa6..a4d3e5b7 100644 --- a/src/bulgarian/RelativeBul.gf +++ b/src/bulgarian/RelativeBul.gf @@ -1,13 +1,13 @@ ---# -coding=cp1251 +--# -coding=utf8 concrete RelativeBul of Relative = CatBul ** open ResBul in { - flags coding=cp1251 ; + flags coding=utf8 ; flags optimize=all_subs ; lin RelCl cl = { - s = \\t,a,p,agr => suchRP ! agr.gn ++ "" ++ cl.s ! t ! a ! p ! Main + s = \\t,a,p,agr => suchRP ! agr.gn ++ "че" ++ cl.s ! t ! a ! p ! Main } ; RelVP rp vp = { diff --git a/src/bulgarian/ResBul.gf b/src/bulgarian/ResBul.gf index 3e53da1f..bc1ff51e 100644 --- a/src/bulgarian/ResBul.gf +++ b/src/bulgarian/ResBul.gf @@ -1,5 +1,5 @@ --# -path=.:../abstract:../common:../../prelude ---# -coding=cp1251 +--# -coding=utf8 --1 Bulgarian auxiliary operations. @@ -11,7 +11,7 @@ resource ResBul = ParamX ** open Prelude, Predef in { flags - coding=cp1251 ; optimize=all ; + coding=utf8 ; optimize=all ; -- Some parameters, such as $Number$, are inherited from $ParamX$. @@ -328,149 +328,149 @@ resource ResBul = ParamX ** open Prelude, Predef in { auxBe : VTable = table { - VPres Sg P1 => "" ; - VPres Sg P2 => "" ; - VPres Sg P3 => "" ; - VPres Pl P1 => "" ; - VPres Pl P2 => "" ; - VPres Pl P3 => "" ; - VAorist Sg P1 => "" ; - VAorist Sg _ => "" ; - VAorist Pl P1 => "" ; - VAorist Pl P2 => "" ; - VAorist Pl P3 => "" ; - VImperfect Sg P1 => "" ; - VImperfect Sg _ => "" ; - VImperfect Pl P1 => "" ; - VImperfect Pl P2 => "" ; - VImperfect Pl P3 => "" ; - VPerfect aform => regAdjective "" ! aform ; - VPluPerfect aform => regAdjective "" ! aform ; - VPassive aform => regAdjective "" ! aform ; - VPresPart aform => regAdjective "" ! aform ; - VImperative Sg => "" ; - VImperative Pl => "" ; - VNoun _ => ""; - VGerund => "" + VPres Sg P1 => "съм" ; + VPres Sg P2 => "си" ; + VPres Sg P3 => "е" ; + VPres Pl P1 => "сме" ; + VPres Pl P2 => "сте" ; + VPres Pl P3 => "са" ; + VAorist Sg P1 => "бях" ; + VAorist Sg _ => "беше" ; + VAorist Pl P1 => "бяхме" ; + VAorist Pl P2 => "бяхте" ; + VAorist Pl P3 => "бяха" ; + VImperfect Sg P1 => "бях" ; + VImperfect Sg _ => "беше" ; + VImperfect Pl P1 => "бяхме" ; + VImperfect Pl P2 => "бяхте" ; + VImperfect Pl P3 => "бяха" ; + VPerfect aform => regAdjective "бил" ! aform ; + VPluPerfect aform => regAdjective "бил" ! aform ; + VPassive aform => regAdjective "бъден" ! aform ; + VPresPart aform => regAdjective "бъдещ" ! aform ; + VImperative Sg => "бъди" ; + VImperative Pl => "бъдете" ; + VNoun _ => "бъдене"; + VGerund => "бидейки" } ; auxWould : VTable = table { - VPres Sg P1 => "" ; - VPres Sg P2 => "" ; - VPres Sg P3 => "" ; - VPres Pl P1 => "" ; - VPres Pl P2 => "" ; - VPres Pl P3 => "" ; - VAorist Sg P1 => "" ; - VAorist Sg _ => "" ; - VAorist Pl P1 => "" ; - VAorist Pl P2 => "" ; - VAorist Pl P3 => "" ; - VImperfect Sg P1 => "" ; - VImperfect Sg _ => "" ; - VImperfect Pl P1 => "" ; - VImperfect Pl P2 => "" ; - VImperfect Pl P3 => "" ; - VPerfect aform => regAdjective "" ! aform ; - VPluPerfect aform => regAdjective "" ! aform ; - VPassive aform => regAdjective "" ! aform ; - VPresPart aform => regAdjective "" ! aform ; - VImperative Sg => "" ; - VImperative Pl => "" ; - VNoun _ => ""; - VGerund => "" + VPres Sg P1 => "бъда" ; + VPres Sg P2 => "бъдеш" ; + VPres Sg P3 => "бъде" ; + VPres Pl P1 => "бъдем" ; + VPres Pl P2 => "бъдете" ; + VPres Pl P3 => "бъдат" ; + VAorist Sg P1 => "бях" ; + VAorist Sg _ => "беше" ; + VAorist Pl P1 => "бяхме" ; + VAorist Pl P2 => "бяхте" ; + VAorist Pl P3 => "бяха" ; + VImperfect Sg P1 => "бъдех" ; + VImperfect Sg _ => "бъдеше" ; + VImperfect Pl P1 => "бъдехме" ; + VImperfect Pl P2 => "бъдехте" ; + VImperfect Pl P3 => "бъдеха" ; + VPerfect aform => regAdjective "бил" ! aform ; + VPluPerfect aform => regAdjective "бъдел" ! aform ; + VPassive aform => regAdjective "бъден" ! aform ; + VPresPart aform => regAdjective "бъдещ" ! aform ; + VImperative Sg => "бъди" ; + VImperative Pl => "бъдете" ; + VNoun _ => "бъдене"; + VGerund => "бъдейки" } ; auxCond : Number => Person => Str = table { Sg => table { - P1 => "" ; - _ => "" + P1 => "бих" ; + _ => "би" } ; Pl => table { - P1 => "" ; - P2 => "" ; - P3 => "" + P1 => "бихме" ; + P2 => "бихте" ; + P3 => "биха" } } ; verbBe : Verb = {s=table Aspect [auxBe; auxWould] ; vtype=VNormal} ; - reflClitics : Case => Str = table {Acc => ""; Dat => ""; WithPrep => with_Word ++ " "; CPrep => " "} ; + reflClitics : Case => Str = table {Acc => "се"; Dat => "си"; WithPrep => with_Word ++ "себе си"; CPrep => "себе си"} ; personalClitics : Agr -> Case => Str = \agr -> table { Acc => case agr.gn of { GSg g => case agr.p of { - P1 => "" ; - P2 => "" ; + P1 => "ме" ; + P2 => "те" ; P3 => case g of { - Masc => "" ; - Fem => "" ; - Neut => "" + Masc => "го" ; + Fem => "я" ; + Neut => "го" } } ; GPl => case agr.p of { - P1 => "" ; - P2 => "" ; - P3 => "" + P1 => "ни" ; + P2 => "ви" ; + P3 => "ги" } } ; Dat => case agr.gn of { GSg g => case agr.p of { - P1 => "" ; - P2 => "" ; + P1 => "ми" ; + P2 => "ти" ; P3 => case g of { - Masc => "" ; - Fem => "" ; - Neut => "" + Masc => "му" ; + Fem => "й" ; + Neut => "му" } } ; GPl => case agr.p of { - P1 => "" ; - P2 => "" ; - P3 => "" + P1 => "ни" ; + P2 => "ви" ; + P3 => "им" } } ; WithPrep => case agr.gn of { GSg g => case agr.p of { - P1 => with_Word ++ "" ; - P2 => with_Word ++ "" ; + P1 => with_Word ++ "мен" ; + P2 => with_Word ++ "теб" ; P3 => case g of { - Masc => with_Word ++ "" ; - Fem => with_Word ++ "" ; - Neut => with_Word ++ "" + Masc => with_Word ++ "него" ; + Fem => with_Word ++ "нея" ; + Neut => with_Word ++ "него" } } ; GPl => case agr.p of { - P1 => with_Word ++ "" ; - P2 => with_Word ++ "" ; - P3 => with_Word ++ "" + P1 => with_Word ++ "нас" ; + P2 => with_Word ++ "вас" ; + P3 => with_Word ++ "тях" } } ; CPrep => case agr.gn of { GSg g => case agr.p of { - P1 => "" ; - P2 => "" ; + P1 => "мен" ; + P2 => "теб" ; P3 => case g of { - Masc => "" ; - Fem => "" ; - Neut => "" + Masc => "него" ; + Fem => "нея" ; + Neut => "него" } } ; GPl => case agr.p of { - P1 => "" ; - P2 => "" ; - P3 => "" + P1 => "нас" ; + P2 => "вас" ; + P3 => "тях" } } } ; - ia2e : Str -> Str = -- to be used when the next syllable has vowel different from "","","" or "" + ia2e : Str -> Str = -- to be used when the next syllable has vowel different from "а","ъ","о" or "у" \s -> case s of { - x@(_*+_) + "" + y@((""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|""|"")*) - => x+""+y; + x@(_*+_) + "я" + y@(("б"|"в"|"г"|"д"|"ж"|"з"|"к"|"л"|"м"|"н"|"п"|"р"|"с"|"т"|"ф"|"х"|"ц"|"ч"|"ш")*) + => x+"е"+y; _ => s }; @@ -478,19 +478,19 @@ resource ResBul = ParamX ** open Prelude, Predef in { \base -> let base0 : Str = case base of { - x+"" => x; + x+"и" => x; x => x } in table { ASg Masc Indef => base ; - ASg Masc Def => (base0+"") ; - ASgMascDefNom => (base0+"") ; - ASg Fem Indef => (base0+"") ; - ASg Fem Def => (base0+"") ; - ASg Neut Indef => (base0+"") ; - ASg Neut Def => (base0+"") ; - APl Indef => (ia2e base0+"") ; - APl Def => (ia2e base0+"") + ASg Masc Def => (base0+"ия") ; + ASgMascDefNom => (base0+"ият") ; + ASg Fem Indef => (base0+"а") ; + ASg Fem Def => (base0+"ата") ; + ASg Neut Indef => (base0+"о") ; + ASg Neut Def => (base0+"ото") ; + APl Indef => (ia2e base0+"и") ; + APl Def => (ia2e base0+"ите") }; -- For $Sentence$. @@ -545,37 +545,37 @@ resource ResBul = ParamX ** open Prelude, Predef in { _ => auxPres++s++clitic.s } ; - li0 = case of { => ""; _ => []} ; + li0 = case of { => "ли"; _ => []} ; q = case verb.ad.isEmpty of {True => q0; False => False} ; - li = case q of {True => ""; _ => []} ; + li = case q of {True => "ли"; _ => []} ; vf1 : Str -> {s1 : Str; s2 : Str} = \s -> case p of { - Pos => case q of {True => {s1=[]; s2=""++apc []}; + Pos => case q of {True => {s1=[]; s2="ли"++apc []}; False => {s1=apc []; s2=[]}} ; - Neg => {s1=""++apc li; s2=[]} + Neg => {s1="не"++apc li; s2=[]} } ; vf2 : Str -> {s1 : Str; s2 : Str} = \s -> case p of { - Pos => case q of {True => {s1=[]; s2=""++s}; + Pos => case q of {True => {s1=[]; s2="ли"++s}; False => {s1=s; s2=[]}} ; Neg => case verb.vtype of - {VNormal => {s1=""++s; s2=li} ; - _ => {s1=""++s++li; s2=[]}} + {VNormal => {s1="не"++s; s2=li} ; + _ => {s1="не"++s++li; s2=[]}} } ; vf3 : Str -> {s1 : Str; s2 : Str} = \s -> case p of { - Pos => {s1=""++s; s2=li} ; - Neg => {s1=""++li++""++s; s2=[]} + Pos => {s1="ще"++s; s2=li} ; + Neg => {s1="няма"++li++"да"++s; s2=[]} } ; vf4 : Str -> {s1 : Str; s2 : Str} = \s -> case p of { Pos => {s1= s++li++clitic.s; s2=[]} ; - Neg => {s1=""++s++li++clitic.s; s2=[]} + Neg => {s1="не"++s++li++clitic.s; s2=[]} } ; verbs : {aux:{s1:Str; s2:Str}; main:Str} = @@ -600,8 +600,8 @@ resource ResBul = ParamX ** open Prelude, Predef in { VPhrasal Dat => {s=personalClitics agr ! Dat++vp.clitics; agr={gn=GSg Neut; p=P3}} ; VPhrasal c => {s=vp.clitics++personalClitics agr ! c; agr={gn=GSg Neut; p=P3}} } ; - pol = case p of {Pos => ""; Neg => ""} - in vp.ad.s ++ "" ++ pol ++ clitic.s ++ + pol = case p of {Pos => ""; Neg => "не"} + in vp.ad.s ++ "да" ++ pol ++ clitic.s ++ case a of { Simul => vp.s ! asp ! VPres (numGenNum clitic.agr.gn) clitic.agr.p ; Anter => auxBe ! VPres (numGenNum clitic.agr.gn) clitic.agr.p ++ @@ -629,10 +629,10 @@ resource ResBul = ParamX ** open Prelude, Predef in { linCase : Case -> Polarity -> Str = \c,p -> case c of { Acc => "" ; - Dat => "" ; + Dat => "на" ; WithPrep => case p of { Pos => with_Word ; - Neg => "" + Neg => "без" } ; CPrep => "" } ; @@ -656,17 +656,17 @@ resource ResBul = ParamX ** open Prelude, Predef in { {s = table { unit => mkCardOrd dva dvama dve vtori ; teen nf => case nf of { - Formal => mkCardOrd (dva+"") (dva+"") (dva+"") (dva+"") ; - Informal => mkCardOrd (dva+"") (dva+"") (dva+"") (dva+"") + Formal => mkCardOrd (dva+"надесет") (dva+"надесетима") (dva+"надесет") (dva+"надесети") ; + Informal => mkCardOrd (dva+"найсет") (dva+"найсет") (dva+"найсет") (dva+"найсти") } ; ten nf => case nf of { - Formal => mkCardOrd (dva+"") (dva+"") (dva+"") (dva+"") ; - Informal => mkCardOrd dvaiset dvaiset dvaiset (dvaiset+"") + Formal => mkCardOrd (dva+"десет") (dva+"десетима") (dva+"десет") (dva+"десети") ; + Informal => mkCardOrd dvaiset dvaiset dvaiset (dvaiset+"и") } ; hundred => let dvesten : Str = case dvesta of { - dvest+"" => dvest+"" ; - chetiristot+"" => chetiristot+"" + dvest+"а" => dvest+"ен" ; + chetiristot+"ин" => chetiristot+"ен" } in mkCardOrd100 dvesta dvestata dvesten } @@ -676,19 +676,19 @@ resource ResBul = ParamX ** open Prelude, Predef in { \dva, dvama, dve, vtori -> table { NCard dg => digitGenderSpecies dva dvama dve ! dg ; - NOrd aform => let vtora : Str = case vtori of {_+"" => vtori; _ => init vtori} + "" ; - vtoro : Str = case vtori of {_+"" => vtori; _ => init vtori} + ""; - i : Str = case vtori of {_+"" => ""; _ => ""} + NOrd aform => let vtora : Str = case vtori of {_+"в" => vtori; _ => init vtori} + "а" ; + vtoro : Str = case vtori of {_+"в" => vtori; _ => init vtori} + "о"; + i : Str = case vtori of {_+"в" => "и"; _ => ""} in case aform of { ASg Masc Indef => vtori ; - ASg Masc Def => vtori+i+"" ; - ASgMascDefNom => vtori+i+"" ; + ASg Masc Def => vtori+i+"я" ; + ASgMascDefNom => vtori+i+"ят" ; ASg Fem Indef => vtora ; - ASg Fem Def => vtora+"" ; + ASg Fem Def => vtora+"та" ; ASg Neut Indef => vtoro ; - ASg Neut Def => vtoro+"" ; + ASg Neut Def => vtoro+"то" ; APl Indef => vtori+i ; - APl Def => vtori+i+"" + APl Def => vtori+i+"те" } } ; @@ -705,14 +705,14 @@ resource ResBul = ParamX ** open Prelude, Predef in { NOrd aform => let stotn = init (init stoten) + last stoten ; in case aform of { ASg Masc Indef => stoten ; - ASg Masc Def => stotn+"" ; - ASgMascDefNom => stotn+"" ; - ASg Fem Indef => stotn+"" ; - ASg Fem Def => stotn+"" ; - ASg Neut Indef => stotn+"" ; - ASg Neut Def => stotn+"" ; - APl Indef => stotn+"" ; - APl Def => stotn+"" + ASg Masc Def => stotn+"ия" ; + ASgMascDefNom => stotn+"ият" ; + ASg Fem Indef => stotn+"а" ; + ASg Fem Def => stotn+"ата" ; + ASg Neut Indef => stotn+"о" ; + ASg Neut Def => stotn+"ото" ; + APl Indef => stotn+"и" ; + APl Def => stotn+"ите" } } ; @@ -720,12 +720,12 @@ resource ResBul = ParamX ** open Prelude, Predef in { \dva, dvama, dve -> let addDef : Str -> Gender -> Str = \s,g -> case s of { - dves+"" => dves+"" ; - dv+"" => dv+"" ; - "0" => s+"" ; - "1" => s+case g of {Masc => ""; Fem => ""; Neut => ""} ; - "2" => s+case g of {Masc => ""; _ => ""} ; - x => x+"" + dves+"та" => dves+"тате" ; + dv+"а" => dv+"ата" ; + "0" => s+"та" ; + "1" => s+case g of {Masc => "ят"; Fem => "та"; Neut => "то"} ; + "2" => s+case g of {Masc => "та"; _ => "те"} ; + x => x+"те" } in table { CFMasc Indef NonHuman => dva ; @@ -743,19 +743,19 @@ resource ResBul = ParamX ** open Prelude, Predef in { mkIP : Str -> Str -> GenNum -> {s : Role => QForm => Str ; gn : GenNum} = \koi,kogo,gn -> { s = table { - RSubj => table QForm [koi; koi+""] ; - RObj Acc => table QForm [kogo; kogo+""] ; - RObj Dat => table QForm ["" ++ kogo; "" ++ kogo+""] ; - RObj WithPrep => table QForm [with_Word ++ kogo; with_Word ++ kogo+""] ; - RObj CPrep => table QForm [kogo; kogo+""] ; - RVoc => table QForm [koi; koi+""] + RSubj => table QForm [koi; koi+"то"] ; + RObj Acc => table QForm [kogo; kogo+"то"] ; + RObj Dat => table QForm ["на" ++ kogo; "на" ++ kogo+"то"] ; + RObj WithPrep => table QForm [with_Word ++ kogo; with_Word ++ kogo+"то"] ; + RObj CPrep => table QForm [kogo; kogo+"то"] ; + RVoc => table QForm [koi; koi+"то"] } ; gn = gn } ; with_Word : Str - = pre { "" ; - "" / strs {"" ; "" ; "" ; ""} + = pre { "с" ; + "със" / strs {"с" ; "з" ; "С" ; "З"} } ; mkPron : (az,moj,moia,moiat,moia_,moiata,moe,moeto,moi,moite : Str) -> @@ -812,43 +812,43 @@ resource ResBul = ParamX ** open Prelude, Predef in { whichRP : GenNum => Str = table { - GSg Masc => "" ; - GSg Fem => "" ; - GSg Neut => "" ; - GPl => "" + GSg Masc => "който" ; + GSg Fem => "която" ; + GSg Neut => "което" ; + GPl => "които" } ; suchRP : GenNum => Str = table { - GSg Masc => "" ; - GSg Fem => "" ; - GSg Neut => "" ; - GPl => "" + GSg Masc => "такъв" ; + GSg Fem => "такава" ; + GSg Neut => "такова" ; + GPl => "такива" } ; thisRP : GenNum => Str = table { - GSg Masc => "" ; - GSg Fem => "a" ; - GSg Neut => "" ; - GPl => "" + GSg Masc => "този" ; + GSg Fem => "тaзи" ; + GSg Neut => "това" ; + GPl => "тези" } ; linCoord : Str -> Ints 4 => Str ; - linCoord comma = table {0 => ""; 1=>""; 2=>""; 3=>comma; 4=>[]} ; + linCoord comma = table {0 => "и"; 1=>"или"; 2=>"нито"; 3=>comma; 4=>[]} ; hyphen : Str = SOFT_BIND ++ "-" ++ SOFT_BIND ; reflPron : AForm => Str = table { - ASg Masc Indef => "" ; - ASg Masc Def => "" ; - ASgMascDefNom => "" ; - ASg Fem Indef => "" ; - ASg Fem Def => "" ; - ASg Neut Indef => "" ; - ASg Neut Def => "" ; - APl Indef => "" ; - APl Def => "" + ASg Masc Indef => "свой" ; + ASg Masc Def => "своя" ; + ASgMascDefNom => "своят" ; + ASg Fem Indef => "своя" ; + ASg Fem Def => "своята" ; + ASg Neut Indef => "свое" ; + ASg Neut Def => "своето" ; + APl Indef => "свои" ; + APl Def => "своите" } ; } diff --git a/src/bulgarian/SentenceBul.gf b/src/bulgarian/SentenceBul.gf index a1addf89..ef563a60 100644 --- a/src/bulgarian/SentenceBul.gf +++ b/src/bulgarian/SentenceBul.gf @@ -1,6 +1,6 @@ ---# -coding=cp1251 +--# -coding=utf8 concrete SentenceBul of Sentence = CatBul ** open Prelude, ResBul in { - flags coding=cp1251 ; + flags coding=utf8 ; flags optimize=all_subs ; @@ -27,7 +27,7 @@ concrete SentenceBul of Sentence = CatBul ** open Prelude, ResBul in { } in case orPol p vp.p of { Pos => vp.ad.s ++ verb Perf ++ clitic ; - Neg => "" ++ vp.ad.s ++ clitic ++ verb Imperf + Neg => "не" ++ vp.ad.s ++ clitic ++ verb Imperf } ++ compl ; } ; @@ -51,11 +51,11 @@ concrete SentenceBul of Sentence = CatBul ** open Prelude, ResBul in { SlashVS np vs slash = { s = \\agr => (mkClause (np.s ! RSubj) np.gn np.p - (insertObj (\\_ => "" ++ slash.s ! agr) Pos (predV vs))).s ; + (insertObj (\\_ => "че" ++ slash.s ! agr) Pos (predV vs))).s ; c2 = slash.c2 } ; - EmbedS s = {s = "" ++ s.s} ; + EmbedS s = {s = "че" ++ s.s} ; EmbedQS qs = {s = qs.s ! QIndir} ; EmbedVP vp = {s = daComplex Simul vp.p vp ! Perf ! agrP3 (GSg Masc)} ; diff --git a/src/bulgarian/StructuralBul.gf b/src/bulgarian/StructuralBul.gf index 770155e0..4ee12dba 100644 --- a/src/bulgarian/StructuralBul.gf +++ b/src/bulgarian/StructuralBul.gf @@ -1,132 +1,132 @@ ---# -coding=cp1251 +--# -coding=utf8 concrete StructuralBul of Structural = CatBul ** open MorphoBul, ParadigmsBul, Prelude, (X = ConstructX) in { - flags coding=cp1251 ; + flags coding=utf8 ; flags optimize=all ; lin - above_Prep = mkPrep "" ; - after_Prep = mkPrep "" ; - all_Predet = {s = table GenNum ["";"";"";""]} ; - almost_AdA, almost_AdN = ss "" ; - at_least_AdN, at_most_AdN = ss "" ; ---- AR - although_Subj = ss [" "] ; - always_AdV = mkAdV "" ; - and_Conj = mkConj "" Pl ; - because_Subj = ss "" ; - before_Prep = mkPrep "" ; - behind_Prep = mkPrep "" ; - between_Prep = mkPrep "" ; - both7and_DConj = mkConj "" Pl ** {sep=0} ; - but_PConj = ss "" ; - by8agent_Prep = mkPrep "" ; - by8means_Prep = mkPrep "" ; - can8know_VV, can_VV = mkVV (stateV (mkV166 "")) ; - during_Prep = mkPrep [" "] ; - either7or_DConj = mkConj "" Sg ** {sep=1} ; - everybody_NP = mkNP "" (GSg Masc) (NounP3 Pos); - every_Det = mkDeterminerSg "" "" ""; - everything_NP = mkNP "" (GSg Neut) (NounP3 Pos); - everywhere_Adv = ss "" ; - few_Det = {s = \\_,_,_ => ""; nn = NCountable; spec = Indef; p = Pos} ; + above_Prep = mkPrep "над" ; + after_Prep = mkPrep "след" ; + all_Predet = {s = table GenNum ["всичкия";"всичката";"всичкото";"всичките"]} ; + almost_AdA, almost_AdN = ss "почти" ; + at_least_AdN, at_most_AdN = ss "почти" ; ---- AR + although_Subj = ss ["въпреки че"] ; + always_AdV = mkAdV "винаги" ; + and_Conj = mkConj "и" Pl ; + because_Subj = ss "защото" ; + before_Prep = mkPrep "преди" ; + behind_Prep = mkPrep "зад" ; + between_Prep = mkPrep "между" ; + both7and_DConj = mkConj "и" Pl ** {sep=0} ; + but_PConj = ss "но" ; + by8agent_Prep = mkPrep "чрез" ; + by8means_Prep = mkPrep "чрез" ; + can8know_VV, can_VV = mkVV (stateV (mkV166 "мога")) ; + during_Prep = mkPrep ["по време на"] ; + either7or_DConj = mkConj "или" Sg ** {sep=1} ; + everybody_NP = mkNP "всеки" (GSg Masc) (NounP3 Pos); + every_Det = mkDeterminerSg "всеки" "всяка" "всяко"; + everything_NP = mkNP "всичко" (GSg Neut) (NounP3 Pos); + everywhere_Adv = ss "навсякъде" ; + few_Det = {s = \\_,_,_ => "няколко"; nn = NCountable; spec = Indef; p = Pos} ; --- first_Ord = ss "first" ; DEPRECATED - for_Prep = mkPrep "" ; - from_Prep = mkPrep "" ; - he_Pron = mkPron "" "" "" "" "" "" "" "" "" "" (GSg Masc) PronP3 ; - here_Adv = ss "" ; - here7to_Adv = ss [" "] ; - here7from_Adv = ss [" "] ; - how_IAdv = mkIAdv "" ; - how8much_IAdv = mkIAdv "" ; - how8many_IDet = {s = \\_ => table QForm ["";""]; n = Pl; nonEmpty = False} ; - if_Subj = ss "" ; - in8front_Prep = mkPrep "" ; - i_Pron = mkPron "" "" "" "" "" "" "" "" "" "" (GSg Masc) PronP1 ; - in_Prep = mkPrep (pre { "" ; - "" / strs {"" ; "" ; "" ; ""} + for_Prep = mkPrep "за" ; + from_Prep = mkPrep "от" ; + he_Pron = mkPron "той" "негов" "неговия" "неговият" "негова" "неговата" "негово" "неговото" "негови" "неговите" (GSg Masc) PronP3 ; + here_Adv = ss "тук" ; + here7to_Adv = ss ["до тук"] ; + here7from_Adv = ss ["от тук"] ; + how_IAdv = mkIAdv "как" ; + how8much_IAdv = mkIAdv "колко" ; + how8many_IDet = {s = \\_ => table QForm ["колко";"колкото"]; n = Pl; nonEmpty = False} ; + if_Subj = ss "ако" ; + in8front_Prep = mkPrep "пред" ; + i_Pron = mkPron "аз" "мой" "моя" "моят" "моя" "моята" "мое" "моето" "мои" "моите" (GSg Masc) PronP1 ; + in_Prep = mkPrep (pre { "в" ; + "във" / strs {"в" ; "ф" ; "В" ; "Ф"} }) ; - it_Pron = mkPron "" "" "" "" "" "" "" "" "" "" (GSg Neut) PronP3 ; - less_CAdv = X.mkCAdv "-" "" ; - many_Det = mkDeterminerPl "" ; - more_CAdv = X.mkCAdv "" "" ; - most_Predet = {s = \\_ => ""} ; - much_Det = mkDeterminerSg "" "" ""; + it_Pron = mkPron "то" "негов" "неговия" "неговият" "негова" "неговата" "негово" "неговото" "негови" "неговите" (GSg Neut) PronP3 ; + less_CAdv = X.mkCAdv "по-малко" "от" ; + many_Det = mkDeterminerPl "много" ; + more_CAdv = X.mkCAdv "повече" "от" ; + most_Predet = {s = \\_ => "повечето"} ; + much_Det = mkDeterminerSg "много" "много" "много"; must_VV = mkVV { s = \\_=>table { - VPres _ _ => "" ; - VAorist _ _ => "" ; - VImperfect _ _ => "" ; - VPerfect _ => "" ; - VPluPerfect _ => "" ; - VPassive _ => "" ; - VPresPart _ => "" ; - VImperative Sg => "" ; - VImperative Pl => "" ; - VNoun _ => "" ; - VGerund => "" + VPres _ _ => "трябва" ; + VAorist _ _ => "трябваше" ; + VImperfect _ _ => "трябвало" ; + VPerfect _ => "трябвало" ; + VPluPerfect _ => "трябвало" ; + VPassive _ => "трябвало" ; + VPresPart _ => "трябвало" ; + VImperative Sg => "трябвай" ; + VImperative Pl => "трябвайте" ; + VNoun _ => "трябване" ; + VGerund => "трябвайки" } ; vtype=VNormal ; lock_V=<> } ; - no_Utt = ss "" ; - on_Prep = mkPrep "" ; + no_Utt = ss "не" ; + on_Prep = mkPrep "на" ; ---- one_Quant = mkDeterminer Sg "one" ; -- DEPRECATED - only_Predet = {s = \\_ => ""} ; - or_Conj = mkConj "" Sg ; - otherwise_PConj = ss "" ; - part_Prep = mkPrep "" ; - please_Voc = ss "" ; + only_Predet = {s = \\_ => "само"} ; + or_Conj = mkConj "или" Sg ; + otherwise_PConj = ss "иначе" ; + part_Prep = mkPrep "от" ; + please_Voc = ss "моля" ; possess_Prep = mkPrep [] Dat ; - quite_Adv = ss "" ; - she_Pron = mkPron "" "" "" "" "" "" "" "" "" "" (GSg Fem) PronP3 ; - so_AdA = ss "" ; - somebody_NP = mkNP "" (GSg Masc) (NounP3 Pos); - someSg_Det = mkDeterminerSg "" "" "" ; - somePl_Det = mkDeterminerPl "" ; - something_NP = mkNP "" (GSg Neut) (NounP3 Pos); - somewhere_Adv = ss "" ; - that_Quant = mkQuant "" "" "" "" ; - that_Subj = ss "" ; - there_Adv = ss "" ; - there7to_Adv = ss [" "] ; - there7from_Adv = ss [" "] ; - therefore_PConj = ss [" "] ; - they_Pron = mkPron "" "" "" "" "" "" "" "" "" "" GPl PronP3 ; - this_Quant = mkQuant "" "" "" "" ; - through_Prep = mkPrep "" ; - too_AdA = ss "" ; - to_Prep = mkPrep "" ; - under_Prep = mkPrep "" ; - very_AdA = ss "" ; - want_VV = mkVV (stateV (mkV186 "")) ; - we_Pron = mkPron "" "" "" "" "" "" "" "" "" "" GPl PronP1 ; - whatPl_IP = mkIP "" "" GPl ; - whatSg_IP = mkIP "" "" (GSg Masc) ; - when_IAdv = mkIAdv "" ; - when_Subj = ss "" ; - where_IAdv = mkIAdv "" ; - which_IQuant = {s = table GenNum [table QForm ["";""]; - table QForm ["";""]; - table QForm ["";""]; - table QForm ["";""]]} ; - whoSg_IP = mkIP "" "" (GSg Masc) ; - whoPl_IP = mkIP "" "" GPl ; - why_IAdv = mkIAdv "" ; - without_Prep = mkPrep "" ; + quite_Adv = ss "доста" ; + she_Pron = mkPron "тя" "неин" "нейния" "нейният" "нейна" "нейната" "нейно" "нейното" "нейни" "нейните" (GSg Fem) PronP3 ; + so_AdA = ss "толкова" ; + somebody_NP = mkNP "някой" (GSg Masc) (NounP3 Pos); + someSg_Det = mkDeterminerSg "някой" "някоя" "някое" ; + somePl_Det = mkDeterminerPl "някои" ; + something_NP = mkNP "нещо" (GSg Neut) (NounP3 Pos); + somewhere_Adv = ss "някъде" ; + that_Quant = mkQuant "онзи" "онази" "онова" "онези" ; + that_Subj = ss "че" ; + there_Adv = ss "там" ; + there7to_Adv = ss ["до там"] ; + there7from_Adv = ss ["от там"] ; + therefore_PConj = ss ["така че"] ; + they_Pron = mkPron "те" "техен" "техния" "техният" "тяхна" "тяхната" "тяхно" "тяхното" "техни" "техните" GPl PronP3 ; + this_Quant = mkQuant "този" "тази" "това" "тези" ; + through_Prep = mkPrep "през" ; + too_AdA = ss "прекалено" ; + to_Prep = mkPrep "до" ; + under_Prep = mkPrep "под" ; + very_AdA = ss "много" ; + want_VV = mkVV (stateV (mkV186 "искам")) ; + we_Pron = mkPron "ние" "наш" "нашия" "нашият" "наша" "нашата" "наше" "нашето" "наши" "нашите" GPl PronP1 ; + whatPl_IP = mkIP "какви" "какви" GPl ; + whatSg_IP = mkIP "какъв" "какъв" (GSg Masc) ; + when_IAdv = mkIAdv "кога" ; + when_Subj = ss "когато" ; + where_IAdv = mkIAdv "къде" ; + which_IQuant = {s = table GenNum [table QForm ["кой";"който"]; + table QForm ["коя";"която"]; + table QForm ["кое";"което"]; + table QForm ["кои";"които"]]} ; + whoSg_IP = mkIP "кой" "кого" (GSg Masc) ; + whoPl_IP = mkIP "кои" "кои" GPl ; + why_IAdv = mkIAdv "защо" ; + without_Prep = mkPrep "без" ; with_Prep = mkPrep "" WithPrep ; - yes_Utt = ss "" ; - youSg_Pron = mkPron "" "" "" "" "" "" "" "" "" "" (GSg Masc) PronP2 ; - youPl_Pron = mkPron "" "" "" "" "" "" "" "" "" "" GPl PronP2 ; - youPol_Pron = mkPron "" "" "" "" "" "" "" "" "" "" GPl PronP2 ; + yes_Utt = ss "да" ; + youSg_Pron = mkPron "ти" "твой" "твоя" "твоят" "твоя" "твоята" "твое" "твоето" "твои" "твоите" (GSg Masc) PronP2 ; + youPl_Pron = mkPron "вие" "ваш" "вашия" "вашият" "ваша" "вашата" "ваше" "вашето" "ваши" "вашите" GPl PronP2 ; + youPol_Pron = mkPron "вие" "ваш" "вашия" "вашият" "ваша" "вашата" "ваше" "вашето" "ваши" "вашите" GPl PronP2 ; - as_CAdv = X.mkCAdv [] "" ; + as_CAdv = X.mkCAdv [] "колкото" ; - have_V2 = dirV2 (stateV (mkV186 "")) ; + have_V2 = dirV2 (stateV (mkV186 "имам")) ; - lin language_title_Utt = ss "" ; + lin language_title_Utt = ss "Български" ; } diff --git a/src/bulgarian/SymbolBul.gf b/src/bulgarian/SymbolBul.gf index 9e650888..5a5fd526 100644 --- a/src/bulgarian/SymbolBul.gf +++ b/src/bulgarian/SymbolBul.gf @@ -1,10 +1,10 @@ --# -path=.:../abstract:../common:../prelude ---# -coding=cp1251 +--# -coding=utf8 concrete SymbolBul of Symbol = CatBul ** open Prelude, ResBul in { flags - coding = cp1251 ; + coding = utf8 ; lin SymbPN i = {s = i.s ; g = Neut} ; @@ -32,15 +32,15 @@ lin SymbNum sy = {s = \\_ => sy.s; nn = NNum Pl} ; SymbOrd sy = {s = \\aform => sy.s ++ "-" ++ case aform of { - ASg Masc Indef => "" ; - ASg Fem Indef => "" ; - ASg Neut Indef => "" ; - ASg Masc Def => "" ; - ASg Fem Def => "" ; - ASg Neut Def => "" ; - ASgMascDefNom => "" ; - APl Indef => "" ; - APl Def => "" + ASg Masc Indef => "ти" ; + ASg Fem Indef => "та" ; + ASg Neut Indef => "то" ; + ASg Masc Def => "тия" ; + ASg Fem Def => "тата" ; + ASg Neut Def => "тото" ; + ASgMascDefNom => "тият" ; + APl Indef => "ти" ; + APl Def => "тите" } } ; @@ -52,7 +52,7 @@ lin MkSymb s = s ; - BaseSymb = infixSS "" ; + BaseSymb = infixSS "и" ; ConsSymb = infixSS bindComma ; } diff --git a/src/bulgarian/TextBul.gf b/src/bulgarian/TextBul.gf index de26fdfb..7f5da38e 100644 --- a/src/bulgarian/TextBul.gf +++ b/src/bulgarian/TextBul.gf @@ -1,6 +1,6 @@ ---# -coding=cp1251 +--# -coding=utf8 concrete TextBul of Text = CatBul ** open Prelude in { - flags coding=cp1251 ; + flags coding=utf8 ; -- This will work for almost all languages except Spanish. diff --git a/src/bulgarian/VerbBul.gf b/src/bulgarian/VerbBul.gf index 49b74876..8b28633f 100644 --- a/src/bulgarian/VerbBul.gf +++ b/src/bulgarian/VerbBul.gf @@ -1,6 +1,6 @@ ---# -coding=cp1251 +--# -coding=utf8 concrete VerbBul of Verb = CatBul ** open Prelude, ResBul, ParadigmsBul in { - flags coding=cp1251 ; + flags coding=utf8 ; flags optimize=all_subs ; @@ -39,7 +39,7 @@ concrete VerbBul of Verb = CatBul ** open Prelude, ResBul, ParadigmsBul in { }) vp.p (predV vv) ; - ComplVS v s = insertObj (\\_ => bindComma ++ "" ++ s.s) Pos (predV v) ; + ComplVS v s = insertObj (\\_ => bindComma ++ "че" ++ s.s) Pos (predV v) ; ComplVQ v q = insertObj (\\_ => q.s ! QDir) Pos (predV v) ; ComplVA v ap = @@ -50,7 +50,7 @@ concrete VerbBul of Verb = CatBul ** open Prelude, ResBul, ParadigmsBul in { insertSlashObj2 (\\a => v.c3.s ++ ap.s ! aform a.gn Indef (RObj Acc) ! a.p) Pos (slashV v v.c2 v.subjCtrl) ; -- test: I saw a boy to whom she said that they are here - SlashV2S v s = insertSlashObj2 (\\_ => bindComma ++ "" ++ s.s) Pos (slashV v v.c2 False) ; + SlashV2S v s = insertSlashObj2 (\\_ => bindComma ++ "че" ++ s.s) Pos (slashV v v.c2 False) ; -- test: I saw a boy whom she asked who is here SlashV2Q v q = insertSlashObj2 (\\_ => q.s ! QDir) Pos (slashV v v.c2 False) ;