diff --git a/src/malay/PhraseMay.gf b/src/malay/PhraseMay.gf index 0b51c308..cb594393 100644 --- a/src/malay/PhraseMay.gf +++ b/src/malay/PhraseMay.gf @@ -7,12 +7,12 @@ concrete PhraseMay of Phrase = CatMay ** open Prelude, ResMay in { UttQS qs = qs ; UttIAdv iadv = iadv ; UttNP np = {s = np.s ! Bare} ; + UttIP ip = {s = ip.sp ! NF Sg Bare} ; {- UttImpSg pol imp = UttImpPl pol imp = UttImpPol = UttImpSg ; - UttIP ip = {s = ip.s ! } ; UttVP vp = {s = } ; UttAdv adv = {s = } ; UttCN n = {s = } ; diff --git a/src/malay/QuestionMay.gf b/src/malay/QuestionMay.gf index 48757061..8c1d6f6e 100644 --- a/src/malay/QuestionMay.gf +++ b/src/malay/QuestionMay.gf @@ -8,7 +8,9 @@ concrete QuestionMay of Question = CatMay ** open -- determiners, with or without a noun. lin -- : IDet -> CN -> IP ; -- which five songs - IdetCN idet cn = NM.DetCN idet cn ** {sp = idet.sp} ; + IdetCN idet cn = NM.DetCN idet cn ** { + sp = \\nf => idet.sp ! nf ++ cn.s ! nf + } ; -- : IDet -> IP ; -- which five IdetIP idet = NM.DetNP idet ** {sp = idet.sp}; diff --git a/src/malay/ResMay.gf b/src/malay/ResMay.gf index 99629be9..9923b3a8 100644 --- a/src/malay/ResMay.gf +++ b/src/malay/ResMay.gf @@ -115,11 +115,12 @@ oper n = NoNum num ; } ; - mkIdet : Str -> Number -> Bool -> Determiner = \str, num, isPre -> mkDet str num ** { + mkIdet : Str -> Str -> Number -> Bool -> Determiner = \str, standalone, num, isPre -> mkDet str num ** { pr = case isPre of {True => str ; False => [] } ; -- if isPre is True, then: "berapa kucing" s = case isPre of { False => str ; True => [] }; + sp = \\_ => standalone ; } ; -------------------------------------------------------------------------------- diff --git a/src/malay/StructuralMay.gf b/src/malay/StructuralMay.gf index 23013531..5b05f2ca 100644 --- a/src/malay/StructuralMay.gf +++ b/src/malay/StructuralMay.gf @@ -53,7 +53,7 @@ lin and_Conj = {s2 = "dan" ; s1 = [] ; n = Pl} ; -- *Det and Quant -lin how8many_IDet = mkIdet "berapa banyak" Pl True; +lin how8many_IDet = mkIdet "berapa" "berapa banyak" Sg True; {-} lin all_Predet = {s = ""} ; lin not_Predet = { s = "" } ;