From f7344b8f38e00425152ab90cdd5eef65152da05e Mon Sep 17 00:00:00 2001 From: "virk.shafqat" Date: Mon, 5 Nov 2012 16:44:31 +0000 Subject: [PATCH] unicode4k-changed --- lib/src/hindustani/ResHindustani.gf | 2 +- lib/src/urdu/DictUrd2.gf | 19 ++- lib/src/urdu/DiffUrd.gf | 12 +- lib/src/urdu/ExtraUrd.gf | 44 +++++-- lib/src/urdu/IdiomUrd.gf | 6 +- lib/src/urdu/LexiconUrd.gf | 148 +++++++++++------------ lib/src/urdu/MorphoUrd.gf | 6 +- lib/src/urdu/NumeralUrd.gf | 12 +- lib/src/urdu/ParseUrd.gf | 3 + lib/src/urdu/StructuralUrd.gf | 98 +++++++-------- lib/src/urdu/src/ExtraUrd.gf | 23 +++- src/compiler/GF/Text/Transliterations.hs | 4 +- 12 files changed, 213 insertions(+), 164 deletions(-) diff --git a/lib/src/hindustani/ResHindustani.gf b/lib/src/hindustani/ResHindustani.gf index c0bd6acc7..53c93da41 100644 --- a/lib/src/hindustani/ResHindustani.gf +++ b/lib/src/hindustani/ResHindustani.gf @@ -231,7 +231,7 @@ param vp.obj.s ++ vp.comp ! a ++ vp.inf ; infVV : Bool -> VPH -> Str = \isAux,vp -> - case isAux of {False => vp.obj.s ++ (vp.comp ! (toAgr Sg Pers1 Masc)) ++ vp.inf ; True => (vp.s ! VPImp).inf ++ vp.obj.s ++ (vp.comp ! (toAgr Sg Pers1 Masc)) } ; + case isAux of {False => vp.obj.s ++ (vp.comp ! (toAgr Sg Pers1 Masc)) ++ vp.cvp ++ vp.inf ; True => vp.cvp ++ (vp.s ! VPImp).inf ++ vp.obj.s ++ (vp.comp ! (toAgr Sg Pers1 Masc)) } ; infV2V : Bool -> VPH -> Str = \isAux,vp -> case isAux of {False => vp.obj.s ++ (vp.comp ! (toAgr Sg Pers1 Masc)) ++ (vp.s ! VPInf).fin ++ ky ; True => vp.obj.s ++ (vp.comp ! (toAgr Sg Pers1 Masc)) ++ (vp.s ! VPImp).fin ++ ky}; diff --git a/lib/src/urdu/DictUrd2.gf b/lib/src/urdu/DictUrd2.gf index 26099e1e8..428a52e4d 100644 --- a/lib/src/urdu/DictUrd2.gf +++ b/lib/src/urdu/DictUrd2.gf @@ -8568,7 +8568,7 @@ lin dizzy_V2 = mkV2 (compoundV "چکر" (mkV "آنا")) ; lin dna_N = mkN "حرکیاتی نفسیات" ; lin do_N = mkN "سرانجام دینا" ; lin do_V = compoundV "سرانجام" (mkV "دینا") ; -lin do_V2 = mkV2 (compoundV "ادا" (mkV "کرنا")) ; -- from DictUrd +lin do_V2 = mkV2 (mkV "کرنا") ; -- from DictUrd lin do_gooder_N = mkN "مصلح" ; lin dobbin_N = mkN "چھکڑا" ; lin docile_A = mkA "مطیع" ; -- from DictUrd @@ -12240,10 +12240,10 @@ lin gnaw_V2 = mkV2 (compoundV "کتر کتر کر" (mkV "کھانا")) ; lin gnome_N = mkN "ایک فرضی بونا" ; lin gnu_N = mkN "اسب ہرن" ; lin go_N = mkN "جاؤ" ; -lin go_V = mkV "جاؤ" ; -lin go_V2 = mkV2 (mkV "جاؤ") ; -lin go_VA = mkV "جاؤ" ; -lin go_VS = mkVS (mkV "جاؤ") ; +lin go_V = mkV "جانا" ; -- corrected manually +lin go_V2 = mkV2 ("جانا" ) ; +lin go_VA = mkV "جانا" ; +lin go_VS = mkVS (mkV "جانا") ; lin go_ahead_N = mkN "کام جاری رکھنا" ; lin go_between_N = mkN "دلال" ; lin go_by_N = mkN "گزرنا" ; @@ -30206,5 +30206,12 @@ lin presidentMasc_N= mkN "صدر"; --lin april_N= mkN "اپریل"; lin understand_V2 = mkV2 (compoundV "سمجھ" (mkV "لینا")) ; lin savagery_N = mkN "وحشیانہ پن" ; - +lin officialMasc_N= mkN "افسر"; +lin representativeMasc_N= mkN "نمائیندہ"; +lin handcart_N= mkN "صورتحال"; +lin unless_Subj= ss "جب تک"; +lin so_Subj= ss "اس لئے"; +lin several_Num = {s = "کئی" ; n = Pl} ; +lin few_Num = {s = "چند" ; n = Pl} ; +lin even_AdV = ss "حتی کہ"; } diff --git a/lib/src/urdu/DiffUrd.gf b/lib/src/urdu/DiffUrd.gf index 8aaddfbbd..cc014da94 100644 --- a/lib/src/urdu/DiffUrd.gf +++ b/lib/src/urdu/DiffUrd.gf @@ -45,7 +45,7 @@ Clause : Type = {s : VPHTense => Polarity => Order => Str} ; quest = case ord of { ODir => []; - OQuest => "كیا" }; + OQuest => "کیا" }; na = case b of { Pos => []; @@ -88,7 +88,7 @@ Clause : Type = {s : VPHTense => Polarity => Order => Str} ; quest = case ord of { ODir => []; - OQuest => "كیا" }; + OQuest => "کیا" }; na = case b of { Pos => []; @@ -114,17 +114,17 @@ Clause : Type = {s : VPHTense => Polarity => Order => Str} ; } ; -conjThat = "كہ" ; +conjThat = "کہ" ; insertSubj : UPerson -> Str -> Str = \p,s -> case p of { Pers1 => s ++ "واں" ; _ => s ++ "ے"}; -- check with prasad for vn~ agr = "اگر" ; awr = "اور" ; - ky = "كی" ; + ky = "کی" ; jn = "جن" ; js = "جس" ; jw = "جو" ; - kw = "كو" ; + kw = "کو" ; mt = "مت" ; nE = "نے" ; nh = "نا" ; @@ -204,7 +204,7 @@ copula : CTense -> Number -> UPerson -> Gender -> Str = \t,n,p,g -> (regAdjective "رہا").s ! n ! g ! Dir ! Posit ; cka : Gender -> Number -> Str = \g,n -> - (regAdjective "چكا").s ! n ! g ! Dir ! Posit ; + (regAdjective "چکا").s ! n ! g ! Dir ! Posit ; hw : UPerson -> Number -> Str = \pp,n -> case of { diff --git a/lib/src/urdu/ExtraUrd.gf b/lib/src/urdu/ExtraUrd.gf index 49e1067a2..e067cdab7 100644 --- a/lib/src/urdu/ExtraUrd.gf +++ b/lib/src/urdu/ExtraUrd.gf @@ -4,28 +4,46 @@ concrete ExtraUrd of ExtraUrdAbs = CatUrd ** flags coding = utf8 ; lin - -- GenNP np = {s = \\_,_,_ => np.s ! NPC Obl ++ "كا" ; a = np.a} ; + -- GenNP np = {s = \\_,_,_ => np.s ! NPC Obl ++ "کا" ; a = np.a} ; GenNP np = {s = \\n,g,c => case of { - => np.s ! NPC Obl ++ "كے" ; - => np.s ! NPC Obl ++ "كا" ; - => np.s ! NPC Obl ++ "كے" ; - <_,Fem,_> => np.s ! NPC Obl ++ "كی" + => np.s ! NPC Obl ++ "کے" ; + => np.s ! NPC Obl ++ "کا" ; + => np.s ! NPC Obl ++ "کے" ; + <_,Fem,_> => np.s ! NPC Obl ++ "کی" }; a = np.a} ; - each_Det = mkDet "ہر كوی" "ہر كوی" "ہر كوی" "ہر كوی" Sg ; - have_V = mkV "راكھنا"; - IAdvAdv adv = {s = "كتنی" ++ adv.s ! Masc} ; - ICompAP ap = {s = "كتنے" ++ ap.s ! Sg ! Masc ! Dir ! Posit} ; + each_Det = mkDet "ہر کوی" "ہر کوی" "ہر کوی" "ہر کوی" Sg ; + have_V = mkV "راکھنا"; + IAdvAdv adv = {s = "کتنی" ++ adv.s ! Masc} ; + ICompAP ap = {s = "کتنے" ++ ap.s ! Sg ! Masc ! Dir ! Posit} ; cost_V = mkV "قیمت" ; -- added for causitives make_CV = mkVerb "نoتہiنگ" ** {c2 = "" }; - PassVPSlash vps = vps ; - - UncNeg = {s = [] ; p = Neg} ; -- for VP conjunction -} + +PassVPSlash vps = vps ; +{- +--{ + -- let + -- be = predAux auxBe + -- in { + -- s = be.s ; + s = vps.s ; + obj = vps.obj ; + subj = vps.c2.c ; + inf = vps.inf; + ad = vps.ad; + embComp = vps.embComp; + prog = vps.prog ; + comp = vps.comp ; + cvp = vps.cvp + -- } ; + +--}; +-} +} \ No newline at end of file diff --git a/lib/src/urdu/IdiomUrd.gf b/lib/src/urdu/IdiomUrd.gf index 6d3f188e8..dbcb8a99b 100644 --- a/lib/src/urdu/IdiomUrd.gf +++ b/lib/src/urdu/IdiomUrd.gf @@ -5,7 +5,7 @@ concrete IdiomUrd of Idiom = CatUrd ** open Prelude,Predef, ResUrd,ParamX,Common lin ImpersCl vp = mkSClause " " (agrP3 Masc Sg) vp ; - GenericCl vp = mkSClause "كوی" (agrP3 Masc Sg) vp ; + GenericCl vp = mkSClause "کوی" (agrP3 Masc Sg) vp ; CleftNP np rs = let cl = mkSClause (np.s ! NPC rs.c) (np.a) (predAux auxBe); @@ -32,8 +32,8 @@ concrete IdiomUrd of Idiom = CatUrd ** open Prelude,Predef, ResUrd,ParamX,Common -- ImpPl1 vp = {s = "آو" ++ infVP True vp (agrP1 Masc Pl)} ; -- inf form is not used e.g Aw swna instead Aw swyyN (Imp.fin) ImpPl1 vp = {s = "آو" ++ (vp.s ! VPImp).fin} ; --- ImpP3 np vp = {s = np.s!NPC Dir ++ "كو" ++ (vp.s ! VPImp ).inf ++ "دو"}; here VPImp form is not correct e.g jan ko sw do, rather jan ko swnE do, and swnE is stored in vp.VPInf.fin - ImpP3 np vp = {s = np.s!NPC Dir ++ "كو" ++ (vp.s ! VPInf ).fin ++ "دو"}; +-- ImpP3 np vp = {s = np.s!NPC Dir ++ "کو" ++ (vp.s ! VPImp ).inf ++ "دو"}; here VPImp form is not correct e.g jan ko sw do, rather jan ko swnE do, and swnE is stored in vp.VPInf.fin + ImpP3 np vp = {s = np.s!NPC Dir ++ "کو" ++ (vp.s ! VPInf ).fin ++ "دو"}; } diff --git a/lib/src/urdu/LexiconUrd.gf b/lib/src/urdu/LexiconUrd.gf index e0070c9d1..7a1b50b64 100644 --- a/lib/src/urdu/LexiconUrd.gf +++ b/lib/src/urdu/LexiconUrd.gf @@ -11,41 +11,41 @@ concrete LexiconUrd of Lexicon = CatUrd ** lin airplane_N = mkN "جہاز" ; answer_V2S = mkV2 (compoundV "جواب" (mkV "دینا")) ; - apartment_N = mkN "كمرہ" ; + apartment_N = mkN "کمرہ" ; apple_N = mkN "سیب" ; art_N = mkN "فن" ; ask_V2Q = mkV2 (mkV "پوچھنا") ; baby_N = mkN "بچہ" ; bad_A = mkA "برا" ; - bank_N = mkN "بینك" ; + bank_N = mkN "بینک" ; beautiful_A = mkA "خوبصورت" ; become_VA = mkV "بننا"; beer_N = mkN "بییر" ; - beg_V2V = mkV2V (compoundV "التجا" (mkV "كرنا")) "سے" "كہ" False; + beg_V2V = mkV2V (compoundV "التجا" (mkV "کرنا")) "سے" "کہ" False; big_A = mkA "بڑا" ; - bike_N = mkN "سایكل" feminine ; + bike_N = mkN "سایکل" feminine ; bird_N = mkN "پرندہ" ; - black_A = mkA "كالا" ; + black_A = mkA "کالا" ; blue_A = mkA "نیلا" ; - boat_N = mkN "كشتی" ; - book_N = mkN "كتاب" feminine ; + boat_N = mkN "کشتی" ; + book_N = mkN "کتاب" feminine ; boot_N = mkN "جوتا" ; boss_N = mkN "صاحب" ; - boy_N = mkN "لڑكا" ; + boy_N = mkN "لڑکا" ; bread_N = mkN "روٹی" ; break_V2 = mkV2 (mkV "توڑنا") ; - broad_A = mkA "كھلا" ; - brother_N2 = mkN2 (mkN "بھای") (mkPrep "كا" "كا") "كے" ; --not correct + broad_A = mkA "کھلا" ; + brother_N2 = mkN2 (mkN "بھای") (mkPrep "کا" "کا") "کے" ; --not correct brown_A = mkA "نسواری" ; - butter_N = mkN "مكھن" ; - buy_V2 = mkV2 (mkV "خریدنا") "كو"; - camera_N = mkN "كیمرہ" ; + butter_N = mkN "مکھن" ; + buy_V2 = mkV2 (mkV "خریدنا") "کو"; + camera_N = mkN "کیمرہ" ; cap_N = mkN "ٹوپی" ; car_N = mkN "گاڑی" ; carpet_N = mkN "تپائی" ; cat_N = mkN "بلی" ; ceiling_N = mkN "چھت" feminine ; - chair_N = mkN "كرسی" ; + chair_N = mkN "کرسی" ; cheese_N = mkN "پنیر" feminine ; child_N = mkN "بچہ" ; church_N = mkCmpdNoun "گرجا" (mkN "گھر") ; @@ -53,26 +53,26 @@ concrete LexiconUrd of Lexicon = CatUrd ** clean_A = mkA "صاف" ; clever_A = mkA "ہوشیار" ; close_V2 = mkV2 (compoundV "بند" do_V2); - coat_N = mkN "كوٹ" ; + coat_N = mkN "کوٹ" ; cold_A = mkA "ٹھنڈا" ; come_V = mkV "آنا" ; - computer_N = mkN "كمپیوٹر" ; - country_N = mkN "ملك" ; + computer_N = mkN "کمپیوٹر" ; + country_N = mkN "ملک" ; cousin_N = mkCmpdNoun "چچا" (mkN "زاد") ; -- a compund noun made of two nouns cow_N = mkN "گاے" feminine ; die_V = mkV "مرنا" ; dirty_A = mkA "گندا" ; - distance_N3 = mkN3 (mkN "فاصلہ") (mkPrep "كا" "كا") "كے" "سے" ; + distance_N3 = mkN3 (mkN "فاصلہ") (mkPrep "کا" "کا") "کے" "سے" ; doctor_N = mkN "معالج" ; - dog_N = mkN "كتا" ; + dog_N = mkN "کتا" ; door_N = mkN "دروازہ" ; drink_V2 = mkV2 (mkV "پینا"); easy_A2V = mkA "آسان" "" ; - eat_V2 = mkV2 (mkV "كھانا") "" ; + eat_V2 = mkV2 (mkV "کھانا") "" ; empty_A = mkA "خالی" ; enemy_N = mkN "دشمن" ; - factory_N = mkN "كارخانہ" ; - father_N2 = mkN2 (mkN "ابا") (mkPrep "كا" "كا") "كے" ; + factory_N = mkN "کارخانہ" ; + father_N2 = mkN2 (mkN "ابا") (mkPrep "کا" "کا") "کے" ; fear_VS = mkV "ڈرنا"; find_V2 = mkV2 (mkV "پانا") ; fish_N = mkN "مچھلی" ; @@ -83,7 +83,7 @@ concrete LexiconUrd of Lexicon = CatUrd ** fruit_N = mkN "پھل" ; -- fun_AV = mkAV (regA "f?ن") ; garden_N = mkN "باغ" ; - girl_N = mkN "لڑكی" ; + girl_N = mkN "لڑکی" ; glove_N = mkN "دستانہ" ; gold_N = mkN "سونا" ; good_A = mkA "اچھا" ; @@ -108,38 +108,38 @@ concrete LexiconUrd of Lexicon = CatUrd ** know_VQ = (mkV "جاننا") ; lake_N = mkN "جھیل" feminine ; lamp_N = mkN "لیمپ" ; - learn_V2 = mkV2 (mkV "سیكھنا") ; + learn_V2 = mkV2 (mkV "سیکھنا") ; leather_N = mkN "چمڑا" ; leave_V2 = mkV2 (mkV "جانا") ; - like_V2 = mkV2 (compoundV "پسند" do_V2) "كو"; + like_V2 = mkV2 (compoundV "پسند" do_V2) "کو"; listen_V2 = mkV2 (mkV "سننا") ; live_V = mkV "رہنا" ; ---- touch long_A = mkA "لمبا" ; - lose_V2 = mkV2 (compoundV "كھو" do_V2) ; + lose_V2 = mkV2 (compoundV "کھو" do_V2) ; love_N = mkN "محبت" ; - love_V2 = mkV2 (compoundV "پیار" do_V2) "كو"; + love_V2 = mkV2 (compoundV "پیار" do_V2) "کو"; man_N = mkN "آدمی" "آدمی" "آدمی" "آدمی" "آدمیوں" "آدمیو" masculine ; married_A2 = mkA "شادی شدہ" "سے" ; meat_N = mkN "گوشت" ; milk_N = mkN "دودھ" ; moon_N = mkN "چاند" ; - mother_N2 = mkN2 (mkN "ماں") (mkPrep "كی" "كی") "كے"; -- not covered need to be discussed + mother_N2 = mkN2 (mkN "ماں") (mkPrep "کی" "کی") "کے"; -- not covered need to be discussed mountain_N = mkN "پہاڑی" ; music_N = mkN "موسیقی" ; - narrow_A = mkA "باریك" ; + narrow_A = mkA "باریک" ; new_A = mkA "نیا" ; newspaper_N = mkN "اخبار" ; oil_N = mkN "تیل" ; old_A = mkA "بوڑھا" ; - open_V2 = mkV2 (mkV "كھولنا") ; + open_V2 = mkV2 (mkV "کھولنا") ; paint_V2A = mkV2 (compoundV "رنگ" do_V2) ; - paper_N = mkN "كاغز" ; + paper_N = mkN "کاغز" ; paris_PN = mkPN "پیرس" ; peace_N = mkN "امن" ; pen_N = mkN "پنسل" ; planet_N = mkN "سیارہ" ; - plastic_N = mkN "پلاسٹك" ; - play_V2 = mkV2 (mkV "كھیلنا") ; + plastic_N = mkN "پلاسٹک" ; + play_V2 = mkV2 (mkV "کھیلنا") ; policeman_N = mkCmpdNoun "پولیس" (mkN "والا") ; priest_N = (mkN "پیغمبر") ; -- probable_AS = mkAS (regA "پr?بابلع") ; @@ -155,19 +155,19 @@ concrete LexiconUrd of Lexicon = CatUrd ** -- roof_N = mkN "چھت" masculine ; rubber_N = mkN "ربڑ" ; run_V = mkV "دوڑنا" ; - say_VS = mkV "كہنا" ; - school_N = mkN "سكول" ; + say_VS = mkV "کہنا" ; + school_N = mkN "سکول" ; science_N = mkN "سانس" ; sea_N = mkN "سمندر" ; seek_V2 = mkV2 (compoundV "تلاش" do_V2) ; - see_V2 = mkV2 (mkV "دیكھنا") ; - sell_V3 = mkV3 (mkV "بیچنا") "كو" ""; - send_V3 = mkV3 (mkV "بھیجنا") "كو" ""; + see_V2 = mkV2 (mkV "دیکھنا") ; + sell_V3 = mkV3 (mkV "بیچنا") "کو" ""; + send_V3 = mkV3 (mkV "بھیجنا") "کو" ""; sheep_N = mkN "بھیڑ" feminine ; ship_N = mkN "جہاز" ; shirt_N = mkN "قمیص" feminine; shoe_N = mkN "جوتا" ; - shop_N = mkN "دوكان" feminine ; + shop_N = mkN "دوکان" feminine ; short_A = mkA "چھوٹا" ; silver_N = mkN "چاندی" ; sister_N = mkN "بہن" feminine ; @@ -186,7 +186,7 @@ concrete LexiconUrd of Lexicon = CatUrd ** switch8off_V2 = mkV2 (mkV "چلانا") ; switch8on_V2 = mkV2 (compoundV "بند" do_V2) ; table_N = mkN "میز" feminine ; - talk_V3 = mkV3 (mkV "بولنا") "سے" "[كے بارے میN]"; + talk_V3 = mkV3 (mkV "بولنا") "سے" "[کے بارے میN]"; teacher_N = mkN "استاد" ; teach_V2 = mkV2 (mkV "پڑھنا") ; television_N = mkN "تیلیویژن" ; @@ -204,35 +204,35 @@ concrete LexiconUrd of Lexicon = CatUrd ** walk_V = mkV "چلنا" ; warm_A = mkA "گرم" ; war_N = mkN "جنگ" ; - watch_V2 = mkV2 (mkV "دیكھنا") ; + watch_V2 = mkV2 (mkV "دیکھنا") ; water_N = mkN "پانی" ; -- not covered masculine ending with y white_A = mkA "سفید" ; - window_N = mkN "كھڑكی" ; + window_N = mkN "کھڑکی" ; wine_N = mkN "شراب" feminine ; win_V2 = mkV2 (mkV "جیتنا") ; woman_N = mkN "عورت" feminine ; wonder_VQ = compoundV "حیران" (mkV "ہونا") ; - wood_N = mkN "لكڑی" ; - write_V2 = mkV2 (mkV "لكھنا") ; + wood_N = mkN "لکڑی" ; + write_V2 = mkV2 (mkV "لکھنا") ; yellow_A = mkA "پیلا" ; young_A = mkA "جوان" ; - do_V2 = mkV2 (mkV "كرنا") ; + do_V2 = mkV2 (mkV "کرنا") ; now_Adv = mkAdv "اب" ; already_Adv = mkAdv "[پہلے ہy]" ; song_N = mkN "گانا" ; add_V3 = mkV3 (compoundV "اضافہ" do_V2) "" "" ; number_N = mkN "ہندسہ" ; put_V2 = mkV2 (mkV "ڈالنا") ; - stop_V = mkV "ركنا" ; + stop_V = mkV "رکنا" ; jump_V = mkV "چھلانگنا" ; left_Ord = {s = "بایاں" ; n = singular}; right_Ord = {s= "دایاں" ; n = singular}; far_Adv = mkAdv "دور" ; correct_A = mkA "صیح" ; - dry_A = mkA "خشك" ; + dry_A = mkA "خشک" ; dull_A = mkA "نالایق" ; - full_A = mkA "مكمل" ; + full_A = mkA "مکمل" ; heavy_A = mkA "بھاری" ; near_A = mkA "قریبی" ; rotten_A = mkA "خراب" ; @@ -241,11 +241,11 @@ concrete LexiconUrd of Lexicon = CatUrd ** smooth_A = mkA "ہموار" ; straight_A = mkA "سیدھا" ; wet_A = mkA "گیلا" ; ---- - wide_A = mkA "كھلا" ; + wide_A = mkA "کھلا" ; animal_N = mkN "جانور" ; - ashes_N = mkN "راكھ" feminine; -- FIXME: plural only? + ashes_N = mkN "راکھ" feminine; -- FIXME: plural only? back_N = mkN "قمر" feminine ; - bark_N = mkN "بارك" ; + bark_N = mkN "بارک" ; belly_N = mkN "دھنی" ; blood_N = mkN "خون" ; bone_N = mkN "ہڈی" ; @@ -253,10 +253,10 @@ concrete LexiconUrd of Lexicon = CatUrd ** cloud_N = mkN "بادل" ; day_N = mkN "دن" ; dust_N = mkN "دھول" ; - ear_N = mkN "كان" ; + ear_N = mkN "کان" ; earth_N = mkN "زمین" feminine ; egg_N = mkN "انڈہ" ; - eye_N = mkN "آنكھ" feminine ; + eye_N = mkN "آنکھ" feminine ; fat_N = mkN "موٹا" ; feather_N = mkN "پر" ; fingernail_N = mkN "ناخن" ; @@ -274,7 +274,7 @@ concrete LexiconUrd of Lexicon = CatUrd ** horn_N = mkN "گھنٹی" ; husband_N = mkN "شوہر" ; ice_N = mkN "برف" feminine ; - knee_N = mkN "كہنی" ; + knee_N = mkN "کہنی" ; leaf_N = mkN "پتہ" ; leg_N = mkN "ٹانگ" feminine ; liver_N = mkN "جگر" ; @@ -283,13 +283,13 @@ concrete LexiconUrd of Lexicon = CatUrd ** name_N = mkN "نام" ; neck_N = mkN "گردن" feminine ; night_N = mkN "رات" feminine ; - nose_N = mkN "ناك" ; + nose_N = mkN "ناک" ; person_N = mkN "شخص" ; rain_N = mkN "بارش" feminine ; - road_N = mkN "سڑك" ; + road_N = mkN "سڑک" ; root_N = mkN "جڑ" feminine ; rope_N = mkN "رسی" ; - salt_N = mkN "نمك" feminine ; + salt_N = mkN "نمک" feminine ; sand_N = mkN "ریت" feminine ; seed_N = mkN "بیج" ; skin_N = mkN "جلد" feminine ; @@ -308,49 +308,49 @@ concrete LexiconUrd of Lexicon = CatUrd ** blow_V = mkV "چلنا" ; breathe_V = compoundV "سانس" (mkV "لینا" ) ; burn_V = mkV "جلنا" ; - dig_V = mkV "كھودنا" ; + dig_V = mkV "کھودنا" ; fall_V = mkV "گرنا" ; float_V = mkV "تیرنا" ; flow_V = mkV "بہنا" ; fly_V = mkV "اڑنا" ; freeze_V = mkV "جمنا"; - give_V3 = mkV3 (mkV "دینا") "كو" ""; + give_V3 = mkV3 (mkV "دینا") "کو" ""; laugh_V = mkV "ہنسنا" ; -- lie_N = mkN "جھوت" masculine ; lie_V = compoundV "جھوٹ" (mkV "بولنا" ); - play_V = mkV "كھیلنا" ; + play_V = mkV "کھیلنا" ; sew_V = mkV "سینا" ; sing_V = mkV "گانا" ; sit_V = mkV "بیٹھنا" ; smell_V = mkV "سونگنا" ; - spit_V = mkV "تھوكنا" ; - stand_V = compoundV "كھڑے" (mkV "ہونا" ); + spit_V = mkV "تھوکنا" ; + stand_V = compoundV "کھڑے" (mkV "ہونا" ); swell_V = mkV "سوجھنا" ; swim_V = mkV "تیرنا" ; think_V = mkV "سوچنا" ; turn_V = mkV "مڑنا"; - vomit_V = compoundV "التی" (mkV "كرنا") ; - bite_V2 = mkV2 (mkV "كاٹنا") ; + vomit_V = compoundV "التی" (mkV "کرنا") ; + bite_V2 = mkV2 (mkV "کاٹنا") ; count_V2 = mkV2 (mkV "گننا") ; - cut_V2 = mkV2 (mkV "كاتنا") ; + cut_V2 = mkV2 (mkV "کاتنا") ; fear_V2 = mkV2 (mkV "ڈرنا") ; fight_V2 = mkV2 (mkV "لڑنا") ; - hit_V2 = mkV2 (compoundV "ٹھوكر" (mkV "مارنا" )); - hold_V2 = mkV2 (mkV "پكڑنا") ; - hunt_V2 = mkV2 (compoundV "شكار" do_V2); + hit_V2 = mkV2 (compoundV "ٹھوکر" (mkV "مارنا" )); + hold_V2 = mkV2 (mkV "پکڑنا") ; + hunt_V2 = mkV2 (compoundV "شکار" do_V2); kill_V2 = mkV2 (compoundV "مار" (mkV "ڈالنا" )) ; - pull_V2 = mkV2 (mkV "كھنچنا"); - push_V2 = mkV2 (mkV "دھكیلنا") "كو" ; + pull_V2 = mkV2 (mkV "کھنچنا"); + push_V2 = mkV2 (mkV "دھکیلنا") "کو" ; rub_V2 = mkV2 (mkV "رگڑنا") ; - scratch_V2 = mkV2 (mkV "كھرچنا") "كو" ; - split_V2 = mkV2 (mkV "بانٹنا") "كو" ; + scratch_V2 = mkV2 (mkV "کھرچنا") "کو" ; + split_V2 = mkV2 (mkV "بانٹنا") "کو" ; -- squeeze_V2 = dirV2 (regV "سq?ععزع") ; -- stab_V2 = dirV2 (regDuplV "ستاب") ; suck_V2 = mkV2 (mkV "چوسنا") ; - throw_V2 = mkV2 (mkV "پھینكنا") ; + throw_V2 = mkV2 (mkV "پھینکنا") ; tie_V2 = mkV2 (mkV "باندھنا") ; wash_V2 = mkV2 (mkV "دھونا") ; - wipe_V2 = mkV2 (compoundV "صاف" (mkV "كرنا" )); + wipe_V2 = mkV2 (compoundV "صاف" (mkV "کرنا" )); ---- other_A = regA "؟تہعر" ; diff --git a/lib/src/urdu/MorphoUrd.gf b/lib/src/urdu/MorphoUrd.gf index 21a6e2bcb..232278ead 100644 --- a/lib/src/urdu/MorphoUrd.gf +++ b/lib/src/urdu/MorphoUrd.gf @@ -392,7 +392,7 @@ makeIQuant : Str -> {s : Number => Gender => Case => Str} = \str -> { => case root of { "ہو" => (mkPastInd root p n g).s ; "جا" => (mkPastInd "گی" p n g).s ; - "كر" => (mkPastInd "ك" p n g).s ; + "کر" => (mkPastInd "ک" p n g).s ; "دے" => (mkPastInd "د" p n g).s ; "لے" => (mkPastInd "ل" p n g).s ; _ => (mkPastInd root p n g).s }; @@ -415,7 +415,7 @@ makeIQuant : Str -> {s : Number => Gender => Case => Str} = \str -> { mkPastInd : Str -> UPerson -> Number -> Gender -> {s:Str} = \root,p,n,g -> {s = let roo = root ; a = case (last root) of { - "ا"|"آ"|"و"|"ك" => "یا" ; + "ا"|"آ"|"و"|"ک" => "یا" ; _ => "ا" } ; y = case (last root) of { @@ -423,7 +423,7 @@ makeIQuant : Str -> {s : Number => Gender => Case => Str} = \str -> { _ => "ی" } ; e = case (last root) of { - "ا"|"آ"|"و"|"ك" => "ئے" ; + "ا"|"آ"|"و"|"ک" => "ئے" ; _ => "ے" } ; yN = case (last root) of { diff --git a/lib/src/urdu/NumeralUrd.gf b/lib/src/urdu/NumeralUrd.gf index 2cba897db..e7bd2b567 100644 --- a/lib/src/urdu/NumeralUrd.gf +++ b/lib/src/urdu/NumeralUrd.gf @@ -55,7 +55,7 @@ oper mkR : Str -> Str -> Str -> Str -> Str -> Str -> Str -> Str -> Str -> DSize } ; oper rows : DSize => DSize => Str = table { - sg => mkR "گیار" "اك" "اكت" "اكت" "اكیاو" "اك" "اك" "اكی" "اكی" ; + sg => mkR "گیار" "اک" "اکت" "اکت" "اکیاو" "اک" "اک" "اکی" "اکی" ; r2 => mkR "بار" "بای" "بات" "بای" "باو" "با" "با" "بای" "ب" ; r3 => mkR "تیر" "تی" "تین" "تنت" "ترپ" "تری" "ت" "تر" "تر" ; r4 => mkR "چود" "چوب" "چون" "چوا" "چوو" "چون" "چوہ" "چور" "چور" ; @@ -71,7 +71,7 @@ oper rows : DSize => DSize => Str = table { oper ss : Str -> {s : Str} = \s -> {s = s} ; -lin pot01 = {s = table {unit => "ایك" ; _ => "دمی" } ; 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 pot111 = {s = rows ! sg ! sg ; size = less100 ; n = Pl} ; @@ -83,10 +83,10 @@ lin pot1plus d e = {s = rows ! e.size ! d.size ; size = less100 ; n = Pl} ; --ch 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 = Pl} ; --changed from d.n + s2 = d.s ! unit ++ "لاکھ" ; size = more100 ; n = Pl} ; --changed from d.n lin pot2plus d e = {s = (mksau (d.s ! unit) d.size) ++ e.s ; - s2 = (d.s ! unit) ++ "لاكھ" ++ (mkhazar e.s e.size) ; + s2 = (d.s ! unit) ++ "لاکھ" ++ (mkhazar e.s e.size) ; size = more100 ; n = Pl} ; lin pot2as3 n = {s = n.s ; n = n.n} ; @@ -111,7 +111,7 @@ 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 }; -oper ekhazar : Str = variants {"ہزار" ; "ایك" ++ "ہزار"} ; +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/urdu/ParseUrd.gf b/lib/src/urdu/ParseUrd.gf index 0a6a473e2..74b2b8609 100644 --- a/lib/src/urdu/ParseUrd.gf +++ b/lib/src/urdu/ParseUrd.gf @@ -84,6 +84,9 @@ ComplVV v a p vp = insertTrans (insertVV (infVV v.isAux vp) (predV v) vp.embComp } } ; -} +CompVP ant p vp = {s = \\a => ant.s ++ p.s ++ + infVP False vp a} ; + that_RP = { s = \\_,_ => "kh" ; a = RNoAg diff --git a/lib/src/urdu/StructuralUrd.gf b/lib/src/urdu/StructuralUrd.gf index 074489746..673573850 100644 --- a/lib/src/urdu/StructuralUrd.gf +++ b/lib/src/urdu/StructuralUrd.gf @@ -5,45 +5,45 @@ concrete StructuralUrd of Structural = CatUrd ** coding = utf8; lin - above_Prep = mkPrep ["كے اوپر"] ["كے اوپر"] ; - after_Prep = mkPrep ["كے بعد"] ["كے بعد"] ; + above_Prep = mkPrep ["کے اوپر"] ["کے اوپر"] ; + after_Prep = mkPrep ["کے بعد"] ["کے بعد"] ; all_Predet = ss "تمام" ; almost_AdA, almost_AdN = mkAdN "تقریبا" ; although_Subj = ss "اگرچہ" ; always_AdV = ss "ہمیشہ" ; and_Conj = sd2 [] "اور" ** {n = Pl} ; - because_Subj = ss "كیونكہ" ; + because_Subj = ss "کیونکہ" ; before_Prep = mkPrep ["سے پہلے"] ["سے پہلے"] ; - behind_Prep = mkPrep ["كے پیچھے"] ["كے پیچھے"] ; + behind_Prep = mkPrep ["کے پیچھے"] ["کے پیچھے"] ; between_Prep = mkPrep "درمیاں" "درمیاں" ; both7and_DConj = sd2 "دونوں" "اور" ** {n = Pl} ; - but_PConj = ss "لیكن" ; + but_PConj = ss "لیکن" ; by8agent_Prep = mkPrep "سے" "" ; by8means_Prep = mkPrep "پر" "" ; - can8know_VV,can_VV = mkV "سكنا" ** { isAux = True} ; - during_Prep = mkPrep ["كے درمیاں"] ["كے درمیاں"] ; - either7or_DConj = sd2 "كوی ایك" "یا" ** {n = Sg} ; - everybody_NP = MassNP (UseN (ParadigmsUrd.mkN "ہر كوی" "ہر كوی" "ہر كوی" "ہر كوی" "ہر كوی" "ہر كوی" Masc )); -- not a good way coz need to include NounUrd + can8know_VV,can_VV = mkV "سکنا" ** { isAux = True} ; + during_Prep = mkPrep ["کے درمیاں"] ["کے درمیاں"] ; + either7or_DConj = sd2 "کوی ایک" "یا" ** {n = Sg} ; + everybody_NP = MassNP (UseN (ParadigmsUrd.mkN "ہر کوی" "ہر کوی" "ہر کوی" "ہر کوی" "ہر کوی" "ہر کوی" Masc )); -- not a good way coz need to include NounUrd every_Det = mkDet "ہر" "ہر" "ہر" "ہر" Sg; everything_NP = MassNP (UseN (ParadigmsUrd.mkN "ہر چیز" "ہر چیز" "ہر چیزو" "سب چیزیں" "سب چیزوں" "سب چیزو" Masc )); everywhere_Adv = mkAdv "ہر جگہ" ; few_Det = mkDet "چند" "چند" "چند" "چند" Pl ; first_Ord = {s = "پعہلا" ; n = Sg} ; --DEPRECATED - for_Prep = mkPrep "كیلیے" "كیلیے" ; + for_Prep = mkPrep "کیلیے" "کیلیے" ; from_Prep = mkPrep "سے" "سے" ; - he_Pron = personalPN "وہ" "اس" "" ["اس كا"] ["اس كی"] ["اس كے"] ["اس كی"] Sg Masc Pers3_Distant ; + he_Pron = personalPN "وہ" "اس" "" ["اس کا"] ["اس کی"] ["اس کے"] ["اس کی"] Sg Masc Pers3_Distant ; here_Adv = mkAdv "یہاں" ; here7to_Adv = mkAdv ["یہاں پر"] ; here7from_Adv = mkAdv ["یہاں سے"] ; - how_IAdv = ss "كیسے" ; - how8many_IDet = makeIDet "كتنے" "كتنی" Pl ; - how8much_IAdv = ss "كتنا" ; + how_IAdv = ss "کیسے" ; + how8many_IDet = makeIDet "کتنے" "کتنی" Pl ; + how8much_IAdv = ss "کتنا" ; if_Subj = ss "اگر" ; - in8front_Prep = mkPrep ["كے سامنے"] ["كے سامنے"] ; + in8front_Prep = mkPrep ["کے سامنے"] ["کے سامنے"] ; i_Pron = personalPN "میں" "مجھ" "" "میرا" "میری" "میرے" "میری" Sg Masc Pers1; in_Prep = mkPrep "میں" "میں" ; - it_Pron = personalPN "یہ" "اس" "اس" ["اس كا"] ["اس كی"] ["اس كے"] ["اس كی"] Sg Masc Pers3_Near; - less_CAdv = {s = "كم" ; p = ""} ; + it_Pron = personalPN "یہ" "اس" "اس" ["اس کا"] ["اس کی"] ["اس کے"] ["اس کی"] Sg Masc Pers3_Near; + less_CAdv = {s = "کم" ; p = ""} ; many_Det = mkDet "بہت زیادہ" "بہت زیادہ" "بہت زیادہ" "بہت زیادہ" Pl ; more_CAdv = {s = "زیادہ" ; p = "سے" } ; most_Predet = ss "زیادہ تر" ; @@ -63,67 +63,67 @@ concrete StructuralUrd of Structural = CatUrd ** -----b no_Phr = ss "نo" ; no_Utt = ss "نہیں" ; on_Prep = mkPrep "پر" "پر" ; --- one_Quant = demoPN "ایك" "ایك" "ایك" ; -- DEPRECATED +-- one_Quant = demoPN "ایک" "ایک" "ایک" ; -- DEPRECATED only_Predet = ss "صرف" ; or_Conj = sd2 [] "یا" ** {n = Sg} ; otherwise_PConj = ss "یا پھر" ; part_Prep = mkPrep "" "" ; please_Voc = ss "مہربانی" ; - possess_Prep = mkPrep "كا" "كی" ; + possess_Prep = mkPrep "کا" "کی" ; quite_Adv = ss "خاموش" ; - she_Pron = personalPN "وہ" "اس" "وہ" ["اس كی"] ["اس كی"] ["اس كے"] ["اس كی"] Sg Fem Pers3_Distant ; + she_Pron = personalPN "وہ" "اس" "وہ" ["اس کی"] ["اس کی"] ["اس کے"] ["اس کی"] Sg Fem Pers3_Distant ; so_AdA = ss "اس لیے" ; - somebody_NP = MassNP (UseN (ParadigmsUrd.mkN "كوی" "كوی" "كوی" "كوی" "كوی" "كوی" Masc )); - someSg_Det = mkDet "كچھ" "كچھ" "كچھ" "كچھ" Sg ; - somePl_Det = mkDet "كچھ" "كچھ" "كچھ" "كچھ" Pl ; - something_NP = MassNP (UseN (ParadigmsUrd.mkN "كوی چیز" "كوی چیز" "كوی چیز" "كھ چیزیں" "كھ چیزوں" "كھ چیزو" Masc )); - somewhere_Adv = mkAdv ["كہیں پر"] ; + somebody_NP = MassNP (UseN (ParadigmsUrd.mkN "کوی" "کوی" "کوی" "کوی" "کوی" "کوی" Masc )); + someSg_Det = mkDet "کچھ" "کچھ" "کچھ" "کچھ" Sg ; + somePl_Det = mkDet "کچھ" "کچھ" "کچھ" "کچھ" Pl ; + something_NP = MassNP (UseN (ParadigmsUrd.mkN "کوی چیز" "کوی چیز" "کوی چیز" "کھ چیزیں" "کھ چیزوں" "کھ چیزو" Masc )); + somewhere_Adv = mkAdv ["کہیں پر"] ; that_Quant = demoPN "وہ" "اس" "ان" ; - that_Subj = ss "كہ"; + that_Subj = ss "کہ"; there_Adv = mkAdv "وہاں" ; there7to_Adv = mkAdv ["وہاں پر"] ; there7from_Adv = mkAdv ["وہاں سے"] ; therefore_PConj = ss "اس لیے" ; - they_Pron = personalPN "وہ" "وہ" "وہ" ["ان كا"] ["ان كی"] ["ان كے"] ["ان كی"] Pl Masc Pers3_Distant ; ---- + they_Pron = personalPN "وہ" "وہ" "وہ" ["ان کا"] ["ان کی"] ["ان کے"] ["ان کی"] Pl Masc Pers3_Distant ; ---- this_Quant = demoPN "یہ" "اس" "ان"; through_Prep = mkPrep ["میں سے"] ["میں سے"] ; too_AdA = ss "بہت" ; - to_Prep = mkPrep "كو" "كو" ; -- ** {lock_Prep = <>}; - under_Prep = mkPrep "كے نیچے" "كے نیچے" ; -- ** {lock_Prep = <>}; + to_Prep = mkPrep "کو" "کو" ; -- ** {lock_Prep = <>}; + under_Prep = mkPrep "کے نیچے" "کے نیچے" ; -- ** {lock_Prep = <>}; very_AdA = ss "بہت" ; want_VV = mkV "چاہنا" ** { isAux = False} ; we_Pron = personalPN "ہم" "ہم" "ہم" "ہمارا" "ہماری" "ہمارے" "ہماری" Pl Masc Pers1 ; - whatSg_IP = mkIP "كیا" "كس" "كس" Sg Masc ; - whatPl_IP = mkIP "كیا" "كن" "كن" Pl Masc ; - when_IAdv = ss "كب" ; + whatSg_IP = mkIP "کیا" "کس" "کس" Sg Masc ; + whatPl_IP = mkIP "کیا" "کن" "کن" Pl Masc ; + when_IAdv = ss "کب" ; when_Subj = ss "جب" ; - where_IAdv = ss "كہاں" ; --- which_IQuant = {s = \\_ => "كون سی"} ; - which_IQuant = mkIQuant "كون" ; --- whichPl_IDet = makeDet "كون سا" "كون سی" "كون سے" "كون سی" ; --- whichSg_IDet = makeDet "كون سا" "كون سی" "كون سے" "كون سی" ; - whoSg_IP = mkIP "كون" "كس" "كس" Sg Masc ; - whoPl_IP = mkIP "كون" "كن" "كنہوں" Pl Masc ; - why_IAdv = ss "كیوں" ; - without_Prep = mkPrep ["كے بغیر"] ["كے بغیر"] ; - with_Prep = mkPrep ["كے ساتھ"] ["كے ساتھ"] ; + where_IAdv = ss "کہاں" ; +-- which_IQuant = {s = \\_ => "کون سی"} ; + which_IQuant = mkIQuant "کون" ; +-- whichPl_IDet = makeDet "کون سا" "کون سی" "کون سے" "کون سی" ; +-- whichSg_IDet = makeDet "کون سا" "کون سی" "کون سے" "کون سی" ; + whoSg_IP = mkIP "کون" "کس" "کس" Sg Masc ; + whoPl_IP = mkIP "کون" "کن" "کنہوں" Pl Masc ; + why_IAdv = ss "کیوں" ; + without_Prep = mkPrep ["کے بغیر"] ["کے بغیر"] ; + with_Prep = mkPrep ["کے ساتھ"] ["کے ساتھ"] ; -- yes_Phr = ss "ہاں" ; yes_Utt = ss "ہاں" ; youSg_Pron = personalPN "تو" "تو" "تو" "تیرا" "تیری" "تیرے" "تیری" Sg Masc Pers2_Casual ; youPl_Pron = personalPN "تم" "تم" "تم" "تمھارا" "تمھاری" "تمھارے" "تمھاری" Pl Masc Pers2_Casual ; - youPol_Pron = personalPN "آپ" "آپ" "آپ" ["آپ كا"] ["آپ كی"] ["آپ كے"] ["آپ كی"] Pl Masc Pers2_Respect ; - no_Quant = demoPN " كوی نہیں" "كوی نہیں" "كوی نہیں" ; + youPol_Pron = personalPN "آپ" "آپ" "آپ" ["آپ کا"] ["آپ کی"] ["آپ کے"] ["آپ کی"] Pl Masc Pers2_Respect ; + no_Quant = demoPN " کوی نہیں" "کوی نہیں" "کوی نہیں" ; not_Predet = {s="نہیں"} ; if_then_Conj = sd2 "اگر" "تو" ** {n = Sg} ; - at_least_AdN = mkAdN ["كم از كم"] ; + at_least_AdN = mkAdN ["کم از کم"] ; at_most_AdN = mkAdN ["زیادہ سے زیادہ"]; - nothing_NP = MassNP (UseN (ParadigmsUrd.mkN "كوی چیز نہیں" "كوی چیز نہیں" "كوی چیز نہیں" "كوی چیز نہیں" "كوی چیز نہیں" "كوی چیز نہیں" Masc )); - except_Prep = mkPrep "كے سواے" "كے سواے" ; - nobody_NP = MassNP (UseN (ParadigmsUrd.mkN "كوی نہیں" "كوی نہیں" "كوی نہیں" "كوی نہیں" "كوی نہیں" "كوی نہیں" Masc )); + nothing_NP = MassNP (UseN (ParadigmsUrd.mkN "کوی چیز نہیں" "کوی چیز نہیں" "کوی چیز نہیں" "کوی چیز نہیں" "کوی چیز نہیں" "کوی چیز نہیں" Masc )); + except_Prep = mkPrep "کے سواے" "کے سواے" ; + nobody_NP = MassNP (UseN (ParadigmsUrd.mkN "کوی نہیں" "کوی نہیں" "کوی نہیں" "کوی نہیں" "کوی نہیں" "کوی نہیں" Masc )); as_CAdv = {s = "اتنا" ; p = "جتنا"} ; - have_V2 = mkV2 (mkV "ركھنا") "" ; + have_V2 = mkV2 (mkV "رکھنا") "" ; language_title_Utt = ss "اردو" ; diff --git a/lib/src/urdu/src/ExtraUrd.gf b/lib/src/urdu/src/ExtraUrd.gf index a4e0f62fe..93cde49ce 100644 --- a/lib/src/urdu/src/ExtraUrd.gf +++ b/lib/src/urdu/src/ExtraUrd.gf @@ -25,4 +25,25 @@ flags coding = utf8 ; make_CV = mkVerb "nothing" ** {c2 = "" }; -- for VP conjunction -} + +PassVPSlash vps = vps ; +{- +--{ + -- let + -- be = predAux auxBe + -- in { + -- s = be.s ; + s = vps.s ; + obj = vps.obj ; + subj = vps.c2.c ; + inf = vps.inf; + ad = vps.ad; + embComp = vps.embComp; + prog = vps.prog ; + comp = vps.comp ; + cvp = vps.cvp + -- } ; + +--}; +-} +} \ No newline at end of file diff --git a/src/compiler/GF/Text/Transliterations.hs b/src/compiler/GF/Text/Transliterations.hs index b51e4665f..5eb64ec17 100644 --- a/src/compiler/GF/Text/Transliterations.hs +++ b/src/compiler/GF/Text/Transliterations.hs @@ -138,13 +138,13 @@ allTransUrduHindi = words $ transUrdu :: Transliteration transUrdu = (mkTransliteration "Urdu" allTrans allCodes) where - allCodes = [0x0622 .. 0x062f] ++ [0x0630 .. 0x063a] ++ [0x0641 .. 0x0648] ++ + allCodes = [0x0622 .. 0x062f] ++ [0x0630 .. 0x063a] ++ [0x0641,0x0642] ++ [0x06A9] ++ [0x0644 .. 0x0648] ++ [0x0654,0x0658,0x0679,0x067e,0x0686,0x0688,0x0691,0x0698,0x06af,0x06c1,0x06c3,0x06cc,0x06ba,0x06be,0x06d2] ++ [0x06f0 .. 0x06f9] ++ [0x061f,0x06D4] allTrans = words $ "A - w^ - y^ a b - t C j H K d " ++ -- 0622 - 062f "Z r z s X S Z- t- z- e G " ++ -- 0630 - 063a - "f q k l m n - w " ++ -- 0641 - 0648 + "f q k l m n - w " ++ -- 0641, 0642, 0643 - 0648 "$ n- T p c D R x g h t: y N h' E " ++ -- 0654,658,679,67e,686,688,698,6af,6c1,6c3,6cc,6ba,6be,6d2 "N0 N1 N2 N3 N4 N5 N6 N7 N8 N9 " ++ "? ."