| ñ En^e | ñ En^e | ||||
| p pe | p pe | ||||
| q ku | q ku | ||||
| r ERR2e | |||||
| r ERR2e | |||||
| s Ese | s Ese | ||||
| t te | t te | ||||
| u u | u u | ||||
| v ,be||b'aIksa | |||||
| v ,be||b'aSa | |||||
| w ,be||d'Ople | w ,be||d'Ople | ||||
| x Se | x Se | ||||
| z Teta | z Teta | ||||
| _8C gwitoTj'Entos | _8C gwitoTj'Entos | ||||
| _9C nowTj'Entos | _9C nowTj'Entos | ||||
| _0M1 m'il | _0M1 m'il | ||||
| _0M2 mil^'ones | |||||
| _0M2 mil^'ons | |||||
| _1M2 un||mil^'on | |||||
| _0M4 bil^'ons | |||||
| _1M4 un||bil^'on | |||||
| _0and i | _0and i | ||||
| _dpt kon | _dpt kon | ||||
| // unstressed words | // unstressed words | ||||
| lo $u | lo $u | ||||
| la $u | |||||
| los $u | |||||
| las $u | |||||
| ne $u | |||||
| nes $u | |||||
| me $u | |||||
| te $u | |||||
| se $u | |||||
| le $u | |||||
| les $u |
| .L03 a i o u // vowel, not 'e' | .L03 a i o u // vowel, not 'e' | ||||
| .L05 c g k | .L05 c g k | ||||
| .L06 s z | .L06 s z | ||||
| .L07 b d g m n r bE dE lE nE // before voiced s in -sman | |||||
| .L08 t d s z n x // dental, drop [j] before [u:] | |||||
| .L10 grap log met scop // scientific endings | .L10 grap log met scop // scientific endings | ||||
| a (Cee+ a | a (Cee+ a | ||||
| a (BeCo_ a | a (BeCo_ a | ||||
| a (BerA a | a (BerA a | ||||
| a (BeroA# eI | |||||
| a (BerC a | a (BerC a | ||||
| a (Bet a | a (Bet a | ||||
| @) a (Bia 'eI | @) a (Bia 'eI | ||||
| m) a (jes a | m) a (jes a | ||||
| m) a (jor_ eI | m) a (jor_ eI | ||||
| m) a (jore eI | m) a (jore eI | ||||
| _) a (k@ a# | |||||
| _) a (ki a# | |||||
| @) a (ki_ 'a | @) a (ki_ 'a | ||||
| @) ak (ia ak | @) ak (ia ak | ||||
| aku (_ 'A:ku: | aku (_ 'A:ku: | ||||
| acne aknI | acne aknI | ||||
| acou (st a#ku: | acou (st a#ku: | ||||
| ac (quie ,a | ac (quie ,a | ||||
| _) acre eIk@ | |||||
| _) acre eIk3 | |||||
| mass) acre @k3 | mass) acre @k3 | ||||
| _) ac (ri ak | _) ac (ri ak | ||||
| ac (ro ak | ac (ro ak | ||||
| @) age (ment I2dZ | @) age (ment I2dZ | ||||
| g) age (ment 'eIdZ | g) age (ment 'eIdZ | ||||
| m) ag (enta @dZ | m) ag (enta @dZ | ||||
| agh (_ @ | |||||
| agh (_ A:g | |||||
| agio (_ 'A:dZIoU | agio (_ 'A:dZIoU | ||||
| t) agi (o eIdZj | |||||
| t) agi (o eIdZ | |||||
| _) ag (l@ a#g | _) ag (l@ a#g | ||||
| &) ag (on_ @g | &) ag (on_ @g | ||||
| dr) agon ag@n | dr) agon ag@n | ||||
| _) alexan alIgz'aan | _) alexan alIgz'aan | ||||
| _) alfa alf@ | _) alfa alf@ | ||||
| _) al (g al | _) al (g al | ||||
| _) algo (r alg@ | |||||
| &) al (iBe @l | &) al (iBe @l | ||||
| &) al (iBati @l | &) al (iBati @l | ||||
| al (ia eIl | al (ia eIl | ||||
| &) ali (sC_ @lI | &) ali (sC_ @lI | ||||
| &) al (isCic @l | &) al (isCic @l | ||||
| _) al (k al | _) al (k al | ||||
| C) al (k O: | |||||
| _) all (@ a#l | _) all (@ a#l | ||||
| _) all (C@P3 O:l | _) all (C@P3 O:l | ||||
| _) all (a al | _) all (a al | ||||
| _) al (y al | _) al (y al | ||||
| alz alt|s | alz alt|s | ||||
| &) al (_ @L | &) al (_ @L | ||||
| &) ally (_ @li | |||||
| ?8 &) al (_ a#l | ?8 &) al (_ a#l | ||||
| @) ally (_S2 %i | @) ally (_S2 %i | ||||
| @@c) ally (_S4 l%i | @@c) ally (_S4 l%i | ||||
| b) al (d+ O:l | b) al (d+ O:l | ||||
| b) al (k O:l | b) al (k O:l | ||||
| f) al (k 0l | f) al (k 0l | ||||
| alkali ak@laI | |||||
| b) all (K O:l | b) all (K O:l | ||||
| &b) all (er_ O:l | &b) all (er_ O:l | ||||
| _c) al (e al | _c) al (e al | ||||
| ?3 h) al (f a | ?3 h) al (f a | ||||
| s) al (f 0l | s) al (f 0l | ||||
| @) algia (_ 'aldZ@ | @) algia (_ 'aldZ@ | ||||
| g) al (i_ 'A:l | |||||
| al (i_ 'A:l | |||||
| al (ity 'al | al (ity 'al | ||||
| p) al (et al | p) al (et al | ||||
| qu) al (@ 0l | qu) al (@ 0l | ||||
| qu) al (m A: | qu) al (m A: | ||||
| equ) al @l | equ) al @l | ||||
| ch) al (k O: | ch) al (k O: | ||||
| t) al (k O: | |||||
| w) al (C 0l | w) al (C 0l | ||||
| w) al (k O: | |||||
| all (_ O:l | all (_ O:l | ||||
| aller (_ O:l3 | aller (_ O:l3 | ||||
| allers (_ O:l3z | allers (_ O:l3z | ||||
| _n) ame eIm | _n) ame eIm | ||||
| &) am (ent @m | &) am (ent @m | ||||
| amer (ic a#mEr | amer (ic a#mEr | ||||
| c) am (ero am | |||||
| c) am (el am | c) am (el am | ||||
| am (i_ 'A:m | am (i_ 'A:m | ||||
| ami (g a#mi: | ami (g a#mi: | ||||
| .group an | .group an | ||||
| @) ana (_ 'A:n@ | @) ana (_ 'A:n@ | ||||
| _c) an (adi a#n | _c) an (adi a#n | ||||
| _) an (aem a#n | |||||
| ph) an (age @n | ph) an (age @n | ||||
| C) an (c aan | C) an (c aan | ||||
| c) an (c an | c) an (c an | ||||
| hum) an (_ @n | hum) an (_ @n | ||||
| &) an (ty_ @n | &) an (ty_ @n | ||||
| &) an (t_ @n | &) an (t_ @n | ||||
| &) an (t_$w_alt an | |||||
| ?8 &) an (t_ a#n | ?8 &) an (t_ a#n | ||||
| _f) an (at a#n | _f) an (at a#n | ||||
| pl) an (t_ an | pl) an (t_ an | ||||
| arr (_ A@ | arr (_ A@ | ||||
| _) arr (@ a#r | _) arr (@ a#r | ||||
| _) arr (ant ar | _) arr (ant ar | ||||
| _n) arr (at a#r | |||||
| _) arr (o ar | _) arr (o ar | ||||
| _) arro (g ar@ | _) arro (g ar@ | ||||
| ar (i_ 'A:r | ar (i_ 'A:r | ||||
| &) ar (dy_ 3 | &) ar (dy_ 3 | ||||
| h) ar (dy_ A@ | h) ar (dy_ A@ | ||||
| are e@ | are e@ | ||||
| z) are (_ 'A@reI | |||||
| %C) ared (_ 3d | %C) ared (_ 3d | ||||
| %C) aring (_ 3rI2N | %C) aring (_ 3rI2N | ||||
| area e@ri@ | area e@ri@ | ||||
| ar (iaC_ 'e@ | ar (iaC_ 'e@ | ||||
| ar (ia_ 'e@ | ar (ia_ 'e@ | ||||
| @) arily (_ 'Er@l%I | @) arily (_ 'Er@l%I | ||||
| ?3 @) arily (_ 'e@r@l%I | |||||
| ch) ar (it ar | ch) ar (it ar | ||||
| ph) ar (i ar | ph) ar (i ar | ||||
| m) ar (i @r | m) ar (i @r | ||||
| cl) ass (iC as | cl) ass (iC as | ||||
| ass (ag as | ass (ag as | ||||
| &v) ass (_ @s | &v) ass (_ @s | ||||
| ass (et as | |||||
| _) ass (et as | |||||
| _) ass (h as | _) ass (h as | ||||
| ass (on as | ass (on as | ||||
| ass (u @S | ass (u @S | ||||
| b b | b b | ||||
| _) bh b | _) bh b | ||||
| _) b (L01Y b // allow _bl _br | _) b (L01Y b // allow _bl _br | ||||
| _) bj (A bj | |||||
| _) brz (e brz | _) brz (e brz | ||||
| b (b | b (b | ||||
| _) be (f bI2 | _) be (f bI2 | ||||
| _) beg (AnK b%Ig | _) beg (AnK b%Ig | ||||
| _) be (gg bE | _) be (gg bE | ||||
| _) belarus bEl@r'u:s | |||||
| _) be (lC bE | _) be (lC bE | ||||
| _) be (lli bI2 | _) be (lli bI2 | ||||
| _) be (sC bI2 | _) be (sC bI2 | ||||
| beha (v bI2heI | beha (v bI2heI | ||||
| belly bElI2 | belly bElI2 | ||||
| be (mu bI2 | be (mu bI2 | ||||
| _) be (na bE | |||||
| _) bene bEnI | _) bene bEnI | ||||
| benevo b@nEv@ | benevo b@nEv@ | ||||
| _) be (o beI | _) be (o beI | ||||
| cism (_ sIz@m | cism (_ sIz@m | ||||
| c (ish k | c (ish k | ||||
| e) cua kwa | e) cua kwa | ||||
| _) cu (o kw | |||||
| _) cwm kUm | _) cwm kUm | ||||
| czech tSEk | czech tSEk | ||||
| ba) che tS@ | ba) che tS@ | ||||
| tra) ch k | tra) ch k | ||||
| cre) ch S | cre) ch S | ||||
| e) ch (el S | |||||
| cli) ch S | cli) ch S | ||||
| fi) ch S | fi) ch S | ||||
| ni) ch S | ni) ch S | ||||
| colle (gi k@li: | colle (gi k@li: | ||||
| co (llis k@ | co (llis k@ | ||||
| co (llid k@ | co (llid k@ | ||||
| collo (quiA k@loU | |||||
| co (llu k@ | co (llu k@ | ||||
| co (loss k@ | co (loss k@ | ||||
| _) co (m@ k@ | _) co (m@ k@ | ||||
| co (mmerce k0 | co (mmerce k0 | ||||
| co (mmodor k0 | co (mmodor k0 | ||||
| common k0m@n | common k0m@n | ||||
| commun k0mju:n | |||||
| commun k0#mju:n | |||||
| commun (a k@mju:n | commun (a k@mju:n | ||||
| commun (ic k@mju:n | commun (ic k@mju:n | ||||
| co (mmuta k0 | co (mmuta k0 | ||||
| _) co (ngre k0 | _) co (ngre k0 | ||||
| ?3 _) congress k0ngr@s | ?3 _) congress k0ngr@s | ||||
| congru k0ngru: | congru k0ngru: | ||||
| _) con (k k0#n | |||||
| _) co (ni k0 | _) co (ni k0 | ||||
| _) co (njug k0 | _) co (njug k0 | ||||
| _) co (njur kV | _) co (njur kV | ||||
| _) co (nsul k0 | _) co (nsul k0 | ||||
| _) co (nsult k%0# | _) co (nsult k%0# | ||||
| _) co (ntact k0 | _) co (ntact k0 | ||||
| _) co (ntempl k0 | |||||
| _) co (ntempl k0# | |||||
| _) co (ntext k0 | _) co (ntext k0 | ||||
| co (ntine k0 | co (ntine k0 | ||||
| _) co (ntour k0 | _) co (ntour k0 | ||||
| _) co (ntrA k0 | |||||
| _) co (ntrA k0# | |||||
| _) contra (C@P6 k,0ntr@ | _) contra (C@P6 k,0ntr@ | ||||
| _) contrast k0ntraast | |||||
| _) contrast k0#ntraast | |||||
| contrac (t k%0#ntrak | contrac (t k%0#ntrak | ||||
| contrar k%0#ntre@ | contrar k%0#ntre@ | ||||
| _) co (ntrib k0 | |||||
| _) co (ntrib k0# | |||||
| _) co (ntrov k,0 | _) co (ntrov k,0 | ||||
| co (ntrol+ k@ | co (ntrol+ k@ | ||||
| conva (l k0nv@ | conva (l k0nv@ | ||||
| _) co (nw k0 | _) co (nw k0 | ||||
| _) copy k0pI | _) copy k0pI | ||||
| _) copoly k'oUp,0lI | _) copoly k'oUp,0lI | ||||
| coro (ll k0r0 | |||||
| coro (ll k0#r0 | |||||
| co (rrect k@ | co (rrect k@ | ||||
| correspo k,0rIsp'0 | correspo k,0rIsp'0 | ||||
| _) co (rri k0 | _) co (rri k0 | ||||
| _) du (p du: | _) du (p du: | ||||
| ?!3 du (pl dju: | ?!3 du (pl dju: | ||||
| dur (A djU@ | dur (A djU@ | ||||
| ?3 dur (A dU@ | |||||
| dur (_ djU@ | dur (_ djU@ | ||||
| ce) dure dZ3 | ce) dure dZ3 | ||||
| _) dye daI | _) dye daI | ||||
| de (rog dI2 | de (rog dI2 | ||||
| de (rACatio dE | de (rACatio dE | ||||
| _) des (@ dI2s | _) des (@ dI2s | ||||
| des (ca dE | |||||
| des (ec dEs | des (ec dEs | ||||
| des (eg d%i:s | des (eg d%i:s | ||||
| dese (l d,i:sI2 | dese (l d,i:sI2 | ||||
| _) dia daI|@ | _) dia daI|@ | ||||
| _) dia (gon daI'a | _) dia (gon daI'a | ||||
| _) dia (l daI@ | _) dia (l daI@ | ||||
| _) diamond daI@m@nd | |||||
| _) dia (n daI'a | _) dia (n daI'a | ||||
| dicho (t daIk'0 | dicho (t daIk'0 | ||||
| di (chro daI | di (chro daI | ||||
| ch) eese i:z | ch) eese i:z | ||||
| eeze (@ i:z | eeze (@ i:z | ||||
| d) e (fault i: | d) e (fault i: | ||||
| _) e (ffac %I | |||||
| e (ffec %I | e (ffec %I | ||||
| e (ffic %I | e (ffic %I | ||||
| efier (_ I2faI3 | efier (_ I2faI3 | ||||
| discr) e (tion E | discr) e (tion E | ||||
| eu ju: | eu ju: | ||||
| ?3 n) eu u: | ?3 n) eu u: | ||||
| ?3 n) eu (r U@ | |||||
| r) eu (d OI | r) eu (d OI | ||||
| eu (m_ 'i:@ | eu (m_ 'i:@ | ||||
| s) eu (m_ 'i@ | s) eu (m_ 'i@ | ||||
| ?8 &) el (s_ El | ?8 &) el (s_ El | ||||
| ela (_ 'El@ | ela (_ 'El@ | ||||
| ella (_ 'El@ | ella (_ 'El@ | ||||
| &C) eller (_ @l@ | |||||
| &C) eler (_ @l@ | |||||
| &C) eller (_ @l3 | |||||
| &C) eler (_ @l3 | |||||
| @) elli (_ 'ElI | @) elli (_ 'ElI | ||||
| &) elling @lI2N | &) elling @lI2N | ||||
| &) eling @lI2N | &) eling @lI2N | ||||
| sph) em @m | sph) em @m | ||||
| sph) em (e 'i:m | sph) em (e 'i:m | ||||
| &) em (y_ @m | &) em (y_ @m | ||||
| yst) em @m | |||||
| yst) em (i Em | |||||
| .group en | .group en | ||||
| _) en (@ %En | _) en (@ %En | ||||
| &) er (oCe_ =@r | &) er (oCe_ =@r | ||||
| er (se 3: | er (se 3: | ||||
| v) er (sal '3: | v) er (sal '3: | ||||
| @) er (sial '3: | |||||
| @) ersi (al '3:S | |||||
| @) er (sy 3: | @) er (sy 3: | ||||
| er (sib 3: | er (sib 3: | ||||
| er (sif 3: | er (sif 3: | ||||
| er (ve 3: | er (ve 3: | ||||
| s) er (van 3: | s) er (van 3: | ||||
| ery (_ @r%i | ery (_ @r%i | ||||
| ?3 @@AC) ery (_ e@ri | |||||
| ery (A 3j | ery (A 3j | ||||
| _v) ery ErI2 | _v) ery ErI2 | ||||
| qu) ery i@rI | qu) ery i@rI | ||||
| &ph) es (_S1 z | &ph) es (_S1 z | ||||
| neri) es (_S2i z | neri) es (_S2i z | ||||
| &s) es (_S1 I#z | &s) es (_S1 I#z | ||||
| &us) es (_S2e I#z | |||||
| us) es (_S2e I#z | |||||
| lus) es (_S2 I#z | |||||
| &rus) es (_S2 I#z | &rus) es (_S2 I#z | ||||
| &tus) es (_S2 I#z | &tus) es (_S2 I#z | ||||
| &ss) es (_S2 I#z | &ss) es (_S2 I#z | ||||
| _m) et (ic @t | _m) et (ic @t | ||||
| etry (_S2 rI | etry (_S2 rI | ||||
| etries (_S4 rIz | etries (_S4 rIz | ||||
| @) et (_ I2t | |||||
| &) et (_ I2t | |||||
| &Ar) et (_ @t | &Ar) et (_ @t | ||||
| rk) et It | rk) et It | ||||
| ll) et (_ It | ll) et (_ It | ||||
| for (see f%O@ | for (see f%O@ | ||||
| for (ward f'o@ // straightforward | for (ward f'o@ // straightforward | ||||
| ft (en f | ft (en f | ||||
| &) ful (_S3 f@L | |||||
| &) fully (_S5 f@li | |||||
| &) fulness (_S7 f@Ln@s | |||||
| .group g | .group g | ||||
| g g | g g | ||||
| gh (an g | gh (an g | ||||
| gm (_ m | gm (_ m | ||||
| gn (_ n | gn (_ n | ||||
| _poi) gn nj | |||||
| _) gnu g@nu: | _) gnu g@nu: | ||||
| hun) g g | hun) g g | ||||
| g (ear g | g (ear g | ||||
| gei (st_ gaI | |||||
| %A) g (er g | %A) g (er g | ||||
| g (et g | g (et g | ||||
| g (ette_ dZ | g (ette_ dZ | ||||
| er) g (et dZ | er) g (et dZ | ||||
| for) ge (t gE | for) ge (t gE | ||||
| bo) g (Ey g | bo) g (Ey g | ||||
| _) gia (@@ dZa# | |||||
| _) g (iant dZ | |||||
| &) gia (_ dZ@ | &) gia (_ dZ@ | ||||
| &) gia (C_ dZ@ | &) gia (C_ dZ@ | ||||
| go) g (ic_ g | go) g (ic_ g | ||||
| @) guay (_ gwaI | @) guay (_ gwaI | ||||
| gue (_ g | gue (_ g | ||||
| gu (e g | gu (e g | ||||
| _) gu (i g | |||||
| _) g (yn g | _) g (yn g | ||||
| o) g (y_ g | o) g (y_ g | ||||
| g (ynous_ =dZ | g (ynous_ =dZ | ||||
| iza (tion aIzeI | iza (tion aIzeI | ||||
| ?3 iza (tion @zeI | ?3 iza (tion @zeI | ||||
| ize (_ aIz | ize (_ aIz | ||||
| ial) ize (_S3 aIz | |||||
| ize (d_ aIz | ize (d_ aIz | ||||
| i (zen I2 | i (zen I2 | ||||
| iz (er_ aIz | iz (er_ aIz | ||||
| &) iary =j@r%I | &) iary =j@r%I | ||||
| &l) iary =i@r%I | &l) iary =i@r%I | ||||
| _) ian i@n | _) ian i@n | ||||
| @) ia (_ =i|@ | |||||
| &) ia (_N =i|@ | |||||
| &) ia (_ =i@ | |||||
| @@) ia (_ =i@ | @@) ia (_ =i@ | ||||
| @) ian (cy I|@n | @) ian (cy I|@n | ||||
| l) iais I|eIz | l) iais I|eIz | ||||
| &) ie (t_ i@ | &) ie (t_ i@ | ||||
| @) ie (th i@ | @) ie (th i@ | ||||
| iesta i:'Est@ | iesta i:'Est@ | ||||
| iessa i:'Es@ | |||||
| ie (tt I2'E | ie (tt I2'E | ||||
| @) iety 'aI@t%I | @) iety 'aI@t%I | ||||
| l) ieu u: | l) ieu u: | ||||
| l) im Im | l) im Im | ||||
| _pr) im (a aIm | _pr) im (a aIm | ||||
| sh) im (a_ 'i:m | sh) im (a_ 'i:m | ||||
| im (age Im | |||||
| imag (e ImI2dZ | |||||
| l) ime aIm | l) ime aIm | ||||
| d) ime (ns aImE | d) ime (ns aImE | ||||
| im (ent+ Im | im (ent+ Im | ||||
| im (portu ,Im | im (portu ,Im | ||||
| impo (ten Imp@ | impo (ten Imp@ | ||||
| _) im (pre@P2 %Im | _) im (pre@P2 %Im | ||||
| im (pregna ,Im | |||||
| impreg Impr'Eg | |||||
| impreg (nat ImprEg | |||||
| im (presa ,Im | im (presa ,Im | ||||
| im (provis Im | im (provis Im | ||||
| im (pulse_ Im | im (pulse_ Im | ||||
| adm) ini InI | adm) ini InI | ||||
| m) iniatur InItS3 | m) iniatur InItS3 | ||||
| m) inera (l In@r@ | m) inera (l In@r@ | ||||
| in (al_$w_alt 'aIn | |||||
| &m) in (al_ =In | &m) in (al_ =In | ||||
| f) in (a aIn | f) in (a aIn | ||||
| @g) in (a_ aIn | @g) in (a_ aIn | ||||
| ir (able 'aI3 | ir (able 'aI3 | ||||
| m) ir (ac Ir | m) ir (ac Ir | ||||
| sp) iral aI3r@L | sp) iral aI3r@L | ||||
| @) ir (ation Ir | |||||
| ir (at %aIr | |||||
| @) ir (ation @r | |||||
| ir (ate =i@r | ir (ate =i@r | ||||
| consp) ira (t Ir@ | consp) ira (t Ir@ | ||||
| ire aI3 | ire aI3 | ||||
| prAm) is Is | prAm) is Is | ||||
| b) is (_ Is | b) is (_ Is | ||||
| c) is (_ Is | c) is (_ Is | ||||
| @@m) is (_ Is | |||||
| am) is (_S1 z | |||||
| v) is (_ Is | |||||
| @Cs) is (_ =Is | @Cs) is (_ =Is | ||||
| &) is (abl aIz | &) is (abl aIz | ||||
| isa (tion aIzeI | isa (tion aIzeI | ||||
| v) is (coun aI | v) is (coun aI | ||||
| v) is (it Iz | v) is (it Iz | ||||
| _d) is (e I2s | _d) is (e I2s | ||||
| ial) ise (_S3 aIz | |||||
| ise (_ aIz | ise (_ aIz | ||||
| ise (d_ aIz | ise (d_ aIz | ||||
| is (er+_ aIz | is (er+_ aIz | ||||
| jokull (_S6 j3:ku:th | jokull (_S6 j3:ku:th | ||||
| jökull (_S6 j3:ku:th | jökull (_S6 j3:ku:th | ||||
| juan hwA:n | |||||
| _) juan hwA:n | |||||
| juan w'A:n | |||||
| .group k | .group k | ||||
| k k | k k | ||||
| mEntary (_ m'Ent@r%I | mEntary (_ m'Ent@r%I | ||||
| _) meta (@ m,Et@ | _) meta (@ m,Et@ | ||||
| _) metal (C mEt@L | _) metal (C mEt@L | ||||
| _) metall (ic m@tal | |||||
| metabo m@t'ab0 | metabo m@t'ab0 | ||||
| _) meta (llu m%Eta | _) meta (llu m%Eta | ||||
| _) mobile moUbaIl | _) mobile moUbaIl | ||||
| .group o | .group o | ||||
| o 0 | o 0 | ||||
| _) o 0 | |||||
| X) o 0# | X) o 0# | ||||
| X) o ($w_alt3 %0# | X) o ($w_alt3 %0# | ||||
| _) o'(P2 %oU // prefix | _) o'(P2 %oU // prefix | ||||
| oar o@ | oar o@ | ||||
| oar (_ o@ | oar (_ o@ | ||||
| cr) o (at oU | cr) o (at oU | ||||
| o (ba oU | |||||
| X) o (ba oU | |||||
| t) o (bacc @ | t) o (bacc @ | ||||
| o (bed oU | o (bed oU | ||||
| _r) o (ber 0 | _r) o (ber 0 | ||||
| o (bic_ 'oU | o (bic_ 'oU | ||||
| n) o (bil oU | n) o (bil oU | ||||
| _m) o (bil oU | _m) o (bil oU | ||||
| o (bje %0# | |||||
| o (bje %0 | |||||
| _) o (bl %0# | _) o (bl %0# | ||||
| n) o (bl oU | n) o (bl oU | ||||
| o (bliga 0 | o (bliga 0 | ||||
| o (bligato %0# | o (bligato %0# | ||||
| o (blo 0 | o (blo 0 | ||||
| _r) o (bo oU | _r) o (bo oU | ||||
| _) o (bs %0# | |||||
| _) obs (er %0#bz | |||||
| _) o (bs %0 | |||||
| _) obs (er %0bz | |||||
| obso (l 0bs@ | obso (l 0bs@ | ||||
| o (bstin 0 | o (bstin 0 | ||||
| _) o (bt %0# | |||||
| _) o (bt %0 | |||||
| o (by_ oU | o (by_ oU | ||||
| f) o (cA oU | f) o (cA oU | ||||
| _l) o (cA oU | _l) o (cA oU | ||||
| l) o (cat %oU | l) o (cat %oU | ||||
| _) o (ccasi @ | _) o (ccasi @ | ||||
| _) o (cclu @ | _) o (cclu @ | ||||
| _) o (ct 0 | |||||
| X) o (ct 0 | |||||
| occur @k3: | occur @k3: | ||||
| ?5 occur @kVR | ?5 occur @kVR | ||||
| occurr @k3: | occurr @k3: | ||||
| k) o (dA oU | k) o (dA oU | ||||
| meth) o (d_ @ | meth) o (d_ @ | ||||
| peri) o (d_ @ | peri) o (d_ @ | ||||
| o (da_ oU | |||||
| d) o (dec %oU | d) o (dec %oU | ||||
| m) o (del 0 | m) o (del 0 | ||||
| m) o (der 0 | m) o (der 0 | ||||
| oi (c oUI2 | oi (c oUI2 | ||||
| oi (ce OI | oi (ce OI | ||||
| oi (ck OI | oi (ck OI | ||||
| oi (zA oUaI | |||||
| c) o (inci %oU | c) o (inci %oU | ||||
| o (ing oU | o (ing oU | ||||
| d) o (ing u: | d) o (ing u: | ||||
| p) o (tenti @ | p) o (tenti @ | ||||
| b) o (th oU | b) o (th oU | ||||
| betr) oth oUD | betr) oth oUD | ||||
| ?3 m) o (th O | |||||
| ?3 cl) o (th O | ?3 cl) o (th O | ||||
| cl) othe oUD | cl) othe oUD | ||||
| tr) othe oUD | tr) othe oUD | ||||
| @) ome (tre '0mI | @) ome (tre '0mI | ||||
| @) ome (try '0m@ | @) ome (try '0m@ | ||||
| &) omer (_ @m3 | &) omer (_ @m3 | ||||
| c) omer (_ Vm3 | |||||
| gl) om (er 0m | gl) om (er 0m | ||||
| _p) om (e 0m | _p) om (e 0m | ||||
| _s) ome Vm | _s) ome Vm | ||||
| nt) or (_ o@ | nt) or (_ o@ | ||||
| vent) or (_ 3 | vent) or (_ 3 | ||||
| y) or (k O@ | y) or (k O@ | ||||
| &) or (ation @r | |||||
| or (arL02 3r | |||||
| &) or (ation 3r | |||||
| _) ora (to 0r@ | _) ora (to 0r@ | ||||
| @) or (ca_ 'O@ | @) or (ca_ 'O@ | ||||
| w) orce (st U | w) orce (st U | ||||
| &f) or (d_ 3 | &f) or (d_ 3 | ||||
| ore o@ | ore o@ | ||||
| &) or (ene_ 3 | |||||
| or (esis O@ | or (esis O@ | ||||
| oresc @r'Es | oresc @r'Es | ||||
| ora (cl 0r@ | ora (cl 0r@ | ||||
| ?3 or (r O: | ?3 or (r O: | ||||
| bb) or (n 3 | bb) or (n 3 | ||||
| f) oreign 0r@n | f) oreign 0r@n | ||||
| f) or (ever O@ | |||||
| f) or (ever 3 | |||||
| f) or (gAt 3 | f) or (gAt 3 | ||||
| _f) org (Av @g | _f) org (Av @g | ||||
| fl) or (i 0r | fl) or (i 0r | ||||
| pl) or o@ | pl) or o@ | ||||
| m) or (al 0r | m) or (al 0r | ||||
| w) or (K 3: | w) or (K 3: | ||||
| ?5 w) or VR | |||||
| ?5 w) or (K VR | |||||
| w) or (m 3: | w) or (m 3: | ||||
| ?5 w) or (m VR | ?5 w) or (m VR | ||||
| w) or (se 3: | w) or (se 3: | ||||
| c) ou (pl V | c) ou (pl V | ||||
| &) our (_ 3 | &) our (_ 3 | ||||
| np) our (_ o@ | np) our (_ o@ | ||||
| &) oured @d | |||||
| &) oured 3d | |||||
| ev) our (ed aU@ | ev) our (ed aU@ | ||||
| our (n 3: | our (n 3: | ||||
| ?5 our (n VR | ?5 our (n VR | ||||
| per (cus p3 | per (cus p3 | ||||
| _) peregrin pEr@grIn | _) peregrin pEr@grIn | ||||
| per (fec p3 | per (fec p3 | ||||
| _) per (iC@@ p,Er | |||||
| _) perini pErIn'i: | |||||
| per (iph p3r | per (iph p3r | ||||
| _) per (isc pEr | |||||
| _) per (ish pEr | |||||
| perme (a p3:mI | perme (a p3:mI | ||||
| per (miss p3 | per (miss p3 | ||||
| per (mit p3 | per (mit p3 | ||||
| per (sis p3 | per (sis p3 | ||||
| persever p3:sIv'i@3 | persever p3:sIv'i@3 | ||||
| per (sp p3 | per (sp p3 | ||||
| perspi (ra p3:sp@ | |||||
| per (su p3 | per (su p3 | ||||
| per (tai p3 | per (tai p3 | ||||
| per (tu p3 | per (tu p3 | ||||
| _) pre (C@ pr%I | _) pre (C@ pr%I | ||||
| _) pre (C% prE | _) pre (C% prE | ||||
| _) prea (ch pri: | _) prea (ch pri: | ||||
| _) pre (ad pr%i: | |||||
| _) pre (am pri: | _) pre (am pri: | ||||
| _) pre (cinc pri: | _) pre (cinc pri: | ||||
| pre (cio prE | pre (cio prE | ||||
| _) pre (coP3 pr,i: | _) pre (coP3 pr,i: | ||||
| preda (to prEd@ | preda (to prEd@ | ||||
| prede (ces pri:dI | prede (ces pri:dI | ||||
| _) pre (diP3 pr%i | |||||
| _) pre (diP3 pr%i: | |||||
| _) pre (dic pr%I | _) pre (dic pr%I | ||||
| _) pre (em pr%i: | _) pre (em pr%i: | ||||
| _) pre (fec pri: | _) pre (fec pri: | ||||
| re (solu rE | re (solu rE | ||||
| re (son rE | re (son rE | ||||
| re (stl rE | re (stl rE | ||||
| re (stro rE | |||||
| res (ult rI2z | res (ult rI2z | ||||
| re (tail ri: | re (tail ri: | ||||
| re (tic rE | |||||
| re (tina rE | |||||
| re (ti rE | |||||
| _) re (tir rI2 | |||||
| re (trib rE | re (trib rE | ||||
| retro (P5 r,EtroU // prefix | retro (P5 r,EtroU // prefix | ||||
| re (vel rE | re (vel rE | ||||
| w) se z | w) se z | ||||
| Co) s (Er z | Co) s (Er z | ||||
| Co) s (En z | Co) s (En z | ||||
| r) s (d z | |||||
| e) s (d z | |||||
| _) se (clu sI2 | _) se (clu sI2 | ||||
| secur sI2kjU@ | secur sI2kjU@ | ||||
| self (_ 'sElf | self (_ 'sElf | ||||
| A) sion Z@n | A) sion Z@n | ||||
| ?8 C) sion SVn | ?8 C) sion SVn | ||||
| ?8 A) sion ZVn | ?8 A) sion ZVn | ||||
| a) sin (_ s@n | |||||
| ai) sin (_ z@n | ai) sin (_ z@n | ||||
| u) sin (_ z@n | u) sin (_ z@n | ||||
| A) s (itiv z | A) s (itiv z | ||||
| _) size (C@ saIz | _) size (C@ saIz | ||||
| a) s (m z | a) s (m z | ||||
| o) s (m z | o) s (m z | ||||
| L07) s (mAn_ z | |||||
| _) socie (t s@saI@ | _) socie (t s@saI@ | ||||
| _) soma (li s@mA: | _) soma (li s@mA: | ||||
| pri) s (o z | pri) s (o z | ||||
| ?8 ssion (_ =SVn | ?8 ssion (_ =SVn | ||||
| 1_) st (_ | 1_) st (_ | ||||
| _) st (_ s@nt | _) st (_ s@nt | ||||
| _) state (@ steIt | |||||
| stein staIn | stein staIn | ||||
| ti) ssue Su: | ti) ssue Su: | ||||
| _) s (u s | _) s (u s | ||||
| _) tera tEr@ | _) tera tEr@ | ||||
| te (rrest t2@ | te (rrest t2@ | ||||
| r) tga (g gI | r) tga (g gI | ||||
| &) tia (_ S@ | |||||
| &s) tia (_ tS@ | |||||
| @) t (ia S | @) t (ia S | ||||
| pi) t (ia t | |||||
| is) t (ian+ t | |||||
| &) tian (_ =S@n | |||||
| _) tian tjan | |||||
| &) tial S@L | |||||
| &s) tial tj@L | |||||
| &) ti (ali SI | |||||
| i) tia (liL06 S@ | |||||
| &) tien S@n | |||||
| &) tience S@ns | |||||
| t (ime_ t2 | |||||
| &) tion S=@n | |||||
| &s) tion tS@n | |||||
| ?8 &) tion S=Vn | |||||
| ?8 &s) tion tSVn | |||||
| tion (al S=@-n | |||||
| &) tious S=@s | |||||
| AC) tive (_ =tIv | |||||
| s) t (l | |||||
| s) t (l ? | |||||
| to (morr t@ | to (morr t@ | ||||
| _) to (nn tV | _) to (nn tV | ||||
| t (ooth t2 | t (ooth t2 | ||||
| _) tri (g trI | _) tri (g trI | ||||
| _) tri (ni trI | _) tri (ni trI | ||||
| _) tri (vi trI | _) tri (vi trI | ||||
| _) tri (xA trI | |||||
| _) tri (xA trI | |||||
| tsch tS | tsch tS | ||||
| tse (_ tsi | tse (_ tsi | ||||
| _) tsk t'@sk | _) tsk t'@sk | ||||
| _) two tu: | _) two tu: | ||||
| ttu (r t@ | ttu (r t@ | ||||
| @) tu (al tSu: | @) tu (al tSu: | ||||
| @) tu (at tSu: | |||||
| _sta) tu tSu: | _sta) tu tSu: | ||||
| ?3 _sta) tu (to tS@ | ?3 _sta) tu (to tS@ | ||||
| c) tu (al_ =tSu: | c) tu (al_ =tSu: | ||||
| r) tue (_ tSu: | |||||
| ?3 tu (la_ tS@ | ?3 tu (la_ tS@ | ||||
| @) tu (lat =tSU | @) tu (lat =tSU | ||||
| ?3 tu (Ant tSu: | |||||
| ?3 tu (Ancy tSu: | |||||
| tu (ous tSu: | |||||
| @) tur (A tS@r | @) tur (A tS@r | ||||
| @) tur (al_ tS=@r | @) tur (al_ tS=@r | ||||
| @) tur (y tS@r | |||||
| @) tur (_ tS3 | |||||
| ture (_ tS3 | |||||
| &) tur (y tS@r | |||||
| &) tur (_ tS3 | |||||
| &) ture (_ tS3 | |||||
| tz ts | tz ts | ||||
| tze (_ tsi | tze (_ tsi | ||||
| _) them D%Em | _) them D%Em | ||||
| _) the (mA Ti: | _) the (mA Ti: | ||||
| .group ti | |||||
| &) tia (_ S@ | |||||
| &s) tia (_ tS@ | |||||
| propi) ti (a tI | |||||
| ti (ac tI | |||||
| &) tian (_ =S@n | |||||
| &s) tian (_ tS@n | |||||
| _) tian tjan | |||||
| &) tial S@L | |||||
| &s) tial tj@L | |||||
| &) ti (ali SI | |||||
| i) tia (liL06 S@ | |||||
| &) tien S@n | |||||
| &) tience S@ns | |||||
| ti (me_ t2aI | |||||
| &) tion S=@n | |||||
| &s) tion tS@n | |||||
| ?8 &) tion S=Vn | |||||
| ?8 &s) tion tSVn | |||||
| tion (al S=@-n | |||||
| &) tious S=@s | |||||
| AC) tive (_ =tIv | |||||
| .group u | .group u | ||||
| u V | u V | ||||
| man) u ju: | man) u ju: | ||||
| val) u ju: | val) u ju: | ||||
| u (a ju: | u (a ju: | ||||
| l) u (a u: | l) u (a u: | ||||
| ?3 L08) u (a u: | |||||
| contin) u ju: | |||||
| _g) ua wA: | _g) ua wA: | ||||
| _l) u (a u: | _l) u (a u: | ||||
| r) u (aC+ u: | r) u (aC+ u: | ||||
| ?3 n) uclear u:kli@3 | ?3 n) uclear u:kli@3 | ||||
| ucul VkjUl | ucul VkjUl | ||||
| @) u (da_ 'ju: | @) u (da_ 'ju: | ||||
| ?3 @) u (da_ 'u: | |||||
| ?3 @L08) u (da_ 'u: | |||||
| b) u (ddh U | b) u (ddh U | ||||
| u (esq ju: | u (esq ju: | ||||
| u (ga_ 'u: | u (ga_ 'u: | ||||
| g) u (i w | g) u (i w | ||||
| r) u (i u: | r) u (i u: | ||||
| s) u (i u: | s) u (i u: | ||||
| ?3 t) u (i u: | |||||
| ?3 L08) u (i u: | |||||
| u (ki_ 'u: | u (ki_ 'u: | ||||
| _) u (krain %ju: | _) u (krain %ju: | ||||
| ll) u (l ju: | ll) u (l ju: | ||||
| u (ly u: | u (ly u: | ||||
| d) u (ly ju: | d) u (ly ju: | ||||
| z) u (l_ 'u: | z) u (l_ 'u: | ||||
| &) um (_ @m | |||||
| vol) u (m ju: | vol) u (m ju: | ||||
| u (ma_ 'u: | u (ma_ 'u: | ||||
| h) u (man ju: | h) u (man ju: | ||||
| .group ue | .group ue | ||||
| ue ju: | ue ju: | ||||
| uee ju:i: | uee ju:i: | ||||
| ?3 L08) ue u: | |||||
| l) ue u: | l) ue u: | ||||
| r) ue u: | r) ue u: | ||||
| _s) ue u: | _s) ue u: | ||||
| ?3 t) ue u: | |||||
| ?3 _L08) ue (l u:@ | |||||
| _C) ue (l ju:@ | _C) ue (l ju:@ | ||||
| _CC) ue (l u:@ | _CC) ue (l u:@ | ||||
| ue (n ju:@ | ue (n ju:@ | ||||
| @) ur (ation jUr | @) ur (ation jUr | ||||
| ure (_ jU@ | ure (_ jU@ | ||||
| ur (ed_ jU@ | ur (ed_ jU@ | ||||
| g) ured (_ @d | |||||
| g) ured (_ 3d | |||||
| b) ur (e jU@r | b) ur (e jU@r | ||||
| g) ure (_ 3 | g) ure (_ 3 | ||||
| ?3 g) ure (_ j3 | ?3 g) ure (_ j3 | ||||
| _) x (Y z | _) x (Y z | ||||
| xio (n kS@ | xio (n kS@ | ||||
| xious =kS@s | xious =kS@s | ||||
| xas (_ =ks@s | |||||
| xis (_ =ksIs | xis (_ =ksIs | ||||
| xus (_ =ks@s | |||||
| xu (a =kSu: | xu (a =kSu: | ||||
| lu) x (ur gZ | lu) x (ur gZ | ||||
| ?3 lu) xu (r gZU@ | |||||
| xure (_ kS%U@ | xure (_ kS%U@ | ||||
| .group y | .group y | ||||
| _) z (wY z | _) z (wY z | ||||
| @) zales (_ z'A:l@s | @) zales (_ z'A:l@s | ||||
| zei zaI | |||||
| zes (_ zI2z | zes (_ zI2z | ||||
| zh Z | zh Z | ||||
| zu (_ =zu: | zu (_ =zu: | ||||
| ?8 Ening (_ EnI2N | ?8 Ening (_ EnI2N | ||||
| Ene (_ i:n | Ene (_ i:n | ||||
| Ened (_ @nd | Ened (_ @nd | ||||
| E (nt_ @ | |||||
| En (g @n | |||||
| E (nt @ | |||||
| E (ning E | E (ning E | ||||
| E (nti 'E | E (nti 'E | ||||
| E (ntu 'E | E (ntu 'E | ||||
| Eri (A 'i@rI2 | Eri (A 'i@rI2 | ||||
| Er (ie_ @r | Er (ie_ @r | ||||
| Er (ic_ Er | Er (ic_ Er | ||||
| Er (ous_ @r | |||||
| Er (_ 3 | Er (_ 3 | ||||
| ad) Er (_S1 3 | ad) Er (_S1 3 | ||||
| ad) Ers (_S2 3z | ad) Ers (_S2 3z | ||||
| // non-ascii characters with specified pronunciations | // non-ascii characters with specified pronunciations | ||||
| // List the accented characters in en_list with the $accent attribute | // List the accented characters in en_list with the $accent attribute | ||||
| á (X 'A: | |||||
| à a | à a | ||||
| é eI | é eI | ||||
| é (X 'eI | |||||
| é (CA_ 'eI | |||||
| _) é %I | _) é %I | ||||
| ée i: | ée i: | ||||
| ê E: | ê E: | ||||
| ë E | ë E | ||||
| ï i: | ï i: | ||||
| ö 3: | ö 3: | ||||
| ör 3: | |||||
| ü u: | ü u: | ||||
| ç s | ç s | ||||
| ß s | ß s |
| _) اصغر (آL09L09P4@ asq1aR | _) اصغر (آL09L09P4@ asq1aR | ||||
| _) ابو (L04L09L09P3@ abu | _) ابو (L04L09L09P3@ abu | ||||
| _) ابو (آL09L09P3@ abu | _) ابو (آL09L09P3@ abu | ||||
| _) ابوال (L04L09L09P5@ abol' | |||||
| _) ابوال (آL09L09P5@ abol' | |||||
| // Suffixes ا | // Suffixes ا | ||||
| L09L04) الله (_Sm4 ollAh | L09L04) الله (_Sm4 ollAh | ||||
| L09L04) انداز (_Sm5 andAz | L09L04) انداز (_Sm5 andAz | ||||
| L09L04) انگیز (_Sm5 angiz | L09L04) انگیز (_Sm5 angiz | ||||
| L09L04) اباد (_Sm4 AbAd | L09L04) اباد (_Sm4 AbAd | ||||
| L09L09) امیر (_Sm4 amiR | |||||
| L09L09) اکبر (_Sm4 akbaR | |||||
| L09L09) اصغر (_Sm4 asq1aR | |||||
| // Special passive pronouns eg. خوابانده | // Special passive pronouns eg. خوابانده | ||||
| l09l09l03) انده (_Sm4 Ande: | l09l09l03) انده (_Sm4 Ande: | ||||
| l09l09l03) اندۀ (_Sm4 Andeje | l09l09l03) اندۀ (_Sm4 Andeje | ||||
| _) چار (آL09L09P3@ 'tSAR | _) چار (آL09L09P3@ 'tSAR | ||||
| _) چهار (L04L09L09P4@ 'tSAhAR | _) چهار (L04L09L09P4@ 'tSAhAR | ||||
| _) چهار (آL09L09P4@ 'tSAhAR | _) چهار (آL09L09P4@ 'tSAhAR | ||||
| _) چند (L04L09L09P3@ 'tSAand | |||||
| _) چند (آL09L09P3@ 'tSAand | |||||
| _) چند (L04L09L09P3@ 'tSand | |||||
| _) چند (آL09L09P3@ 'tSand | |||||
| // Suffixes چ | // Suffixes چ | ||||
| L09L09L09) چی (_Sm2 tSi | L09L09L09) چی (_Sm2 tSi | ||||
| _) خویش (آL09L09P4@ xiS | _) خویش (آL09L09P4@ xiS | ||||
| _) خان (L04L09L09P3@ xAn | _) خان (L04L09L09P3@ xAn | ||||
| _) خان (آL09L09P3@ xAn | _) خان (آL09L09P3@ xAn | ||||
| _) خواهش (L04L09L09P5@ xAheS | |||||
| _) خواهش (آL09L09P5@ xAheS | |||||
| _) خواهد (L04L09L09P5@ xAhad | |||||
| _) خواهد (آL09L09P5@ xAhad | |||||
| _) خواهید (L04L09L09P6@ xAhid | |||||
| _) خواهید (آL09L09P6@ xAhid | |||||
| // suffixes خ | // suffixes خ | ||||
| L09L09) خر (_Sm2 xaR | L09L09) خر (_Sm2 xaR | ||||
| L09L09) خوش (_Sm3 xoS | L09L09) خوش (_Sm3 xoS | ||||
| L09L09) خیز (_Sm3 xiz | L09L09) خیز (_Sm3 xiz | ||||
| L09L09) خواست (_Sm5 xAst | L09L09) خواست (_Sm5 xAst | ||||
| L09L09) خواب (_Sm4 xAb | |||||
| // arabic form of words (Babs) خ | // arabic form of words (Babs) خ | ||||
| //فواعل eg. جوامع | //فواعل eg. جوامع | ||||
| L09L09) دست (_Sm3 dast | L09L09) دست (_Sm3 dast | ||||
| L09L09) درد (_Sm3 daRd | L09L09) درد (_Sm3 daRd | ||||
| L09L09) دوش (_Sm3 duS | L09L09) دوش (_Sm3 duS | ||||
| L09L09) دهی (_Sm3 dehi | |||||
| // arabic form of words (Babs) د | // arabic form of words (Babs) د | ||||
| //فواعل eg. جوامع | //فواعل eg. جوامع | ||||
| L09L09) زده (_+Sm3 zade: | L09L09) زده (_+Sm3 zade: | ||||
| L09L09) زدۀ (_+Sm3 zadeje | L09L09) زدۀ (_+Sm3 zadeje | ||||
| L09L09) زدن (_Sm3 zadan | L09L09) زدن (_Sm3 zadan | ||||
| L09L09) زدا (_Sm3 zodA | |||||
| // arabic form of words (Babs) ز | // arabic form of words (Babs) ز | ||||
| //فواعل eg. جوامع | //فواعل eg. جوامع | ||||
| L09L09L09L09) ص (L03L09L09L09_ sa | L09L09L09L09) ص (L03L09L09L09_ sa | ||||
| // Prefixes ص | // Prefixes ص | ||||
| _) صاحب (L04L09L09P4@ saheb | |||||
| _) صاحب (آL09L09P4@ saheb | |||||
| _) صاحب (L04L09L09P4@ sAheb | |||||
| _) صاحب (آL09L09P4@ sAheb | |||||
| _) صدر (L04L09L09P5@ sadr | _) صدر (L04L09L09P5@ sadr | ||||
| _) صدر (آL09L09P5@ sadr | _) صدر (آL09L09P5@ sadr | ||||
| // Suffixes ط | // Suffixes ط | ||||
| L09L09) طلب (_Sm3 talab | L09L09) طلب (_Sm3 talab | ||||
| L09L09) طلبان (_Sm5 talabAn | |||||
| // arabic form of words (Babs) ط | // arabic form of words (Babs) ط | ||||
| //فواعل eg. جوامع | //فواعل eg. جوامع | ||||
| // Prefixes ع | // Prefixes ع | ||||
| _) عبد (L04L09L09P3@ 'a:bd | _) عبد (L04L09L09P3@ 'a:bd | ||||
| _) عبد (آL09L09P3@ 'a:bd | _) عبد (آL09L09P3@ 'a:bd | ||||
| _) عبدال (L04L09L09P5@ abdol' | |||||
| _) عبدال (آL09L09P5@ abdol' | |||||
| _) علی (L04L09L09P3@ a:li | _) علی (L04L09L09P3@ a:li | ||||
| _) علی (آL09L09P3@ a:li | _) علی (آL09L09P3@ a:li | ||||
| L09L09) کنان (_Sm4 konAn | L09L09) کنان (_Sm4 konAn | ||||
| L09L09) کننده (_Sm5 konande: | L09L09) کننده (_Sm5 konande: | ||||
| L09L09) کنندۀ (_Sm5 konandeje | L09L09) کنندۀ (_Sm5 konandeje | ||||
| L09L09) کنندگان (_Sm7 konandegAn | |||||
| L09L09) کوچک (_Sm4 kutSak | L09L09) کوچک (_Sm4 kutSak | ||||
| // arabic form of words (Babs) ک | // arabic form of words (Babs) ک | ||||
| L09L09) گرفت (_Sm4 geReft | L09L09) گرفت (_Sm4 geReft | ||||
| L09L09) گشا (_Sm3 goSA | L09L09) گشا (_Sm3 goSA | ||||
| L09L09) گریز (_Sm4 goRiz | L09L09) گریز (_Sm4 goRiz | ||||
| L09L09) گسار (_Sm4 gosAR | |||||
| // arabic form of words (Babs) گ | // arabic form of words (Babs) گ | ||||
| //فواعل eg. جوامع | //فواعل eg. جوامع | ||||
| // Prefixes ل | // Prefixes ل | ||||
| // Suffixes ل | // Suffixes ل | ||||
| L09L09) لوژ (_Sm3 lotZ | |||||
| L09L09) لوژیک (_Sm5 lotZik | |||||
| L09L09) لوژ (_Sm3 loZ | |||||
| L09L09) لوژیک (_Sm5 loZik | |||||
| L09L09) لوگ (_Sm3 log | L09L09) لوگ (_Sm3 log | ||||
| // arabic form of words (Babs) ل | // arabic form of words (Babs) ل | ||||
| L09L09L03) ند (_NSm2 and | L09L09L03) ند (_NSm2 and | ||||
| L09L09) نوشت (_Sm4 neveSt | L09L09) نوشت (_Sm4 neveSt | ||||
| L09L09) نشین (_Sm4 neSin | L09L09) نشین (_Sm4 neSin | ||||
| L09L09) نکردن (_Sm5 nakaRdan | |||||
| L09L09L09) نشدن (_Sm4 naSodan | |||||
| // arabic form of words (Babs) ن | // arabic form of words (Babs) ن | ||||
| //فواعل eg. جوامع | //فواعل eg. جوامع | ||||
| _) هم (آL09P2@ ham | _) هم (آL09P2@ ham | ||||
| // suffixes ه | // suffixes ه | ||||
| L09L03) ه (_++NSm1 e: | |||||
| L09L01و) ه (_++NSm1 e: | |||||
| L09) هٔ (_Sm2 eje | |||||
| L09L03) ه (_++Sm1 e: | |||||
| L09L01و) ه (_++Sm1 e: | |||||
| L09L09) ها (_NSm2 hA | L09L09) ها (_NSm2 hA | ||||
| // Plural pronoun ها | // Plural pronoun ها | ||||
| L09L09) های (_NSm3 h'Aje | L09L09) های (_NSm3 h'Aje | ||||
| // Suffixes یی | // Suffixes یی | ||||
| L09L01) یی (_Sm2 i: | L09L01) یی (_Sm2 i: | ||||
| L09L03) یی (_Sm2 ii | |||||
| L09L03) یی (_Sm1 i | |||||
| L09L01) ییم (_NSm3 i:m | L09L01) ییم (_NSm3 i:m | ||||
| L09L03) ییم (_NSm3 iim | L09L03) ییم (_NSm3 iim | ||||
| L09L09L01) یید (_NSm3 i:d | L09L09L01) یید (_NSm3 i:d | ||||
| L09و) ی (L01 j | L09و) ی (L01 j | ||||
| L09ا) ی (L03 j | L09ا) ی (L03 j | ||||
| L09ا) ی (L01 j | L09ا) ی (L01 j | ||||
| L03) ی (وL03 j | |||||
| L03) ی (وL03 ij | |||||
| //otherwise | //otherwise | ||||
| L02) ی (_ j | L02) ی (_ j | ||||
| _ع) ی (L03_ j | _ع) ی (L03_ j | ||||
| L09L01) ی (_Sm1 j | L09L01) ی (_Sm1 j | ||||
| L09L09آ) ی (_Sm1 je | L09L09آ) ی (_Sm1 je | ||||
| L09L09ا) ی (_NSm1 je | L09L09ا) ی (_NSm1 je | ||||
| L09L09ی) ی (_Sm1 je | |||||
| L09L01و) ی (_Sm1 i | L09L01و) ی (_Sm1 i | ||||
| L09L03و) ی (_Sm1 je | L09L03و) ی (_Sm1 je | ||||
| L09L01) یند (_Sm3 jand | L09L01) یند (_Sm3 jand | ||||
| .group ء | .group ء | ||||
| ء ? | ء ? | ||||
| // suffixes ء | |||||
| L09L09L04) ء (_Sm1 ? | |||||
| L09L09ا) ء (_Sm1 | |||||
| L09L09آ) ء (_Sm1 | |||||
| //this character "ٔ" is defrent of "ء" and "ۀ" for example "دانشنامهٔ " | //this character "ٔ" is defrent of "ء" and "ۀ" for example "دانشنامهٔ " | ||||
| ٔ | ٔ | ||||
| // suffixes ٔ | // suffixes ٔ | ||||
| L09L09) ٔ (_Sm1 | |||||
| L09L03) ٔ (_NSm1 je | |||||
| .group ّ | .group ّ |
| ჸ elifi | ჸ elifi | ||||
| უ u | უ u | ||||
| v _^_EN // not 'roman' | |||||
| x _^_EN | |||||
| % prots#enti $max3 | % prots#enti $max3 | ||||
| + pliusi $max3 | + pliusi $max3 |
| // pronouns | // pronouns | ||||
| eu $u+ $verbf | eu $u+ $verbf | ||||
| tu $u+ | tu $u+ | ||||
| você vos'e $u+ | |||||
| você vose $u2+ | |||||
| ele 'ely $u+ | ele 'ely $u+ | ||||
| ela $u+ | ela $u+ | ||||
| nós $u+ | nós $u+ | ||||
| vós $u+ | vós $u+ | ||||
| vocês $u+ | |||||
| vocês $u2+ | |||||
| eles $u+ | eles $u+ | ||||
| elas $u+ | elas $u+ | ||||
| eram E*&U~ $u1 | eram E*&U~ $u1 | ||||
| fui $u // .. preterite | fui $u // .. preterite | ||||
| foste $u | |||||
| foste fostSy $u1 // & fostes | |||||
| foi $u | foi $u | ||||
| fomos $u | fomos $u | ||||
| fostes $u | |||||
| fora $u // .. pluperfect | fora $u // .. pluperfect | ||||
| fômamos $u | fômamos $u | ||||
| abacaxi abakaSy | abacaxi abakaSy | ||||
| abordo $alt | abordo $alt | ||||
| aborto $alt $verb | |||||
| aborto $alt $verb | |||||
| acerto $alt2 $noun | acerto $alt2 $noun | ||||
| acertos $alt2 | acertos $alt2 | ||||
| acervo $alt2 | acervo $alt2 | ||||
| adepto $alt | adepto $alt | ||||
| adereço $alt2 | adereço $alt2 | ||||
| adore $alt | adore $alt | ||||
| adorno $alt $verb | |||||
| albatrozes $alt | albatrozes $alt | ||||
| alcateia $alt | alcateia $alt | ||||
| alferes $alt | alferes $alt | ||||
| alicerce $alt | alicerce $alt | ||||
| amanheça $alt2 | amanheça $alt2 | ||||
| amanheço $alt2 | amanheço $alt2 | ||||
| amanhecesse $alt2 | |||||
| amarelo $alt | amarelo $alt | ||||
| ameba $alt | ameba $alt | ||||
| amores $alt2 | amores $alt2 | ||||
| anoitecesse $alt2 | |||||
| anoiteça $alt2 | anoiteça $alt2 | ||||
| anoiteço $alt2 | anoiteço $alt2 | ||||
| apego $alt2 | |||||
| apego $alt2 $noun | |||||
| apelo $alt $verb | |||||
| aposto $alt $verb | |||||
| apreço $alt2 | apreço $alt2 | ||||
| aperto $alt2 $noun | aperto $alt2 $noun | ||||
| apoio $alt $verb | |||||
| apoio $alt $verb | |||||
| aprendeste $alt2 | aprendeste $alt2 | ||||
| aprovo $alt | aprovo $alt | ||||
| arredores $alt | arredores $alt | ||||
| arremesso $alt2 $noun | arremesso $alt2 $noun | ||||
| arroz $alt2 | arroz $alt2 | ||||
| assembleia $alt | assembleia $alt | ||||
| aterro $alt2 $noun | |||||
| atmosfera $alt | atmosfera $alt | ||||
| atrozes $alt | atrozes $alt | ||||
| austera $alt | austera $alt | ||||
| bilhete $alt2 | bilhete $alt2 | ||||
| boca $alt2 | boca $alt2 | ||||
| bochecha $alt2 | bochecha $alt2 | ||||
| bojo $alt2 | |||||
| boleia $alt | boleia $alt | ||||
| bolero $alt | |||||
| bolo $alt2 | bolo $alt2 | ||||
| bolo $alt $verb | |||||
| borboleta $alt2 | borboleta $alt2 | ||||
| bordo $alt | bordo $alt | ||||
| boto $alt2 $noun | |||||
| bromelha $alt | bromelha $alt | ||||
| cabeça $alt2 | cabeça $alt2 | ||||
| cabresto $alt2 | cabresto $alt2 | ||||
| camiseta $alt2 | camiseta $alt2 | ||||
| cantora $alt2 | cantora $alt2 | ||||
| caractere $alt | caractere $alt | ||||
| caramelo $alt | |||||
| careta $alt2 | careta $alt2 | ||||
| carreta $alt2 | carreta $alt2 | ||||
| casebre $alt | casebre $alt | ||||
| castelo $alt | castelo $alt | ||||
| cateto $alt2 | cateto $alt2 | ||||
| catorze $alt2 | catorze $alt2 | ||||
| cebola $alt2 | |||||
| cefaleia $alt | cefaleia $alt | ||||
| cerca $alt $verb | cerca $alt $verb | ||||
| cerco $alt $verb | cerco $alt $verb | ||||
| cesta $alt | |||||
| cesta $alt2 | |||||
| cesto $alt2 | |||||
| chamego $alt2 | chamego $alt2 | ||||
| chefe $alt | chefe $alt | ||||
| chinelo $alt | chinelo $alt | ||||
| choro $alt2 $noun | choro $alt2 $noun | ||||
| chupeta $alt2 | chupeta $alt2 | ||||
| clamores $alt2 | |||||
| coco $alt2 | coco $alt2 | ||||
| cofre $alt | cofre $alt | ||||
| coice $alt2 | coice $alt2 | ||||
| colabore $alt | colabore $alt | ||||
| colheste $alt2 | colheste $alt2 | ||||
| colmeia $alt | colmeia $alt | ||||
| colore $alt | |||||
| começo $alt2 $noun | começo $alt2 $noun | ||||
| comodo $alt2 | comodo $alt2 | ||||
| comera $alt2 | comera $alt2 | ||||
| comeres $alt2 | comeres $alt2 | ||||
| comeste $alt2 | comeste $alt2 | ||||
| concerto $alt2 $noun | |||||
| concordo $alt | concordo $alt | ||||
| conforto $alt $verb | |||||
| conheceste $alt2 | conheceste $alt2 | ||||
| conheço $alt2 | conheço $alt2 | ||||
| consolo $alt2 $noun | |||||
| contivermos $alt | contivermos $alt | ||||
| copa $alt | copa $alt | ||||
| copo $alt | copo $alt | ||||
| descova $alt2 | descova $alt2 | ||||
| desespero $alt2 $noun | desespero $alt2 $noun | ||||
| desfecho $alt2 | desfecho $alt2 | ||||
| desprezo $alt $verb | |||||
| desprezo $alt $verb | |||||
| deva $alt2 | deva $alt2 | ||||
| devo $alt2 | devo $alt2 | ||||
| deveras $alt | deveras $alt | ||||
| dissermos $alt | dissermos $alt | ||||
| dobro $alt2 $noun | dobro $alt2 $noun | ||||
| doce $alt2 | doce $alt2 | ||||
| doutora $alt2 | |||||
| droga $alt | droga $alt | ||||
| duelo $alt | |||||
| dueto $alt2 | |||||
| elixir eliSir | elixir eliSir | ||||
| elo $alt | |||||
| emprego $alt2 $noun | emprego $alt2 $noun | ||||
| encosto $alt $verb | |||||
| endereço $alt2 | endereço $alt2 | ||||
| endereço $alt $verb | |||||
| enforco $alt | enforco $alt | ||||
| engordo $alt | engordo $alt | ||||
| enumerem $alt | enumerem $alt | ||||
| enredo $alt $verb | |||||
| enredo $alt $verb | |||||
| enterro $alt2 $noun | enterro $alt2 $noun | ||||
| envelope $alt | envelope $alt | ||||
| envolto $alt2 | envolto $alt2 | ||||
| eritreia $alt | eritreia $alt | ||||
| erro $alt2 $noun | erro $alt2 $noun | ||||
| erros $alt2 | erros $alt2 | ||||
| esboço $alt $verb | |||||
| escopeta $alt2 | escopeta $alt2 | ||||
| escroto $alt2 | escroto $alt2 | ||||
| esforço $alt $verb | |||||
| esforço $alt $verb | |||||
| esforços $alt | esforços $alt | ||||
| esgoto $alt2 $noun | |||||
| esperma $alt | esperma $alt | ||||
| espeto $alt2 $noun | espeto $alt2 $noun | ||||
| espiroqueta $alt2 | espiroqueta $alt2 | ||||
| estiveres $alt | estiveres $alt | ||||
| estivermos $alt | estivermos $alt | ||||
| estrela $alt2 | estrela $alt2 | ||||
| estremeceste $alt2 | |||||
| estrofe $alt | estrofe $alt | ||||
| estorno $alt $verb | |||||
| estorvo $alt $verb | |||||
| etiqueta $alt2 | etiqueta $alt2 | ||||
| europa $alt | europa $alt | ||||
| exagero $alt $verb | exagero $alt $verb | ||||
| expeça $alt2 | expeça $alt2 | ||||
| expeço $alt2 | expeço $alt2 | ||||
| explore $alt | explore $alt | ||||
| faceta $alt2 | |||||
| farelo $alt | |||||
| farofa $alt | farofa $alt | ||||
| febre $alt | febre $alt | ||||
| feitora $alt2 | feitora $alt2 | ||||
| forro $alt $verb | forro $alt $verb | ||||
| fosse $alt2 | fosse $alt2 | ||||
| fossem $alt2 | fossem $alt2 | ||||
| foste $alt2 | |||||
| frevo $alt2 | frevo $alt2 | ||||
| galera $alt | galera $alt | ||||
| gameta $alt2 | gameta $alt2 | ||||
| gorda $alt2 | gorda $alt2 | ||||
| gota $alt2 | gota $alt2 | ||||
| gozo $alt $verb | gozo $alt $verb | ||||
| graveto $alt2 | |||||
| grego $alt2 | grego $alt2 | ||||
| grelha $alt | grelha $alt | ||||
| grega $alt2 | grega $alt2 | ||||
| hoje $alt2 | hoje $alt2 | ||||
| houvermos $alt | houvermos $alt | ||||
| ideia $alt | ideia $alt | ||||
| insonoro $alt | |||||
| joga $alt | joga $alt | ||||
| jogam $alt | jogam $alt | ||||
| jogos $alt | jogos $alt | ||||
| mantiverdes $alt | mantiverdes $alt | ||||
| mantiveres $alt | mantiveres $alt | ||||
| mantivermos $alt | mantivermos $alt | ||||
| marmelo $alt | |||||
| marreta $alt2 | marreta $alt2 | ||||
| martelo $alt | martelo $alt | ||||
| merda $alt | merda $alt | ||||
| morda $alt2 | morda $alt2 | ||||
| moreia $alt | moreia $alt | ||||
| mortos $alt | mortos $alt | ||||
| motora $alt2 | |||||
| ?2 mulher mulj'Er | ?2 mulher mulj'Er | ||||
| ?4 mulher mul^'Er | ?4 mulher mul^'Er | ||||
| mui mwi | mui mwi | ||||
| mulheres $alt | mulheres $alt | ||||
| mureta $alt2 | mureta $alt2 | ||||
| mutreta $alt2 | mutreta $alt2 | ||||
| namoro $alt2 $noun | |||||
| naquele $alt2 | naquele $alt2 | ||||
| negra $alt2 | negra $alt2 | ||||
| negro $alt2 | negro $alt2 | ||||
| obstetra $alt | obstetra $alt | ||||
| obsoleta $alt2 | obsoleta $alt2 | ||||
| obsoleto $alt2 | obsoleto $alt2 | ||||
| pbvivera $alt | |||||
| obtivermos $alt | obtivermos $alt | ||||
| odisseia $alt | odisseia $alt | ||||
| onu $1 | onu $1 | ||||
| opereta $alt2 | opereta $alt2 | ||||
| ordens $alt | ordens $alt | ||||
| osso $alt2 | osso $alt2 | ||||
| ostra $alt2 | |||||
| ovos $alt | ovos $alt | ||||
| pachorra $alt2 | |||||
| padeceste $alt2 | padeceste $alt2 | ||||
| paexa paeSa | paexa paeSa | ||||
| pangeia $alt | |||||
| palacete $alt2 | palacete $alt2 | ||||
| palheta $alt2 | palheta $alt2 | ||||
| pangeia $alt | |||||
| pantera $alt | |||||
| paralelo $alt | paralelo $alt | ||||
| parede $alt2 | parede $alt2 | ||||
| pastora $alt2 | pastora $alt2 | ||||
| pedra $alt | pedra $alt | ||||
| pelego $alt2 | pelego $alt2 | ||||
| pelo $alt $verb | |||||
| perde $alt | perde $alt | ||||
| perdem $alt | perdem $alt | ||||
| perede $alt2 | perede $alt2 | ||||
| peso $alt | peso $alt | ||||
| peso $alt2 $noun | peso $alt2 $noun | ||||
| piloto $alt2 | piloto $alt2 | ||||
| pintora $alt2 | |||||
| pirueta $alt2 | pirueta $alt2 | ||||
| plateia $alt | plateia $alt | ||||
| plebeia $alt | plebeia $alt | ||||
| polca $alt | |||||
| porcos $alt | porcos $alt | ||||
| porrete $alt2 | porrete $alt2 | ||||
| porra $alt2 | porra $alt2 | ||||
| puder $alt | puder $alt | ||||
| punheta $alt | punheta $alt | ||||
| puserdes $alt | puserdes $alt | ||||
| quarteto $alt2 | |||||
| quinteto $alt2 | |||||
| quisermos $alt | quisermos $alt | ||||
| recomeço $alt2 $noun | recomeço $alt2 $noun | ||||
| recordo $alt | recordo $alt | ||||
| recorto $alt | recorto $alt | ||||
| rede $alt2 | rede $alt2 | ||||
| redor $alt | redor $alt | ||||
| reembolso $alt $verb | |||||
| reforços $alt | reforços $alt | ||||
| refresco $alt $verb | |||||
| reforço $alt $verb | |||||
| refresco $alt $verb | |||||
| reitora $alt2 | reitora $alt2 | ||||
| relevo $alt2 $noun | |||||
| remorso $alt | remorso $alt | ||||
| reprovo $alt | reprovo $alt | ||||
| resolve $alt | resolve $alt | ||||
| resolvem $alt | resolvem $alt | ||||
| rixa x'iS& | rixa x'iS& | ||||
| rocha $alt | |||||
| rock $alt | |||||
| rogas $alt | rogas $alt | ||||
| rolo $alt2 $noun | |||||
| rumores $alt2 | |||||
| saleta $alt2 | saleta $alt2 | ||||
| sarjeta $alt | sarjeta $alt | ||||
| severa $alt | severa $alt | ||||
| severo $alt | severo $alt | ||||
| seborreia $alt | seborreia $alt | ||||
| seco $alt2 $noun | seco $alt2 $noun | ||||
| selo $alt $verb | |||||
| secos $alt2 | |||||
| selo $alt $verb | |||||
| selvagem seUv'aZeIN | selvagem seUv'aZeIN | ||||
| sexteto $alt2 | |||||
| ?1 senhora $alt2 | ?1 senhora $alt2 | ||||
| sesta $alt2 | |||||
| senhores $alt2 | |||||
| sincera $alt | sincera $alt | ||||
| sincero $alt | sincero $alt | ||||
| sinopse $alt | sinopse $alt | ||||
| sopre $alt | sopre $alt | ||||
| soprem $alt | soprem $alt | ||||
| sopro $alt $verb | sopro $alt $verb | ||||
| soro $alt2 | |||||
| sorvete $alt2 | sorvete $alt2 | ||||
| sossego $alt2 $noun | sossego $alt2 $noun | ||||
| souberdes $alt | souberdes $alt | ||||
| soubermos $alt | soubermos $alt | ||||
| suborno $alt $verb | |||||
| sufoco $alt2 $noun | |||||
| sufocos $alt2 | |||||
| sugere $alt | sugere $alt | ||||
| sugerem $alt | sugerem $alt | ||||
| suporto $alt | suporto $alt | ||||
| suor swOr | suor swOr | ||||
| tapete $alt2 | tapete $alt2 | ||||
| tempero $alt $verb | |||||
| tempero $alt2 $noun | |||||
| teta $alt2 | teta $alt2 | ||||
| tetra $alt | |||||
| tiver $alt | tiver $alt | ||||
| tivera $alt | |||||
| tiveres $alt | tiveres $alt | ||||
| tivermos $alt | tivermos $alt | ||||
| tocha $alt | tocha $alt | ||||
| toga $alt | toga $alt | ||||
| tola $alt2 | |||||
| tolo $alt2 | |||||
| topo $alt $verb | |||||
| torno $alt $verb | |||||
| torres $alt2 | torres $alt2 | ||||
| tortos $alt | tortos $alt | ||||
| traqueia $alt | traqueia $alt | ||||
| travesso $alt2 | travesso $alt2 | ||||
| tremores $alt2 | |||||
| trevo $alt2 | trevo $alt2 | ||||
| troco $alt2 $noun | troco $alt2 $noun | ||||
| tropa $alt | tropa $alt |
| .L04 a am e em o ue uem | .L04 a am e em o ue uem | ||||
| .L05 r ra ram re rem rdes | .L05 r ra ram re rem rdes | ||||
| .L06 ra ram ste re rem | .L06 ra ram ste re rem | ||||
| .L07 sse ssem ste | |||||
| .group a | .group a | ||||
| @s) e (rAm_ E | @s) e (rAm_ E | ||||
| sp) e (rA_ E | sp) e (rA_ E | ||||
| sp) e (rAm_ E | sp) e (rAm_ E | ||||
| f) e (re_ E | |||||
| f) e (rem_ E | |||||
| e (rgA_ E | e (rgA_ E | ||||
| e (rgAm_ E | e (rgAm_ E | ||||
| sf) e (ra_ E // esfera, biosfera | sf) e (ra_ E // esfera, biosfera | ||||
| //sort | //sort | ||||
| qu) e (brL04_ E | |||||
| _hosp) e (dL03_ E | |||||
| _estr) ei (L03_ EI | |||||
| _inv) e (jL04_ E | |||||
| _dec) e (pL04_ E | |||||
| _g) e (rL04_ E | |||||
| _op) e (rL04_ E | |||||
| _qu) e (rL04_ E | |||||
| _alt) e (rL04_ E | |||||
| _inv) e (rtL03_ e | |||||
| _f) e (rvL03_ e | |||||
| _p) e (scL03_ E | |||||
| _m) e (sclL04_ E | |||||
| _m) e (tL03_ e | |||||
| _com) e (tL03_ e | |||||
| _rem) e (tL03_ e | |||||
| _derr) e (tL03_ e | |||||
| _prom) e (tL03_ e | |||||
| _subm) e (tL03_ e | |||||
| _fiz) e (L05_ E | |||||
| _exag) e (L05_ E | |||||
| _houv) e (L05_ E | |||||
| _perd) e (L05_ e | |||||
| _soub) e (L05_ E | |||||
| _rend) e (L06_ e | |||||
| _vend) e (L06_ e | |||||
| _atend) e (L06_ e | |||||
| _compreend) e (L06_ e | |||||
| _entend) e (L06_ e | |||||
| _estend) e (L06_ e | |||||
| respond) e (L06_ e // cor- | |||||
| com) e (L07_ e | |||||
| _bat) e (L07_ e | |||||
| _beb) e (L07_ e | |||||
| _tem) e (L07_ e | |||||
| _viv) e (L07_ e | |||||
| colh) e (L07_ e // & es- | |||||
| _corr) e (L07_ e | |||||
| _eleg) e (L07_ e | |||||
| _morr) e (L07_ e | |||||
| _perd) e (L07_ e | |||||
| _sofr) e (L07_ e | |||||
| _torc) e (L07_ e | |||||
| _venc) e (L07_ e | |||||
| _adoec) e (L07_ e | |||||
| _aperd) e (L07_ e | |||||
| _merec) e (L07_ e | |||||
| conhec) e (L07_ e // & re- | |||||
| entend) e (L07_ e | |||||
| preend) e (L07_ e // sur- com- | |||||
| respond) e (L07_ e // cor- | |||||
| _convenc) e (L07_ e | |||||
| _entristec) e (L07_ e | |||||
| _envaidec) e (L07_ e | |||||
| _escond) e (L07_ e | |||||
| _obedec) e (L07_ e | |||||
| interromp) e (L07_ e | |||||
| intromet) e (L07_ e | |||||
| qu) e (brL04_ E | |||||
| _hosp) e (dL03_ E | |||||
| _estr) ei (L03_ EI | |||||
| _inv) e (jL04_ E | |||||
| _dec) e (pL04_ E | |||||
| _p) e (quL02_ E | |||||
| _s) e (quL02_ E | |||||
| l) e (que_ E | |||||
| _imp) e (rL03_ E | |||||
| _reit) e (rL03_ E | |||||
| _g) e (rL04_ E | |||||
| _op) e (rL04_ E | |||||
| _qu) e (rL04_ E | |||||
| _alt) e (rL04_ E | |||||
| _sup) e (rL04_ E | |||||
| _tol) e (rL04_ E | |||||
| _coop) e (rL04_ E | |||||
| _temp) e (rL04_ E | |||||
| _) e (rguL02_ E | |||||
| _alb) e (rguL02_ E | |||||
| _enx) e (rguL02_ E | |||||
| _inv) e (rtL03_ e | |||||
| _f) e (rvL03_ e | |||||
| _p) e (scL03_ E | |||||
| _m) e (sclL04 E | |||||
| _l) e (ssL02_ e | |||||
| _esp) e (ssL03_ e | |||||
| _m) e (tL03_ e | |||||
| _com) e (tL03_ e | |||||
| _rem) e (tL03_ e | |||||
| _derr) e (tL03_ e | |||||
| _prom) e (tL03_ e | |||||
| _subm) e (tL03_ e | |||||
| _comprom) e (tL03_ e | _comprom) e (tL03_ e | ||||
| _sol) e (trL03_ E | |||||
| _atr) e (vL03_ e | |||||
| _escr) e (vL03_ e | |||||
| _descr) e (vL03_ e | |||||
| _embel) e (zL04_ E | |||||
| _pr) e (zL04_ E | |||||
| _acont) e (çL01_ e | |||||
| _ado) e (çL03_ e | |||||
| _aqu) e (çL03_ e | |||||
| _car) e (çL03_ e | |||||
| _mer) e (çL03_ e | |||||
| _pad) e (çL03_ e | |||||
| _per) e (çL03_ e | |||||
| _esqu) e (çL03_ e | |||||
| _obed) e (çL03_ e | |||||
| _ofer) e (çL03_ e | |||||
| _aborr) e (çL03_ e | |||||
| _sol) e (trL03_ E | |||||
| _pen) e (trL04_ E | |||||
| scr) e (vL03_ e // e- in- pre- ree- | |||||
| _atr) e (vL03_ e | |||||
| _descr) e (vL03_ e | |||||
| _pr) e (zL04_ E | |||||
| _embel) e (zL04_ E | |||||
| par) e (çL01_ e // pareça, apareça | |||||
| _acont) e (çL01_ e | |||||
| _arref) e (çL01_ e | |||||
| _ado) e (çL03_ e | |||||
| _aqu) e (çL03_ e | |||||
| _car) e (çL03_ e | |||||
| _mer) e (çL03_ e | |||||
| _pad) e (çL03_ e | |||||
| _per) e (çL03_ e | |||||
| _esqu) e (çL03_ e | |||||
| _obed) e (çL03_ e | |||||
| _ofer) e (çL03_ e | |||||
| _aborr) e (çL03_ e | |||||
| _compar) e (çL03_ e | _compar) e (çL03_ e | ||||
| _desapar) e (çL03_ e | _desapar) e (çL03_ e | ||||
| _enfraqu) e (çL03_ e | _enfraqu) e (çL03_ e | ||||
| _enriqu) e (çL03_ e | _enriqu) e (çL03_ e | ||||
| _envaid) e (çL03_ e | _envaid) e (çL03_ e | ||||
| _esclar) e (çL03_ e | |||||
| _esclar) e (çL03_ e | |||||
| _reapar) e (çL03_ e | _reapar) e (çL03_ e | ||||
| _reconh) e (çL03_ e | _reconh) e (çL03_ e | ||||
| _coop) e (rL04_ E | |||||
| _sup) e (rL04_ E | |||||
| _imp) e (rL03_ E | |||||
| _temp) e (rL04_ E | |||||
| _esp) e (ssL03_ e | |||||
| _l) e (ssL02_ e | |||||
| _perd) e (L05_ e | |||||
| _rend) e (L06_ e | |||||
| _atend) e (L06_ e | |||||
| _pen) e (trL04_ E | |||||
| _Xref) e (rL02_ E | |||||
| _desf) e (rL02_ E | |||||
| _conf) e (rL02_ E | |||||
| _reit) e (rL03_ E | |||||
| par) e (çL01_ e // pareça, apareça | |||||
| _arref) e (çL01_ e | |||||
| _beb) e (ssL02_ e | |||||
| com) e (ssL02_ e | |||||
| //endsort | //endsort | ||||
| _exag) e (L05_ E | |||||
| _fiz) e (L05_ E | |||||
| _houv) e (L05_ E | |||||
| _soub) e (L05_ E | |||||
| _compreend) e (L06_ e | |||||
| _correspond) e (L06_ e | |||||
| _entend) e (L06_ e | |||||
| _estend) e (L06_ e | |||||
| _respond)e (L06_ e | |||||
| _vend) e (L06_ e | |||||
| .group é | .group é | ||||
| é ''E | é ''E | ||||
| //sort | //sort | ||||
| _engl) o (bL01_ O | _engl) o (bL01_ O | ||||
| _esn) o (bL04_ O | |||||
| _deb) o (chL04_ O | |||||
| _desabr) o (chL04_ O | |||||
| _r) o (gL04_ O | _r) o (gL04_ O | ||||
| _adv) o (gL04_ O | _adv) o (gL04_ O | ||||
| _ref) o (gL04_ O | _ref) o (gL04_ O | ||||
| _ap) oi (L01_ OI | _ap) oi (L01_ OI | ||||
| _esc) o (lhL02_ O | |||||
| _m) o (lhL04_ O | _m) o (lhL04_ O | ||||
| _abs) o (lvL02_ O | _abs) o (lvL02_ O | ||||
| _env) o (lvL02_ O | _env) o (lvL02_ O | ||||
| c) o (rrL01_ o // escorra, incorra, corra, recorra | |||||
| _m) o (rrL01_ o | |||||
| p) ostos (_ Ost=Us# // dispostos etc. | |||||
| _esn) o (bL04_ O | |||||
| _esc) o (lhL02_ O | |||||
| _rev) o (lvL02_ O | _rev) o (lvL02_ O | ||||
| _desenv) o (lvL02_ O | _desenv) o (lvL02_ O | ||||
| _ent) o (pL02_ O | _ent) o (pL02_ O | ||||
| c) o (rrL01_ o // escorra, incorra, corra, recorra | |||||
| _m) o (rrL01_ o | |||||
| _r) o (snL01_ O | |||||
| _c) o (spL02_ O | _c) o (spL02_ O | ||||
| p) ostos (_ Ost=Us# // dispostos etc. | |||||
| //endsort | //endsort | ||||
| .group ô | .group ô | ||||
| r) u (_A u | r) u (_A u | ||||
| u (A_ 'u | u (A_ 'u | ||||
| u (am_ 'u | |||||
| u (em_ 'u | u (em_ 'u | ||||
| ui uI | ui uI | ||||
| ui (_ 'uI | ui (_ 'uI | ||||
| mo) x (a S | mo) x (a S | ||||
| _o) x (A S | _o) x (A S | ||||
| _o) x (i ks | _o) x (i ks | ||||
| _o) x (í ks | |||||
| pi) x (A S | pi) x (A S | ||||
| _pro) x (A S | _pro) x (A S | ||||
| _pra) x (A S | _pra) x (A S |
| // This ur_list file is prepared by Him Prasad Gautam (Kathmandu, Nepal) | |||||
| // This file is UTF8 encoded | // This file is UTF8 encoded | ||||
| // Spelling to phoneme exceptions for Urdu | |||||
| // Letter Names, Numbers and exceptional pronounciation of Urdu | |||||
| // Letter names | |||||
| // The Letter names | |||||
| ا alIf | ا alIf | ||||
| ب be: | ب be: | ||||
| پ pe: | پ pe: | ||||
| ُ pe:S | ُ pe:S | ||||
| // numbers | |||||
| // The numbers | |||||
| _0 s'IfaR | _0 s'IfaR | ||||
| _1 'e:k | _1 'e:k | ||||
| _2 'do: | _2 'do: | ||||
| _3 t'i:n | _3 t'i:n | ||||
| _4 c'a:R | _4 c'a:R | ||||
| _5 p'a:Nc | _5 p'a:Nc | ||||
| _6 ch'aI | |||||
| _6 ch'eh | |||||
| _7 s'a:t | _7 s'a:t | ||||
| _8 'a:th | _8 'a:th | ||||
| _9 n'aU | _9 n'aU | ||||
| _28 stha:'i:s | _28 stha:'i:s | ||||
| _29 Unt'i:s | _29 Unt'i:s | ||||
| _30 t'i:s | _30 t'i:s | ||||
| _31 ikt'i:s | |||||
| _31 ikVt'i:s | |||||
| _32 bat:'i:s | _32 bat:'i:s | ||||
| _33 taINt'i:s | |||||
| _33 t'aINt'i:s | |||||
| _34 caUNt'i:s | _34 caUNt'i:s | ||||
| _35 paINt'i:s | _35 paINt'i:s | ||||
| _36 chat:'i:s | _36 chat:'i:s | ||||
| _38 aRt'i:s | _38 aRt'i:s | ||||
| _39 Unta:l'i:s | _39 Unta:l'i:s | ||||
| _40 ca:l'i:s | _40 ca:l'i:s | ||||
| _41 Ikta:l'i:s | |||||
| _41 IkVta:l'i:s | |||||
| _42 baja:l'i:s | _42 baja:l'i:s | ||||
| _43 te:Nta:l'i:s | _43 te:Nta:l'i:s | ||||
| _44 cava:l'i:s | _44 cava:l'i:s | ||||
| _0M2 l'a:kh | _0M2 l'a:kh | ||||
| _0M3 kaR'o:R | _0M3 kaR'o:R | ||||
| _0M4 'aRab | _0M4 'aRab | ||||
| _0M5 'khaRab | |||||
| _dpt _ISaRI'Ia_ | _dpt _ISaRI'Ia_ | ||||
| jonathan dZ'Onathan | |||||
| // Exception of phonemes | |||||
| پاکستان p'a:k'i:st'a:n |
| // This ur_rules file is written by Him Prasad Gautam (Kathmandu, Nepal). | |||||
| // This file is UTF8 encoded | // This file is UTF8 encoded | ||||
| // Spelling to phoneme rules for Urdu | |||||
| // phoneme rules for Urdu | |||||
| // Letter group - l01: Vowels | |||||
| .replace | .replace | ||||
| ٠ 0 | ٠ 0 | ||||
| // vowel signs, alif is silent at start of word if these follow | |||||
| // vowel signs, alif acts as consonants at start of word if these follow | |||||
| .L01 َ ِ ُ و ی ع ا | .L01 َ ِ ُ و ی ع ا | ||||
| // VOWELS | // VOWELS | ||||
| .group َ | .group َ | ||||
| ُع O | ُع O | ||||
| .group ھ | .group ھ | ||||
| ھ H | |||||
| ھ HV | |||||
| ھ (_ H: | |||||
| ھ (l01 H | |||||
| .group ا | .group ا | ||||
| ا a: | ا a: | ||||
| _) ا (L01 // silent before a vowel | |||||
| _) ا a | |||||
| _) او u: | |||||
| _) ای i: | |||||
| _) ا (L01 // Acts like Consonants if followed by a vowel but is silent. | |||||
| _) ا a | |||||
| _) او u: | |||||
| _) ای i: | |||||
| .group آ | .group آ | ||||
| آ a: | آ a: | ||||
| .group ع | .group ع | ||||
| ع a: | ع a: | ||||
| عا a: | عا a: | ||||
| _) ع a | |||||
| _) ع a | |||||
| .group و | .group و | ||||
| وُ u: | وُ u: | ||||
| وٗ u: | وٗ u: | ||||
| و (L01 v | و (L01 v | ||||
| _) و v | |||||
| _) و v | |||||
| .group ی | .group ی | ||||
| ی e: | ی e: | ||||
| ی (L01 j | ی (L01 j | ||||
| ی (_ i: | ی (_ i: | ||||
| _) ی j | |||||
| _) ی j | |||||
| .group ے // yeh barree | .group ے // yeh barree | ||||
| // CONSONANTS | // CONSONANTS | ||||
| .group ب | .group ب | ||||
| ب b | |||||
| بھ bh | |||||
| ب bV | |||||
| بھ bhV | |||||
| بھ (L01 bh | |||||
| ب (L01 b | |||||
| .group پ | .group پ | ||||
| پ p | |||||
| پھ ph | |||||
| پ pV | |||||
| پھ phV | |||||
| پ (L01 p | |||||
| پھ (L01 ph | |||||
| .group ت | .group ت | ||||
| ت t | |||||
| تھ th | |||||
| ت tV | |||||
| تھ thV | |||||
| ت (L01 t | |||||
| تھ (L01 th | |||||
| .group ٹ | .group ٹ | ||||
| ٹ t. | |||||
| ٹھ th. | |||||
| ٹ t.V | |||||
| ٹھ th.V | |||||
| ٹ (L01 t. | |||||
| ٹھ (L01 th. | |||||
| .group ث | .group ث | ||||
| ث s | |||||
| ث sV | |||||
| ث (L01 s | |||||
| .group ج | .group ج | ||||
| ج J | |||||
| جھ Jh | |||||
| ج JV | |||||
| جھ JhV | |||||
| ج (L01 J | |||||
| جھ (L01 Jh | |||||
| .group چ | .group چ | ||||
| چ c | |||||
| چھ ch | |||||
| چ cV | |||||
| چھ chV | |||||
| چ (L01 c | |||||
| چھ (L01 ch | |||||
| .group ح | .group ح | ||||
| ح H | |||||
| ح HV | |||||
| ح (L01 H | |||||
| .group خ | .group خ | ||||
| خ x | |||||
| خ xV | |||||
| خ (L01 x | |||||
| .group د | .group د | ||||
| د d | |||||
| دھ dh | |||||
| د dV | |||||
| دھ dhV | |||||
| د (L01 d | |||||
| دھ (L01 dh | |||||
| .group ڈ | .group ڈ | ||||
| ڈ d. | |||||
| ڈھ dh. | |||||
| ڈ d.V | |||||
| ڈھ dh.V | |||||
| ڈ (L01 d. | |||||
| ڈھ (L01 dh. | |||||
| .group ذ | .group ذ | ||||
| ذ D | |||||
| ذ DV | |||||
| ذ (L01 D | |||||
| .group ر | .group ر | ||||
| ر R | |||||
| ر RV | |||||
| ر (L01 R | |||||
| .group ڑ | .group ڑ | ||||
| ڑ r. | |||||
| ڑ r.V | |||||
| ڑ (L01 r. | |||||
| .group ز | .group ز | ||||
| ز z | |||||
| ز zV | |||||
| ز (L01 z | |||||
| .group ژ | .group ژ | ||||
| ژ Z | |||||
| ژ ZV | |||||
| ژ (L01 Z | |||||
| .group س | .group س | ||||
| س s | |||||
| س sV | |||||
| س (L01 s | |||||
| .group ش | .group ش | ||||
| ش S | |||||
| ش SV | |||||
| ش (L01 S | |||||
| .group ص | .group ص | ||||
| ص s. | |||||
| ص s.V | |||||
| ص (L01 s. | |||||
| .group ض | .group ض | ||||
| ض z | |||||
| ض zV | |||||
| ض (L01 z | |||||
| .group ط | .group ط | ||||
| ط t | |||||
| طھ th | |||||
| ط tV | |||||
| طھ thV | |||||
| ط (L01 t | |||||
| طھ (L01 th | |||||
| .group ظ | .group ظ | ||||
| ظ z. | |||||
| ظ z.V | |||||
| ظ (L01 z. | |||||
| .group غ | .group غ | ||||
| غ Q | |||||
| غ QV | |||||
| غ (L01 Q | |||||
| .group ف | .group ف | ||||
| ف f | |||||
| ف fV | |||||
| ف (L01 f | |||||
| .group ق | .group ق | ||||
| ق q | |||||
| ق qV | |||||
| ق (L01 q | |||||
| .group ک | .group ک | ||||
| ک k | |||||
| کھ kh | |||||
| ک kV | |||||
| کھ khV | |||||
| ک (L01 k | |||||
| کھ (L01 kh | |||||
| .group گ | .group گ | ||||
| گ g | |||||
| گھ gh | |||||
| گ gV | |||||
| گھ ghV | |||||
| گ (L01 g | |||||
| گھ (L01 gh | |||||
| .group ل | .group ل | ||||
| ل l | |||||
| ل lV | |||||
| ل (L01 l | |||||
| .group م | .group م | ||||
| م m | |||||
| م mV | |||||
| م (L01 m | |||||
| .group ن | .group ن | ||||
| ن n | |||||
| ن nV | |||||
| ن (L01 n | |||||
| .group ں | .group ں | ||||
| ں n // this should nasalize the vowel | ں n // this should nasalize the vowel | ||||
| ہ (_ a | ہ (_ a | ||||
| // 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 | .group 0xe0a4 // devanagari | ||||
| 0xe0a4 _^_HI // switch to hindi voice | |||||
| 0xe0a4 _^_NE // switch to Nepali voice | |||||
| .group 0xe0a5 // devanagari | .group 0xe0a5 // devanagari | ||||
| 0xe0a5 _^_HI | |||||
| 0xe0a5 _^_NE | |||||
| .group | |||||
| $ do:l@R |
| _) b _b | _) b _b | ||||
| .group c | .group c | ||||
| c k | |||||
| c g //k | |||||
| c (_ kh | c (_ kh | ||||
| ch c // try [tS;] [tS] [c] | ch c // try [tS;] [tS] [c] | ||||
| .group d | .group d | ||||
| d J // try [z] [J] [dZ] [dZ;] [J^] | |||||
| d J^ // try [z] [J] [dZ] [dZ;] [J^] | |||||
| .group đ | .group đ | ||||
| đ d | đ d | ||||
| .group g | .group g | ||||
| g Q // try [g] [Q] | g Q // try [g] [Q] | ||||
| gh Q // or [g] [Q] | gh Q // or [g] [Q] | ||||
| g (i D // try [D] [z] [j] [J^] [z;] [J] [dZ] | |||||
| g (ì D | |||||
| g (í D | |||||
| g (ỉ D | |||||
| g (ĩ D | |||||
| g (ị D | |||||
| gi D | |||||
| g (i J^ // try [D] [z] [j] [J^] [z;] [J] [dZ] | |||||
| g (ì J^ | |||||
| g (í J^ | |||||
| g (ỉ J^ | |||||
| g (ĩ J^ | |||||
| g (ị J^ | |||||
| gi J^ | |||||
| .group h | .group h | ||||
| h h | h h | ||||
| ng N | ng N | ||||
| ngh N | ngh N | ||||
| nh n^ | nh n^ | ||||
| .group ñ | .group ñ | ||||
| ñ n^ | ñ n^ | ||||
| .group q | .group q | ||||
| q k | q k | ||||
| q (_ kh | q (_ kh | ||||
| qu kw | |||||
| qu w //kw | |||||
| .group r | .group r | ||||
| r z. // try [z] [z.] [r] [z;] | r z. // try [z] [z.] [r] [z;] | ||||
| aĩ a:I5 | aĩ a:I5 | ||||
| aị a:I6 | aị a:I6 | ||||
| ay aI | ay aI | ||||
| aỳ aI2 | |||||
| aỳ aI2 | |||||
| aý aI3 | aý aI3 | ||||
| aỷ aI4 | aỷ aI4 | ||||
| aỹ aI5 | |||||
| aỵ aI6 | |||||
| aỹ aI5 | |||||
| aỵ aI6 | |||||
| ao a:U | ao a:U | ||||
| aò a:U2 | aò a:U2 | ||||
| aó a:U3 | aó a:U3 | ||||
| //========================= | //========================= | ||||
| .group o | .group o | ||||
| o O | o O | ||||
| o (A w | |||||
| oa o@ // modify oa sound example: hoa,khoa // o (A w | |||||
| oi OI | oi OI | ||||
| oì OI2 | oì OI2 | ||||
| oí OI3 | oí OI3 | ||||
| oỉ OI4 | oỉ OI4 | ||||
| oĩ OI5 | oĩ OI5 | ||||
| oị OI6 | oị OI6 | ||||
| ong O# | |||||
| oe o& // Adding oe sound example: lóe sáng,toét mắt | |||||
| .group ò | .group ò | ||||
| ò O2 | ò O2 | ||||
| òi OI2 | òi OI2 | ||||
| ò (A w2 | |||||
| òa o@2 //ò (A w2 | |||||
| òng O#2 | |||||
| òe o&2 | |||||
| .group ó | .group ó | ||||
| ó O3 | ó O3 | ||||
| ói OI3 | ói OI3 | ||||
| ó (A w3 | |||||
| óa o@3 //ó (A w3 | |||||
| óng O#3 | |||||
| óe o&3 | |||||
| .group ỏ | .group ỏ | ||||
| ỏ O4 | ỏ O4 | ||||
| ỏi OI4 | ỏi OI4 | ||||
| ỏ (A w4 | |||||
| ỏa o@4 //ỏ (A w4 | |||||
| ỏng O#4 | |||||
| ỏe o&4 | |||||
| .group õ | .group õ | ||||
| õ O5 | õ O5 | ||||
| õi OI5 | õi OI5 | ||||
| õ (A w5 | |||||
| õa o@5 //õ (A w5 | |||||
| õng O#5 | |||||
| õe o&5 | |||||
| .group ọ | .group ọ | ||||
| ọ O6 | ọ O6 | ||||
| ọi OI6 | ọi OI6 | ||||
| ọ (A w6 | |||||
| ọa o@6 //ọ (A w6 | |||||
| ọng O#6 | |||||
| ọe o&6 | |||||
| //============================= | //============================= | ||||
| .group ô | .group ô | ||||
| ô o | ô o | ||||
| ôi oI | ôi oI | ||||
| ông o# // ông sound | |||||
| .group ồ | .group ồ | ||||
| ồ o2 | ồ o2 | ||||
| ồi oI2 | ồi oI2 | ||||
| ồng o#2 | |||||
| .group ố | .group ố | ||||
| ố o3 | ố o3 | ||||
| ối oI3 | ối oI3 | ||||
| ống o#3 | |||||
| .group ổ | .group ổ | ||||
| ổ o4 | ổ o4 | ||||
| ổi oI4 | ổi oI4 | ||||
| ổng o#4 | |||||
| .group ỗ | .group ỗ | ||||
| ỗ o5 | ỗ o5 | ||||
| ỗi oI5 | ỗi oI5 | ||||
| ỗng o#5 | |||||
| .group ộ | .group ộ | ||||
| ộ o6 | ộ o6 | ||||
| ội oI6 | ội oI6 | ||||
| ộng o#6 | |||||
| uổi u@j4 | uổi u@j4 | ||||
| uỗi u@j5 | uỗi u@j5 | ||||
| uội u@j6 | uội u@j6 | ||||
| //ung u# | |||||
| .group ù | .group ù | ||||
| ù u2 | ù u2 | ||||
| ù (A w2 | ù (A w2 | ||||
| ùi uI2 | ùi uI2 | ||||
| ùa u@2 | ùa u@2 | ||||
| //ùng u#2 | |||||
| .group ú | .group ú | ||||
| ú u3 | ú u3 | ||||
| ú (A w3 | ú (A w3 | ||||
| úi uI3 | úi uI3 | ||||
| úa u@3 | úa u@3 | ||||
| //úng u#3 | |||||
| .group ủ | .group ủ | ||||
| ủ u4 | ủ u4 | ||||
| ủ (A w4 | ủ (A w4 | ||||
| ủi uI4 | ủi uI4 | ||||
| ủa u@4 | ủa u@4 | ||||
| //ủng u#4 | |||||
| .group ũ | .group ũ | ||||
| ũ u5 | ũ u5 | ||||
| ũ (A w5 | ũ (A w5 | ||||
| ũi uI5 | ũi uI5 | ||||
| ũa u@5 | ũa u@5 | ||||
| //ũng u#5 | |||||
| .group ụ | .group ụ | ||||
| ụ u6 | ụ u6 | ||||
| ụ (A w6 | ụ (A w6 | ||||
| ụi uI6 | ụi uI6 | ||||
| ụa u@6 | ụa u@6 | ||||
| //ụng u#6 | |||||
| //============================= | //============================= | ||||
| .group ư | .group ư | ||||
| .group | .group | ||||
| % f'@2n||tS;'am | |||||
| % f'@2n||cr'am | |||||
| ! _:c'@3m_|t'a:7n_: | ! _:c'@3m_|t'a:7n_: | ||||
| ! (\! | ! (\! | ||||
| // : koUl@n | // : koUl@n | ||||
| D_) h (_DD_ D'@:2 // omit colon in time, eg: 2:30 | D_) h (_DD_ D'@:2 // omit colon in time, eg: 2:30 | ||||
| $ d'o||l'a | $ d'o||l'a | ||||
| != x,o1N_|_b'a2N_ | |||||
| != x'o#_|_b'a2N_ | |||||
| >= l'@:3n_|h'@:1n_|hw,a6kh_b'a2N | >= l'@:3n_|h'@:1n_|hw,a6kh_b'a2N | ||||
| <= n^'O4_|h'@:1n_|hw,a6kh_b'a2N | <= n^'O4_|h'@:1n_|hw,a6kh_b'a2N | ||||
| name urdu-test | name urdu-test | ||||
| language ur | language ur | ||||
| phonemes hi | |||||
| stressrule 6 | stressrule 6 | ||||
| CALL I | CALL I | ||||
| endphoneme | endphoneme | ||||
| phoneme I# | |||||
| vowel starttype #@ endtype #@ | |||||
| ChangePhoneme(I2) | |||||
| endphoneme | |||||
| phoneme i // optional variant of [I] for end of words | phoneme i // optional variant of [I] for end of words | ||||
| vowel starttype #i endtype #e | vowel starttype #i endtype #e | ||||
| phoneme 3: | phoneme 3: | ||||
| vowel starttype #e endtype #@ | vowel starttype #e endtype #@ | ||||
| length 210 | |||||
| length 230 | |||||
| ChangeIfNotStressed(VR) // also need "replace 02 3: VR" in voice file | ChangeIfNotStressed(VR) // also need "replace 02 3: VR" in voice file | ||||
| ipa e | ipa e | ||||
| AppendPhoneme(r) | |||||
| FMT(vdiph2/e@) | |||||
| FMT(vowelr/e_r) | |||||
| endphoneme | endphoneme | ||||
| length 230 | length 230 | ||||
| ipa o | ipa o | ||||
| AppendPhoneme(r) | AppendPhoneme(r) | ||||
| FMT(vowelr/o_r) | |||||
| FMT(vowelr/oo_r) | |||||
| endphoneme | endphoneme | ||||
| phoneme i@3 | phoneme i@3 | ||||
| vowel starttype #i endtype #@ | vowel starttype #i endtype #@ | ||||
| ipa ɪ | ipa ɪ | ||||
| length 220 | |||||
| length 240 | |||||
| AppendPhoneme(r) | AppendPhoneme(r) | ||||
| FMT(vowelr/i_r) | FMT(vowelr/i_r) | ||||
| endphoneme | endphoneme |
| FMT(vowel/@_low2) | FMT(vowel/@_low2) | ||||
| endphoneme | endphoneme | ||||
| phoneme @L | |||||
| vowel starttype #@ endtype l | |||||
| ipa əl | |||||
| unstressed | |||||
| length 160 | |||||
| FMT(vwl_en/@L) | |||||
| endphoneme | |||||
| phoneme a | phoneme a | ||||
| vowel starttype #e endtype #@ | vowel starttype #e endtype #@ | ||||
| ChangeIfDiminished(@) | ChangeIfDiminished(@) | ||||
| IF nextPh(r) THEN | IF nextPh(r) THEN | ||||
| ChangePhoneme(O:) | ChangePhoneme(O:) | ||||
| // FMT(vwl_en_us/oor) | |||||
| ENDIF | ENDIF | ||||
| FMT(vowel/aa_8) | FMT(vowel/aa_8) | ||||
| endphoneme | endphoneme | ||||
| vowel starttype #@ endtype #@ | vowel starttype #@ endtype #@ | ||||
| length 240 | length 240 | ||||
| IfNextVowelAppend(r-) | IfNextVowelAppend(r-) | ||||
| ChangeIfDiminished(3) | |||||
| FMT(vwl_en_us/3_us2) | FMT(vwl_en_us/3_us2) | ||||
| endphoneme | endphoneme | ||||
| phoneme eI | phoneme eI | ||||
| vowel starttype #e endtype #i | vowel starttype #e endtype #i | ||||
| length 230 | length 230 | ||||
| FMT(vdiph2/ei_4) | |||||
| FMT(vdiph/eei_5) | |||||
| endphoneme | endphoneme | ||||
| voicingswitch d | voicingswitch d | ||||
| lengthmod 2 | lengthmod 2 | ||||
| IF prevPhW(isVowel) OR prevPhW(n) THEN | |||||
| // IF prevPhW(isVowel) OR prevPhW(n) THEN | |||||
| IF prevPhW(isVowel) THEN // test, don't reduce [t] after [n] | |||||
| IF nextPhW(isVowel) AND nextPh(isUnstressed) THEN | IF nextPhW(isVowel) AND nextPh(isUnstressed) THEN | ||||
| IF next2Ph(n) AND next2Ph(notWordStart) THEN | IF next2Ph(n) AND next2Ph(notWordStart) THEN | ||||
| ELSE | ELSE |
| import_phoneme consonants/k- | import_phoneme consonants/k- | ||||
| endphoneme | endphoneme | ||||
| phoneme q | |||||
| vls uvl stop | |||||
| lengthmod 2 | |||||
| Vowelin f1=1 f2=1700 0 200 f3=-300 80 gpaus f4 rms=30 | |||||
| Vowelout f1=1 f2=1700 -100 200 f3=-300 80 f4 rms=35 | |||||
| IF nextPh(#i) THEN | |||||
| WAV(ustop/q2_i, 40) | |||||
| ENDIF | |||||
| WAV(ustop/q2, 48) | |||||
| endphoneme | |||||
| phoneme Q | phoneme Q | ||||
| import_phoneme base/Q" | |||||
| import_phoneme base/r" | |||||
| endphoneme | endphoneme | ||||
| phoneme r | phoneme r |
| vowel starttype #@ endtype #@ | vowel starttype #@ endtype #@ | ||||
| ipa ɐU+0303 | ipa ɐU+0303 | ||||
| length 180 | length 180 | ||||
| // ChangeIfNotStressed(&) | |||||
| FMT(vnasal/a#_n) | FMT(vnasal/a#_n) | ||||
| endphoneme | endphoneme | ||||
| endphoneme | endphoneme | ||||
| // TESTING | |||||
| phoneme &2~ | |||||
| vowel starttype #@ endtype #@ | |||||
| ipa ɐU+0303 | |||||
| length 200 | |||||
| FMT(vnasal/W_n) | |||||
| endphoneme |
| //==================================================== | |||||
| // Phonemes adjusted for Urdu by Him Prasad Gautam. | |||||
| //==================================================== | |||||
| phoneme : // Lengthen the previous vowel by "length" | |||||
| virtual | |||||
| length 120 | |||||
| endphoneme | |||||
| phoneme @ | |||||
| vowel flag1 starttype #@ endtype #@ | |||||
| length 130 | |||||
| ChangeIfDiminished(@-) | |||||
| IF nextPh(H) THEN | |||||
| FMT(vowel/@_low) | |||||
| ENDIF | |||||
| FMT(vowel/@_bck) | |||||
| endphoneme | |||||
| phoneme V | |||||
| vowel flag1 starttype #@ endtype #@ | |||||
| length 150 | |||||
| CALL hi/V | |||||
| endphoneme | |||||
| phoneme @2 | |||||
| vowel flag1 starttype #@ endtype #@ | |||||
| length 150 | |||||
| FMT(vowel/@_low) | |||||
| endphoneme | |||||
| phoneme @3 | |||||
| vowel flag1 starttype #@ endtype #@ | |||||
| length 150 | |||||
| ChangeIfDiminished(@-) | |||||
| FMT(vowel/@_3) | |||||
| endphoneme | |||||
| //==================================================== | |||||
| // The rest Phonemes are inherted from Hindi. |
| phoneme 2 // huyền tone: low falling | phoneme 2 // huyền tone: low falling | ||||
| stress | stress | ||||
| Tone(20, 8, envelope/p_fall, NULL) | |||||
| Tone(20, 8, envelope/p_fall, NULL) //20 | |||||
| endphoneme | endphoneme | ||||
| phoneme 3 // sắc Tone(rising | phoneme 3 // sắc Tone(rising | ||||
| stress | stress | ||||
| Tone(25, 50, envelope/p_rise, NULL) | |||||
| Tone(25, 50, envelope/p_rise, NULL) // 25 | |||||
| endphoneme | endphoneme | ||||
| phoneme 5 // ngã tone: broken (creaking rising) | phoneme 5 // ngã tone: broken (creaking rising) | ||||
| stress | stress | ||||
| Tone(28, 58, envelope/p_214, envelope/vi_5amp) | |||||
| Tone(28,58, envelope/p_214, envelope/vi_5amp) // 28,58 | |||||
| endphoneme | endphoneme | ||||
| phoneme 6 // nặng Tone(drop (constricted) | phoneme 6 // nặng Tone(drop (constricted) | ||||
| stress | stress | ||||
| length 75 // reduce the length of the vowel | |||||
| //length 150 // ignore because it make too short sound 75 // reduce the length of the vowel | |||||
| Tone(40, 20, envelope/p_512, envelope/vi_6amp) | Tone(40, 20, envelope/p_512, envelope/vi_6amp) | ||||
| endphoneme | endphoneme | ||||
| phoneme a | phoneme a | ||||
| vowel starttype #@ endtype #@ | vowel starttype #@ endtype #@ | ||||
| length 130 | |||||
| FMT(vowel/a_4) | |||||
| length 120 | |||||
| FMT(vowel/a_6) //a_4) | |||||
| endphoneme | endphoneme | ||||
| phoneme a: | phoneme a: | ||||
| vowel starttype #a endtype #a | vowel starttype #a endtype #a | ||||
| length 280 | |||||
| FMT(vowel/a_6) | |||||
| length 200 //280 | |||||
| FMT(vietnam/a) //FMT(vowel/a_6) | |||||
| endphoneme | endphoneme | ||||
| phoneme O | phoneme O | ||||
| vowel starttype #o endtype #o | vowel starttype #o endtype #o | ||||
| length 200 | |||||
| FMT(vowel/aa_4) | |||||
| IF nextPh(kh) THEN | |||||
| length 95 | |||||
| ELSE | |||||
| length 200 | |||||
| ENDIF | |||||
| FMT(vowel/aa_4) | |||||
| endphoneme | endphoneme | ||||
| phoneme o | phoneme o | ||||
| vowel starttype #o endtype #o | vowel starttype #o endtype #o | ||||
| length 200 | |||||
| IF nextPh(kh) THEN | |||||
| length 95 | |||||
| ELSE | |||||
| length 200 | |||||
| ENDIF | |||||
| FMT(vowel/o_2) | FMT(vowel/o_2) | ||||
| endphoneme | endphoneme | ||||
| phoneme u | phoneme u | ||||
| vowel starttype #u endtype #u | vowel starttype #u endtype #u | ||||
| length 200 | |||||
| FMT(vowel/u_7) | |||||
| IF nextPh(kh) OR nextPh(N) THEN // hear as ung sound | |||||
| length 120 | |||||
| ELSE | |||||
| length 200 | |||||
| ENDIF | |||||
| FMT(vnasal/u_n) //vowel/u_7) | |||||
| endphoneme | endphoneme | ||||
| phoneme y | phoneme y | ||||
| vowel starttype #u endtype #u | vowel starttype #u endtype #u | ||||
| length 200 | |||||
| IF nextPh(kh) OR nextPh(N) THEN | |||||
| length 120 | |||||
| ELSE | |||||
| length 200 | |||||
| ENDIF | |||||
| FMT(vowel/u#_5) | FMT(vowel/u#_5) | ||||
| endphoneme | endphoneme | ||||
| phoneme @ | phoneme @ | ||||
| vowel starttype #@ endtype #a | vowel starttype #@ endtype #a | ||||
| length 130 | |||||
| FMT(vowel/@_2) | |||||
| IF nextPh(kh) OR nextPh(N) THEN | |||||
| length 120 | |||||
| ELSE | |||||
| length 170 | |||||
| ENDIF | |||||
| FMT(vowel/V) //vowel/@_2) | |||||
| endphoneme | endphoneme | ||||
| phoneme aI | phoneme aI | ||||
| vowel starttype #a endtype #i | vowel starttype #a endtype #i | ||||
| length 250 | |||||
| FMT(vdiph/&i_3) | |||||
| length 200 //250 | |||||
| FMT(vdiph/&y) | |||||
| endphoneme | endphoneme | ||||
| phoneme a:I | phoneme a:I | ||||
| vowel starttype #a endtype #i | vowel starttype #a endtype #i | ||||
| length 250 | |||||
| length 200 //250 | |||||
| FMT(vdiph/ai) | FMT(vdiph/ai) | ||||
| endphoneme | endphoneme | ||||
| phoneme @I | phoneme @I | ||||
| vowel starttype #@ endtype #i | vowel starttype #@ endtype #i | ||||
| length 250 | |||||
| length 200 //250 | |||||
| FMT(vdiph/@i) | FMT(vdiph/@i) | ||||
| endphoneme | endphoneme | ||||
| phoneme @:I | phoneme @:I | ||||
| vowel starttype #@ endtype #i | vowel starttype #@ endtype #i | ||||
| length 250 | |||||
| length 200 //250 | |||||
| FMT(vdiph/@i) | FMT(vdiph/@i) | ||||
| endphoneme | endphoneme | ||||
| phoneme a:U | phoneme a:U | ||||
| vowel starttype #a endtype #u | vowel starttype #a endtype #u | ||||
| length 270 | |||||
| length 230 //270 | |||||
| FMT(vdiph/au) | FMT(vdiph/au) | ||||
| endphoneme | endphoneme | ||||
| phoneme @U | phoneme @U | ||||
| vowel starttype #@ endtype #u | vowel starttype #@ endtype #u | ||||
| length 200 | length 200 | ||||
| FMT(vdiph/@u) | |||||
| FMT(vdiph/@u_3) | |||||
| endphoneme | endphoneme | ||||
| phoneme @:U | phoneme @:U | ||||
| FMT(vdiph2/uu@) | FMT(vdiph2/uu@) | ||||
| endphoneme | endphoneme | ||||
| // Addition Dipthongs | |||||
| phoneme o# // ông | |||||
| vowel starttype #o endtype #o | |||||
| length 200 | |||||
| FMT(vnasal/a#u_n) | |||||
| endphoneme | |||||
| phoneme O# // ong | |||||
| vowel starttype #o endtype #o | |||||
| length 200 | |||||
| FMT(vnasal/&u_n) | |||||
| endphoneme | |||||
| phoneme o@ | |||||
| vowel starttype #o endtype #o | |||||
| length 160 | |||||
| FMT(vdiph2/oa) | |||||
| endphoneme | |||||
| phoneme o& | |||||
| vowel starttype #o endtype #o | |||||
| length 160 | |||||
| FMT(vietnam/oe) | |||||
| endphoneme | |||||
| phoneme kh | phoneme kh | ||||
| vls vel frc | vls vel frc | ||||
| lengthmod 3 | lengthmod 3 | ||||
| Vowelin f1=0 f2=2300 200 400 f3=200 80 | Vowelin f1=0 f2=2300 200 400 f3=200 80 | ||||
| Vowelout f1=0 f2=2300 300 400 f3=200 80 rms=20 | Vowelout f1=0 f2=2300 300 400 f3=200 80 rms=20 | ||||
| WAV(ufric/x, 50) | |||||
| WAV(vietnam/_c,5) //ufric/x, 50) | |||||
| endphoneme | endphoneme | ||||
| phoneme l | phoneme l | ||||
| liquid | liquid | ||||
| lengthmod 7 | lengthmod 7 | ||||
| //IF nextPh(isNotVowel) THEN | |||||
| // ChangePhoneme(l/2) | |||||
| //ENDIF | |||||
| IF nextPh(isNotVowel) THEN | |||||
| ChangePhoneme(l/2) | |||||
| ENDIF | |||||
| CALL vowelstart_l | |||||
| //CALL vowelstart_l | |||||
| FMT(l/l_vi) | FMT(l/l_vi) | ||||
| endphoneme | endphoneme | ||||
| phoneme t | |||||
| vls alv stop | |||||
| //voicingswitch d | |||||
| lengthmod 2 | |||||
| Vowelin f1=0 f2=1700 -300 300 f3=-100 80 | |||||
| Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 | |||||
| WAV(vietnam/th, 50) | |||||
| endphoneme | |||||
| phoneme cr | |||||
| vls pla afr sibilant | |||||
| //voicingswitch dZ | |||||
| lengthmod 2 | |||||
| Vowelin f1=0 f2=2300 200 400 f3=-100 80 | |||||
| WAV(vietnam/tr,10) | |||||
| endphoneme | |||||
| phoneme d | |||||
| vcd alv stop | |||||
| lengthmod 5 | |||||
| Vowelin f1=1 f2=1700 -300 300 f3=-100 80 | |||||
| Vowelout f1=2 f2=1700 -300 300 f3=-100 80 brk | |||||
| WAV(vietnam/dd) | |||||
| endphoneme | |||||
| phoneme c | |||||
| vls pal stop palatal | |||||
| //voicingswitch J | |||||
| lengthmod 2 | |||||
| length 75 | |||||
| Vowelin f1=0 f2=2700 400 600 f3=300 80 rate len=70 | |||||
| Vowelout f1=1 f2=2700 400 600 f3=200 70 len=50 colr=1 | |||||
| WAV(vietnam/ch,5) | |||||
| endphoneme | |||||
| phoneme p | |||||
| vls blb stop | |||||
| lengthmod 2 | |||||
| Vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11 | |||||
| Vowelout f1=0 f2=1000 -500 -350 f3=-300 80 rms=22 | |||||
| WAV(ustop/p_unasp_,10) | |||||
| endphoneme | |||||
| phoneme n | |||||
| vcd alv nasal | |||||
| Vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11 | |||||
| Vowelout f1=2 f2=1700 -300 250 f3=-100 80 rms=20 brk | |||||
| lengthmod 4 | |||||
| FMT(n/n#_) | |||||
| endphoneme | |||||
| phoneme t[ // dental variant of /t/ | |||||
| vls dnt stop | |||||
| voicingswitch d[ | |||||
| lengthmod 2 | |||||
| Vowelin f1=1 f2=1500 -250 250 f3=-100 80 amp=16 | |||||
| Vowelout f1=0 f2=1500 -300 250 f3=-100 80 rms=20 | |||||
| IF nextPh(isPause2) THEN | |||||
| WAV(ustop/t_unasp2, 5) | |||||
| ENDIF | |||||
| WAV(ustop/t_hi, 70) | |||||
| endphoneme |
| phonemetable ml hi | phonemetable ml hi | ||||
| include ph_malayalam | include ph_malayalam | ||||
| phonemetable ur hi | |||||
| include ph_urdu | |||||
| phonemetable hu base | phonemetable hu base | ||||
| include ph_hungarian | include ph_hungarian | ||||
| include ph_icelandic | include ph_icelandic | ||||
| phonemetable vi base | phonemetable vi base | ||||
| include ph_vi | |||||
| include ph_vietnam | |||||
| phonemetable zhy base | phonemetable zhy base | ||||
| include ph_zh_yue | include ph_zh_yue |
| //==================================================== | |||||
| // Nepali (inherits from Hindi) | |||||
| //==================================================== | |||||
| phoneme V | |||||
| vowel starttype #@ endtype #@ | |||||
| length 160 | |||||
| ChangeIfNotStressed(@) | |||||
| IF nextPh(H) THEN | |||||
| FMT(vowel/@_low) | |||||
| ENDIF | |||||
| FMT(vowel/@_bck) | |||||
| endphoneme | |||||
| phoneme @3 // use a more front [@] after palatal consonants | |||||
| vowel starttype #@ endtype #@ | |||||
| length 140 | |||||
| FMT(vowel/@_3) | |||||
| endphoneme | |||||
| phoneme @/ | |||||
| vowel starttype #@ endtype #@ | |||||
| length 130 | |||||
| IF nextPh(H) THEN | |||||
| FMT(vowel/@_low) | |||||
| ENDIF | |||||
| FMT(vowel/@_bck) | |||||
| endphoneme | |||||
| phoneme i | |||||
| vowel starttype #i endtype #i | |||||
| length 160 | |||||
| IfNextVowelAppend(;) | |||||
| FMT(vowel/i) | |||||
| endphoneme | |||||
| phoneme e | |||||
| vowel starttype #e endtype #e | |||||
| length 180 | |||||
| FMT(vowel/e) | |||||
| endphoneme | |||||
| phoneme a | |||||
| vowel long starttype #a endtype #a | |||||
| length 230 | |||||
| FMT(vowel/aa_9) | |||||
| endphoneme | |||||
| phoneme o | |||||
| vowel starttype #o endtype #o | |||||
| length 180 | |||||
| FMT(vowel/o_mid) | |||||
| endphoneme | |||||
| phoneme u | |||||
| vowel starttype #u endtype #u | |||||
| length 160 | |||||
| FMT(vowel/u_bck) | |||||
| endphoneme | |||||
| // Diphthongs | |||||
| //=========== | |||||
| phoneme aI | |||||
| vowel long starttype #a endtype #i | |||||
| length 240 | |||||
| long | |||||
| FMT(vdiph/aai) | |||||
| endphoneme | |||||
| phoneme aU | |||||
| vowel long starttype #a endtype #u | |||||
| length 240 | |||||
| long | |||||
| FMT(vdiph/aau_3) | |||||
| endphoneme | |||||
| phoneme eI | |||||
| vowel long starttype #e endtype #i | |||||
| length 240 | |||||
| long | |||||
| FMT(vdiph/eei) | |||||
| endphoneme | |||||
| phoneme eU | |||||
| vowel long starttype #e endtype #u | |||||
| length 240 | |||||
| long | |||||
| FMT(vdiph/eu) | |||||
| endphoneme | |||||
| phoneme VI | |||||
| vowel long starttype #@ endtype #i | |||||
| length 240 | |||||
| long | |||||
| FMT(vdiph/Vi) | |||||
| endphoneme | |||||
| phoneme VU | |||||
| vowel long starttype #@ endtype #u | |||||
| length 240 | |||||
| long | |||||
| FMT(vdiph/Vu) | |||||
| endphoneme | |||||
| phoneme oI | |||||
| vowel long starttype #o endtype #i | |||||
| length 240 | |||||
| long | |||||
| FMT(vdiph/oi) | |||||
| endphoneme | |||||
| phoneme oU | |||||
| vowel long starttype #o endtype #u | |||||
| length 240 | |||||
| long | |||||
| FMT(vdiph/ou) | |||||
| endphoneme | |||||
| phoneme uI | |||||
| vowel long starttype #u endtype #i | |||||
| length 240 | |||||
| long | |||||
| FMT(vdiph/ui) | |||||
| endphoneme | |||||
| /*************************************************************************** | /*************************************************************************** | ||||
| * Copyright (C) 2005 to 2011 by Jonathan Duddington * | |||||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||||
| * email: [email protected] * | * email: [email protected] * | ||||
| * * | * * | ||||
| * This program is free software; you can redistribute it and/or modify * | * This program is free software; you can redistribute it and/or modify * | ||||
| static FILE *f_phcontents; | static FILE *f_phcontents; | ||||
| static FILE *f_errors = stderr; | static FILE *f_errors = stderr; | ||||
| static FILE *f_prog_log = NULL; | static FILE *f_prog_log = NULL; | ||||
| static FILE *f_report; | |||||
| static FILE *f_in; | static FILE *f_in; | ||||
| static int duplicate_references = 0; | static int duplicate_references = 0; | ||||
| static int count_frames = 0; | static int count_frames = 0; | ||||
| static int error_count = 0; | static int error_count = 0; | ||||
| static int resample_count = 0; | |||||
| static int then_count = 0; | static int then_count = 0; | ||||
| static int after_if = 0; | static int after_if = 0; | ||||
| #define N_ENVELOPES 30 | #define N_ENVELOPES 30 | ||||
| static int n_envelopes = 0; | |||||
| static char envelope_paths[N_ENVELOPES][80]; | |||||
| static unsigned char envelope_dat[N_ENVELOPES][ENV_LEN]; | |||||
| int n_envelopes = 0; | |||||
| char envelope_paths[N_ENVELOPES][80]; | |||||
| unsigned char envelope_dat[N_ENVELOPES][ENV_LEN]; | |||||
| typedef struct { | typedef struct { | ||||
| int n; | int n; | ||||
| REF_HASH_TAB *p; | REF_HASH_TAB *p; | ||||
| REF_HASH_TAB **list; | REF_HASH_TAB **list; | ||||
| FILE *f_report; | |||||
| const char *data_path; | const char *data_path; | ||||
| int prev_table; | int prev_table; | ||||
| int prev_mnemonic; | int prev_mnemonic; | ||||
| char fname[sizeof(path_source)+20]; | char fname[sizeof(path_source)+20]; | ||||
| if(f_report == NULL) | |||||
| return; | |||||
| // make a list of all the references and sort it | // make a list of all the references and sort it | ||||
| list = (REF_HASH_TAB **)malloc((count_references)* sizeof(REF_HASH_TAB *)); | list = (REF_HASH_TAB **)malloc((count_references)* sizeof(REF_HASH_TAB *)); | ||||
| if(list == NULL) | if(list == NULL) | ||||
| return; | return; | ||||
| sprintf(fname,"%scompile_report",path_source); | |||||
| f_report = fopen(fname,"w"); | |||||
| if(f_report == NULL) | |||||
| { | |||||
| free(list); | |||||
| return; | |||||
| } | |||||
| fprintf(f_report,"%d phoneme tables\n",n_phoneme_tabs); | |||||
| fprintf(f_report," new total\n"); | |||||
| fprintf(f_report,"\n%d phoneme tables\n",n_phoneme_tabs); | |||||
| fprintf(f_report," new total\n"); | |||||
| for(ix=0; ix<n_phoneme_tabs; ix++) | for(ix=0; ix<n_phoneme_tabs; ix++) | ||||
| { | { | ||||
| fprintf(f_report,"%8s %3d %4d\n",phoneme_tab_list2[ix].name, phoneme_tab_list2[ix].n_phonemes, n_phcodes_list[ix]+1); | fprintf(f_report,"%8s %3d %4d\n",phoneme_tab_list2[ix].name, phoneme_tab_list2[ix].n_phonemes, n_phcodes_list[ix]+1); | ||||
| if((fd_temp = mkstemp(fname_temp)) >= 0) | if((fd_temp = mkstemp(fname_temp)) >= 0) | ||||
| { | { | ||||
| close(fd_temp); | close(fd_temp); | ||||
| sprintf(command,"sox \"%s%s.wav\" -r %d -c 1 -w %s polyphase\n",path_source,fname,samplerate_native,fname_temp); | |||||
| sprintf(command,"sox \"%s%s.wav\" -c1 -t wav %s rate -h %d\n",path_source,fname,fname_temp,samplerate_native); | |||||
| if(system(command) < 0) | if(system(command) < 0) | ||||
| { | { | ||||
| error("Failed to resample: %s",command); | error("Failed to resample: %s",command); | ||||
| remove(fname_temp); | |||||
| return(0); | return(0); | ||||
| } | } | ||||
| } | } | ||||
| if(GetFileLength(fname_temp) <= 0) | |||||
| { | |||||
| error("Failed to resample: %s",command); | |||||
| remove(fname_temp); | |||||
| return(0); | |||||
| } | |||||
| f = fopen(fname_temp,"rb"); | f = fopen(fname_temp,"rb"); | ||||
| if(f == NULL) | if(f == NULL) | ||||
| { | { | ||||
| error("Can't read temp file: %s",fname_temp); | error("Can't read temp file: %s",fname_temp); | ||||
| return(0); | return(0); | ||||
| } | } | ||||
| if(f_report != NULL) | |||||
| fprintf(f_report, "resampled %s\n", fname); | |||||
| resample_count++; | |||||
| resample_wav = 1; | resample_wav = 1; | ||||
| fseek(f,40,SEEK_SET); // skip past the WAV header, up to before "data length" | fseek(f,40,SEEK_SET); // skip past the WAV header, up to before "data length" | ||||
| } | } | ||||
| if((f_errors = fopen_log(f_errors,fname,"w")) == NULL) | if((f_errors = fopen_log(f_errors,fname,"w")) == NULL) | ||||
| f_errors = stderr; | f_errors = stderr; | ||||
| sprintf(fname,"%s%s",path_source,"compile_report"); | |||||
| f_report = fopen_log(f_errors, fname,"w"); | |||||
| sprintf(fname,"%s/%s",path_home,"phondata-manifest"); | sprintf(fname,"%s/%s",path_home,"phondata-manifest"); | ||||
| if((f_phcontents = fopen_log(f_phcontents,fname,"w")) == NULL) | if((f_phcontents = fopen_log(f_phcontents,fname,"w")) == NULL) | ||||
| f_phcontents = stderr; | f_phcontents = stderr; | ||||
| fprintf(f_errors,"\nRefs %d, Reused %d\n",count_references,duplicate_references); | fprintf(f_errors,"\nRefs %d, Reused %d\n",count_references,duplicate_references); | ||||
| fclose(f_in); | fclose(f_in); | ||||
| fclose(f_phdata); | fclose(f_phdata); | ||||
| if(f_errors != stderr) | |||||
| fclose(f_errors); | |||||
| if(f_prog_log != NULL) | if(f_prog_log != NULL) | ||||
| fclose(f_prog_log); | fclose(f_prog_log); | ||||
| fclose(f_phindex); | fclose(f_phindex); | ||||
| LoadPhData(); | LoadPhData(); | ||||
| LoadVoice(voice_name2,0); | LoadVoice(voice_name2,0); | ||||
| CompileReport(); | CompileReport(); | ||||
| report_dict = CompileAllDictionaries(); | report_dict = CompileAllDictionaries(); | ||||
| //#ifdef deleted | |||||
| DrawEnvelopes(); | DrawEnvelopes(); | ||||
| //#endif | |||||
| if(gui_flag) | if(gui_flag) | ||||
| { | { | ||||
| delete progress; | delete progress; | ||||
| } | } | ||||
| report.Printf(_T("Compiled phonemes: %d errors."),error_count); | |||||
| if(resample_count > 0) | |||||
| { | |||||
| fprintf(f_errors, "\n%d WAV files resampled to %d Hz\n", resample_count, samplerate_native); | |||||
| report.Printf(_T("Compiled phonemes: %d errors, %d files resampled to %d Hz. "),error_count, resample_count, samplerate_native); | |||||
| } | |||||
| else | |||||
| { | |||||
| report.Printf(_T("Compiled phonemes: %d errors."),error_count); | |||||
| } | |||||
| if(f_errors != stderr) | |||||
| fclose(f_errors); | |||||
| if(error_count > 0) | if(error_count > 0) | ||||
| { | { | ||||
| report += _T(" See file: 'phsource/error_log'."); | report += _T(" See file: 'phsource/error_log'."); | ||||
| char buf[sizeof(path_source)+120]; | char buf[sizeof(path_source)+120]; | ||||
| error_count = 0; | error_count = 0; | ||||
| resample_count = 0; | |||||
| sprintf(fname_errors,"%s%s",path_source,"error_intonation"); | sprintf(fname_errors,"%s%s",path_source,"error_intonation"); | ||||
| if((f_errors = fopen(fname_errors,"w")) == NULL) | if((f_errors = fopen(fname_errors,"w")) == NULL) | ||||
| fwrite(tune_data, n_tune_names, sizeof(TUNE), f_out); | fwrite(tune_data, n_tune_names, sizeof(TUNE), f_out); | ||||
| fclose(f_in); | fclose(f_in); | ||||
| fclose(f_out); | fclose(f_out); | ||||
| fclose(f_errors); | |||||
| report.Printf(_T("Compiled %d intonation tunes: %d errors."),n_tune_names, error_count); | report.Printf(_T("Compiled %d intonation tunes: %d errors."),n_tune_names, error_count); | ||||
| wxLogStatus(report); | wxLogStatus(report); |
| /*************************************************************************** | /*************************************************************************** | ||||
| * Copyright (C) 2005 to 2010 by Jonathan Duddington * | |||||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||||
| * email: [email protected] * | * email: [email protected] * | ||||
| * * | * * | ||||
| * This program is free software; you can redistribute it and/or modify * | * This program is free software; you can redistribute it and/or modify * | ||||
| MNEM_TAB mnem_rules[] = { | MNEM_TAB mnem_rules[] = { | ||||
| {"unpr", 0x01}, | {"unpr", 0x01}, | ||||
| {"w_alt1", 0x11}, | |||||
| {"w_alt2", 0x12}, | {"w_alt2", 0x12}, | ||||
| {"w_alt3", 0x13}, | {"w_alt3", 0x13}, | ||||
| // {"w_alt4", 0x14}, | |||||
| {"w_alt", 0x11}, // note: put longer names before their sub-strings | {"w_alt", 0x11}, // note: put longer names before their sub-strings | ||||
| {"p_alt1", 0x21}, | |||||
| {"p_alt2", 0x22}, | {"p_alt2", 0x22}, | ||||
| {"p_alt3", 0x23}, | {"p_alt3", 0x23}, | ||||
| // {"p_alt4", 0x24}, | |||||
| {"p_alt", 0x21}, | {"p_alt", 0x21}, | ||||
| {NULL, -1} }; | {NULL, -1} }; | ||||
| items[n_items] = p_start = p; | items[n_items] = p_start = p; | ||||
| while((*p & 0xff) > ' ') | while((*p & 0xff) > ' ') | ||||
| { | { | ||||
| if (*p == '_') *p = ' '; // allow '_' for word break | |||||
| if (*p == '_') *p = ' '; // allow '_' for word break | |||||
| p++; | p++; | ||||
| } | } | ||||
| *p++ = 0; | *p++ = 0; |
| /*************************************************************************** | /*************************************************************************** | ||||
| * Copyright (C) 2005 to 2011 by Jonathan Duddington * | |||||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||||
| * email: [email protected] * | * email: [email protected] * | ||||
| * * | * * | ||||
| * This program is free software; you can redistribute it and/or modify * | * This program is free software; you can redistribute it and/or modify * | ||||
| stress = 3; | stress = 3; | ||||
| if((stressflags & 0x1000) && (vowel_count == 2)) | |||||
| if(unstressed_word == 0) | |||||
| { | { | ||||
| // Two syllable word, if one syllable has primary stress, then give the other secondary stress | |||||
| if(vowel_stress[1] == 4) | |||||
| vowel_stress[2] = 3; | |||||
| if(vowel_stress[2] == 4) | |||||
| vowel_stress[1] = 3; | |||||
| } | |||||
| if((stressflags & 0x1000) && (vowel_count == 3)) | |||||
| { | |||||
| // Two syllable word, if one syllable has primary stress, then give the other secondary stress | |||||
| if(vowel_stress[1] == 4) | |||||
| vowel_stress[2] = 3; | |||||
| if(vowel_stress[2] == 4) | |||||
| vowel_stress[1] = 3; | |||||
| } | |||||
| if((stressflags & 0x2000) && (vowel_stress[1] < 0)) | |||||
| { | |||||
| // If there is only one syllable before the primary stress, give it a secondary stress | |||||
| if((vowel_count > 2) && (vowel_stress[2] >= 4)) | |||||
| if((stressflags & 0x2000) && (vowel_stress[1] < 0)) | |||||
| { | { | ||||
| vowel_stress[1] = 3; | |||||
| // If there is only one syllable before the primary stress, give it a secondary stress | |||||
| if((vowel_count > 3) && (vowel_stress[2] >= 4)) | |||||
| { | |||||
| vowel_stress[1] = 3; | |||||
| } | |||||
| } | } | ||||
| } | } | ||||
| if(word_flags & FLAG_UNPRON_TEST) | if(word_flags & FLAG_UNPRON_TEST) | ||||
| return(match1.end_type | 1); | return(match1.end_type | 1); | ||||
| #ifdef deleted | |||||
| // ?? allow $unpr while translating rules, not just on initial FLAG_UNPRON_TEST | |||||
| if((match1.end_type & SUFX_UNPRON) && !(word_flags & FLAG_SUFFIX_REMOVED)) | |||||
| return(match1.end_type); | |||||
| #endif | |||||
| if((match1.phonemes[0] == phonSWITCH) && ((word_flags & FLAG_DONT_SWITCH_TRANSLATOR)==0)) | if((match1.phonemes[0] == phonSWITCH) && ((word_flags & FLAG_DONT_SWITCH_TRANSLATOR)==0)) | ||||
| { | { | ||||
| // an instruction to switch language, return immediately so we can re-translate | // an instruction to switch language, return immediately so we can re-translate | ||||
| int max; | int max; | ||||
| const char *map; | const char *map; | ||||
| char *p = text; | char *p = text; | ||||
| char *p2 = text; | |||||
| char *p2; | |||||
| int all_alpha=1; | int all_alpha=1; | ||||
| int bits; | int bits; | ||||
| int acc; | int acc; | ||||
| int pairs_start; | int pairs_start; | ||||
| const short *pairs_list; | const short *pairs_list; | ||||
| char buf[N_WORD_BYTES]; | |||||
| p2 = buf; | |||||
| offset = tr->transpose_min - 1; | offset = tr->transpose_min - 1; | ||||
| min = tr->transpose_min; | min = tr->transpose_min; | ||||
| max = tr->transpose_max; | max = tr->transpose_max; | ||||
| acc=0; | acc=0; | ||||
| bits=0; | bits=0; | ||||
| p = text; | |||||
| p2 = text; | |||||
| p = buf; | |||||
| p2 = buf; | |||||
| while((c = *p++) != 0) | while((c = *p++) != 0) | ||||
| { | { | ||||
| if((pairs_list = tr->frequent_pairs) != NULL) | if((pairs_list = tr->frequent_pairs) != NULL) | ||||
| *p2++ = (acc << (8-bits)); | *p2++ = (acc << (8-bits)); | ||||
| } | } | ||||
| *p2 = 0; | *p2 = 0; | ||||
| return((p2 - text) | 0x40); // bit 6 indicates compressed characters | |||||
| strcpy(text, buf); | |||||
| return((p2 - buf) | 0x40); // bit 6 indicates compressed characters | |||||
| } | |||||
| else | |||||
| { | |||||
| return(strlen(text)); | |||||
| } | } | ||||
| return(p2 - text); | |||||
| } // end of TransposeAlphabet | } // end of TransposeAlphabet | ||||
| /*************************************************************************** | /*************************************************************************** | ||||
| * Copyright (C) 2006 to 2007 by Jonathan Duddington * | |||||
| * Copyright (C) 2006 to 2013 by Jonathan Duddington * | |||||
| * email: [email protected] * | * email: [email protected] * | ||||
| * * | * * | ||||
| * This program is free software; you can redistribute it and/or modify * | * This program is free software; you can redistribute it and/or modify * | ||||
| fclose(f_text); | fclose(f_text); | ||||
| } | } | ||||
| espeak_Synchronize(); | |||||
| if(espeak_Synchronize() != EE_OK) | |||||
| { | |||||
| fprintf(stderr, "espeak_Synchronize() failed, maybe error when opening output device\n"); | |||||
| exit(4); | |||||
| } | |||||
| if(f_phonemes_out != stdout) | if(f_phonemes_out != stdout) | ||||
| fclose(f_phonemes_out); // needed for WinCE | fclose(f_phonemes_out); // needed for WinCE |
| /*************************************************************************** | /*************************************************************************** | ||||
| * Copyright (C) 2005 to 2010 by Jonathan Duddington * | |||||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||||
| * email: [email protected] * | * email: [email protected] * | ||||
| * * | * * | ||||
| * This program is free software; you can redistribute it and/or modify * | * This program is free software; you can redistribute it and/or modify * | ||||
| if(len > 0) | if(len > 0) | ||||
| { | { | ||||
| if(len > 1500) | if(len > 1500) | ||||
| len = 1500; // restrict length to pppppevent crash in wxLogMessage() | |||||
| len = 1500; // restrict length to prevent crash in wxLogMessage() | |||||
| msg = (char *)malloc(len+1); | msg = (char *)malloc(len+1); | ||||
| if(msg != NULL) | if(msg != NULL) | ||||
| { | { |
| /*************************************************************************** | /*************************************************************************** | ||||
| * Copyright (C) 2005 to 2007 by Jonathan Duddington * | |||||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||||
| * email: [email protected] * | * email: [email protected] * | ||||
| * * | * * | ||||
| * This program is free software; you can redistribute it and/or modify * | * This program is free software; you can redistribute it and/or modify * | ||||
| } | } | ||||
| y1 = p->pitch1; | y1 = p->pitch1; | ||||
| y2 = p->pitch2; | y2 = p->pitch2; | ||||
| sprintf(buf,"Stress %s%d Amp %2d LenMod %2d Pitch %3d %3d %s PhFlags %.2x ", | |||||
| emphasized,p->stresslevel&0x7,p->amp,p->length,y1,y2,name,p->ph->phflags); | |||||
| sprintf(buf,"Stress %s%d Amp %2d StdLength %2d LengthMod %2d Pitch %3d %3d %s PhFlags %.2x ", | |||||
| emphasized,p->stresslevel&0x7,p->amp,p->std_length*2, p->length,y1,y2,name,p->ph->phflags); | |||||
| wxLogStatus(wxString(buf,wxConvLocal)); | wxLogStatus(wxString(buf,wxConvLocal)); | ||||
| } | } | ||||
| 0x055e, // Armenian question | 0x055e, // Armenian question | ||||
| 0x055b, // Armenian emphasis mark | 0x055b, // Armenian emphasis mark | ||||
| 0x0b1b, // Arabic ; | |||||
| 0x061b, // Arabic ; | |||||
| 0x061f, // Arabic ? | 0x061f, // Arabic ? | ||||
| 0x06d4, // Arabic . | |||||
| 0x0f0d, // Tibet Shad | 0x0f0d, // Tibet Shad | ||||
| 0x0f0e, | 0x0f0e, | ||||
| CLAUSE_SEMICOLON, // Arabic ; | CLAUSE_SEMICOLON, // Arabic ; | ||||
| CLAUSE_QUESTION, // Arabic question mark | CLAUSE_QUESTION, // Arabic question mark | ||||
| CLAUSE_PERIOD, // Arabic full stop | |||||
| CLAUSE_PERIOD+0x8000, // Tibet period | CLAUSE_PERIOD+0x8000, // Tibet period | ||||
| CLAUSE_PARAGRAPH, | CLAUSE_PARAGRAPH, |
| /*************************************************************************** | /*************************************************************************** | ||||
| * Copyright (C) 2005 to 2011 by Jonathan Duddington * | |||||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||||
| * email: [email protected] * | * email: [email protected] * | ||||
| * * | * * | ||||
| * This program is free software; you can redistribute it and/or modify * | * This program is free software; you can redistribute it and/or modify * | ||||
| static int synchronous_mode = 1; | static int synchronous_mode = 1; | ||||
| static int out_samplerate = 0; | static int out_samplerate = 0; | ||||
| static int voice_samplerate = 22050; | static int voice_samplerate = 22050; | ||||
| static espeak_ERROR err = EE_OK; | |||||
| t_espeak_callback* synth_callback = NULL; | t_espeak_callback* synth_callback = NULL; | ||||
| int (* uri_callback)(int, const char *, const char *) = NULL; | int (* uri_callback)(int, const char *, const char *) = NULL; | ||||
| sleep(1); | sleep(1); | ||||
| } | } | ||||
| out_samplerate = voice_samplerate; | out_samplerate = voice_samplerate; | ||||
| wave_init(voice_samplerate); | |||||
| if(!wave_init(voice_samplerate)) | |||||
| { | |||||
| err = EE_INTERNAL_ERROR; | |||||
| return(-1); | |||||
| } | |||||
| wave_set_callback_is_output_enabled( fifo_is_command_enabled); | wave_set_callback_is_output_enabled( fifo_is_command_enabled); | ||||
| my_audio = wave_open("alsa"); | my_audio = wave_open("alsa"); | ||||
| event_init(); | event_init(); | ||||
| } | } | ||||
| SHOW_TIME("LEAVE dispatch_audio\n"); | SHOW_TIME("LEAVE dispatch_audio\n"); | ||||
| return (a_wave_can_be_played==0); // 1 = stop synthesis | |||||
| return (a_wave_can_be_played==0); // 1 = stop synthesis, -1 = error | |||||
| } | } | ||||
| int param; | int param; | ||||
| int result; | int result; | ||||
| err = EE_OK; | |||||
| LoadConfig(); | LoadConfig(); | ||||
| WavegenInit(22050,0); // 22050 | WavegenInit(22050,0); // 22050 | ||||
| if((result = LoadPhData()) != 1) | if((result = LoadPhData()) != 1) | ||||
| { | { | ||||
| #ifdef USE_ASYNC | #ifdef USE_ASYNC | ||||
| finished = create_events((short *)outbuf, length, event_list, a_write_pos); | finished = create_events((short *)outbuf, length, event_list, a_write_pos); | ||||
| if(finished < 0) | |||||
| return EE_INTERNAL_ERROR; | |||||
| length = 0; // the wave data are played once. | length = 0; // the wave data are played once. | ||||
| #endif | #endif | ||||
| } | } | ||||
| #ifdef USE_ASYNC | #ifdef USE_ASYNC | ||||
| if (my_mode==AUDIO_OUTPUT_PLAYBACK) | if (my_mode==AUDIO_OUTPUT_PLAYBACK) | ||||
| { | { | ||||
| dispatch_audio(NULL, 0, NULL); // TBD: test case | |||||
| if(dispatch_audio(NULL, 0, NULL) < 0) // TBD: test case | |||||
| return err = EE_INTERNAL_ERROR; | |||||
| } | } | ||||
| else | else | ||||
| { | { | ||||
| ESPEAK_API espeak_ERROR espeak_Synchronize(void) | ESPEAK_API espeak_ERROR espeak_Synchronize(void) | ||||
| {//============================================= | {//============================================= | ||||
| espeak_ERROR berr = err; | |||||
| #ifdef USE_ASYNC | #ifdef USE_ASYNC | ||||
| SHOW_TIME("espeak_Synchronize > ENTER"); | SHOW_TIME("espeak_Synchronize > ENTER"); | ||||
| while (espeak_IsPlaying()) | while (espeak_IsPlaying()) | ||||
| usleep(20000); | usleep(20000); | ||||
| } | } | ||||
| #endif | #endif | ||||
| err = EE_OK; | |||||
| SHOW_TIME("espeak_Synchronize > LEAVE"); | SHOW_TIME("espeak_Synchronize > LEAVE"); | ||||
| return EE_OK; | |||||
| return berr; | |||||
| } // end of espeak_Synchronize | } // end of espeak_Synchronize | ||||
| /*************************************************************************** | /*************************************************************************** | ||||
| * Copyright (C) 2005 to 2011 by Jonathan Duddington * | |||||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||||
| * email: [email protected] * | * email: [email protected] * | ||||
| * * | * * | ||||
| * This program is free software; you can redistribute it and/or modify * | * This program is free software; you can redistribute it and/or modify * | ||||
| #include "translate.h" | #include "translate.h" | ||||
| #include "wave.h" | #include "wave.h" | ||||
| const char *version_string = "1.46.32 30.Jan.13"; | |||||
| const char *version_string = "1.46.35 14.Feb.13"; | |||||
| const int version_phdata = 0x014631; | const int version_phdata = 0x014631; | ||||
| int option_device_number = -1; | int option_device_number = -1; | ||||
| memcpy(&worddata->prev_vowel, &plist[0], sizeof(PHONEME_LIST)); | memcpy(&worddata->prev_vowel, &plist[0], sizeof(PHONEME_LIST)); | ||||
| } | } | ||||
| plist->std_length = phdata->pd_param[i_SET_LENGTH]; | |||||
| } // end of InterpretPhoneme | } // end of InterpretPhoneme | ||||
| unsigned char newword; // bit 0=start of word, bit 1=end of clause, bit 2=start of sentence | unsigned char newword; // bit 0=start of word, bit 1=end of clause, bit 2=start of sentence | ||||
| unsigned char pitch1; | unsigned char pitch1; | ||||
| unsigned char pitch2; | unsigned char pitch2; | ||||
| unsigned char std_length; | |||||
| } PHONEME_LIST; | } PHONEME_LIST; | ||||
| /*************************************************************************** | /*************************************************************************** | ||||
| * Copyright (C) 2005 to 2011 by Jonathan Duddington * | |||||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||||
| * email: [email protected] * | * email: [email protected] * | ||||
| * * | * * | ||||
| * This program is free software; you can redistribute it and/or modify * | * This program is free software; you can redistribute it and/or modify * | ||||
| return(0); | return(0); | ||||
| } | } | ||||
| #ifdef deleted | |||||
| // ?? allow $unpr while translating rules, not just on initial FLAG_UNPRON_TEST | |||||
| if(end_type & SUFX_UNPRON) | |||||
| { | |||||
| phonemes[0] = 0; // discard and retranslate as individual letters | |||||
| SpeakIndividualLetters(tr, wordx, phonemes, 0); | |||||
| strcpy(word_phonemes, phonemes); | |||||
| return(0); | |||||
| } | |||||
| #endif | |||||
| if((phonemes[0] == 0) && (end_phonemes[0] == 0)) | if((phonemes[0] == 0) && (end_phonemes[0] == 0)) | ||||
| { | { | ||||
| int wc; | int wc; |
| /*************************************************************************** | /*************************************************************************** | ||||
| * Copyright (C) 2005 to 2011 by Jonathan Duddington * | |||||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||||
| * email: [email protected] * | * email: [email protected] * | ||||
| * * | * * | ||||
| * This program is free software; you can redistribute it and/or modify * | * This program is free software; you can redistribute it and/or modify * |
| /*************************************************************************** | /*************************************************************************** | ||||
| * Copyright (C) 2005 to 2007 by Jonathan Duddington * | |||||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||||
| * email: [email protected] * | * email: [email protected] * | ||||
| * * | * * | ||||
| * This program is free software; you can redistribute it and/or modify * | * This program is free software; you can redistribute it and/or modify * | ||||
| #define N_ENVELOPES 30 | #define N_ENVELOPES 30 | ||||
| int n_envelopes = 0; | |||||
| char envelope_paths[N_ENVELOPES][80]; | |||||
| unsigned char envelope_dat[N_ENVELOPES][ENV_LEN]; | |||||
| extern int n_envelopes; | |||||
| extern char envelope_paths[N_ENVELOPES][80]; | |||||
| extern unsigned char envelope_dat[N_ENVELOPES][ENV_LEN]; | |||||
| #define HT_ENV 140 | #define HT_ENV 140 | ||||
| #define WD_ENV 128*2 | #define WD_ENV 128*2 |
| static int pulse_running; | static int pulse_running; | ||||
| // wave.cpp (this file) | // wave.cpp (this file) | ||||
| void wave_port_init(int); | |||||
| int wave_port_init(int); | |||||
| void* wave_port_open(const char* the_api); | void* wave_port_open(const char* the_api); | ||||
| size_t wave_port_write(void* theHandler, char* theMono16BitsWaveBuffer, size_t theSize); | size_t wave_port_write(void* theHandler, char* theMono16BitsWaveBuffer, size_t theSize); | ||||
| int wave_port_close(void* theHandler); | int wave_port_close(void* theHandler); | ||||
| // wave_pulse.cpp | // wave_pulse.cpp | ||||
| int is_pulse_running(); | int is_pulse_running(); | ||||
| void wave_pulse_init(int); | |||||
| int wave_pulse_init(int); | |||||
| void* wave_pulse_open(const char* the_api); | void* wave_pulse_open(const char* the_api); | ||||
| size_t wave_pulse_write(void* theHandler, char* theMono16BitsWaveBuffer, size_t theSize); | size_t wave_pulse_write(void* theHandler, char* theMono16BitsWaveBuffer, size_t theSize); | ||||
| int wave_pulse_close(void* theHandler); | int wave_pulse_close(void* theHandler); | ||||
| int wave_pulse_get_remaining_time(uint32_t sample, uint32_t* time); | int wave_pulse_get_remaining_time(uint32_t sample, uint32_t* time); | ||||
| // wrappers | // wrappers | ||||
| void wave_init(int srate) { | |||||
| int wave_init(int srate) { | |||||
| pulse_running = is_pulse_running(); | pulse_running = is_pulse_running(); | ||||
| if (pulse_running) | if (pulse_running) | ||||
| wave_pulse_init(srate); | |||||
| return wave_pulse_init(srate); | |||||
| else | else | ||||
| wave_port_init(srate); | |||||
| return wave_port_init(srate); | |||||
| } | } | ||||
| void* wave_open(const char* the_api) { | void* wave_open(const char* the_api) { | ||||
| //<wave_init | //<wave_init | ||||
| // TBD: the arg could be "alsa", "oss",... | // TBD: the arg could be "alsa", "oss",... | ||||
| void wave_init(int srate) | |||||
| int wave_init(int srate) | |||||
| { | { | ||||
| ENTER("wave_init"); | ENTER("wave_init"); | ||||
| PaError err; | PaError err; | ||||
| { | { | ||||
| SHOW_TIME("wave_init > Failed to initialise the PortAudio sound"); | SHOW_TIME("wave_init > Failed to initialise the PortAudio sound"); | ||||
| } | } | ||||
| return err == paNoError; | |||||
| } | } | ||||
| //> | //> | ||||
| // notdef USE_PORTAUDIO | // notdef USE_PORTAUDIO | ||||
| void wave_init(int srate) {} | |||||
| int wave_init(int srate) {} | |||||
| void* wave_open(const char* the_api) {return (void *)1;} | void* wave_open(const char* the_api) {return (void *)1;} | ||||
| size_t wave_write(void* theHandler, char* theMono16BitsWaveBuffer, size_t theSize) {return theSize;} | size_t wave_write(void* theHandler, char* theMono16BitsWaveBuffer, size_t theSize) {return theSize;} | ||||
| int wave_close(void* theHandler) {return 0;} | int wave_close(void* theHandler) {return 0;} |
| extern int option_device_number; | extern int option_device_number; | ||||
| extern void wave_init(int samplerate); | |||||
| extern int wave_init(int samplerate); | |||||
| // TBD: the arg could be "alsa", "oss",... | // TBD: the arg could be "alsa", "oss",... | ||||
| extern void* wave_open(const char* the_api); | extern void* wave_open(const char* the_api); | ||||
| //> | //> | ||||
| //<wave_init | //<wave_init | ||||
| void wave_init(int srate) | |||||
| int wave_init(int srate) | |||||
| { | { | ||||
| ENTER("wave_init"); | ENTER("wave_init"); | ||||
| stream = NULL; | stream = NULL; | ||||
| wave_samplerate = srate; | wave_samplerate = srate; | ||||
| pulse_open(); | |||||
| return pulse_open() == PULSE_OK; | |||||
| } | } | ||||
| //> | //> | ||||
| // notdef USE_PULSEAUDIO | // notdef USE_PULSEAUDIO | ||||
| void wave_init() {} | |||||
| int wave_init() {} | |||||
| void* wave_open(const char* the_api) {return (void *)1;} | void* wave_open(const char* the_api) {return (void *)1;} | ||||
| size_t wave_write(void* theHandler, char* theMono16BitsWaveBuffer, size_t theSize) {return theSize;} | size_t wave_write(void* theHandler, char* theMono16BitsWaveBuffer, size_t theSize) {return theSize;} | ||||
| int wave_close(void* theHandler) {return 0;} | int wave_close(void* theHandler) {return 0;} |
| // | // | ||||
| //<wave_init | //<wave_init | ||||
| void wave_init(int srate) { | |||||
| int wave_init(int srate) { | |||||
| ENTER("wave_init"); | ENTER("wave_init"); | ||||
| audio_info_t ainfo; | audio_info_t ainfo; | ||||
| SHOW("wave_init() sun_audio_fd: %d\n", sun_audio_fd); | SHOW("wave_init() sun_audio_fd: %d\n", sun_audio_fd); | ||||
| if (sun_audio_fd < 0) { | if (sun_audio_fd < 0) { | ||||
| return; | |||||
| return(0); | |||||
| } | } | ||||
| ioctl(sun_audio_fd, AUDIO_GETINFO, &ainfo); | ioctl(sun_audio_fd, AUDIO_GETINFO, &ainfo); | ||||
| if (ioctl(sun_audio_fd, AUDIO_SETINFO, &ainfo) == -1) { | if (ioctl(sun_audio_fd, AUDIO_SETINFO, &ainfo) == -1) { | ||||
| SHOW("wave_init() failed to set audio params: %s\n", strerror(errno)); | SHOW("wave_init() failed to set audio params: %s\n", strerror(errno)); | ||||
| close(sun_audio_fd); | close(sun_audio_fd); | ||||
| return; | |||||
| return(0); | |||||
| } | } | ||||
| return(1); | |||||
| } | } | ||||
| //> | //> |