diff --git a/lib/src/punjabi/ExtraPnb.gf b/lib/src/punjabi/ExtraPnb.gf index 70ec3b85a..79c07becb 100644 --- a/lib/src/punjabi/ExtraPnb.gf +++ b/lib/src/punjabi/ExtraPnb.gf @@ -7,9 +7,9 @@ concrete ExtraPnb of ExtraPnbAbs = CatPnb ** GenNP np = {s = \\_,_,_ => np.s ! NPC Obl ++ "كا" ; a = np.a} ; each_Det = mkDet "ہر كوی" "ہر كوی" "ہر كوی" "ہر كوی" Sg ; - have_V = mkV "راكh-نا"; - -- IAdvAdv adv = {s = "كتنی" ++ adv.s} ; - -- ICompAP ap = {s = "كتنے" ++ ap.s ! Sg ! Masc ! Dir ! Posit} ; + have_V = mkV "راكھنا"; + IAdvAdv adv = {s = "كتنی" ++ adv.s!Masc} ; + ICompAP ap = {s = "كتنے" ++ ap.s ! Sg ! Masc ! Dir} ; cost_V = mkV "قیمت" ; -- added for causitives diff --git a/lib/src/punjabi/NumeralPnb.gf b/lib/src/punjabi/NumeralPnb.gf index d404b8b8d..da1b0f04b 100644 --- a/lib/src/punjabi/NumeralPnb.gf +++ b/lib/src/punjabi/NumeralPnb.gf @@ -28,7 +28,7 @@ lin num x0 = } ; oper mkOrd : Str -> Str = \s -> case s of { - "عك" => "پیلا"; + "اك" => "پیلا"; "دو" => "دوجا"; "تن" => "دوجا"; "چار" => "چوتھا"; @@ -64,7 +64,7 @@ oper mkR : Str -> Str -> Str -> Str -> Str -> Str -> Str -> Str -> Str -> DSize } ; oper rows : DSize => DSize => Str = table { - sg => mkR "گیار" "iكك" "iكت" "عكتا" "iكو" "iكا" "iكہ" "iك" "iكی" ; + sg => mkR "گیار" "اكك" "اكت" "اكتا" "اكو" "اكا" "اكہ" "اك" "اكی" ; r2 => mkR "بار" "با" "بت" "بای" "بی" "بو" "بہ" "بی" "ب" ; r3 => mkR "تیر" "تی" "تیت" "تنت" "ترت" "ترو" "تیہ" "تیر" "تر" ; r4 => mkR "چود" "چوب" "چوت" "چوا" "چوت" "چور" "چوہ" "چور" "چور" ; @@ -80,9 +80,9 @@ oper rows : DSize => DSize => Str = table { oper ss : Str -> {s : Str} = \s -> {s = s} ; -lin pot01 = {s = table {unit => "اك" ; _ => "دuممی" } ; size = sg ; n = Sg} ; +lin pot01 = {s = table {unit => "اك" ; _ => "دمی" } ; size = sg ; n = Sg} ; lin pot0 d = d ; -lin pot110 = {s = "داس" ; size = less100 ; n = Pl} ; +lin pot110 = {s = "دس" ; size = less100 ; n = Pl} ; lin pot111 = {s = rows ! sg ! sg ; size = less100 ; n = Pl} ; lin pot1to19 d = {s = rows ! d.size ! sg ; size = less100 ; n = d.n} ; lin pot0as1 n = {s = n.s ! unit ; size = table {sg => singl ; _ => less100} ! n.size ; n = n.n } ; @@ -90,7 +90,7 @@ lin pot0as1 n = {s = n.s ! unit ; size = table {sg => singl ; _ => less100} ! n. lin pot1 d = {s = d.s ! ten ; size = less100 ; n = d.n} ; lin pot1plus d e = {s = rows ! e.size ! d.size ; size = less100 ; n = d.n} ; -lin pot1as2 n = {s = n.s ; s2 = "دuممی" ; size = n.size ; n = n.n} ; +lin pot1as2 n = {s = n.s ; s2 = "دمی" ; size = n.size ; n = n.n} ; lin pot2 d = {s = (mksau (d.s ! unit) d.size) ; s2 = d.s ! unit ++ "لكھ" ; size = more100 ; n = d.n} ; lin pot2plus d e = @@ -122,5 +122,5 @@ lin IIDig d dg = { s = \\df => Prelude.glue (dg.s ! df) d.s ; n = Pl }; oper ekhazar : Str = variants {"ہزار" ; "اك" ++ "ہزار"} ; oper mkhazar : Str -> Size -> Str = \s -> \sz -> table {singl => ekhazar ; _ => s ++ "ہزار"} ! sz ; -oper mksau : Str -> DSize -> Str = \s -> \sz -> table {sg => "سو" ; _ => s ++ "سو"} ! sz ; +oper mksau : Str -> DSize -> Str = \s -> \sz -> table {sg => "اك" ++ "سو" ; _ => s ++ "سو"} ! sz ; } diff --git a/lib/src/punjabi/StructuralPnb.gf b/lib/src/punjabi/StructuralPnb.gf index 5db29bd90..3c0d3347b 100644 --- a/lib/src/punjabi/StructuralPnb.gf +++ b/lib/src/punjabi/StructuralPnb.gf @@ -78,7 +78,7 @@ concrete StructuralPnb of Structural = CatPnb ** somePl_Det = mkDet "كچھ" "كچھ" "كچھ" "كچھ" Pl ; something_NP = MassNP (UseN (MorphoPnb.mkN11 "كوی شے")); somewhere_Adv = mkAdv "كتلے" ; - that_Quant = demoPN "او" "اس" "ان" ; + that_Quant = demoPN "وہ" "اس" "ان" ; that_Subj = ss "كہ"; there_Adv = mkAdv "اوتھے" ; there7to_Adv = mkAdv "اوتھے" ; diff --git a/lib/src/punjabi/SymbolPnb.gf b/lib/src/punjabi/SymbolPnb.gf index 92c77e7df..4727dfe39 100644 --- a/lib/src/punjabi/SymbolPnb.gf +++ b/lib/src/punjabi/SymbolPnb.gf @@ -12,7 +12,7 @@ concrete SymbolPnb of Symbol = CatPnb ** open Prelude, ResPnb in { NumPN i = {s = \\_ =>i.s ; g = Masc} ; CNIntNP cn i = { s = \\c => cn.s ! Sg ! Dir ++ i.s ; - a = agrP3 cn.g Sg; + a = agrP3 cn.g Sg ; isPron = False } ; CNSymbNP det cn xs = { diff --git a/lib/src/punjabi/src/ExtraPnb.gf b/lib/src/punjabi/src/ExtraPnb.gf index ebacd246f..5e1ca33d2 100644 --- a/lib/src/punjabi/src/ExtraPnb.gf +++ b/lib/src/punjabi/src/ExtraPnb.gf @@ -7,9 +7,9 @@ concrete ExtraPnb of ExtraPnbAbs = CatPnb ** GenNP np = {s = \\_,_,_ => np.s ! NPC Obl ++ "ka" ; a = np.a} ; each_Det = mkDet "hr kwy" "hr kwy" "hr kwy" "hr kwy" Sg ; - have_V = mkV "rakh-na"; - IAdvAdv adv = {s = "ktny" ++ adv.s} ; - ICompAP ap = {s = "ktnE" ++ ap.s ! Sg ! Masc ! Dir ! Posit} ; + have_V = mkV "rakh'na"; + IAdvAdv adv = {s = "ktny" ++ adv.s!Masc} ; + ICompAP ap = {s = "ktnE" ++ ap.s ! Sg ! Masc ! Dir} ; cost_V = mkV "qymt" ; -- added for causitives diff --git a/lib/src/punjabi/src/NumeralPnb.gf b/lib/src/punjabi/src/NumeralPnb.gf index e899216d3..a1889c003 100644 --- a/lib/src/punjabi/src/NumeralPnb.gf +++ b/lib/src/punjabi/src/NumeralPnb.gf @@ -28,7 +28,7 @@ lin num x0 = } ; oper mkOrd : Str -> Str = \s -> case s of { - "ek" => "pyla"; + "ak" => "pyla"; "dw" => "dwja"; "tn" => "dwja"; "car" => "cwth'a"; @@ -64,7 +64,7 @@ oper mkR : Str -> Str -> Str -> Str -> Str -> Str -> Str -> Str -> Str -> DSize } ; oper rows : DSize => DSize => Str = table { - sg => mkR "gyar" "ikk" "ikt" "ekta" "ikw" "ika" "ikh" "ik" "iky" ; + sg => mkR "gyar" "akk" "akt" "akta" "akw" "aka" "akh" "ak" "aky" ; r2 => mkR "bar" "ba" "bt" "bay" "by" "bw" "bh" "by" "b" ; r3 => mkR "tyr" "ty" "tyt" "tnt" "trt" "trw" "tyh" "tyr" "tr" ; r4 => mkR "cwd" "cwb" "cwt" "cwa" "cwt" "cwr" "cwh" "cwr" "cwr" ; @@ -80,9 +80,9 @@ oper rows : DSize => DSize => Str = table { oper ss : Str -> {s : Str} = \s -> {s = s} ; -lin pot01 = {s = table {unit => "ak" ; _ => "dummy" } ; size = sg ; n = Sg} ; +lin pot01 = {s = table {unit => "ak" ; _ => "dmy" } ; size = sg ; n = Sg} ; lin pot0 d = d ; -lin pot110 = {s = "das" ; size = less100 ; n = Pl} ; +lin pot110 = {s = "ds" ; size = less100 ; n = Pl} ; lin pot111 = {s = rows ! sg ! sg ; size = less100 ; n = Pl} ; lin pot1to19 d = {s = rows ! d.size ! sg ; size = less100 ; n = d.n} ; lin pot0as1 n = {s = n.s ! unit ; size = table {sg => singl ; _ => less100} ! n.size ; n = n.n } ; @@ -90,7 +90,7 @@ lin pot0as1 n = {s = n.s ! unit ; size = table {sg => singl ; _ => less100} ! n. lin pot1 d = {s = d.s ! ten ; size = less100 ; n = d.n} ; lin pot1plus d e = {s = rows ! e.size ! d.size ; size = less100 ; n = d.n} ; -lin pot1as2 n = {s = n.s ; s2 = "dummy" ; size = n.size ; n = n.n} ; +lin pot1as2 n = {s = n.s ; s2 = "dmy" ; size = n.size ; n = n.n} ; lin pot2 d = {s = (mksau (d.s ! unit) d.size) ; s2 = d.s ! unit ++ "lkh'" ; size = more100 ; n = d.n} ; lin pot2plus d e = @@ -122,5 +122,5 @@ lin IIDig d dg = { s = \\df => Prelude.glue (dg.s ! df) d.s ; n = Pl }; oper ekhazar : Str = variants {"hzar" ; "ak" ++ "hzar"} ; oper mkhazar : Str -> Size -> Str = \s -> \sz -> table {singl => ekhazar ; _ => s ++ "hzar"} ! sz ; -oper mksau : Str -> DSize -> Str = \s -> \sz -> table {sg => "sw" ; _ => s ++ "sw"} ! sz ; +oper mksau : Str -> DSize -> Str = \s -> \sz -> table {sg => "ak" ++ "sw" ; _ => s ++ "sw"} ! sz ; } diff --git a/lib/src/punjabi/src/SymbolPnb.gf b/lib/src/punjabi/src/SymbolPnb.gf index 9f59f407d..d922d4663 100644 --- a/lib/src/punjabi/src/SymbolPnb.gf +++ b/lib/src/punjabi/src/SymbolPnb.gf @@ -12,15 +12,18 @@ concrete SymbolPnb of Symbol = CatPnb ** open Prelude, ResPnb in { NumPN i = {s = \\_ =>i.s ; g = Masc} ; CNIntNP cn i = { s = \\c => cn.s ! Sg ! Dir ++ i.s ; - a = agrP3 cn.g Sg + a = agrP3 cn.g Sg ; + isPron = False } ; CNSymbNP det cn xs = { s = \\c => det.s!Sg!Masc ++ cn.s ! det.n ! Dir ++ xs.s ; - a = agrP3 cn.g det.n + a = agrP3 cn.g det.n; + isPron = False } ; CNNumNP cn i = { s = \\c => cn.s ! Sg ! Dir ++ i.s ; - a = agrP3 cn.g Sg + a = agrP3 cn.g Sg; + isPron = False } ; SymbS sy = sy ; diff --git a/lib/src/urdu/ExtraHindustani.gf b/lib/src/urdu/ExtraHindustani.gf index f5cd2740f..33e2d3054 100644 --- a/lib/src/urdu/ExtraHindustani.gf +++ b/lib/src/urdu/ExtraHindustani.gf @@ -3,7 +3,14 @@ incomplete concrete ExtraHindustani of ExtraHindustaniAbs = CatHindustani ** open CommonHindustani,Coordination,ResHindustani, ParamX in { lin - GenNP np = {s = \\_,_,_ => np.s ! NPC Obl ++ "كا" ; a = np.a} ; +-- GenNP np = {s = \\_,_,_ => np.s ! NPC Obl ++ "كا" ; a = np.a} ; + GenNP np = {s = table { + case of { + => np.s ! NPC Obl ++ "كا" ; + => np.s ! NPC Obl ++ "كی" + }; + }; + a = np.a} ; each_Det = mkDet "ہر كوی" "ہر كوی" "ہر كوی" "ہر كوی" Sg ; have_V = mkV "راكھنا";