diff --git a/Makefile.am b/Makefile.am index bcff7a42..180c17b9 100644 --- a/Makefile.am +++ b/Makefile.am @@ -839,6 +839,12 @@ dictsource/si_extra: espeak-ng-data/si_dict: src/espeak-ng phsource/phonemes.stamp dictsource/si_list dictsource/si_rules dictsource/si_extra cd dictsource && ESPEAK_DATA_PATH=$(PWD) LD_LIBRARY_PATH=../src:${LD_LIBRARY_PATH} ../src/espeak-ng --compile=si && cd .. +sd: espeak-ng-data/sd_dict +dictsource/sd_extra: + touch dictsource/sd_extra +espeak-ng-data/sd_dict: src/espeak-ng phsource/phonemes.stamp dictsource/sd_list dictsource/sd_rules dictsource/sd_extra + cd dictsource && ESPEAK_DATA_PATH=$(PWD) LD_LIBRARY_PATH=../src:${LD_LIBRARY_PATH} ../src/espeak-ng --compile=sd && cd .. + sk: espeak-ng-data/sk_dict dictsource/sk_extra: touch dictsource/sk_extra diff --git a/dictsource/sd_list b/dictsource/sd_list new file mode 100644 index 00000000..06093f74 --- /dev/null +++ b/dictsource/sd_list @@ -0,0 +1,170 @@ +sindhi +// This file is UTF8 encoded +// Letter Names, Numbers and exceptional pronounciation of Urdu + + +// The Letter names +ا alIf +ب be: +پ pe: +ت te: +ٹ te: +ث se: +ج Ji:m +چ ce: +ح bar.i:|| +خ xe: +د da:l +ڈ da:l +ذ za:l +ر Re: +ڑ r.e: +ز ze: +ژ Ze: +س si:n +ش Si:n +ص sUa:d +ض zUa:d +ط tOe: +ظ zOe: +ع aIn +غ QaIn +ف fe: +ق qa:f +ک ka:f +گ ga:f +ل la:m +م mi:m + ن nu:n +_و va:O +ہ he: +ں ghUnna +ﮨ cho:ti:||he: +ھ dO||caSmi:||he: +ء hamzah +ی c#o:ti:||je: +ے bar.i:||je: +ئ h'amza +ۂ he:h'amza +_ؤ va:Oh'amza + +َ z@b@R +ِ ze:R +ُ pe:S +ٰ ,alIfmaqs'u:r,a +ّ t,aSd'i:d +ً d'o:zab'ar + + +// The numbers +_0 bu're +_1 hi'ku +_2 ba: +_3 te +_4 ca:r +_5 pan'ja: +_6 ch'aha: +_7 sa'ta: +_8 ath'a: +_9 na'va: +_10 da'ha: +_11 jara:ha +_12 bara:ha +_13 tera:ha +_14 cOda:ha +_15 pa'dra:ha +_16 sora:ha +_17 satira:ha +_18 ari'rahan +_19 una'via +_20 viha: +_21 ek'kie +_22 bavi'a +_23 tevi'a +_24 cO'via +_25 panc'via +_26 cha'via +_27 sat'avia +_28 at:avia +_29 una:tie +_30 ti'ha +_31 ek'atiha +_32 battiha +_33 tettiha +_34 cO'tiha +_35 panc:tiha +_36 chat'tiha +_37 sat'tatiha +_38 att:atiha +_39 unuta:vie +_40 ca'li: +_41 ek'eta:rie +_42 ba:ite'rie +_43 te'ta:rie +_44 cOt'erie +_45 panci'terie +_46 cai'terieh +_47 sati'terie +_48 ati'terie +_49 urur'ja +_50 pan'ja +_51 ekvan'ja +_52 bavan'ja +_53 tevan'ja +_54 cOvanja +_55 pa:van'ja +_56 ca'vaja: +_57 sat:ur'ja +_58 at:ur'ja +_59 una:hat:i +_60 sa:thi +_61 eka:thi +_62 ba:hathi +_63 teha:thi +_64 cO'hathi +_65 panja'hathi +_66 ca:hathi +_67 sat'tathi +_68 at'thati +_69 un'ha't:har +_70 sata:ri +_71 ek'hat:ar +_72 ba'hat'ar +_73 te'hat'ar +_74 cOhat'ar +_75 pan'jat'ar +_76 cha'hat'ar +_77 sat'ta'tar +_78 at:hat'ar +_79 un'a:si +_80 a:si +_81 ek'ea'si +_82 bea'si +_83 tea'si +_84 cO'rasi +_85 panc'a:si +_86 chhajasi +_87 sat'tea:si +_88 at:ha:si +_89 ur'ra:nave +_90 nave +_91 ek'ka'navi +_92 bea'navi +_93 tea'navi +_94 cOra:navi +_95 panca:navi +_96 cha:navi +_97 sat'ta:navi +_98 at:tha:navi +_99 nava:navi +_100 sO + +_0M1 haz'a:r +_0M2 l'a:kh +_0M3 kaR'o:R +_0M4 'aRab +_0M5 'k#aRab + +_dpt _da:he_ + + diff --git a/dictsource/sd_rules b/dictsource/sd_rules new file mode 100644 index 00000000..c90759b5 --- /dev/null +++ b/dictsource/sd_rules @@ -0,0 +1,668 @@ + +// This file is UTF8 encoded +// phoneme rules for Sindhi +// Letter group - l01: Vowels + +.replace +٠ 0 +١ 1 +٢ 2 +٣ 3 +٤ 4 +٥ 5 +٦ 6 +٧ 7 +٨ 8 +٩ 9 +ي ی +یٰ ا + + +// vowel signs, alif acts as consonants at start of word if these follow +.L01 َ ِ ُ و ی ع ا ے + +// Consonants +.L02 ب پ ت ٹ ث ج چ ح خ د ڈ ذ ر ڑ ز ژ س ش ص ض ط ظ غ ف ق ک گ ل م ن ہ ئ + +// VOWELS + +.group َ + َ a + َی E + َے E + َو O + َع a: + +.group ِ + ِ I + ِی i: + ِع i: + @) ِ (_S1 'e: + +.group ُ + ُ U + ُو u: + ُع O + +.group ھ + ھ hV + ھ (_ h: +ھ (l01 + +.group ٰ + ٰ a: + +.group ا + ا a: + _) ا (L01 // Acts like Consonants if followed by a vowel but is silent. +_) ا a +_) او u: +_) ای e: + ائ (L02 a:I + اہ(_a:h + _) اتن 'Itn + _) اتر Ut'aR + _) اتر (L01 UtR + _) الٹ Ul'at + _) الٹ (L01 Ult + _) الجھ Ul'aJh + _) الجھ (L01 UlJh + _) ابھر Ubh'aR + _) ابھر (L01 UbhR + _) اچھل Uch'al + _) اچھل (L01 Uchl + _) اجڑ UJ'ar. + _) اجڑ (L01 UJr. + افتتاح ,ItIt'a:h + اسلام ,Isl'a:m + _) انسان Ins'a:n + _) انت (L02 'Int,a + _) امید Um'i:d + اً(_S2 'an + _) امکان ,Imk'a:n + _) افسر ,afs'aR + _) اتفاق ,ItIf'a:q + _) ابتدا 'Ibt,Ida: + _) ایمان i:m'a:n + _) اعت 'e:tI + _) اضاف Iz'a:f + _) اسمبلی as'ambli: + _) اٹھت 'Ut:ht + _) اٹھن 'Ut:hn + _) اٹھات Ut:h'a:t + اقلیت ,aqali:;'at + استثن ,Ist'asn + اندھیر 'and#e:R + انتالیس ,Unta:l'i:s + انتیس ,Unt'i:s + اکثر ,aks'aR + ایران i:R'a:n + اجتماع ,IJtIm'a: + استحصال ,Ist,e:S:'a:l + _) امنگ Um'ang + انعام In'a:m + امتحان ,ImtIh'a:n + الزام ,Ilz'a:m + اشتہار ,IStIh'a:R + اصول Us.'u:l + اعلان e:l'a:n + اعزاز e:z'a:z + انقلاب ,InqIl'a:b + اصلاح ,Is.l'a:h + امداد ,Imd'a:d + استعف Ist'i:f + @) ات (_S2 'a:t + _) انتظ 'Int,Iz. + _) اخت (L02 ,IxtI + _) اقت (L02 ,IqtI + _) اح (L02 'Eh + _) است (L02 ,IstI + _) ارت (L02 ,IRtI + +.group آ + آ a: + آتش 'a:tIS + آہست a:h'Ist + + +.group ع + ع a: + عا a: + _) ع a + _) عیس 'i:s + _) عید 'i:d + عنوان Unv'a:n + _) عمر 'UmR + L02) عی (_ 'ai: + علیحد 'alEhd + +.group و + و o: + وُ vU + وٗ u: + و (L01 v + _) و vV + وع (_ u: + وّ vv + L02L02L02) و (L02 u: + L02) ونکہ (_ u:nk'e:h + +.group ی + ی e: + ی (L01 j + ی (_ i: + _) ی jV + یع(_ i: + @) ی i: + @) یں (_ e:n + یّ jj + @) یت (_S2 i:;'at + +.group ے // yeh barree + ے e: + +.group ۂ + ۂ 'ae: + +// with hamza +.group ئ + ئ + +.group ؤ + ؤ aU // ?? + +.group أ + أ // ?? + + +// CONSONANTS + +.group ب + ب bV + بھ bhV + بھ (L01 b' + ب (L01 b' + بّ bbV + بّ (L01 bb + _) بگڑ bIg'ar + _) بگڑ (L01 b'Igr + _) بکھر bIkh'aR + _) بکھر (L01 b'IkhR + _) بچھڑ bIch'ar + _) بچھڑ (L01 bIchr + _) بجھ b'UJh + بھوک bh'u:k + بھیک bh'i:k + بھیگ bh'i:g + بھول bh'u:l + _) بیان baj'a:n + _) بٹھا b'It:ha: + بئی b'ai: + بیوی b'i:vi: + _) بیوا b'e:va: + برسر b,ars'ar + بگاڑ bIg'a:r + بغاوت b,aQa:v'at + _) بہ (L02 bEh + بزرگ b'UzUr,g + _) بدل (L02 bad'al + بوڑھ b'u:r:h + _) بے (P2 b'e: + +.group ڀ + ڀ b + +.group پ + پ pV + پھ phV + پ (L01 p + پھ (L01 p + پّ ppV + پّ (L01 pp + _) پھر ph'Ir + پھول ph'u:l + _) پہ (L02 p'Eh + پہنچ pah'Unc + پوچھ p'u:c + پیچھ p'i:c + پھونک ph'u:nk + +.group ت + ت tV + تھ thV + ت (L01 t + تھ (L01 t + تّ ttV + تّ (L01 tt + _) تمہ t'Umh + تحقیق t,Ehq'i:q + _) ترجم t'arJ,Um + _) تہ (L02 t'Eh + _) تجز t'aJz + تقرر taq'arUr + تجرب taJ'arb + _) تیار t,ai:'a:r + _) تیسر t'i:sr + +.group ٿ + ٿ 't + +.group ٹ + ٹ t:V + ٹھ t:V + ٹ (L01 t: + ٹھ (L01 t: + ٹّ V:t:t: + ٹّ (L01 t:t: + ٹریفک t:r'e:fIk + _) ٹکڑ t:'Ukr + _) ٹہ (L02 t:'Eh + + +.group ث + ث sV + ث (L01 s + ثّ ssV +ثّ (L01 ss + + +.group ج + ج JV + جھ JhV + ج (L01 J + جھ (L01 Jh + جّ JJV + جّ (L01 JJ + _) جیت J'i:t + _) جوا J'ava: + جانب J'a:nIb + _) جنس J'Ins + جھوٹ Jh'u:t + _) جمل J'Uml + _) جہ (L02 J'Eh + _) جدا J'Uda: + +.group چ + چ cV + چھ chV + چ (L01 c + چھ (L01 ch + چّ ccV + چّ (L01 cc + _) چکا c'Uka: + _) چہ (L02 c'Eh + _) چیز c'i:z + _) چوم c'u:m + +.group ڇ + ڇ hc + +.group ح + ح hV + ح (L01 h + ح (_ 'ah + L01) ح (_ h + حکومت h,Uku:m'at + حکمران h,Ukmar'a:n + _) حوال hav'a:l + + + حّ hhV + حّ (L01 hh + +.group خ + خ xV + خ (L01 x + @) خ (ت x + خّ xxV + خّ (L01 xx + _) خوش x'US + _) خود x'Ud + _) خواہش xv'a:hIS + _) خیا x'aja: + + +.group د + د dV + دھ d#V + د (L01 d + دھ (L01 d# + دّ ddV + دّ (L01 dd + درخواست d,aRxv'a:st + دیا(_ d'i:;a: + درج d'aRJ + دیوا d'i:va: + دفاع d'Ifa: + _) دہ (L02 d'Eh + دنیا dUn'i:;a: + دہشت d'EhS'at + دلچسپ d,Ilc'asp + دھیم dh'i:m + _) دوسر d'u:sr + +.group ڌ + ڌ hd + +.group ڏ + ڏ d + +.group ڊ + ڊ :d + +.group ڍ + ڍ hd + +.group ڈ + ڈ dV + ڈھ dhV + ڈ (L01 d: + ڈھ (L01 d:h + ڈّ d:d:V + ڈّ (L01 d:d + ڈھونڈ d:h'u:nd + @) ڈز (_ d:z + +.group ذ + ذ DV + ذ (L01 D + ذّ DDV + ذّ (L01 DD + _) ذہ (L02 D'Eh + +.group ر + ر RV + ر (L01 R + رّ RRV + رّ (l01 RR + @) ر (ٹ R + @) ر (ڈ R + @) ردہ (_ Rd,a + @) ر (چ R + _) رہ (L02 R'Eh + _) رخ R'Ux + _) رکن R'Ukn + @) ر (د R + _) رفت R'af@t + +.group ڙ + ڙ :r + +.group ڙھ + ڙھ :hr + +.group ڑ + ڑ r:V + ڑ (L01 r: + ڑّ r:r:V + ڑّ (L01 r:r: + ڑھ r:hV + ڑھ (L01 r:h + +.group ز + ز zV + ز (L01 z + زّ zzV + زّ (L01 zz + _) زند z'Ind + _) زہ (L02 z'Eh + _) زلزل z,alz'al + +.group ژ + ژ ZV + ژ (L01 Z + +.group س + س sV + س (L01 s + سّ ssV + سّ (L01 ss + _) سرخ s'URx + _) سن (L01 s'Un + _) سلجھ sUl'aJh + _) سلجھ (L01 sUlJh + _) سدھر sUdh'aR + _) سدھر (L01 sUdhR + _) سلسل s'Ils,Il + _) ستار sIt'a:R + @) س (ٹ s + سندھ s'Ind# + سیکھ s'i:kh + @) س (ت s + _) سپرد sUp'URd + _) سہ (L02 s'Eh + سیدھ s'i:dh + سیاست sja:s'at + سرگرم s,aRg'aRm + +.group ش + ش SV + ش (L01 S + شّ SSV + شّ (L01 SS + _) شعب S'Ob + شاعر Sa:'a:IR + _) شعرا S'ORa: + _) شعل S'Ol + @) ش (ت S + _) شخص S'axs. + _) شہ (L02 S'Eh + شرمند S,aRm'Ind + +.group ص + ص s.V + ص (L01 s. + صّ ssV + صّ (L01 ss + صوب s.'u:b + +.group ض + ض zV + ض (L01 z + ضّ zzv + ضّ (L01 zz + +.group ط + ط tV + طھ t#V + ط (L01 t + طھ (L01 t# + طّ ttV + طّ (L01 tt + +.group ظ + ظ z.V + ظ (L01 z. + ظّ z.z.V + ظّ (L01 z.z. + +.group غ + غ QV + غ (L01 Q + غّ QQV + غّ (L01 QQ + +.group ف + ف fV + ف (L01 f + فّ ffV + فّ (L01 ff + _) فکر f'IkR + _) فہ (L02 f'Eh + فلم f'Ilm + +.group ڦ + ڦ f + +.group ق + ق qV + ق (L01 q + قّ qqV + قّ (L01 qq + قاعد q'a:jd + _) قسط q'Ist + _) قیا q'aja: + +.group ک + ک kV + کھ khV + ک (L01 k + کھ (L01 kh + کّ kkV + کّ (L01 kk + _) کتن k'Itn + کتاب kIt'a:b + کوشش k'o:SIS + _) کہ (L02 k'Eh + کارکن k'a:Rk,UUn + +.group گ + گ gV + گھ ghV + گ (L01 g + گھ (L01 gh + گّ ggV + گّ (L01 gg + _) گرفت g'IRIft + _) گزر gUz'aR + _) گزر (L01 gUzR + گئے g'ae: + گئی g'ai: + گمشد g'UmS,Ud + _) گھما gh'Uma: + _) گہ (L02 g'Eh + گزارش gUz'a:RIS + _) گیت g'i:t + +.group ڳ + ڳ g + +.group گھ + گھ hg + +.group ل + ل lV + ل (L01 l + لّ llV + لّ (L01 ll + لکھ l'Ikh + _) لہ (L02 l'Eh + +.group م + م mV + م (L01 m + مّ mmV + مّ (L01 mm + _) مشکل m'USk,Il + محکم me:he:km + مظاہر mUz.'a:hIR + _) ملن (L01 m'Iln + مسجد m'asJ,Id + مشرق m'aSR,Iq + مقدم mUq'adm + مسلم m'Usl,Im + مسلما mUs'alm,a: + @) م (پ m + منزل m'anz,Il + @) م (ب m + محقق mUh'aqIq + منظر m,anz.'aR + محفل m'Ehf,Il + مسکرا m'Usk,URa: + مسکراہٹ m,Usk,URa:h'at: + محسن m'o:hs,In + مجرم m'UJR,Im + منظور m,anz.'u:R + ملزم m'Ulz,Im + مغرب m'aQR,Ib + متحد mUt'ahId + _) مہ (L02 m'Eh + مخالف mUx'a:lIf + مخالفت m,Uxa:lIf'at + ممکن m'Umk,In + مطالب mUt'a:lIb + موجود mo:J'u:d + متصل mUt'as.Il + مخبر m'Uxb,IR + ملحق m'Ulh,Iq + مذہب m,aDh'ab + +.group ن + ن nV + ن (L01 n + @) ن (گ n + @) ن (د n + @) ن (ب n + @) ن (س n + نّ nnV + نّ (L01 nn + _) نکل nIk'al + _) نکل (L01 nIkl + @) ن (چ n + _) نکال nIk'a:l + _) نگاہ nIg'a:h + _) نمٹ nIm'at: + _) نمٹ (L01 nImt: + @) ن (پ n + @) نچل n'Icl + نشان nIS'a:n + @) ن (ڈ n + _) نظر naz.'aR + _) نظام nIz.'a:m + _) نہ (L02 n'h + L01) نٹ n't: + نھ nh + _) نکت n'Ukt + _) نوا n'ava: + _) نما n'Uma: + _) نماز nam'a:z + +.group ں + ں n // this should nasalize the vowel + +.group ء + ء + +.group ئ + ئ + L01) ئ (L02 'I + +.group ہ + ہ h + _) ہ (L01 h + _) ہ (ند hI + ہّ hhV + ہّ (L01 hh + + ہ (_ a + _) ہلن h'Iln + ہ (L02 hV + @) ہ (L02L01 h + _) ہم (L02L02L02P2 h'am + +.group ّ + ّ + +.group ً + ً + + +// Common symbols + +.group + $ do:l@R + , sVkat:Vh // Sakata سکتہ + ! f'iJa:ja //Fijaya فجائیہ + ; w'ak't'a //Waqfa وقفہ + : r'a:b'tah//Rabtar رابطہ + ? saw'a:l'i:ja:n'is'a:nV // Sawaliya Nishan سوالیہ نشان + % f'i:sVd //Fisad فیصد + + + +.group 0xe0a4 // devanagari + 0xe0a4 _^_NE // switch to Nepali voice +.group 0xe0a5 // devanagari + 0xe0a5 _^_NE + + diff --git a/espeak-ng-data/voices/inc/sd b/espeak-ng-data/voices/inc/sd new file mode 100644 index 00000000..2e94326b --- /dev/null +++ b/espeak-ng-data/voices/inc/sd @@ -0,0 +1,2 @@ +name sindhi +language sd diff --git a/phsource/ph_sindhi b/phsource/ph_sindhi new file mode 100644 index 00000000..da3c932a --- /dev/null +++ b/phsource/ph_sindhi @@ -0,0 +1,201 @@ +//==================================================== +// Phonemes Sindhi in Urdu script +//==================================================== + + +phoneme : // Lengthen the previous vowel by "length" + virtual + length 120 +endphoneme + +phoneme @ + vwl flag1 starttype #@ endtype #@ + length 130 + + ChangeIfDiminished(@-) + IF nextPh(H) THEN + FMT(vowel/@_low) + ENDIF + FMT(vowel/@_bck) +endphoneme + + +phoneme V + vwl flag1 starttype #@ endtype #@ + length 150 + CALL hi/V +endphoneme + + +phoneme @2 + vwl flag1 starttype #@ endtype #@ + length 150 + FMT(vowel/@_low) +endphoneme + +phoneme @3 + vwl flag1 starttype #@ endtype #@ + length 150 + ChangeIfDiminished(@-) + FMT(vowel/@_3) +endphoneme + + +phoneme @2 + vwl flag1 starttype #@ endtype #@ + length 130 + FMT(vowel/@_low) +endphoneme + +phoneme @3 + vwl flag1 starttype #@ endtype #@ + length 130 + ChangeIfDiminished(@-) + FMT(vowel/@_3) +endphoneme + + + + +phoneme i: + vwl lng starttype #i endtype #i + length 230 + IF thisPh(isUnstressed) THEN + ChangePhoneme(i) + ENDIF + IfNextVowelAppend(;) + FMT(vowel/i_fnt) +endphoneme + +phoneme i // as [i:] but not marked as 'long' + vwl starttype #i endtype #i + length 230 + IfNextVowelAppend(;) + FMT(vowel/ii_6) +endphoneme + +phoneme I + vwl starttype #i endtype #i + length 100 + IfNextVowelAppend(;) + FMT(vowel/ii_3) +endphoneme + +phoneme e: + vwl lng starttype #e endtype #e + length 220 + FMT(vowel/e_2) +endphoneme + +phoneme e + vwl starttype #e endtype #e + length 140 + FMT(vowel/e_2) +endphoneme + +phoneme E: + vwl lng starttype #e endtype #e + length 220 + FMT(vdiph/ee-e) +endphoneme + +phoneme E + vwl starttype #e endtype #e + length 140 + FMT(vowel/e_mid) +endphoneme + +phoneme &: + vwl lng starttype #a endtype #a + length 220 + FMT(vowel/&) +endphoneme + + +phoneme a: + vwl lng starttype #a endtype #a + length 200 + IF nextPhW(j) THEN + FMT(vowel/a_5) + ENDIF + FMT(vowel/aa_9) +endphoneme + +phoneme a + vwl lng starttype #a endtype #a + length 140 + FMT(vowel/a#_3) +endphoneme + + +phoneme o: + vwl lng starttype #o endtype #o + length 227 + FMT(vowel/o_2) +endphoneme + +phoneme o + vwl starttype #o endtype #o + length 140 + FMT(vowel/o) +endphoneme + +phoneme O: + vwl lng starttype #o endtype #o + length 210 + FMT(vowel/oo_4) +endphoneme + + +phoneme O + vwl starttype #o endtype #o + length 140 + FMT(vowel/0) +endphoneme + + +phoneme U + vwl starttype #u endtype #u + length 140 + FMT(vowel/uu_bck) +endphoneme + + +phoneme u: + vwl lng starttype #u endtype #u + length 230 + FMT(vowel/u_bck) +endphoneme + + +// Nasal vowels +//============= + +phoneme i~ + vwl lng starttype #i endtype #i + length 220 + FMT(vnasal/i_n2) +endphoneme + +phoneme I~ + vwl lng starttype #i endtype #i + length 170 + FMT(vnasal/ii_n) +endphoneme + +phoneme e~ + vwl lng starttype #e endtype #e + length 220 + FMT(vnasal/e_n) +endphoneme + +phoneme E~ + vwl lng starttype #e endtype #e + length 220 + FMT(vnasal/ee_n2) +endphoneme + + + +//==================================================== +// The rest Phonemes are inherted from Hindi. diff --git a/phsource/phonemes b/phsource/phonemes index 9f51931f..883b018d 100644 --- a/phsource/phonemes +++ b/phsource/phonemes @@ -1059,6 +1059,9 @@ include ph_oriya phonemetable mni bn include ph_manipuri +phonemetable sd ur +include ph_sindhi + phonemetable tn base1 include ph_setswana