diff --git a/src/bulgarian/CatBul.gf b/src/bulgarian/CatBul.gf index e11f20397..356260f2b 100644 --- a/src/bulgarian/CatBul.gf +++ b/src/bulgarian/CatBul.gf @@ -130,16 +130,19 @@ concrete CatBul of Cat = CommonX - [IAdv,CAdv,AdV,SC] ** open ResBul, Prelude, P } ; V, VS, VQ, VA = \v -> linrefVP (predV v); - V2 = \v -> linrefVP (predV v) ++ v.c2.s; - V2V = \v -> linrefVP (predV v) ++ v.c2.s ++ v.c3.s ++ "да"; - V2A, V2S, V2Q = \v -> linrefVP (predV v) ++ v.c2.s ++ v.c3.s; - V3 = \v -> linrefVP (predV v) ++ v.c2.s ++ v.c3.s; + V2 = \v -> linrefVP (predV v) ++ linrefPrep v.c2 ; + V2V = \v -> linrefVP (predV v) ++ linrefPrep v.c2 ++ linrefPrep v.c3 ++ "да"; + V2A, V2S, V2Q = \v -> linrefVP (predV v) ++ linrefPrep v.c2 ++ linrefPrep v.c3; + V3 = \v -> linrefVP (predV v) ++ linrefPrep v.c2 ++ linrefPrep v.c3; VV = \v -> linrefVP (predV v); + Prep = linrefPrep ; + A = \a -> a.s ! ASg Masc Indef; A2 = \a -> a.s ! ASg Masc Indef ++ a.c2; N = \n -> n.s ! NF Sg Indef; N2 = \n -> n.s ! NF Sg Indef ++ n.c2.s; N3 = \n -> n.s ! NF Sg Indef ++ n.c2.s ++ n.c3.s; + } diff --git a/src/bulgarian/ResBul.gf b/src/bulgarian/ResBul.gf index bd5fd4152..c4a5c55e5 100644 --- a/src/bulgarian/ResBul.gf +++ b/src/bulgarian/ResBul.gf @@ -565,6 +565,9 @@ resource ResBul = ParamX ** open Prelude, Predef in { in vp.ad.s ++ vp.s ! Imperf ! VPres (numGenNum clitic.agr.gn) clitic.agr.p ++ clitic.s ++ vp.compl ! agr ; + + linrefPrep : {s:Str; c:Case} -> Str = + \p -> case p.c of {Acc=>""; Dat=>"íà"; WithPrep=>with_Word} ++ p.s ; gerund : VP -> Aspect => Agr => Str = \vp -> \\asp,agr =>