addedvocative and single word phrases

This commit is contained in:
krasimir
2008-02-27 16:46:53 +00:00
parent 5960838e98
commit 16e20df602
4 changed files with 29 additions and 12 deletions

View File

@@ -7,13 +7,18 @@ concrete NounBul of Noun = CatBul ** open ResBul, Prelude in {
{ s = \\role => let nf = case <det.n,det.spec> of {
<Sg,Def> => case role of {
RSubj => NFSgDefNom ;
RVoc => NFVocative ;
_ => NF Sg Def
} ;
<Sg,Indef> => case role of {
RVoc => NFVocative ;
_ => NF Sg Indef
} ;
<Pl,Def> => NF det.n det.spec ;
<Pl,Indef> => case det.countable of {
True => NFPlCount ;
False => NF Pl Indef
} ;
_ => NF det.n det.spec
}
} ;
s = det.s ! cn.g ! role ++ cn.s ! nf
in case role of {
@@ -46,7 +51,7 @@ concrete NounBul of Noun = CatBul ** open ResBul, Prelude in {
} ;
DetSg quant ord = {
s = \\g,c => quant.s ! aform (gennum g Sg) Def c ++
s = \\g,c => quant.s ! aform (gennum g Sg) (case c of {RVoc=>Indef;_=>Def}) c ++
ord.s ! aform (gennum g Sg) quant.spec c ;
n = Sg ;
countable = False ;

View File

@@ -1,11 +1,22 @@
concrete PhraseBul of Phrase = CatBul ** open Prelude, ResBul in {
lin
PhrUtt pconj utt voc = {s = pconj.s ++ utt.s ++ voc.s} ;
UttS s = s ;
UttQS qs = {s = qs.s ! QDir} ;
UttImpSg pol imp = {s = pol.s ++ imp.s ! pol.p ! GSg Masc} ;
UttImpPl pol imp = {s = pol.s ++ imp.s ! pol.p ! GPl} ;
UttImpPol pol imp = {s = pol.s ++ imp.s ! pol.p ! GPl} ;
UttIP ip = {s = ip.s ! RSubj} ;
UttIAdv iadv = {s = iadv.s1} ;
UttNP np = {s = np.s ! RSubj} ;
UttAdv adv = adv ;
NoPConj = {s = []} ;
PConjConj conj = conj ;
NoVoc = {s = []} ;
VocNP np = {s = "," ++ np.s ! RVoc} ;
}

View File

@@ -18,7 +18,7 @@ resource ResBul = ParamX ** open Prelude in {
-- This is the worst-case $Case$ needed for pronouns.
param
Role = RSubj | RObj Case ;
Role = RSubj | RObj Case | RVoc ;
Case = Acc | Dat;
NForm =
@@ -520,7 +520,8 @@ resource ResBul = ParamX ** open Prelude in {
s = table {
RSubj => koi ;
RObj Acc => kogo ;
RObj Dat => "íà" ++ kogo
RObj Dat => "íà" ++ kogo ;
RVoc => koi
} ;
gn = gn
} ;
@@ -530,7 +531,8 @@ resource ResBul = ParamX ** open Prelude in {
s = table {
RSubj => az ;
RObj Acc => men ;
RObj Dat => mi
RObj Dat => mi ;
RVoc => az
} ;
gen = (mkAdjective moj moia moiat moia_ moiata moe moeto moi moite).s ;
a = {
@@ -544,7 +546,8 @@ resource ResBul = ParamX ** open Prelude in {
s = table {
RSubj => s ;
RObj Acc => s ;
RObj Dat => "íà" ++ s
RObj Dat => "íà" ++ s ;
RVoc => s
} ;
a = {
gn = gn ;

View File

@@ -18,8 +18,8 @@ concrete StructuralBul of Structural = CatBul **
between_Prep = mkPrep "ìåæäó" Acc ;
{-
both7and_DConj = sd2 "both" "and" ** {n = Pl} ;
but_PConj = ss "but" ;
-}
but_PConj = ss "íî" ;
by8agent_Prep = mkPrep "÷ðåç" Acc ;
by8means_Prep = mkPrep "÷ðåç" Acc ;
{-
@@ -86,12 +86,10 @@ concrete StructuralBul of Structural = CatBul **
only_Predet = {s = \\_ => "ñàìî"} ;
{-
or_Conj = ss "or" ** {n = Sg} ;
otherwise_PConj = ss "otherwise" ;
-}
otherwise_PConj = ss "èíà÷å" ;
part_Prep = mkPrep "îò" Acc ;
{-
please_Voc = ss "please" ;
-}
please_Voc = ss "ìîëÿ" ;
possess_Prep = mkPrep [] Dat ;
quite_Adv = ss "äîñòà" ;
she_Pron = mkPron "òÿ" "íåÿ" "è" "íåèí" "íåéíèÿ" "íåéíèÿò" "íåéíà" "íåéíàòà" "íåéíî" "íåéíîòî" "íåéíè" "íåéíèòå" (GSg Fem) P3 ;