From 0e4cedd144dcf89ba74c4e8002700f24cf500e41 Mon Sep 17 00:00:00 2001 From: Inari Listenmaa Date: Mon, 30 Sep 2019 15:39:53 +0200 Subject: [PATCH] (Som) Add V2S --- src/somali/LexiconSom.gf | 2 +- src/somali/ParadigmsSom.gf | 16 ++++++++++++++-- src/somali/VerbSom.gf | 10 +++++++--- 3 files changed, 22 insertions(+), 6 deletions(-) diff --git a/src/somali/LexiconSom.gf b/src/somali/LexiconSom.gf index 585b1fcc..107f07f7 100644 --- a/src/somali/LexiconSom.gf +++ b/src/somali/LexiconSom.gf @@ -9,7 +9,7 @@ lin add_V3 = mkV3 "dar" ku NoPrep ; -- lin alas_Interj = mkInterj "" ; -- lin already_Adv = mkA "" ; lin animal_N = mkN "xayawaan" ; --- lin answer_V2S = mkV2 "" ; +lin answer_V2S = mkV2S "jawaab" ku ; -- lin apartment_N = mkN "" ; -- lin apple_N = mkN "" ; -- lin art_N = mkN "" ; diff --git a/src/somali/ParadigmsSom.gf b/src/somali/ParadigmsSom.gf index 07570960..76bfe1c3 100644 --- a/src/somali/ParadigmsSom.gf +++ b/src/somali/ParadigmsSom.gf @@ -95,6 +95,11 @@ oper mkVV : V -> VVForm -> VV ; -- VV out of an existing V } ; + mkV2S : overload { + mkV2S : Str -> V2S ; -- Predictable verb, no preposition. + mkV2S : Str -> Preposition -> V2S ; -- Predictable verb, preposition given as second argument. + mkV2S : V -> Preposition -> V2S -- Unpredictable verb, preposition. + } ; mkVA : Str -> VA = \s -> lin VA (regV s) ; @@ -107,8 +112,6 @@ oper = \s -> lin V2A (regV s ** {c2 = noPrep}) ; mkV2V : Str -> V2V = \s -> lin V2V (regV s ** {c2 = noPrep}) ; - mkV2S : Str -> V2S - = \s -> lin V2S (regV s ** {c2 = noPrep}) ; mkV2Q : Str -> V2Q = \s -> lin V2Q (regV s ** {c2 = noPrep}) ; @@ -248,6 +251,15 @@ oper in lin VV (dummyV ** {vvtype=b ; s = \\_ => "in"}) } ; + mkV2S = overload { + mkV2S : Str -> V2S -- Predictable verb, no preposition. + = \s -> lin V2S (regV s ** {c2 = noPrep}) ; + mkV2S : Str -> Preposition -> V2S -- Predictable verb, preposition given as second argument. + = \s,pr -> lin V2S (regV s ** {c2 = pr}) ; + mkV2S : V -> Preposition -> V2S -- Unpredictable verb, preposition. + = \v,pr -> lin V2S (v ** {c2 = pr}) + } ; + possPrep : N -> CatSom.Prep = \dhex -> emptyPrep ** { hoostiisa = \\agr => let qnt = PossPron (pronTable ! agr) ; diff --git a/src/somali/VerbSom.gf b/src/somali/VerbSom.gf index ed094011..4df5e0ca 100644 --- a/src/somali/VerbSom.gf +++ b/src/somali/VerbSom.gf @@ -66,13 +66,17 @@ lin -- : V3 -> NP -> VPSlash ; -- give (it) to her Slash2V3, Slash3V3 = \v3 -> insertComp (useVc3 v3) ; + + -- : V2S -> S -> VPSlash ; -- answer (to him) that it is good + SlashV2S v2s s = + let vps = useVc v2s ; + subord = SubjS {s="in"} s ; + in vps ** {obj = {s = subord.berri ; a = P3_Prep}} ; + {- -- : V2V -> VP -> VPSlash ; -- beg (her) to go SlashV2V v2v vp = ; - -- : V2S -> S -> VPSlash ; -- answer (to him) that it is good - SlashV2S v2s s = ; - -- : V2Q -> QS -> VPSlash ; -- ask (him) who came SlashV2Q v2q qs = ; -}