From a7fede8ee4f759ff77d2b89b5c9a7990812de72d Mon Sep 17 00:00:00 2001 From: "virk.shafqat" Date: Mon, 27 Jun 2011 14:55:51 +0000 Subject: [PATCH] refinementsNep-11-06-27 --- lib/src/nepali/AdverbNep.gf | 4 ++-- lib/src/nepali/LexiconNep.gf | 2 +- lib/src/nepali/MorphoNep.gf | 4 +++- lib/src/nepali/NounNep.gf | 9 ++++++--- lib/src/nepali/NumeralNep.gf | 4 +++- lib/src/nepali/PhraseNep.gf | 12 +++++++++--- lib/src/nepali/RelativeNep.gf | 2 +- lib/src/nepali/ResNep.gf | 3 +-- lib/src/nepali/SentenceNep.gf | 2 ++ lib/src/nepali/StructuralNep.gf | 13 +++++++------ lib/src/nepali/SymbolNep.gf | 28 ++++++++++++++++++---------- lib/src/nepali/src/AdverbNep.gf | 4 ++-- lib/src/nepali/src/LexiconNep.gf | 2 +- lib/src/nepali/src/MorphoNep.gf | 4 +++- lib/src/nepali/src/NumeralNep.gf | 4 +++- lib/src/nepali/src/PhraseNep.gf | 12 +++++++++--- lib/src/nepali/src/RelativeNep.gf | 2 +- lib/src/nepali/src/ResNep.gf | 3 +-- lib/src/nepali/src/StructuralNep.gf | 13 +++++++------ lib/src/nepali/src/SymbolNep.gf | 28 ++++++++++++++++++---------- lib/src/nepali/translit.gfs | 29 +++++++++++++++-------------- 21 files changed, 113 insertions(+), 71 deletions(-) diff --git a/lib/src/nepali/AdverbNep.gf b/lib/src/nepali/AdverbNep.gf index 0caf5ab4e..553e4a219 100644 --- a/lib/src/nepali/AdverbNep.gf +++ b/lib/src/nepali/AdverbNep.gf @@ -3,7 +3,7 @@ concrete AdverbNep of Adverb = CatNep ** open ResNep, Prelude, Predef in { flags coding = utf8; lin - PositAdvAdj a = {s = a.s ! Sg ! Masc ++ "रि" } ; + PositAdvAdj a = {s = a.s ! Sg ! Masc ++ "गरी" } ; ComparAdvAdj cadv a np = { s = np.s ! NPObj ++ cadv.p ++ cadv.s ++ a.s ! Sg ! Masc ; @@ -19,6 +19,6 @@ concrete AdverbNep of Adverb = CatNep ** open ResNep, Prelude, Predef in { SubjS sub snt = {s = sub.s ++ snt.s } ; - AdnCAdv cadv = {s = cadv.s} ; + AdnCAdv cadv = {s = cadv.p ++ cadv.s } ; } diff --git a/lib/src/nepali/LexiconNep.gf b/lib/src/nepali/LexiconNep.gf index b0438107a..a3313eeb0 100644 --- a/lib/src/nepali/LexiconNep.gf +++ b/lib/src/nepali/LexiconNep.gf @@ -304,7 +304,7 @@ concrete LexiconNep of Lexicon = CatNep ** salt_N = mkNUC "नुन" masculine ; -- नुन sand_N = mkNUC "बालुवा" masculine ; -- बालुवा seed_N = regN "बिउ" ; -- बिउ - see_V2 = mkV2 (mkV "हेरर्नु" ) lai ; -- हेरर्नु + see_V2 = mkV2 (mkV "हेर्नु" ) lai ; -- हेर्नु skin_N = regN "छाला" ; -- छाला sky_N = regN "आकाश" ; -- आकाश smoke_N = mkNUC "धुवाँ" masculine ; -- धुवाँ diff --git a/lib/src/nepali/MorphoNep.gf b/lib/src/nepali/MorphoNep.gf index 71e1f7d3f..7de6c9c6c 100644 --- a/lib/src/nepali/MorphoNep.gf +++ b/lib/src/nepali/MorphoNep.gf @@ -229,6 +229,7 @@ resource MorphoNep = ResNep ** open Prelude,Predef in { "जा" => root + "न्" ; "हु" => root + "न्" ; rot + "्" => root ; + rot + ("ह") => root + "न्" ; --cmnt rot + ("ा"|"ि"|"ी") => root + "न्" ; rot + ("े"|"ु"|"ू") => root + "न्" ; rot + ("उ"|"ऊ") => root + "ँ" ; @@ -239,13 +240,14 @@ resource MorphoNep = ResNep ** open Prelude,Predef in { "हु" => "भ" ; rot + "्" => rot ; rot + ("ा"|"ि"|"ी") => root ; + rot + ("ह") => root + "न्" ; --cmnt rot + ("े"|"ु"|"ू") => rot + "ो" ; rot + ("उ"|"ऊ") => rot ; _ => root } ; vcase = case root of { rot + "्" => VReg; - rot + "ह" => VReg; + --rot + "ह" => VReg; _ => VIReg } } ; diff --git a/lib/src/nepali/NounNep.gf b/lib/src/nepali/NounNep.gf index d132cec81..ccfd710fc 100644 --- a/lib/src/nepali/NounNep.gf +++ b/lib/src/nepali/NounNep.gf @@ -1,6 +1,7 @@ concrete NounNep of Noun = CatNep ** open ResNep, Prelude in { flags optimize = all_subs ; + flags coding=utf8 ; lin @@ -47,7 +48,7 @@ concrete NounNep of Noun = CatNep ** open ResNep, Prelude in { } ; DetNP det = { - s = \\c => det2NP det c ; ---- case + s = \\c => det2NP det c ; -- case a = agrP3 Masc Sg ; t = NonLiving } ; @@ -154,8 +155,10 @@ concrete NounNep of Noun = CatNep ** open ResNep, Prelude in { } ; AdvCN cn ad = {s = \\n,c => cn.s ! n ! c ++ ad.s ; g = cn.g ; t = cn.t ; h = cn.h} ; - - SentCN cn sc = {s = \\n,c => cn.s ! n ! c ++ sc.s ; g = cn.g ; t = cn.t ; h = cn.h} ; + --Prelude.glue + SentCN cn sc = {s = \\n,c => sc.s ++ "लाइ" ++ cn.s ! n ! c ; g = cn.g ; t = cn.t ; h = cn.h} ; + -- Changed to fix 'reason to sleep' Bug + -- SentCN cn sc = {s = \\n,c => cn.s ! n ! c ++ sc.s ; g = cn.g ; t = cn.t ; h = cn.h} ; ApposCN cn np = {s = \\n,c => cn.s ! n ! Nom ++ np.s ! NPC c ; g = cn.g ; t = cn.t ; h = cn.h} ; diff --git a/lib/src/nepali/NumeralNep.gf b/lib/src/nepali/NumeralNep.gf index ccac93545..d42397266 100644 --- a/lib/src/nepali/NumeralNep.gf +++ b/lib/src/nepali/NumeralNep.gf @@ -109,8 +109,10 @@ lin D_6 = { s = "६" ; n = Pl}; lin D_7 = { s = "७" ; n = Pl}; lin D_8 = { s = "८" ; n = Pl}; lin D_9 = { s = "९" ; n = Pl}; + lin IDig d = { s = \\_ => d.s ; n = d.n} ; -lin IIDig d dg = { s = \\df => Prelude.glue (dg.s ! df) d.s ; n = Pl }; + +lin IIDig d dg = { s = \\df => Prelude.glue d.s (dg.s ! df) ; n = Pl }; oper ekhazar : Str = variants {"एक" ++ "हजार" ; "हजार"} ; oper mkhazar : Str -> Size -> Str = \s -> \sz -> table {singl => ekhazar ; _ => s ++ "हजार"} ! sz ; diff --git a/lib/src/nepali/PhraseNep.gf b/lib/src/nepali/PhraseNep.gf index 77d95f2ef..1e88199fd 100644 --- a/lib/src/nepali/PhraseNep.gf +++ b/lib/src/nepali/PhraseNep.gf @@ -1,4 +1,6 @@ concrete PhraseNep of Phrase = CatNep ** open Prelude, ResNep in { + + flags coding = utf8 ; lin PhrUtt pconj utt voc = {s = pconj.s ++ utt.s ++ voc.s} ; @@ -7,11 +9,15 @@ concrete PhraseNep of Phrase = CatNep ** open Prelude, ResNep in { UttQS qs = {s = qs.s ! QDir} ; -- be a man -> (मन्छे हउ) - UttImpSg pol imp = {s = pol.s ++ imp.s ! contrNeg True pol.p ! ImpF Sg False ++ "हउ"} ; + -- issue in mkPhr-Imp-Phr + -- mkPhr-PConj-Utt-Voc-Phr + -- Need to diff between singularImpForm-ImpForm + -- pluralImpForm-ImpForm and above cases + UttImpSg pol imp = {s = pol.s ++ imp.s ! contrNeg True pol.p ! ImpF Sg False ++ "होउ"} ; - UttImpPl pol imp = {s = pol.s ++ imp.s ! contrNeg True pol.p ! ImpF Pl False ++ "हआ"} ; + UttImpPl pol imp = {s = pol.s ++ imp.s ! contrNeg True pol.p ! ImpF Pl False ++ "हऔ"} ; - UttImpPol pol imp = {s = pol.s ++ imp.s ! contrNeg True pol.p ! ImpF Sg True ++ "हउ"} ; + UttImpPol pol imp = {s = pol.s ++ imp.s ! contrNeg True pol.p ! ImpF Sg True ++ "होउ"} ; UttIP ip = {s = ip.s ! Nom} ; --- Acc also UttIAdv iadv = iadv ; diff --git a/lib/src/nepali/RelativeNep.gf b/lib/src/nepali/RelativeNep.gf index 54dfcf194..ca35f47d7 100644 --- a/lib/src/nepali/RelativeNep.gf +++ b/lib/src/nepali/RelativeNep.gf @@ -6,7 +6,7 @@ concrete RelativeNep of Relative = CatNep ** open ResNep in { lin RelCl cl = { - s = \\t,p,o,agr => "जस्तिकी" ++ cl.s ! t ! p ! o ; + s = \\t,p,o,agr => "जस्तोकी" ++ cl.s ! t ! p ! o ; c = Nom } ; diff --git a/lib/src/nepali/ResNep.gf b/lib/src/nepali/ResNep.gf index e3ee9eef8..15168cbd8 100644 --- a/lib/src/nepali/ResNep.gf +++ b/lib/src/nepali/ResNep.gf @@ -1,7 +1,7 @@ --# -path=.:../abstract:../common:../../prelude -- --1 Nep auxiliary operations. --- by Dinesh SImkhada and Shafqat Virk - 2011 +-- by Dinesh Simkhada and Shafqat Virk - 2011 -- -- This module contains operations that are needed to make the -- resource syntax work. @@ -204,7 +204,6 @@ resource ResNep = ParamX ** open Prelude, Predef in { param - VPHTense = VPGenPres -- impf hum nahim "ी गो" diff --git a/lib/src/nepali/SentenceNep.gf b/lib/src/nepali/SentenceNep.gf index ccc12f794..56f561deb 100644 --- a/lib/src/nepali/SentenceNep.gf +++ b/lib/src/nepali/SentenceNep.gf @@ -13,7 +13,9 @@ concrete SentenceNep of Sentence = CatNep ** open Prelude, ResNep in { s = \\pol,n => let agr = Ag Masc (numImp n) Pers2_M ; + --verb = vp.obj.s ++ (vp.s ! PVForm).inf ++ vp.comp ! agr ; verb = vp.obj.s ++ (vp.s ! Root).inf ++ vp.comp ! agr ; + --verb = vp.obj.s ++ vp.comp ! agr ++ (vp.s ! Root).inf ; dont = case pol of { CNeg True => "नगर" ; CNeg False => "नगर" ; diff --git a/lib/src/nepali/StructuralNep.gf b/lib/src/nepali/StructuralNep.gf index b05316231..896cf9bff 100644 --- a/lib/src/nepali/StructuralNep.gf +++ b/lib/src/nepali/StructuralNep.gf @@ -1,8 +1,9 @@ concrete StructuralNep of Structural = CatNep ** open MorphoNep, ParadigmsNep, Prelude, NounNep in { - flags optimize=all ; - coding = utf8; + flags + optimize = all ; + coding = utf8; lin @@ -24,7 +25,7 @@ concrete StructuralNep of Structural = CatNep ** by8means_Prep = mkPrep "ले" ; can8know_VV,can_VV = mkV "सक्नु" ** { isAux = True} ; during_Prep = mkPrep "पर्यान्त" ; -- पर्यान्त - either7or_DConj = sd2 "अथवा" "या" ** {n = Sg} ; -- अथवा , या + either7or_DConj = sd2 "की" "अथवा" ** {n = Sg} ; -- की, अथवा everybody_NP = MassNP (UseN (regN "सवौ जाना" Living)) ; -- not a good way coz need to include Noun (सवौ जाना) every_Det = mkDet "सबै" "हरेक" Sg ; -- सबै, हरेक everything_NP = MassNP (UseN (regN "हारेक कुरा" NonLiving)) ; -- हारेक कुरा @@ -53,7 +54,7 @@ concrete StructuralNep of Structural = CatNep ** if_Subj = ss "यदि" ; -- यदि in8front_Prep = mkPrep "सामु" ; -- सामु in_Prep = mkPrep "मा" ; -- मा - less_CAdv = {s = "कम" ; p = "भन्दा"} ; -- ?? NOT CLEAR + less_CAdv = {s = "कम" ; p = "भन्दा"} ; -- भन्दा कम many_Det = mkDet "धेरै" "थुप्रै" Pl ; -- धेरै, थुप्रै more_CAdv = {s = "बढी" ; p = "भन्दा" } ; most_Predet = ss "ज्यादै" ; -- ज्यादै @@ -95,10 +96,10 @@ concrete StructuralNep of Structural = CatNep ** there7to_Adv = mkAdv "त्यहाँ सम्म" ; -- त्यहाँ सम्म there7from_Adv = mkAdv "त्यहाँ बाट" ; -- त्यहाँ बाट therefore_PConj = ss "अतः" ; -- अतः - this_Quant = mkQuant "यो" "यि" ; + this_Quant = mkQuant "यो" "यी" ; -- यो, यी through_Prep = mkPrep "मार्फत" ; -- मार्फत too_AdA = mkAdA "पनि" ; -- पनि - to_Prep = ss "सम्म" ; -- + to_Prep = ss "सम्म" ; -- सम्म under_Prep = mkPrep "अन्तर्गत" ; -- अन्तर्गत very_AdA = mkAdA "धेरै" ; -- धेरै want_VV = mkV "चाहनु" ** { isAux = False} ; diff --git a/lib/src/nepali/SymbolNep.gf b/lib/src/nepali/SymbolNep.gf index 5caf47dd9..759e58498 100644 --- a/lib/src/nepali/SymbolNep.gf +++ b/lib/src/nepali/SymbolNep.gf @@ -5,21 +5,30 @@ concrete SymbolNep of Symbol = CatNep ** open Prelude, ResNep in { flags coding = utf8; lin - SymbPN i = {s = addGenitiveS i.s ; g = Masc} ; - IntPN i = {s = addGenitiveS i.s ; g = Masc} ; - FloatPN i = {s = addGenitiveS i.s ; g = Masc} ; - NumPN i = {s = \\_ =>i.s ; g = Masc} ; + SymbPN i = {s = addGenitiveS i.s ; g = Masc ; t = NonLiving ; h = Pers3_L } ; + + IntPN i = {s = addGenitiveS i.s ; g = Masc ; t = NonLiving ; h = Pers3_L } ; + + FloatPN i = {s = addGenitiveS i.s ; g = Masc ; t = NonLiving ; h = Pers3_L } ; + + NumPN i = {s = \\_ =>i.s ; g = Masc ; t = NonLiving ; h = Pers3_L } ; + CNIntNP cn i = { s = \\c => cn.s ! Sg ! Nom ++ i.s ; - a = agrP3 cn.g Sg + a = agrP3 cn.g Sg ; + t = NonLiving } ; + CNSymbNP det cn xs = { s = \\c => det.s!Sg!Masc ++ cn.s ! det.n ! Nom ++ xs.s ; - a = agrP3 cn.g det.n + a = agrP3 cn.g det.n ; + t = NonLiving } ; + CNNumNP cn i = { s = \\c => cn.s ! Sg ! Nom ++ i.s ; - a = agrP3 cn.g Sg + a = agrP3 cn.g Sg ; + t = NonLiving } ; SymbS sy = sy ; @@ -40,7 +49,6 @@ oper -- Note: this results in a space before 's, but there's -- not mauch we can do about that. addGenitiveS : Str -> Case => Str = \s -> - table {_ => s ++ "दा" } ; - - + table {_ => Prelude.glue s "दा" } ; + } diff --git a/lib/src/nepali/src/AdverbNep.gf b/lib/src/nepali/src/AdverbNep.gf index 9b53211c8..627fe1734 100644 --- a/lib/src/nepali/src/AdverbNep.gf +++ b/lib/src/nepali/src/AdverbNep.gf @@ -3,7 +3,7 @@ concrete AdverbNep of Adverb = CatNep ** open ResNep, Prelude, Predef in { flags coding = utf8; lin - PositAdvAdj a = {s = a.s ! Sg ! Masc ++ "ri" } ; + PositAdvAdj a = {s = a.s ! Sg ! Masc ++ "grI" } ; ComparAdvAdj cadv a np = { s = np.s ! NPObj ++ cadv.p ++ cadv.s ++ a.s ! Sg ! Masc ; @@ -19,6 +19,6 @@ concrete AdverbNep of Adverb = CatNep ** open ResNep, Prelude, Predef in { SubjS sub snt = {s = sub.s ++ snt.s } ; - AdnCAdv cadv = {s = cadv.s} ; + AdnCAdv cadv = {s = cadv.p ++ cadv.s } ; } diff --git a/lib/src/nepali/src/LexiconNep.gf b/lib/src/nepali/src/LexiconNep.gf index 43d4c568e..9a074940f 100644 --- a/lib/src/nepali/src/LexiconNep.gf +++ b/lib/src/nepali/src/LexiconNep.gf @@ -304,7 +304,7 @@ concrete LexiconNep of Lexicon = CatNep ** salt_N = mkNUC "nun" masculine ; -- नुन sand_N = mkNUC "baluva" masculine ; -- बालुवा seed_N = regN "bif" ; -- बिउ - see_V2 = mkV2 (mkV "herrx:nu" ) lai ; -- हेरर्नु + see_V2 = mkV2 (mkV "herx:nu" ) lai ; -- हेर्नु skin_N = regN "cala" ; -- छाला sky_N = regN "AkaS" ; -- आकाश smoke_N = mkNUC "DuvaV" masculine ; -- धुवाँ diff --git a/lib/src/nepali/src/MorphoNep.gf b/lib/src/nepali/src/MorphoNep.gf index 1c3c33964..6294de612 100644 --- a/lib/src/nepali/src/MorphoNep.gf +++ b/lib/src/nepali/src/MorphoNep.gf @@ -229,6 +229,7 @@ resource MorphoNep = ResNep ** open Prelude,Predef in { "ja" => root + "nx:" ; "hu" => root + "nx:" ; rot + "x:" => root ; + rot + ("h") => root + "nx:" ; --cmnt rot + ("a"|"i"|"I") => root + "nx:" ; rot + ("e"|"u"|"U") => root + "nx:" ; rot + ("f"|"F") => root + "V" ; @@ -239,13 +240,14 @@ resource MorphoNep = ResNep ** open Prelude,Predef in { "hu" => "B" ; rot + "x:" => rot ; rot + ("a"|"i"|"I") => root ; + rot + ("h") => root + "nx:" ; --cmnt rot + ("e"|"u"|"U") => rot + "o" ; rot + ("f"|"F") => rot ; _ => root } ; vcase = case root of { rot + "x:" => VReg; - rot + "h" => VReg; + --rot + "h" => VReg; _ => VIReg } } ; diff --git a/lib/src/nepali/src/NumeralNep.gf b/lib/src/nepali/src/NumeralNep.gf index 796aca5ab..d3a2ba718 100644 --- a/lib/src/nepali/src/NumeralNep.gf +++ b/lib/src/nepali/src/NumeralNep.gf @@ -109,8 +109,10 @@ lin D_6 = { s = "6" ; n = Pl}; lin D_7 = { s = "7" ; n = Pl}; lin D_8 = { s = "8" ; n = Pl}; lin D_9 = { s = "9" ; n = Pl}; + lin IDig d = { s = \\_ => d.s ; n = d.n} ; -lin IIDig d dg = { s = \\df => Prelude.glue (dg.s ! df) d.s ; n = Pl }; + +lin IIDig d dg = { s = \\df => Prelude.glue d.s (dg.s ! df) ; n = Pl }; oper ekhazar : Str = variants {"e:k" ++ "hjar" ; "hjar"} ; oper mkhazar : Str -> Size -> Str = \s -> \sz -> table {singl => ekhazar ; _ => s ++ "hjar"} ! sz ; diff --git a/lib/src/nepali/src/PhraseNep.gf b/lib/src/nepali/src/PhraseNep.gf index 259e32d1f..85d83cd1e 100644 --- a/lib/src/nepali/src/PhraseNep.gf +++ b/lib/src/nepali/src/PhraseNep.gf @@ -1,4 +1,6 @@ concrete PhraseNep of Phrase = CatNep ** open Prelude, ResNep in { + + flags coding = utf8 ; lin PhrUtt pconj utt voc = {s = pconj.s ++ utt.s ++ voc.s} ; @@ -7,11 +9,15 @@ concrete PhraseNep of Phrase = CatNep ** open Prelude, ResNep in { UttQS qs = {s = qs.s ! QDir} ; -- be a man -> (मन्छे हउ) - UttImpSg pol imp = {s = pol.s ++ imp.s ! contrNeg True pol.p ! ImpF Sg False ++ "hf"} ; + -- issue in mkPhr-Imp-Phr + -- mkPhr-PConj-Utt-Voc-Phr + -- Need to diff between singularImpForm-ImpForm + -- pluralImpForm-ImpForm and above cases + UttImpSg pol imp = {s = pol.s ++ imp.s ! contrNeg True pol.p ! ImpF Sg False ++ "hof"} ; - UttImpPl pol imp = {s = pol.s ++ imp.s ! contrNeg True pol.p ! ImpF Pl False ++ "hA"} ; + UttImpPl pol imp = {s = pol.s ++ imp.s ! contrNeg True pol.p ! ImpF Pl False ++ "hW"} ; - UttImpPol pol imp = {s = pol.s ++ imp.s ! contrNeg True pol.p ! ImpF Sg True ++ "hf"} ; + UttImpPol pol imp = {s = pol.s ++ imp.s ! contrNeg True pol.p ! ImpF Sg True ++ "hof"} ; UttIP ip = {s = ip.s ! Nom} ; --- Acc also UttIAdv iadv = iadv ; diff --git a/lib/src/nepali/src/RelativeNep.gf b/lib/src/nepali/src/RelativeNep.gf index 5786dac73..0a8b498cf 100644 --- a/lib/src/nepali/src/RelativeNep.gf +++ b/lib/src/nepali/src/RelativeNep.gf @@ -6,7 +6,7 @@ concrete RelativeNep of Relative = CatNep ** open ResNep in { lin RelCl cl = { - s = \\t,p,o,agr => "jsx:tikI" ++ cl.s ! t ! p ! o ; + s = \\t,p,o,agr => "jsx:tokI" ++ cl.s ! t ! p ! o ; c = Nom } ; diff --git a/lib/src/nepali/src/ResNep.gf b/lib/src/nepali/src/ResNep.gf index b0a9bc247..833f8036b 100644 --- a/lib/src/nepali/src/ResNep.gf +++ b/lib/src/nepali/src/ResNep.gf @@ -1,7 +1,7 @@ --# -path=.:../abstract:../common:../../prelude -- --1 Nep auxiliary operations. --- by Dinesh SImkhada and Shafqat Virk - 2011 +-- by Dinesh Simkhada and Shafqat Virk - 2011 -- -- This module contains operations that are needed to make the -- resource syntax work. @@ -204,7 +204,6 @@ resource ResNep = ParamX ** open Prelude, Predef in { param - VPHTense = VPGenPres -- impf hum nahim "I go" diff --git a/lib/src/nepali/src/StructuralNep.gf b/lib/src/nepali/src/StructuralNep.gf index 446946594..0dedac249 100644 --- a/lib/src/nepali/src/StructuralNep.gf +++ b/lib/src/nepali/src/StructuralNep.gf @@ -1,8 +1,9 @@ concrete StructuralNep of Structural = CatNep ** open MorphoNep, ParadigmsNep, Prelude, NounNep in { - flags optimize=all ; - coding = utf8; + flags + optimize = all ; + coding = utf8; lin @@ -24,7 +25,7 @@ concrete StructuralNep of Structural = CatNep ** by8means_Prep = mkPrep "le" ; can8know_VV,can_VV = mkV "skx:nu" ** { isAux = True} ; during_Prep = mkPrep "prx:yanx:t" ; -- पर्यान्त - either7or_DConj = sd2 "HTva" "ya" ** {n = Sg} ; -- अथवा , या + either7or_DConj = sd2 "kI" "HTva" ** {n = Sg} ; -- की, अथवा everybody_NP = MassNP (UseN (regN "svw jana" Living)) ; -- not a good way coz need to include Noun (सवौ जाना) every_Det = mkDet "sbE" "hrek" Sg ; -- सबै, हरेक everything_NP = MassNP (UseN (regN "harek kura" NonLiving)) ; -- हारेक कुरा @@ -53,7 +54,7 @@ concrete StructuralNep of Structural = CatNep ** if_Subj = ss "ydi" ; -- यदि in8front_Prep = mkPrep "samu" ; -- सामु in_Prep = mkPrep "ma" ; -- मा - less_CAdv = {s = "km" ; p = "Bnx:da"} ; -- ?? NOT CLEAR + less_CAdv = {s = "km" ; p = "Bnx:da"} ; -- भन्दा कम many_Det = mkDet "DerE" "Tupx:rE" Pl ; -- धेरै, थुप्रै more_CAdv = {s = "bXI" ; p = "Bnx:da" } ; most_Predet = ss "jx:yadE" ; -- ज्यादै @@ -95,10 +96,10 @@ concrete StructuralNep of Structural = CatNep ** there7to_Adv = mkAdv "tx:yhaV smx:m" ; -- त्यहाँ सम्म there7from_Adv = mkAdv "tx:yhaV baq" ; -- त्यहाँ बाट therefore_PConj = ss "Hth:" ; -- अतः - this_Quant = mkQuant "yo" "yi" ; + this_Quant = mkQuant "yo" "yI" ; -- यो, यी through_Prep = mkPrep "marx:Pt" ; -- मार्फत too_AdA = mkAdA "pni" ; -- पनि - to_Prep = ss "smx:m" ; -- + to_Prep = ss "smx:m" ; -- सम्म under_Prep = mkPrep "Hnx:trx:gt" ; -- अन्तर्गत very_AdA = mkAdA "DerE" ; -- धेरै want_VV = mkV "Cahnu" ** { isAux = False} ; diff --git a/lib/src/nepali/src/SymbolNep.gf b/lib/src/nepali/src/SymbolNep.gf index 6ef890e0d..485c77b33 100644 --- a/lib/src/nepali/src/SymbolNep.gf +++ b/lib/src/nepali/src/SymbolNep.gf @@ -5,21 +5,30 @@ concrete SymbolNep of Symbol = CatNep ** open Prelude, ResNep in { flags coding = utf8; lin - SymbPN i = {s = addGenitiveS i.s ; g = Masc} ; - IntPN i = {s = addGenitiveS i.s ; g = Masc} ; - FloatPN i = {s = addGenitiveS i.s ; g = Masc} ; - NumPN i = {s = \\_ =>i.s ; g = Masc} ; + SymbPN i = {s = addGenitiveS i.s ; g = Masc ; t = NonLiving ; h = Pers3_L } ; + + IntPN i = {s = addGenitiveS i.s ; g = Masc ; t = NonLiving ; h = Pers3_L } ; + + FloatPN i = {s = addGenitiveS i.s ; g = Masc ; t = NonLiving ; h = Pers3_L } ; + + NumPN i = {s = \\_ =>i.s ; g = Masc ; t = NonLiving ; h = Pers3_L } ; + CNIntNP cn i = { s = \\c => cn.s ! Sg ! Nom ++ i.s ; - a = agrP3 cn.g Sg + a = agrP3 cn.g Sg ; + t = NonLiving } ; + CNSymbNP det cn xs = { s = \\c => det.s!Sg!Masc ++ cn.s ! det.n ! Nom ++ xs.s ; - a = agrP3 cn.g det.n + a = agrP3 cn.g det.n ; + t = NonLiving } ; + CNNumNP cn i = { s = \\c => cn.s ! Sg ! Nom ++ i.s ; - a = agrP3 cn.g Sg + a = agrP3 cn.g Sg ; + t = NonLiving } ; SymbS sy = sy ; @@ -40,7 +49,6 @@ oper -- Note: this results in a space before 's, but there's -- not mauch we can do about that. addGenitiveS : Str -> Case => Str = \s -> - table {_ => s ++ "da" } ; - - + table {_ => Prelude.glue s "da" } ; + } diff --git a/lib/src/nepali/translit.gfs b/lib/src/nepali/translit.gfs index 6809a9971..671698db7 100644 --- a/lib/src/nepali/translit.gfs +++ b/lib/src/nepali/translit.gfs @@ -1,14 +1,15 @@ -rf -file=src/AdjectiveNep.gf | ps -env=quotes -to_devanagari | wf -file=AdjectiveNep.gf -rf -file=src/LexiconNep.gf | ps -env=quotes -to_devanagari | wf -file=LexiconNep.gf -rf -file=src/MorphoNep.gf | ps -env=quotes -to_devanagari | wf -file=MorphoNep.gf -rf -file=src/ResNep.gf | ps -env=quotes -to_devanagari | wf -file=ResNep.gf -rf -file=src/StructuralNep.gf | ps -env=quotes -to_devanagari | wf -file=StructuralNep.gf -rf -file=src/AdverbNep.gf | ps -env=quotes -to_devanagari | wf -file=AdverbNep.gf -rf -file=src/QuestionNep.gf | ps -env=quotes -to_devanagari | wf -file=QuestionNep.gf -rf -file=src/NumeralNep.gf | ps -env=quotes -to_devanagari | wf -file=NumeralNep.gf -rf -file=src/RelativeNep.gf | ps -env=quotes -to_devanagari | wf -file=RelativeNep.gf -rf -file=src/IdiomNep.gf | ps -env=quotes -to_devanagari | wf -file=IdiomNep.gf -rf -file=src/SymbolNep.gf | ps -env=quotes -to_devanagari | wf -file=SymbolNep.gf -rf -file=src/VerbNep.gf | ps -env=quotes -to_devanagari | wf -file=VerbNep.gf -rf -file=src/SentenceNep.gf | ps -env=quotes -to_devanagari | wf -file=SentenceNep.gf -rf -file=src/PhraseNep.gf | ps -env=quotes -to_devanagari | wf -file=PhraseNep.gf +rf -file=src/AdjectiveNep.gf | ps -env=quotes -to_nepali | wf -file=AdjectiveNep.gf +rf -file=src/LexiconNep.gf | ps -env=quotes -to_nepali | wf -file=LexiconNep.gf +rf -file=src/MorphoNep.gf | ps -env=quotes -to_nepali | wf -file=MorphoNep.gf +rf -file=src/ResNep.gf | ps -env=quotes -to_nepali | wf -file=ResNep.gf +rf -file=src/StructuralNep.gf | ps -env=quotes -to_nepali | wf -file=StructuralNep.gf +rf -file=src/AdverbNep.gf | ps -env=quotes -to_nepali | wf -file=AdverbNep.gf +rf -file=src/QuestionNep.gf | ps -env=quotes -to_nepali | wf -file=QuestionNep.gf +rf -file=src/NumeralNep.gf | ps -env=quotes -to_nepali | wf -file=NumeralNep.gf +rf -file=src/RelativeNep.gf | ps -env=quotes -to_nepali | wf -file=RelativeNep.gf +rf -file=src/IdiomNep.gf | ps -env=quotes -to_nepali | wf -file=IdiomNep.gf +rf -file=src/SymbolNep.gf | ps -env=quotes -to_nepali | wf -file=SymbolNep.gf +rf -file=src/VerbNep.gf | ps -env=quotes -to_nepali | wf -file=VerbNep.gf +rf -file=src/SentenceNep.gf | ps -env=quotes -to_nepali | wf -file=SentenceNep.gf +rf -file=src/PhraseNep.gf | ps -env=quotes -to_nepali | wf -file=PhraseNep.gf +rf -file=src/NounNep.gf | ps -env=quotes -to_nepali | wf -file=NounNep.gf