From 2bb3630f00f6836c1b7cf36db65a974a8fdf3fea Mon Sep 17 00:00:00 2001 From: krangelov Date: Wed, 17 Feb 2021 09:42:40 +0100 Subject: [PATCH] allow plural PN --- src/bulgarian/CatBul.gf | 2 +- src/bulgarian/MorphoBul.gf | 8 -------- src/bulgarian/MorphoFunsBul.gf | 8 ++++++-- src/bulgarian/NounBul.gf | 2 +- src/bulgarian/SymbolBul.gf | 8 ++++---- 5 files changed, 12 insertions(+), 16 deletions(-) diff --git a/src/bulgarian/CatBul.gf b/src/bulgarian/CatBul.gf index fae79ac0f..44f64d318 100644 --- a/src/bulgarian/CatBul.gf +++ b/src/bulgarian/CatBul.gf @@ -86,7 +86,7 @@ concrete CatBul of Cat = CommonX - [IAdv,AdV] ** open ResBul, Prelude, Predef, ( N = {s : NForm => Str; rel : AForm => Str; relType : NRelType; g : AGender} ; N2 = {s : NForm => Str; rel : AForm => Str; relType : NRelType; g : AGender} ** {c2 : Preposition} ; N3 = {s : NForm => Str; rel : AForm => Str; relType : NRelType; g : AGender} ** {c2,c3 : Preposition} ; - PN = {s : Str; g : Gender} ; + PN = {s : Str; gn : GenNum} ; lindef SSlash = \s -> {s = \\_ => s; c2 = {s=""; c=Acc}}; diff --git a/src/bulgarian/MorphoBul.gf b/src/bulgarian/MorphoBul.gf index b9d5f06d3..1e34262e5 100644 --- a/src/bulgarian/MorphoBul.gf +++ b/src/bulgarian/MorphoBul.gf @@ -1,14 +1,6 @@ --# -path=.:../../prelude --# -coding=utf8 ---1 A Simple English Resource Morphology --- --- Aarne Ranta 2002 -- 2005 --- --- This resource morphology contains definitions needed in the resource --- syntax. To build a lexicon, it is better to use $ParadigmsEng$, which --- gives a higher-level access to this module. - resource MorphoBul = ResBul ** open Predef, Prelude, diff --git a/src/bulgarian/MorphoFunsBul.gf b/src/bulgarian/MorphoFunsBul.gf index 92798d203..3a44d7150 100644 --- a/src/bulgarian/MorphoFunsBul.gf +++ b/src/bulgarian/MorphoFunsBul.gf @@ -278,8 +278,12 @@ oper --2 Proper Names -- - mkPN : Str -> Gender -> PN ; - mkPN s g = {s = s; g = g ; lock_PN = <>} ; + mkPN = overload { + mkPN : Str -> Gender -> PN = + \s,g -> {s = s; gn = GSg g ; lock_PN = <>} ; + mkPN : Str -> GenNum -> PN = + \s,gn -> {s = s; gn = gn ; lock_PN = <>} ; + } ; --2 IAdv diff --git a/src/bulgarian/NounBul.gf b/src/bulgarian/NounBul.gf index dbf8b51e7..2fd91ca14 100644 --- a/src/bulgarian/NounBul.gf +++ b/src/bulgarian/NounBul.gf @@ -42,7 +42,7 @@ concrete NounBul of Noun = CatBul ** open ResBul, Prelude in { RObj c => linCase c Pos ++ pn.s; _ => pn.s } ; - gn = GSg pn.g ; + gn = pn.gn ; p = NounP3 Pos } ; UsePron p = p ; diff --git a/src/bulgarian/SymbolBul.gf b/src/bulgarian/SymbolBul.gf index 5a5fd526f..3ee713d82 100644 --- a/src/bulgarian/SymbolBul.gf +++ b/src/bulgarian/SymbolBul.gf @@ -7,10 +7,10 @@ flags coding = utf8 ; lin - SymbPN i = {s = i.s ; g = Neut} ; - IntPN i = {s = i.s ; g = Neut} ; - FloatPN i = {s = i.s ; g = Neut} ; - NumPN i = {s = i.s ! CFNeut Indef ; g = Neut} ; + SymbPN i = {s = i.s ; gn = GSg Neut} ; + IntPN i = {s = i.s ; gn = GSg Neut} ; + FloatPN i = {s = i.s ; gn = GSg Neut} ; + NumPN i = {s = i.s ! CFNeut Indef ; gn = GSg Neut} ; CNIntNP cn i = { s = \\c => cn.s ! NF Sg Indef ++ i.s ; gn = gennum cn.g Sg ;