From cd73fe958e96fc7c751de9185d31362f471d740b Mon Sep 17 00:00:00 2001 From: Inari Listenmaa Date: Mon, 30 Mar 2020 15:18:58 +0200 Subject: [PATCH] (Hun) Add pronouns --- src/hungarian/NounHun.gf | 4 +- src/hungarian/StructuralHun.gf | 76 ++++++++++++++++++++++++++++++---- 2 files changed, 70 insertions(+), 10 deletions(-) diff --git a/src/hungarian/NounHun.gf b/src/hungarian/NounHun.gf index 54d10cbff..5c26f6722 100644 --- a/src/hungarian/NounHun.gf +++ b/src/hungarian/NounHun.gf @@ -12,13 +12,13 @@ concrete NounHun of Noun = CatHun ** open ResHun, Prelude in { agr = ; } ; -{- -- : PN -> NP ; - UsePN pn = pn ** {} ; + UsePN pn = pn ; -- : Pron -> NP ; UsePron pron = pron ; + {- -- : Predet -> NP -> NP ; -- only the man PredetNP predet np = np ** {s = } ; diff --git a/src/hungarian/StructuralHun.gf b/src/hungarian/StructuralHun.gf index 0c73f8cb9..e45831b5d 100644 --- a/src/hungarian/StructuralHun.gf +++ b/src/hungarian/StructuralHun.gf @@ -118,14 +118,74 @@ lin under_Prep = mkPrep "alatt" ; -- Pronouns are closed class, no constructor in ParadigmsHun. -- it_Pron = - -- i_Pron = - -- youPol_Pron, - -- youSg_Pron = - -- he_Pron = - -- she_Pron = - -- we_Pron = - -- youPl_Pron = - -- they_Pron = + i_Pron = emptyNP ** { + s = caseTable "én" "engem" "nekem" + "belém" "bennem" "belőlem" -- inner locatives + "hozzám" "nálam" "tőlem" -- outer locatives + "rám" "rajtam" "rólam" -- outer locatives + "értem" -- Causative + "velem" -- Instrumental + nonExist ; -- Translative + agr = ; + isPron = True ; + } ; + youPol_Pron, + youSg_Pron = emptyNP ** { + s = caseTable "te" "teged" "neked" + "beléd" "benned" "belőled" + "hozzád" "nálad" "tőled" + "rád" "rajtad" "rólad" + "érted" -- Causative + "veled" -- Instrumental + nonExist ; -- Translative + agr = ; + isPron = True ; + } ; + he_Pron, + she_Pron = emptyNP ** { + s = caseTable "ő" "őt" "neki" + "belé" "benne" "belőle" + "hozzá" "nála" "tőle" + "rá" "rajta" "róla" + "érte" -- Causative + "vele" -- Instrumental + nonExist ; -- Translative + isPron = True ; + } ; + we_Pron = emptyNP ** { + s = caseTable "mi" "minket" "nekünk" + "belénk" "bennünk" "belőlünk" + "hozzánk" "nálunk" "tőlünk" + "ránk" "rajtunk" "rólunk" + "értünk" -- Causative + "velünk" -- Instrumental + nonExist ; -- Translative + agr = ; + isPron = True ; + } ; + + youPl_Pron = emptyNP ** { + s = caseTable "ti" "titeket" "nektek" + "belétek" "bennetek" "belőletek" + "hozzátok" "nálatok" "tőletek" + "rátok" "rajtatok" "rólatok" + "értetek" -- Causative + "veletek" -- Instrumental + nonExist ; -- Translative + agr = ; + isPron = True ; + } ; + they_Pron = emptyNP ** { + s = caseTable "ők" "őket" "nekik" + "beléjük" "bennük" "belőlük" + "hozzájuk" "náluk" "tőlük" + "rájuk" "rajtuk" "róluk" + "értük" -- Causative + "velük" -- Instrumental + nonExist ; -- Translative + agr = ; + isPron = True ; + } ; --lin whatPl_IP = ; --lin whatSg_IP = :