Browse Source

Merge branch 'development'

master
Reece H. Dunn 12 years ago
parent
commit
a4b28c3313

+ 3
- 0
dictsource/en_list View File

aborigine ab@r'IdZ@ni aborigine ab@r'IdZ@ni
abracadabra abr@k@d'abr@ abracadabra abr@k@d'abr@
absence abs@ns absence abs@ns
absent $1
absent abs'Ent $verb absent abs'Ent $verb
absentia abs'Ent2i:@ absentia abs'Ent2i:@
absinthe absInT absinthe absInT
biased baI@st biased baI@st
bible baIb@L bible baIb@L
bidet bi:deI bidet bi:deI
bigot bIg@t // -ed
bijou bi:Zu: bijou bi:Zu:
bikini bIk'i:ni bikini bIk'i:ni
binman bInman binman bInman
graduate gradju:@t graduate gradju:@t
graduate gradju:eIt $verb graduate gradju:eIt $verb
graffiti $alt3 graffiti $alt3
grandson gr'andsVn
gredient gri:di@nt // ingredient gredient gri:di@nt // ingredient
grenade gr@neId grenade gr@neId
griffon grIf@n griffon grIf@n

+ 4
- 2
dictsource/en_rules View File

m) otor oUt3 m) otor oUt3
n) o (tor oU n) o (tor oU
otro (py '0tr@ otro (py '0tr@
&) o (try @
c) otyle 0tIl'i: c) otyle 0tIl'i:
m) o (x @ m) o (x @
o (x++ 0 o (x++ 0
?3 ag) on (_ 0n ?3 ag) on (_ 0n
rg) on (_ @n rg) on (_ @n
&s) on (_ @n &s) on (_ @n
ds) on (_ Vn
&t) on (_ @n &t) on (_ @n
&tr) on (_ 0n &tr) on (_ 0n
fl) on (_ 0n fl) on (_ 0n
pers) on @n pers) on @n
pers) on (i '0n pers) on (i '0n
postp) on 'oUn postp) on 'oUn
_sp) on 0n
on (ald 0n on (ald 0n
&) on (age_ @n
d) on (at %oUn d) on (at %oUn
on (an_ oUn on (an_ oUn
_) on (io Vn _) on (io Vn
?3 h) ov (er Vv ?3 h) ov (er Vv
l) ov Vv l) ov Vv
l) ov (e Vv l) ov (e Vv
_l) ove Vv
_l) ove (@ Vv
cl) ov (e oUv cl) ov (e oUv
_sl) ov (enA oUv _sl) ov (enA oUv
pl) ov oUv pl) ov oUv

+ 4
- 0
dictsource/nl_rules View File

@) ent (st_ 'Ent @) ent (st_ 'Ent
@) ent (ste_ 'Ent @) ent (ste_ 'Ent
ag) ent 'Ent ag) ent 'Ent
X) es (_ Es
@j) es (_S1 s @j) es (_S1 s
@z) es (_S1 s @z) es (_S1 s
@) es (_S2qd 'Es // double the previous vowel @) es (_S2qd 'Es // double the previous vowel
_) ge (@P2 Q@ _) ge (@P2 Q@
ge (bied Q@ ge (bied Q@
_) gee Qe: _) gee Qe:
_) gei QEI
gener (aal Q,e:n@r gener (aal Q,e:n@r
_) gelijk Q@lEIk _) gelijk Q@lEIk
_) ge (rC QE _) ge (rC QE
sj S sj S
@) sje (_ sj@ @) sje (_ sj@
@) s (_S1 s @) s (_S1 s
a) s (_ s
@) s (_$w_alt =s @) s (_$w_alt =s


_) samen(@P5 s'a:m@n
sc (oop sk sc (oop sk
sc (opi sk sc (opi sk
&) sel (_ =s@l &) sel (_ =s@l

+ 21
- 44
dictsource/pt_list View File

derdes $alt derdes $alt
desapego $alt2 $noun desapego $alt2 $noun
descabelo $alt descabelo $alt
desce $alt
descem $alt
descordo $alt descordo $alt
desespero $alt2 $noun desespero $alt2 $noun
desfecho $alt2 desfecho $alt2
desprezo $alt $verb
desprezo $alt2 $noun
deveras $alt deveras $alt
dez $alt dez $alt
diarreia $alt diarreia $alt
endereço $alt2 endereço $alt2
endereço $alt $verb endereço $alt $verb
enforco $alt enforco $alt
enforque $alt
enforquem $alt
engordo $alt engordo $alt
enumerem $alt
ensopa $alt
ensopam $alt
ensope $alt
ensopem $alt
ensopo $alt
enredo $alt $verb enredo $alt $verb
enterro $alt2 $noun enterro $alt2 $noun
enumerem $alt
envelope $alt envelope $alt
envolto $alt2 envolto $alt2
enxerto $alt2 $noun enxerto $alt2 $noun
etiqueta $alt2 etiqueta $alt2
europa $alt europa $alt
exagero $alt $verb exagero $alt $verb
expeça $alt2
expeço $alt2
explore $alt explore $alt
faceta $alt2 faceta $alt2
farelo $alt farelo $alt
fizerdes $alt fizerdes $alt
fizermos $alt fizermos $alt
foda $alt2 $verb foda $alt2 $verb
folheto $alt2
folga $alt folga $alt
fogos $alt fogos $alt
foguete $alt2 foguete $alt2
foice $alt2 foice $alt2
forca $alt2 forca $alt2
força $alt2 $noun força $alt2 $noun
forço $alt
forças $alt2 forças $alt2
forço $alt
fordes $alt2 fordes $alt2
fores $alt2 fores $alt2
forro $alt $verb forro $alt $verb
joguete $alt2 joguete $alt2
lambreta $alt2 lambreta $alt2
lebre $alt lebre $alt
lerda $alt
lerdo $alt
líderes $alt2 líderes $alt2
lopes $alt lopes $alt
maior $alt
maleta $alt2 maleta $alt2
mantiverdes $alt mantiverdes $alt
mantiveres $alt mantiveres $alt
marmelo $alt marmelo $alt
marreta $alt2 marreta $alt2
martelo $alt martelo $alt
melhor $alt
menor $alt
merda $alt merda $alt
megera $alt megera $alt
melo $alt melo $alt
moreia $alt moreia $alt
mortos $alt mortos $alt
motora $alt2 motora $alt2
?2 mulher mulj'Er
?4 mulher mul^'Er
mulher $alt
mui mwi mui mwi
muito mw'iNtU // -s is included as a suffix muito mw'iNtU // -s is included as a suffix
muita mw'iNt& muita mw'iNt&
nervo $alt2 nervo $alt2
novos $alt novos $alt
obstetra $alt obstetra $alt
obsoleta $alt2
obsoleto $alt2
obtivera $alt obtivera $alt
obtivermos $alt obtivermos $alt
odisseia $alt odisseia $alt
paexa paeSa paexa paeSa
palacete $alt2 palacete $alt2
palheta $alt2 palheta $alt2
panfleto $alt2
pangeia $alt pangeia $alt
pantera $alt pantera $alt
paralelo $alt paralelo $alt
pedra $alt pedra $alt
pelego $alt2 pelego $alt2
pelo $alt $verb pelo $alt $verb
perde $alt
perdem $alt
pesa $alt
pesam $alt
pesque $alt pesque $alt
pesquem $alt pesquem $alt
peso $alt $verb peso $alt $verb
piloto $alt2 $noun piloto $alt2 $noun
pintora $alt2 pintora $alt2
pior $alt
pirueta $alt2 pirueta $alt2
plateia $alt plateia $alt
plebeia $alt plebeia $alt
pose $alt2 pose $alt2
povos $alt povos $alt
poxa p'oS& poxa p'oS&
preta $alt2
preto $alt2
preço $alt2
primavera $alt primavera $alt
provo $alt provo $alt
puder $alt puder $alt
pudermos $alt pudermos $alt
puserdes $alt puserdes $alt
quarteto $alt2 quarteto $alt2
queda $alt
quinteto $alt2 quinteto $alt2
quiserdes $alt quiserdes $alt
quisermos $alt quisermos $alt
rumores $alt2 rumores $alt2
saleta $alt2 saleta $alt2
sarjeta $alt sarjeta $alt
severa $alt
severo $alt
seborreia $alt seborreia $alt
seca $alt2 $noun seca $alt2 $noun
secas $alt2 secas $alt2
sexteto $alt2 sexteto $alt2
?1 senhora $alt2 ?1 senhora $alt2
senhores $alt2 senhores $alt2
sincera $alt
sincero $alt
sinopse $alt sinopse $alt
sobe $alt sobe $alt
sobem $alt
sobem $alt
soco $alt2 soco $alt2
soco $alt $verb soco $alt $verb
sofrem $alt sofrem $alt
sofreste $alt2 sofreste $alt2
sogra $alt sogra $alt
sopre $alt sopre $alt
soprem $alt
soprem $alt
sopro $alt $verb sopro $alt $verb
soro $alt2 soro $alt2
sorvete $alt2 sorvete $alt2
suborno $alt $verb suborno $alt $verb
sufoco $alt2 $noun sufoco $alt2 $noun
sufocos $alt2 sufocos $alt2
sugere $alt
sugerem $alt
suporto $alt suporto $alt
suor swOr suor swOr
tapete $alt2 tapete $alt2
zorra $alt2 zorra $alt2






// foreign words // foreign words
?1 alt 'alt ?1 alt 'alt
?2 agosto &g'ostU ?2 agosto &g'ostU
?1 install ,inst'al ?1 install ,inst'al
?2 internet iNtern'Et ?2 internet iNtern'Et
?2 Intranet iNtRan'Et ?2 Intranet iNtRan'Et
?2 inveja iNv'EZ&
?1 kernel k'Ern,El ?1 kernel k'Ern,El
?2 kernel k'Ern@l ?2 kernel k'Ern@l
?1 line l'ain ?1 line l'ain
?1 lock l'Ok ?1 lock l'Ok
mail m'eIl mail m'eIl
mails m'eIls mails m'eIls
?1 maior m,&j'Or-
?2 maior maI'Or
?2 maiores maI'O*is
?1 menor myn'Or-
?2 menor men'Or
?2 menores men'O*is
?2 melhor melj'Or
?2 melhores melj'O*is
?4 melhor mel^'Or
?4 melhores mel^'O*is
?2 mouse m'aUzi ?2 mouse m'aUzi
?1 menu menu ?1 menu menu
?1 next n'Ekst ?1 next n'Ekst
?1 ovo 'ovu ?1 ovo 'ovu
?1 pause p'au:z ?1 pause p'au:z
page p'eIdZ page p'eIdZ
?2 pior pi'Or
?2 piores pi'O*is
preço $alt2
python p'aIT&~N python p'aIT&~N
queda $alt
?1 readme r'i:dmi: ?1 readme r'i:dmi:
?1 sapi s,ap'i ?1 sapi s,ap'i
?1 scanner sk'En&r ?1 scanner sk'En&r

+ 52
- 40
dictsource/pt_rules View File

?1 _n) e (nhu i // eg: nenhum, nenhuma, nenhuns, nenhumas. ?1 _n) e (nhu i // eg: nenhum, nenhuma, nenhuns, nenhumas.
?1 e (la_ 'E // eg: cadela, janela, vela, etc... ?1 e (la_ 'E // eg: cadela, janela, vela, etc...
?1 C) e (cC ,E // eg: seleccionar, efectuar, etc... ?1 C) e (cC ,E // eg: seleccionar, efectuar, etc...
?1 C) ecç 'Es // eg: selecção, etc...
?1 C) ecç 'Es // eg: selecção, etc...
?1 C) e (ã i // leão, panteão, etc. ?1 C) e (ã i // leão, panteão, etc.
?1 C) e (a i // oceano, etc. ?1 C) e (a i // oceano, etc.
?1 C) e (o 'i // eg: geologia, etc... ?1 C) e (o 'i // eg: geologia, etc...
sf) e (ra_ E // esfera, biosfera sf) e (ra_ E // esfera, biosfera


//sort //sort
_com) e (L05_ e
fiz) e (L05_ E fiz) e (L05_ E
tiv) e (L05_ E // es-
_com) e (L05_ e
_coub) e (L05_ E _coub) e (L05_ E
_exag) e (L05_ E _exag) e (L05_ E
_houv) e (L05_ E _houv) e (L05_ E
_perd) e (L05_ e _perd) e (L05_ e
_soub) e (L05_ E _soub) e (L05_ E
tiv) e (L05_ E // es-
_rend) e (L06_ e
_vend) e (L06_ e
_atend) e (L06_ e _atend) e (L06_ e
_compreend) e (L06_ e _compreend) e (L06_ e
_entend) e (L06_ e _entend) e (L06_ e
_estend) e (L06_ e _estend) e (L06_ e
_rend) e (L06_ e
_vend) e (L06_ e
respond) e (L06_ e // cor- respond) e (L06_ e // cor-
bat) e (L07_ e // re- com-
ced) e (L07_ e // pro- con- su-
met) e (L07_ e // co- pro- arre- re- intro- compro- sub-
viv) e (L07_ e // re-
_beb) e (L07_ e
_com) e (L07_ e
_tem) e (L07_ e
colh) e (L07_ e // & es-
corr) e (L07_ e // per- con- in- so- dis-
torc) e (L07_ e // con-
venc) e (L07_ e // con-
vert) e (L07_ e // in- re- con-
_eleg) e (L07_ e
_ergu) e (L07_ e
_mord) e (L07_ e
_morr) e (L07_ e
_perd) e (L07_ e
_sofr) e (L07_ e
merec) e (L07_ e // des-
padec) e (L07_ e // com-
parec) e (L07_ e // a- rea- com- desa-
_aborrec) e (L07_ e _aborrec) e (L07_ e
_rejuvenec) e (L07_ e
_adoec) e (L07_ e _adoec) e (L07_ e
_adormec) e (L07_ e
_amanhec) e (L07_ e _amanhec) e (L07_ e
_anoitec) e (L07_ e _anoitec) e (L07_ e
_arrepend) e (L07_ e _arrepend) e (L07_ e
_beb) e (L07_ e
_com) e (L07_ e
_defend) e (L07_ e _defend) e (L07_ e
_depend) e (L07_ e _depend) e (L07_ e
_eleg) e (L07_ e
_enlouquec) e (L07_ e _enlouquec) e (L07_ e
_entristec) e (L07_ e _entristec) e (L07_ e
_envaidec) e (L07_ e _envaidec) e (L07_ e
_envelhec) e (L07_ e _envelhec) e (L07_ e
_ergu) e (L07_ e
_esclarec) e (L07_ e _esclarec) e (L07_ e
_escond) e (L07_ e _escond) e (L07_ e
_escurec) e (L07_ e _escurec) e (L07_ e
_esquec) e (L07_ e _esquec) e (L07_ e
_interromp) e (L07_ e _interromp) e (L07_ e
_mord) e (L07_ e
_morr) e (L07_ e
_obedec) e (L07_ e _obedec) e (L07_ e
_perd) e (L07_ e
_sofr) e (L07_ e
_tem) e (L07_ e
_perec) e (L07_ e
_rejuvenec) e (L07_ e
aprend) e (L07_ e // re- aprend) e (L07_ e // re-
bat) e (L07_ e // re- com-
ced) e (L07_ e // pro- con- su-
colh) e (L07_ e // & es-
conhec) e (L07_ e // & re- des- conhec) e (L07_ e // & re- des-
corr) e (L07_ e // per- con- in- so- dis-
entend) e (L07_ e entend) e (L07_ e
merec) e (L07_ e // des-
met) e (L07_ e // co- pro- arre- re- intro- compro- sub-
padec) e (L07_ e // com-
parec) e (L07_ e // a- rea- com- desa-
preend) e (L07_ e // sur- com- preend) e (L07_ e // sur- com-
_perec) e (L07_ e
respond) e (L07_ e // cor- respond) e (L07_ e // cor-
torc) e (L07_ e // con-
venc) e (L07_ e // con-
vert) e (L07_ e // in- re- con-
viv) e (L07_ e // re-
qu) e (brL04_ E qu) e (brL04_ E
_hosp) e (dL03_ E _hosp) e (dL03_ E
_d) e (vL03_ e
_gr) e (gL03_ e _gr) e (gL03_ e
_n) e (grL03_ e _n) e (grL03_ e
_estr) ei (L03_ EI _estr) ei (L03_ EI
_s) e (quL02_ E _s) e (quL02_ E
_p) e (quL02_ E _p) e (quL02_ E
l) e (que_ E l) e (que_ E
_sug) e (rL02_ E
_imp) e (rL03_ E _imp) e (rL03_ E
_sev) e (rL03_ E
_reit) e (rL03_ E _reit) e (rL03_ E
_sinc) e (rL03_ E
_g) e (rL04_ E _g) e (rL04_ E
_op) e (rL04_ E _op) e (rL04_ E
_qu) e (rL04_ E _qu) e (rL04_ E
_alt) e (rL04_ E _alt) e (rL04_ E
_sup) e (rL04_ E _sup) e (rL04_ E
_tol) e (rL04_ E _tol) e (rL04_ E
_ven) e (rL04_ E
_coop) e (rL04_ E _coop) e (rL04_ E
_temp) e (rL04_ E _temp) e (rL04_ E
_ven) e (rL04_ E
_v) e (rbL03_ E _v) e (rbL03_ E
_p) e (rdL02_ E
_l) e (rdL03_ E
_h) e (rdL04_ E _h) e (rdL04_ E
_) e (rguL02_ E _) e (rguL02_ E
_alb) e (rguL02_ E _alb) e (rguL02_ E
_enx) e (rguL02_ E _enx) e (rguL02_ E
_bez) e (rrL03_ e _bez) e (rrL03_ e
_rejuven) e (çL03_ e
_inv) e (rtL03_ e _inv) e (rtL03_ e
_f) e (rvL03_ e _f) e (rvL03_ e
_p) e (sL01_ E
_d) e (scL02_ E
_p) e (scL03_ E _p) e (scL03_ E
_m) e (sclL04 E _m) e (sclL04 E
_l) e (ssL02_ e _l) e (ssL02_ e
_esp) e (ssL03_ e _esp) e (ssL03_ e
_m) e (tL03_ e _m) e (tL03_ e
_com) e (tL03_ e _com) e (tL03_ e
_rem) e (tL03_ e
prom) e (tL03_ e // com- prom) e (tL03_ e // com-
_derr) e (tL03_ e _derr) e (tL03_ e
_rem) e (tL03_ e
_obsol) e (tL03_ e
_pr) e (tL03_ e
_sol) e (trL03_ E _sol) e (trL03_ E
_pen) e (trL04_ E _pen) e (trL04_ E
_atr) e (vL03_ e
scr) e (vL03_ e // e- in- pre- ree- de- scr) e (vL03_ e // e- in- pre- ree- de-
_pr) e (zL04_ E
_d) e (vL03_ e
_atr) e (vL03_ e
_embel) e (zL04_ E _embel) e (zL04_ E
pr) e (zL04_ E / des- menos-
_acont) e (çL01_ e _acont) e (çL01_ e
_arref) e (çL01_ e _arref) e (çL01_ e
par) e (çL03_ e // a- re- com- rea- desa-
_ado) e (çL03_ e
_aqu) e (çL03_ e _aqu) e (çL03_ e
_car) e (çL03_ e _car) e (çL03_ e
_estrem) e (çL03_ e
_mer) e (çL03_ e _mer) e (çL03_ e
_pad) e (çL03_ e // com- _pad) e (çL03_ e // com-
_per) e (çL03_ e _per) e (çL03_ e
par) e (çL03_ e // a- re- com- rea- desa-
_rejuven) e (çL03_ e
conh) e (çL03_ e // re-
_esqu) e (çL03_ e _esqu) e (çL03_ e
_forn) e (çL03_ e
_obed) e (çL03_ e _obed) e (çL03_ e
_ofer) e (çL03_ e _ofer) e (çL03_ e
abast) e (çL03_ e // re- abast) e (çL03_ e // re-
_aborr) e (çL03_ e _aborr) e (çL03_ e
_fortal) e (çL03_ e
_ado) e (çL03_ e
_amanh) e (çL03_ e _amanh) e (çL03_ e
_anoit) e (çL03_ e _anoit) e (çL03_ e
_enfraqu) e (çL03_ e _enfraqu) e (çL03_ e
_envaid) e (çL03_ e _envaid) e (çL03_ e
_envelh) e (çL03_ e _envelh) e (çL03_ e
_esclar) e (çL03_ e _esclar) e (çL03_ e
_forn) e (çL03_ e
conh) e (çL03_ e // re-
_estrem) e (çL03_ e
_fortal) e (çL03_ e
//endsort //endsort




_m) o (rrL01_ o _m) o (rrL01_ o
_c) o (spL02_ O _c) o (spL02_ O
p) ostos (_ Ost=Us# // dispostos etc. p) ostos (_ Ost=Us# // dispostos etc.
_s) o (bL02_ O
_s) o (prL02_ O
//endsort //endsort


.group ô .group ô

+ 3
- 1
dictsource/ta_list View File

பாதிக்கக் $alt பாதிக்கக் $alt
புசு $alt புசு $alt
புஸு $alt புஸு $alt
பாதிக்காம $alt




// initial த as [d] // initial த as [d]
தைவதம் $alt தைவதம் $alt
தாட்சண்யம் $alt தாட்சண்யம் $alt
தனம் $alt தனம் $alt
திக்கற்ற $alt
தானு $alt தானு $alt
திட $alt திட $alt
தோ $alt தோ $alt
தம்ம $alt தம்ம $alt
தாயம் $alt தாயம் $alt
திமு $alt திமு $alt
தாவா $alt



// initial ட // initial ட
டார்ச் t.a:rtS டார்ச் t.a:rtS

+ 149
- 5
dictsource/ta_rules View File



/*************************************************************************** /***************************************************************************
* Copyright (C) 2009 to 2012 by Jonathan Duddington *
* Copyright (C) 2009 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 *
_) க (ங்கூலி gV _) க (ங்கூலி gV
_) க (ங்கை gV _) க (ங்கை gV
_) க (ங்கோத gV _) க (ங்கோத gV
_) கஜ (க்ஸ்தான kVzV
_) க (ஞ்சா gV _) க (ஞ்சா gV
_) க (டகட gV _) க (டகட gV
_) க (டத்தில gV _) க (டத்தில gV
_) க (லீர gV _) க (லீர gV
_) க (லீல gV _) க (லீல gV
_) க (லீஷிய gV _) க (லீஷிய gV
_) கல்த (ா gVlt
_) க (ளுக் gV _) க (ளுக் gV
_) க (வண gV _) க (வண gV
_) க (வன gV _) க (வன gV
_) கி (ளாL04ி k _) கி (ளாL04ி k
_) கி (ளாL04ு k _) கி (ளாL04ு k
_) கி (ளாL04ை k _) கி (ளாL04ை k
_) கி (ளாமர g
_) கி (ளாஸ்_ g _) கி (ளாஸ்_ g
_) கி (ளாஸ்_மேட k _) கி (ளாஸ்_மேட k
_) கிளிக் (_L29 kl.ik _) கிளிக் (_L29 kl.ik
_) க (ுகநாத g _) க (ுகநாத g
_) க (ுகன g _) க (ுகன g
_) க (ுகராஜ g _) க (ுகராஜ g
_) க (ுகா g
_) க (ுகை g _) க (ுகை g
_மன்மதக்) க (ுகை g _மன்மதக்) க (ுகை g
_) க (ுஜராத g _) க (ுஜராத g
_) க (ுண்டத் k _) க (ுண்டத் k
_) க (ுண்டம k _) க (ுண்டம k
_) க (ுண்டல k _) க (ுண்டல k
_) க (ுண்டாக்கள k
_) குண்டாந்த (டி gun.d.a:ntV _) குண்டாந்த (டி gun.d.a:ntV
_) க (ுண்டானில k _) க (ுண்டானில k
_) க (ுண்டானை k _) க (ுண்டானை k
_) க (ுண்டான் k _) க (ுண்டான் k
_) க (ுண்டாவி k
_) க (ுண்டாவை k
_) க (ுண்டி k _) க (ுண்டி k
_) க (ுண்டின g _) க (ுண்டின g
_) குண்ட (ூர gun.t.V# _) குண்ட (ூர gun.t.V#
_) க (ுதித் g _) க (ுதித் g
_) க (ுதிப் g _) க (ுதிப் g
_) க (ுதிப்பகுதி k _) க (ுதிப்பகுதி k
_) க (ுதியாட்ட g
_) க (ுபீர g _) க (ுபீர g
_) க (ுபுகுபு g _) க (ுபுகுபு g
_) க (ுபுக் g _) க (ுபுக் g
_) க (ுபேர g
_) குப் (த gup _) குப் (த gup
_) க (ுப்புன g _) க (ுப்புன g
_) க (ுப்பென்ற g _) க (ுப்பென்ற g
_) க (ுருமூர்த்தி g _) க (ுருமூர்த்தி g
_) க (ுருரா g _) க (ுருரா g
_) க (ுருவடி g _) க (ுருவடி g
_) க (ுருவருள g
_) க (ுருவா g _) க (ுருவா g
_) க (ுருவாய g _) க (ுருவாய g
_) க (ுருவிட g _) க (ுருவிட g
_) க (ுருவின g _) க (ுருவின g
_) க (ுருவிற்க g
_) க (ுருவு g _) க (ுருவு g
_) க (ுருவுடை g _) க (ுருவுடை g
_) க (ுருவை g _) க (ுருவை g
_) க (ோர_முடிய k _) க (ோர_முடிய k
_) க (ோர_வேண்ட k _) க (ோர_வேண்ட k
_) க (ோரக g _) க (ோரக g
_) க (ோரக்கூட k
_) க (ோரத்_தாண்ட g _) க (ோரத்_தாண்ட g
_) க (ோரத்தால g _) க (ோரத்தால g
_) க (ோரத்தை g _) க (ோரத்தை g
_) க் (ரீன g _) க் (ரீன g
_) க் (ரூப g _) க் (ரூப g
_) க் (ரௌண்ட g _) க் (ரௌண்ட g
_) க் (ளாமர g
_) க் (ளாஸ்_ g _) க் (ளாஸ்_ g
_) க்வ (A kw _) க்வ (A kw
_) க் (வாலியர g _) க் (வாலியர g
தென்) க (ிழ k தென்) க (ிழ k
_பா) க (ிஸ்தான k _பா) க (ிஸ்தான k
அப) க (ீர்த்தி k அப) க (ீர்த்தி k
க (ீழே_ k
க (ீழ்_ k
_பல்) க (ு k _பல்) க (ு k
மலைக்) க (ுகை g மலைக்) க (ுகை g
_பால்) க (ுட k _பால்) க (ுட k
ம) க (ேசுவர H // need to restrict to _ம) and _வீரம) ?? ம) க (ேசுவர H // need to restrict to _ம) and _வீரம) ??
சீர்) க (ேட k சீர்) க (ேட k
_லொ) கேட ke:t.V# _லொ) கேட ke:t.V#
_நசி) க (ேத k
ம) க (ேந்திர H ம) க (ேந்திர H
_ரா) க (ேஷ k _ரா) க (ேஷ k
_மு) க (ேஷ k _மு) க (ேஷ k
_வி) க்க (ிரக gg _வி) க்க (ிரக gg
சத்தியா) க்கி (ரக gg சத்தியா) க்கி (ரக gg
L03) க்கி (ரஹ gg // a,i L03) க்கி (ரஹ gg // a,i
_சத்தியா) க்கி (ரஹ gg
கு) க்கி (ராம gg கு) க்கி (ராம gg
அ) க்கி (ராம gg அ) க்கி (ராம gg
இ) க்கி (ராம gg இ) க்கி (ராம gg


//sort //sort
_ராஞ்) ச tSV# _ராஞ்) ச tSV#
எபிL09ே) ச zV#
ராகவா) ச )(ாரி tS
_ப) சக் tSVk _ப) சக் tSVk
_) ச (க்கரவர்த்தி tSV _) ச (க்கரவர்த்தி tSV
_) ச (க்கிலி tSV _) ச (க்கிலி tSV
_க) ச (க்ஸ்தான zV
சங்க (ர s.VNkV சங்க (ர s.VNkV
_) ச (ட்டL08ஸ்கர tSV _) ச (ட்டL08ஸ்கர tSV
_) ச (ட்டினி tSV _) ச (ட்டினி tSV
_நீலலோ) ச (னி tSV _நீலலோ) ச (னி tSV
_மீனலோ) ச (னி tSV _மீனலோ) ச (னி tSV
_) ச (ப்பL11் tSV _) ச (ப்பL11் tSV
_) ச (ப்பலா tSV
_) ச (ப்பா tSV _) ச (ப்பா tSV
_) ச (ப்பி tSV _) ச (ப்பி tSV
_) ச (ப்பு tSV _) ச (ப்பு tSV
_பங்) ச (ர tSV _பங்) ச (ர tSV
_பன்) ச (ர tSV _பன்) ச (ர tSV
_) சரசு (வதி sVrVs _) சரசு (வதி sVrVs
_ந) சரத் zVrVt
_ந) ச (ருதீன zV _ந) ச (ருதீன zV
_) சர்ச (ி tSVrtS _) சர்ச (ி tSVrtS
_) ச (ர்ச்சில tSV _) ச (ர்ச்சில tSV
மருதா) ச (ல tSV மருதா) ச (ல tSV
வேதா) ச (ல tSV வேதா) ச (ல tSV
_சேஷா) ச (ல tSV _சேஷா) ச (ல tSV
_ஹிமா) ச (ல tSV
_தணிகா) ச (ல tSV _தணிகா) ச (ல tSV
அருணா) ச (ல tSV அருணா) ச (ல tSV
வெங்கடா) ச (ல tSV வெங்கடா) ச (ல tSV
ஆ) ச (ாரங்கள tS ஆ) ச (ாரங்கள tS
ஆ) ச (ாரத் tS ஆ) ச (ாரத் tS
ஆ) ச (ாரம tS ஆ) ச (ாரம tS
_ரங்கா) ச (ாரி tS
_வரதா) ச (ாரி tS
_வேதா) ச (ாரி tS
_கிருஷ்ணமா) ச (ாரி tS
_தேசிகா) ச (ாரி tS
_பட்டா) ச (ாரி tS
அனந்தா) ச (ாரி tS
அன்னமா) ச (ாரி tS
ஆ) ச (ாரிய_ tS
ஆ) ச (ாரியார tS
அ) ச (ாருதீன z அ) ச (ாருதீன z
_) ச (ாருமதி tS
_) சாருலத (ா tSa:rUlVt _) சாருலத (ா tSa:rUlVt
_) ச (ாருவ tS _) ச (ாருவ tS
_ஹ) ச (ாரே z _ஹ) ச (ாரே z
_) சிம்பன்ச (ி tSimpVnz _) சிம்பன்ச (ி tSimpVnz
_மலே) ச (ிய s. _மலே) ச (ிய s.
இந்தோனே) ச (ிய s. இந்தோனே) ச (ிய s.
_) ச (ியர்ஸ tS
_பக்தி_) சிரத் (தை srVd _பக்தி_) சிரத் (தை srVd
_) சிரத்த (ைL27 srVdd _) சிரத்த (ைL27 srVdd
சி (ரம s சி (ரம s
_) ச (ேரி tS _) ச (ேரி tS
_தல) ச (ேரி tS _தல) ச (ேரி tS
_) ச (ேர்கள tS _) ச (ேர்கள tS
_) ச (ேர்மன tS
_) ச (ேர்மேன tS _) ச (ேர்மேன tS
_) ச (ேலஞ் tS _) ச (ேலஞ் tS
_) ச (ேஷ்டை tS _) ச (ேஷ்டை tS
_) ச (ேஸ்_ tS _) ச (ேஸ்_ tS
_) சைத (ன்ய tSaItV
_) ச (ைத்திய tS _) ச (ைத்திய tS
_) ச (ைனா tS _) ச (ைனா tS
_) ச (ைனா_நேவால s _) ச (ைனா_நேவால s
_) ச (ைனீஸ tS _) ச (ைனீஸ tS
_) ச (ோட்டா tS _) ச (ோட்டா tS
ஓ) ச (ோன z ஓ) ச (ோன z
அரி) ச (ோன z
_) ச (ோன்ன tS _) ச (ோன்ன tS
_) ச (ோவு tS _) ச (ோவு tS
_) ச (ோவெ tS _) ச (ோவெ tS
_) ச (ௌக்கிதார tS _) ச (ௌக்கிதார tS
_) ச (ௌதரி tS _) ச (ௌதரி tS
_) ச (ௌதிரி tS _) ச (ௌதிரி tS
_) ச (ௌத்தாலா tS
_) சௌப (ாத்தி tSaUp _) சௌப (ாத்தி tSaUp
_) ச (ௌபே tS _) ச (ௌபே tS
_) ச (ௌஹான tS _) ச (ௌஹான tS
_ப) ஜ (ார z _ப) ஜ (ார z
அ) ஜ (ாருதீன z அ) ஜ (ாருதீன z
_நா) ஜ (ி z _நா) ஜ (ி z
_) ஜிப்(_ zip
_) ஜ (ிப்ப z
_) ஜ (ியா z _) ஜ (ியா z
_) ஜ (ீனத் z
_) ஜ (ீப்ரா z
_) ஜ (ீரோ z _) ஜ (ீரோ z
_) ஜ (ுல்ஃபி z _) ஜ (ுல்ஃபி z
_) ஜ (ுல்பி z _) ஜ (ுல்பி z
_) ஜு (வால dZ _) ஜு (வால dZ
_) ஜ (ெனித் z
_) ஜ (ெராக்ஸ z _) ஜ (ெராக்ஸ z
//endsort //endsort


_) டி (ரங் t. _) டி (ரங் t.
_) டி (ரங்கு t. _) டி (ரங்கு t.
_) டி (ரபிள t. _) டி (ரபிள t.
_) டி (ரம d.
_) டிரம்பெட் t.rVmpet. _) டிரம்பெட் t.rVmpet.
_) டிர (ஸ d.re _) டிர (ஸ d.re
_) டிர (ஸ்ட t.rV _) டிர (ஸ்ட t.rV
_) டி (ரா_ d.
_) டிராஃபிக் t.ra:fik _) டிராஃபிக் t.ra:fik
_) டி (ராகுலா d. _) டி (ராகுலா d.
_) டிராக் t.ra:k _) டிராக் t.ra:k
_) டி (ராயிங் d. _) டி (ராயிங் d.
கொலஸ்) டி (ரால _|t. கொலஸ்) டி (ரால _|t.
_) டி (ராலி t. _) டி (ராலி t.
_) டி (ராவ d.
_) டி (ராவல t. _) டி (ராவல t.
_) டி (ராவெல t. _) டி (ராவெல t.
_) டிரிக (ர t.riggV _) டிரிக (ர t.riggV
_) டிரிக் t.rik _) டிரிக் t.rik
_) டிரிக்க (ர t.riggV _) டிரிக்க (ர t.riggV
_) டி (ரிங்_ t.
_) டி (ரிங்க் d. _) டி (ரிங்க் d.
_) டி (ரிங்ஸ d.
_) டிரினிட (ி t.rinit. _) டிரினிட (ி t.rinit.
_) டிரிப் t.rip _) டிரிப் t.rip
_) டி (ரிம் t. _) டி (ரிம் t.
_) டைப (ாய்ட t.aIf _) டைப (ாய்ட t.aIf
_) டைப் t.aIp _) டைப் t.aIp
_) ட (ைம்_ t. _) ட (ைம்_ t.
_) ட (ைல்ஸ t.
_) டொக் t.ok _) டொக் t.ok
_) ட (ோக்கன t. _) ட (ோக்கன t.
_) ட (ோக்கியோ t. _) ட (ோக்கியோ t.
_) டோரண்ட (ோ t.o:rVn.t. _) டோரண்ட (ோ t.o:rVn.t.
_ப்ரி) ட (ோரிய t. _ப்ரி) ட (ோரிய t.
_) டோர்னமெண்ட t.o:rnVmen.t.V# _) டோர்னமெண்ட t.o:rnVmen.t.V#
_) ட (ோலிவுட் t.
_லே) ட் t. _லே) ட் t.
@மெண்) ட் t. // -ment @மெண்) ட் t. // -ment
_பேண்) ட் t. _பேண்) ட் t.
ல) ட்சு (மண ks. ல) ட்சு (மண ks.
ல) ட்சு (மி ks. ல) ட்சு (மி ks.
_ல) ட்ட d.d.V# _ல) ட்ட d.d.V#
_கோலிவு) ட்ட d.d.V#
_டோலிவு) ட்ட d.d.V#
_பாலிவு) ட்ட d.d.V#
_மாலிவு) ட்ட d.d.V#
_ஹாலிவு) ட்ட d.d.V#
_ரெ) ட்ட (ிய d.d. _ரெ) ட்ட (ிய d.d.
இ) ட்ட (ிலி d.d. இ) ட்ட (ிலி d.d.
அப்பாயிண்) ட்மெண்ட t.men.t.V# அப்பாயிண்) ட்மெண்ட t.men.t.V#
_) ட்ரிக (ர t.riggV _) ட்ரிக (ர t.riggV
_) ட்ரிக் t.rik _) ட்ரிக் t.rik
_) ட்ரிக்க (ர t.riggV _) ட்ரிக்க (ர t.riggV
_) ட் (ரிங்_ t.
_நியூ) ட் (ரின t. _நியூ) ட் (ரின t.
_) ட்ரினிட (ி t.rinit. _) ட்ரினிட (ி t.rinit.
_) ட் (ரிம் t. _) ட் (ரிம் t.
ஸ்) த (B t ஸ்) த (B t
ப்) த tV ப்) த tV
ப்) த (B t ப்) த (B t
ட்) த tV
ட்) த (B t
த் (_த t த் (_த t


// exceptions, த as [d] // exceptions, த as [d]
_) த (கன dV _) த (கன dV
_) த (கி dV _) த (கி dV
_) த (க்க்ஷிண dV _) த (க்க்ஷிண dV
_) த (க்ஷன dV
_) த (க்ஷிண dV _) த (க்ஷிண dV
_) த (க்ஷிணா dV _) த (க்ஷிணா dV
_) த (சகண்ட dV _) த (சகண்ட dV
_) த (ட்சன dV _) த (ட்சன dV
_) த (ட்சிண dV _) த (ட்சிண dV
_) த (ண்டக் dV _) த (ண்டக் dV
_) த (ண்டச்செலவ dV
_) த (ண்டச்சோற dV _) த (ண்டச்சோற dV
_) த (ண்டத் dV _) த (ண்டத் dV
_) த (ண்டன dV _) த (ண்டன dV
_) த (னுச dV _) த (னுச dV
_) த (னுஷ dV _) த (னுஷ dV
_) த (ன்மந்திரி dV _) த (ன்மந்திரி dV
_) த (ன்ய dV
_) த (ன்ராஜ dV _) த (ன்ராஜ dV
_) த (ன்வந்தரி dV _) த (ன்வந்தரி dV
_) தபதப dVbVdVbV# _) தபதப dVbVdVbV#
_) த (ம்பதி dV _) த (ம்பதி dV
_) த (ம்பிடி dV _) த (ம்பிடி dV
_) த (ம்மடிL11் dV _) த (ம்மடிL11் dV
_) த (ம்மத் dV
_) த (ம்மம dV
_) த (யவ dV _) த (யவ dV
_) த (யாணந்த dV _) த (யாணந்த dV
_) த (யான dV _) த (யான dV
_) த (ர்ப்பை dV _) த (ர்ப்பை dV
_) த (ர்ம dV _) த (ர்ம dV
_) த (லித் dV _) த (லித் dV
_) தலீத் dVli:t
_அகாலி_) த (ள dV _அகாலி_) த (ள dV
_) த (ளவாய dV
_) த (வக்கால dV _) த (வக்கால dV
_) த (வக்கோல dV _) த (வக்கோல dV
_) த (வத்த dV _) த (வத்த dV
_) த (வப் dV _) த (வப் dV
_) த (வம dV _) த (வம dV
_) தவுலதாப (ாத dVvUlVda:b _) தவுலதாப (ாத dVvUlVda:b
_) த (வே dV
_) த (ாக்கா d _) த (ாக்கா d
_) த (ாக்காத t _) த (ாக்காத t
_) த (ாக்காம t _) த (ாக்காம t
_) த (ாராள d _) த (ாராள d
_) த (ாராவி d _) த (ாராவி d
_) த (ாவணி d _) த (ாவணி d
_) த (ாவா d
_) த (ாவாக்க d
_) த (ாவாவ d
_) த (ாவேய d _) த (ாவேய d
_) த (ாஸ d _) த (ாஸ d
_) த (ிகம்பர d _) த (ிகம்பர d
_) த (ிகில d _) த (ிகில d
_) த (ிகுதிகு d _) த (ிகுதிகு d
_) த (ிக்கற்ற d
_) த (ிக்கித்த d _) த (ிக்கித்த d
_) த (ிக்கில d _) த (ிக்கில d
_) த (ிக்கு d _) த (ிக்கு d
_) த (ிம்ம d _) த (ிம்ம d
_) தி (யாக t _) தி (யாக t
_) தி (யான d _) தி (யான d
_) தி (யேட்டர t
_) த (ியோபந்த d
_) த (ிரவ d _) த (ிரவ d
_) த (ிரவிய d _) த (ிரவிய d
_) தி (ராட்சை d _) தி (ராட்சை d
_) த (ிவால d _) த (ிவால d
_) த (ிவ்ய d _) த (ிவ்ய d
_) த (ிவ்விய d _) த (ிவ்விய d
_) தீக்ஷணி (ய di:ks.Vn
_) த (ீக்ஷண்ய d
_) த (ீக்ஷிதர d _) த (ீக்ஷிதர d
_) தீட்சணி (ய di:d.tSVn.
_) த (ீட்சண்ய d _) த (ீட்சண்ய d
_) த (ீட்சித d _) த (ீட்சித d
_) த (ீட்சை d _) த (ீட்சை d
_) த (ீரச் d _) த (ீரச் d
_) த (ீரத்துட d _) த (ீரத்துட d
_) த (ீரன d _) த (ீரன d
_) த (ீரமிக d
_) த (ீரமில்ல d _) த (ீரமில்ல d
_) த (ீரமுட d _) த (ீரமுட d
_) த (ீரம்மிக d _) த (ீரம்மிக d
_) தீர்க்க (முள்ள di:rggV# _) தீர்க்க (முள்ள di:rggV#
_) தீர்க்க (ம்_ di:rggV _) தீர்க்க (ம்_ di:rggV
_) தீர்க்க (ாயு di:rggV# _) தீர்க்க (ாயு di:rggV#
_) த (ீர்க்காலோசனை d
_) த (ீவாளி d _) த (ீவாளி d
_) து(ரோக d _) து(ரோக d
_) த (ுக்க d _) த (ுக்க d
_) த (ுன்மதி d _) த (ுன்மதி d
_) த (ுன்மார்க்க d _) த (ுன்மார்க்க d
_) த (ுபாய d _) த (ுபாய d
_) த (ுபாஷி d
_) த (ுபாஷ d
_) த (ுப்பட்டா d _) த (ுப்பட்டா d
_) த (ுமளி d _) த (ுமளி d
_) த (ுரதிருஷ்ட d _) த (ுரதிருஷ்ட d
_) த (ுரதிர்ஷ்ட d _) த (ுரதிர்ஷ்ட d
_) த (ுரதிஷ்ட d _) த (ுரதிஷ்ட d
_) துராக்க (ிர dra:gg
_) த (ுராசை d _) த (ுராசை d
_) த (ுரியோதனன d _) த (ுரியோதனன d
_) த (ுரியோதனா d _) த (ுரியோதனா d
_கௌ) த (மி tV _கௌ) த (மி tV
_புல்) த (ரை tV _புல்) த (ரை tV
_மண்) த (ரை tV _மண்) த (ரை tV
_சகுந்) த (லா tV
_சாந்) த (லிங்க tV# _சாந்) த (லிங்க tV#
_கீ) த (ா t _கீ) த (ா t
_சீ) த (ா t _சீ) த (ா t
அனி) த (ா t அனி) த (ா t
சுஜா) த (ா t சுஜா) த (ா t
லலி) த (ா t லலி) த (ா t
_சமந்) த (ா t
_சுனி) த (ா t _சுனி) த (ா t
_மம்) த (ா t _மம்) த (ா t
_ஹரி) த (ா t _ஹரி) த (ா t
_சுப) த்த (ிர dd _சுப) த்த (ிர dd
_ரு) த்த (ிர dd _ரு) த்த (ிர dd
_ரௌ) த்த (ிர dd _ரௌ) த்த (ிர dd
_சூ) த்த (ிரச் dd
_சூ) த்த (ிரச்சி dd _சூ) த்த (ிரச்சி dd
_சூ) த்த (ிரத் dd
_சூ) த்த (ிரன dd _சூ) த்த (ிரன dd
_சூ) த்த (ிரப் dd
_சூ) த்த (ிரரி dd _சூ) த்த (ிரரி dd
_சூ) த்த (ிரரே dd
_சூ) த்த (ிரர் dd _சூ) த்த (ிரர் dd
ஆதி) த்தி (ராவிட dd ஆதி) த்தி (ராவிட dd
_சேஷா) த்த (ிரி dd _சேஷா) த்த (ிரி dd
_வில்_வி) த்த (ை dd _வில்_வி) த்த (ை dd
_வில்வி) த்த (ை dd _வில்வி) த்த (ை dd
_வி) த்த (ைகள dd _வி) த்த (ைகள dd
_வி) த்த (ைக்க dd
_வி) த்த (ைக்காக dd _வி) த்த (ைக்காக dd
_வி) த்த (ைக்கு dd _வி) த்த (ைக்கு dd
வி) த்த (ையாக dd வி) த்த (ையாக dd
_) ப (கீர bV _) ப (கீர bV
_) ப (குள bV _) ப (குள bV
_) ப (க்கிங்L06ாம bV _) ப (க்கிங்L06ாம bV
_) ப (க்கீர fV
_) ப (க்கெட் bV _) ப (க்கெட் bV
_) ப (க்கென்ற bV _) ப (க்கென்ற bV
_) பக் (த bVk _) பக் (த bVk
_) ப (ங்கம bV _) ப (ங்கம bV
_) பங்க (ர bVNkV _) பங்க (ர bVNkV
_) ப (ங்களா bV _) ப (ங்களா bV
_) ப (ங்களூர bV
_) ப (ங்கார bV _) ப (ங்கார bV
_) ப (ங்க் bV _) ப (ங்க் bV
_) ப (சவகல்யாண bV _) ப (சவகல்யாண bV
_) ப (ராக்_ஒபாமா bV _) ப (ராக்_ஒபாமா bV
_) ப (ரிதா_ fV _) ப (ரிதா_ fV
_) ப (ரிதாவ fV _) ப (ரிதாவ fV
_) ப (ரீத fV
_) பரூக் fVrU:k _) பரூக் fVrU:k
_) ப (ரோட bV _) ப (ரோட bV
_) ப (ர்ஃபி bV _) ப (ர்ஃபி bV
_) ப (லராம bV _) ப (லராம bV
_) ப (லவந்த bV _) ப (லவந்த bV
_) ப (லவான bV _) ப (லவான bV
_) ப (லவானவ pV
_) ப (லவீன bV _) ப (லவீன bV
_) ப (லஹீன bV _) ப (லஹீன bV
_) பலாத்க (ார bVla:dk _) பலாத்க (ார bVla:dk
_) பாங்க (ாக் ba:Nk _) பாங்க (ாக் ba:Nk
_) ப (ாங்கில b _) ப (ாங்கில b
_) ப (ாங்க் b _) ப (ாங்க் b
_) ப (ாசிL04 f
_) ப (ாசில f _) ப (ாசில f
_) ப (ாசு b _) ப (ாசு b
_) பாசுப (த pa:sUpV _) பாசுப (த pa:sUpV
_) ப (ாதிக்கப்பட b _) ப (ாதிக்கப்பட b
_) ப (ாதிக்கப்பட b _) ப (ாதிக்கப்பட b
_) ப (ாதிக்கலாம b _) ப (ாதிக்கலாம b
_) ப (ாதிக்கவ b
_) ப (ாதிக்கவா b _) ப (ாதிக்கவா b
_) ப (ாதிக்கவில் b
_) ப (ாதிக்காத b _) ப (ாதிக்காத b
_) ப (ாதிக்காமல b
_) ப (ாதிக்கால p _) ப (ாதிக்கால p
_) ப (ாதிக்கின்ற b _) ப (ாதிக்கின்ற b
_) ப (ாதிக்கிற b _) ப (ாதிக்கிற b
_) ப (ாதிக்கும்_மேற் p _) ப (ாதிக்கும்_மேற் p
_) ப (ாதிக்கும்_மேற்பட்ட_ p _) ப (ாதிக்கும்_மேற்பட்ட_ p
_) ப (ாதிக்கும்_மேல p _) ப (ாதிக்கும்_மேல p
_) ப (ாதிச்ச b
_) ப (ாதித்த b _) ப (ாதித்த b
_) ப (ாதிப்படை b _) ப (ாதிப்படை b
_) ப (ாதிப்படைகி b _) ப (ாதிப்படைகி b
_) பாப (ாவ ba:b _) பாப (ாவ ba:b
_) ப (ாபிலோன b _) ப (ாபிலோன b
_) ப (ாபுவ b _) ப (ாபுவ b
_டைம்_) ப (ாம b
_) ப (ாமாவ b _) ப (ாமாவ b
_) ப (ாமினி b _) ப (ாமினி b
_) ப (ாம்பே b _) ப (ாம்பே b
_) ப (ாரதி b _) ப (ாரதி b
_) ப (ாரத்த b _) ப (ாரத்த b
_) ப (ாரம b _) ப (ாரம b
_) ப (ாரமை p
_) ப (ாரம்பரிய p _) ப (ாரம்பரிய p
_) ப (ாரம்மா p _) ப (ாரம்மா p
_) ப (ாரவி b _) ப (ாரவி b
_) ப (ாலுவ b _) ப (ாலுவ b
_) ப (ாலே_L25 b _) ப (ாலே_L25 b
_) ப (ாலை p _) ப (ாலை p
_) ப (ாலையா b
_) ப (ால் p _) ப (ால் p
_) ப (ால்_தாக்கரே b _) ப (ால்_தாக்கரே b
_) பால்க (னி ba:lkV _) பால்க (னி ba:lkV
_) ப (ினிஷ f _) ப (ினிஷ f
_) ப (ின்_லேடன b _) ப (ின்_லேடன b
_) ப (ின்னங்கள b _) ப (ின்னங்கள b
_) ப (ின்னத்த b
_) ப (ின்னத்தால b _) ப (ின்னத்தால b
_) ப (ின்னத்தை b _) ப (ின்னத்தை b
_) ப (ின்னம b _) ப (ின்னம b
_) பி (ரமுகர p _) பி (ரமுகர p
_) பி (ரமை b _) பி (ரமை b
_) பி (ரமோஷன p _) பி (ரமோஷன p
_) பி (ரமோஸ b
_) ப (ிரம்ம b _) ப (ிரம்ம b
_) பி (ரம்ம b _) பி (ரம்ம b
_) பி (ரம்மன b _) பி (ரம்மன b
_) பி (ரளய p _) பி (ரளய p
_) பி (ரவகி p _) பி (ரவகி p
_) பி (ரவாக p _) பி (ரவாக p
_) பி (ரவாள p
_) பி (ரவீண p _) பி (ரவீண p
_) பி (ரவீன p _) பி (ரவீன p
_) பி (ரவுச b _) பி (ரவுச b
_) பி (ரவேசி p _) பி (ரவேசி p
_) பி (ரஷ் b _) பி (ரஷ் b
_) பி (ரஷ்ட p _) பி (ரஷ்ட p
_) பி (ரஸ p
_) பி (ரஸல்ஸ b _) பி (ரஸல்ஸ b
_) பி (ரஸாத p _) பி (ரஸாத p
_) பி (ரஸ்தா p _) பி (ரஸ்தா p
_) பி (ரான்ச f _) பி (ரான்ச f
_) பி (ரான்தி_ b _) பி (ரான்தி_ b
_) பி (ரான்ஸ f _) பி (ரான்ஸ f
_) பி (ராபல்ய p
_) பி (ராப் p _) பி (ராப் p
_) பி (ராமண b _) பி (ராமண b
_) பி (ராமணன b _) பி (ராமணன b
_) பி (ராமிக் b _) பி (ராமிக் b
_) பி (ராமின்_ b _) பி (ராமின்_ b
_) பி (ராமிஸ p _) பி (ராமிஸ p
_) பி (ராம்மண b
_) பி (ராய்லர b _) பி (ராய்லர b
_) பி (ரார்தன p _) பி (ரார்தன p
_) பி (ரார்தி p _) பி (ரார்தி p
_) பி (ராவுக்கு b _) பி (ராவுக்கு b
_) பி (ராவை b _) பி (ராவை b
_) பி (ரிகேட b _) பி (ரிகேட b
_) பி (ரிஜேஷ b
_) பி (ரிட b _) பி (ரிட b
_) பிரிட (ோரிய prit. _) பிரிட (ோரிய prit.
_) பி (ரிட்டோரிய p _) பி (ரிட்டோரிய p
_) பி (ரியாவின p _) பி (ரியாவின p
_) பி (ரியாவு p _) பி (ரியாவு p
_) பி (ரியாவை p _) பி (ரியாவை p
_) பி (ரில்லிய b
_) பி (ரிஸ்டன b _) பி (ரிஸ்டன b
_) பி (ரிஸ்டல b _) பி (ரிஸ்டல b
_) பிரிஸ்ப (ேன brisb _) பிரிஸ்ப (ேன brisb
_) பி (ரோகிதர p _) பி (ரோகிதர p
_) பி (ரௌச b _) பி (ரௌச b
_) பி (ரௌன b _) பி (ரௌன b
_) ப (ிர்லா b
_) ப (ிலாஸ்பூர b _) ப (ிலாஸ்பூர b
_) பிலிடெல்ப (ிய filidelf _) பிலிடெல்ப (ிய filidelf
_) பிலிம filmV# _) பிலிம filmV#
_) ப (ீடித்த p _) ப (ீடித்த p
_) ப (ீடிப்புகை b _) ப (ீடிப்புகை b
_) ப (ீடிய b _) ப (ீடிய b
_) ப (ீடியாட் p
_) ப (ீட்டில்ஸ b _) ப (ீட்டில்ஸ b
_) பீட்ரூட் bi:t.ru:t. _) பீட்ரூட் bi:t.ru:t.
_) பீத (ோவன bi:t _) பீத (ோவன bi:t
_) பீ (ராமண b _) பீ (ராமண b
_) ப (ீராமணர b _) ப (ீராமணர b
_) ப (ீரிட p _) ப (ீரிட p
_) ப (ீரியட p
_) ப (ீரோ b _) ப (ீரோ b
_) ப (ீர்_முகமத p _) ப (ீர்_முகமத p
_) ப (ீர்_முஹமத p _) ப (ீர்_முஹமத p
_) ப (ெங்களூர b _) ப (ெங்களூர b
_) ப (ெங்கால b _) ப (ெங்கால b
_) பெசண்ட besVn.t.V# _) பெசண்ட besVn.t.V#
_) பெச (வாடா bezV
_) பெஜ (வாடா bezV
_) பெஞ்ச ben^tSV# _) பெஞ்ச ben^tSV#
_) ப (ெஞ்சமின b _) ப (ெஞ்சமின b
_) பெஞ்ச (மின ben^dZV _) பெஞ்ச (மின ben^dZV
_) ப (ெப்ரவரி f _) ப (ெப்ரவரி f
_) ப (ெயில f _) ப (ெயில f
_) பெரோஸ fero:zV# _) பெரோஸ fero:zV#
_) ப (ெர்க்கிலி b
_) பெர்ட் (ரண்ட bert. _) பெர்ட் (ரண்ட bert.
_) ப (ெர்த் b _) ப (ெர்த் b
_) ப (ெர்னாட்ஷா b _) ப (ெர்னாட்ஷா b
_) ப (ைகுக்கு b _) ப (ைகுக்கு b
_) ப (ைக்கின b _) ப (ைக்கின b
_) ப (ைக்கிற்க b _) ப (ைக்கிற்க b
_) ப (ைக்கில b
_) ப (ைக்குகள b _) ப (ைக்குகள b
_) ப (ைக்கும b _) ப (ைக்கும b
_) ப (ைசன b _) ப (ைசன b
_) ப (ொம்மனாட்டி p _) ப (ொம்மனாட்டி p
_) ப (ொம்மல b _) ப (ொம்மல b
_) ப (ொம்மை b _) ப (ொம்மை b
_) ப (ோஃபர்ஸ b
_) ப (ோஃபோர் b _) ப (ோஃபோர் b
_) ப (ோக_L13 b _) ப (ோக_L13 b
_) ப (ோகங்க b _) ப (ோகங்க b
_) ப (ோகிய b _) ப (ோகிய b
_) ப (ோக்கஸ f _) ப (ோக்கஸ f
_) ப (ோங்கா b _) ப (ோங்கா b
_) ப (ோங்கானும p
_) ப (ோங்கு b _) ப (ோங்கு b
_) ப (ோஜ b _) ப (ோஜ b
_) ப (ோடோ b _) ப (ோடோ b
_) ப (ோட்டோக்க f _) ப (ோட்டோக்க f
_) போட்டோக்ராப (ர fo:t.t.o:gra:fV _) போட்டோக்ராப (ர fo:t.t.o:gra:fV
_) ப (ோட்டோதான f _) ப (ோட்டோதான f
_) ப (ோணி b
_) ப (ோண்டா b _) ப (ோண்டா b
_) ப (ோண்டி b _) ப (ோண்டி b
_) ப (ோதகன b _) ப (ோதகன b
_) ப (ோன்கூட f _) ப (ோன்கூட f
_) ப (ோன்லகூட f _) ப (ோன்லகூட f
_) ப (ோன்ஸ்லே b _) ப (ோன்ஸ்லே b
_) போப (ர்ஸ bo:fV
_) போப (ால bo:p _) போப (ால bo:p
_) போப (ோர் bo:f _) போப (ோர் bo:f
_) ப (ோரடி b _) ப (ோரடி b
_மீள்) ப (தி pV _மீள்) ப (தி pV
சீதா) பதி pVti சீதா) பதி pVti
சேது) பதி pVti சேது) பதி pVti
_விடு) ப (தி pV
தரணி) பதி pVti தரணி) பதி pVti
திரௌ) ப (தி pV திரௌ) ப (தி pV
பிரஜா) பத (ி pVt பிரஜா) பத (ி pVt
_க) ப (த் bV _க) ப (த் bV
அரா) பத் fVt அரா) பத் fVt
அல்) ப (த் pV அல்) ப (த் pV
_கிலா) பத் fVt
_தா) ப (த்த bV _தா) ப (த்த bV
வீர) ப (த்தினி pV வீர) ப (த்தினி pV
_ரிஷி) ப (த்தினி pV _ரிஷி) ப (த்தினி pV
_ஊடு) ப (யிர pV _ஊடு) ப (யிர pV
_நடை) ப (யிற்சி pV _நடை) ப (யிற்சி pV
கா) ப (ர bV கா) ப (ர bV
_ஜெனி) ப (ர fV
நாகா) ப (ரண bV நாகா) ப (ரண bV
_ஒலி) ப (ரப் pV _ஒலி) ப (ரப் pV
_ஒளி) ப (ரப் pV _ஒளி) ப (ரப் pV
_கார்) ப (ரேஷன pV _கார்) ப (ரேஷன pV
_பம்) ப (ர்_ pV _பம்) ப (ர்_ pV
_கன்) ப (ர்ம fV _கன்) ப (ர்ம fV
இன்) ப (ர்ம fV
கரம்) ப (ற் pV கரம்) ப (ற் pV
_தீ) ப (ற்ற pV _தீ) ப (ற்ற pV
ஆள்) ப (ற்ற pV ஆள்) ப (ற்ற pV
_ஷில்) ப (ா p _ஷில்) ப (ா p
_முஸ்த) ப (ா f _முஸ்த) ப (ா f
_ஹனி) ப (ா f _ஹனி) ப (ா f
_ஹனீ) ப (ா f
_போதும்) ப (ா p _போதும்) ப (ா p
_போலாம்) ப (ா p _போலாம்) ப (ா p
_வேண்டாம்) ப (ா p _வேண்டாம்) ப (ா p
ஒரு) ப (ாத p ஒரு) ப (ாத p
_படு) ப (ாத p _படு) ப (ாத p
_மறு) ப (ாத p _மறு) ப (ாத p
பரீதா) ப (ாத b
ஆமதா) ப (ாத b ஆமதா) ப (ாத b
அL06மதா) ப (ாத b அL06மதா) ப (ாத b
அலாகா) ப (ாத b
இஸ்லாமா) ப (ாத b இஸ்லாமா) ப (ாத b
ஒளரங்கா) ப (ாத b ஒளரங்கா) ப (ாத b
ஔரங்கா) ப (ாத b ஔரங்கா) ப (ாத b
முக) ப (ாவ b முக) ப (ாவ b
அட) ப (ாவ p அட) ப (ாவ p
வீண்) ப (ாவ p வீண்) ப (ாவ p
_படு) ப (ாவ p
அடி) ப (ாவி p அடி) ப (ாவி p
_நவ) ப (ாஷ p _நவ) ப (ாஷ p
_தமிழ்ப்) ப (ாஷ _b _தமிழ்ப்) ப (ாஷ _b
@) ப (ின்னால்_ p @) ப (ின்னால்_ p
_) ப (ிப்ரவரி f _) ப (ிப்ரவரி f
_லெஸ்) ப (ியன b _லெஸ்) ப (ியன b
_மா) ப (ியா f
_கன்) பி (யுச f _கன்) பி (யுச f
_பெர்) பி (யூம f _பெர்) பி (யூம f
_வரப்) பி (ரL04ாத p _வரப்) பி (ரL04ாத p
வீண்) பி (ரமை b வீண்) பி (ரமை b
துஷ்) பி (ரயோக p துஷ்) பி (ரயோக p
L03ந்தப்) பி (ரளய p L03ந்தப்) பி (ரளய p
_சொற்) பி (ரவாக p
எக்ஸ்) பிர (ஸ pre எக்ஸ்) பிர (ஸ pre
ஆ) பி (ரஹாம b ஆ) பி (ரஹாம b
பயப்) பி (ராந்தி b பயப்) பி (ராந்தி b
ஆண்) ப (ிள்ளை p ஆண்) ப (ிள்ளை p
பெண்) ப (ிள்ளை p பெண்) ப (ிள்ளை p
அச்சா) ப (ீ f அச்சா) ப (ீ f
_ர) பீக் fi:k
உப) ப (ீட p உப) ப (ீட p
விக்கி) ப (ீடியா p விக்கி) ப (ீடியா p
இம்) ப (ீரியல p இம்) ப (ீரியல p
_அன்) ப (ுட b _அன்) ப (ுட b
_மார்) ப (ுட b _மார்) ப (ுட b
ராஜ) ப (ுதன p ராஜ) ப (ுதன p
_மின்) ப (ுத்தக p
_) புத்தம்ப (ுத puttVmp _) புத்தம்ப (ுத puttVmp
ராஜ) ப (ுத்திர p ராஜ) ப (ுத்திர p
வாயு) ப (ுத்திர p வாயு) ப (ுத்திர p
_பா) ப (ுலர p _பா) ப (ுலர p
_) பு (ளோரன்ஸ f _) பு (ளோரன்ஸ f
மண்) ப (ுழு p மண்) ப (ுழு p
_ஷாம்) ப (ூ p
ப (ூச்சி p ப (ூச்சி p
ம்) ப (ூச்சி b ம்) ப (ூச்சி b
உறுதி) ப (ூண்ட p உறுதி) ப (ூண்ட p
_கை) ப (ேசி p _கை) ப (ேசி p
_செல்) ப (ேசி p _செல்) ப (ேசி p
அலை) ப (ேசி p அலை) ப (ேசி p
_திரை) ப (ேசி p
தொலை) ப (ேசி p தொலை) ப (ேசி p
_மறு) ப (ேச்ச p _மறு) ப (ேச்ச p
ஒரு) ப (ேச்ச p ஒரு) ப (ேச்ச p
_ வெடி) ப (ொரு p _ வெடி) ப (ொரு p
_பழம்) ப (ொருள p _பழம்) ப (ொருள p
_தொல்) ப (ொருள p _தொல்) ப (ொருள p
_தேடு) ப (ொறி p
வீண்) ப (ொழுத p வீண்) ப (ொழுத p
ப (ொழுதிலா_+ p ப (ொழுதிலா_+ p
ப (ொழுதிலும்_+ p ப (ொழுதிலும்_+ p
ப (ொழுதே_+ p ப (ொழுதே_+ p
ப (ொழுதோ_+ p ப (ொழுதோ_+ p
_விலை) ப (ோ p _விலை) ப (ோ p
_பிர) ப (ோL04 p
_ஏக) ப (ோக b _ஏக) ப (ோக b
ராஜ) ப (ோக b ராஜ) ப (ோக b
ப (ோக_ p ப (ோக_ p
ப (ோன_ p ப (ோன_ p
ப (ோனது_ p ப (ோனது_ p
ப (ோனா p ப (ோனா p
அல்) ப (ோன்சா f
ப (ோன்ற+ p // ?? end-of-word + suffix ?? ப (ோன்ற+ p // ?? end-of-word + suffix ??
அல்) ப (ோன்ஸ f அல்) ப (ோன்ஸ f
ப (ோயிரு p ப (ோயிரு p
_டே) ப (் p _டே) ப (் p
_போ) ப் p _போ) ப் p
_லாக) ப் p _லாக) ப் p
ஆசி) ப் f
_டெஸ்க்டா) ப் p _டெஸ்க்டா) ப் p
ஆ) ப் (கன f
ஆ) ப் (கான f ஆ) ப் (கான f
_பா) ப்க (ார்ன pk _பா) ப்க (ார்ன pk
_ர) ப்ச (ர ptSV _ர) ப்ச (ர ptSV
_லி) ப் (ட f _லி) ப் (ட f
_மைக்ரோசா) ப் (ட f _மைக்ரோசா) ப் (ட f
_சா) ப்ட் (வேர ft _சா) ப்ட் (வேர ft
_ச) ப் (த_ p
_ச) ப்த (மி_ ptV
_ச) ப்த (மிய ptV
_ச) ப் (தரிஷி p
_ச) ப் (தஸ்வர p
_ஹி) ப்னாட (ிச pna:t. _ஹி) ப்னாட (ிச pna:t.
கர்) ப்ப bbV# கர்) ப்ப bbV#
_நவா) ப்ப bbV# _நவா) ப்ப bbV#
_ர) ப்ப (ர bbV _ர) ப்ப (ர bbV
ஆ) ப்ப (ரிக்க fV ஆ) ப்ப (ரிக்க fV
தென்னா) ப்ப (ரிக்க fV தென்னா) ப்ப (ரிக்க fV
_துர்) ப்ப (ல bbV
உ) ப்ப (லா bbV உ) ப்ப (லா bbV
உ) ப்ப (லாக bbV உ) ப்ப (லாக bbV
உ) ப்ப (லான bbV உ) ப்ப (லான bbV
_ஜ) ப்ப (ார bb _ஜ) ப்ப (ார bb
_துர்) ப்ப (ாஷ bb _துர்) ப்ப (ாஷ bb
அ) ப்ப (ாஸ bb அ) ப்ப (ாஸ bb
அ) ப்ப (ாஸாமி pp
அ) ப்ப (ாஸ்வாமி pp
உ) ப்ப (ி_ bb உ) ப்ப (ி_ bb
_ட) ப்ப (ிங் bb _ட) ப்ப (ிங் bb
உ) ப்ப (ின_ bb உ) ப்ப (ின_ bb
L03) ப்பி (ரகார pp L03) ப்பி (ரகார pp
_வெளி) ப்பி (ரகார pp _வெளி) ப்பி (ரகார pp
அதிக) ப்பி (ரசங்க pp அதிக) ப்பி (ரசங்க pp
_வன) ப்பி (ரதேச pp
_காட்டு) ப்பி (ரதேச pp
_நில) ப்பி (ரபு pp _நில) ப்பி (ரபு pp
_சத்திய) ப்பி (ரமா pp _சத்திய) ப்பி (ரமா pp
மன) ப்பி (ரமை bb மன) ப்பி (ரமை bb
_மன) ப்பி (ரவாக pp _மன) ப்பி (ரவாக pp
_ரத்த) ப்பி (ரவாக pp _ரத்த) ப்பி (ரவாக pp
இசை) ப்பி (ரவாக pp இசை) ப்பி (ரவாக pp
உரை) ப்பி (ரவாக pp
இரத்த) ப்பி (ரவாக pp இரத்த) ப்பி (ரவாக pp
_ஒL10ி) ப்பி (ரவாக pp _ஒL10ி) ப்பி (ரவாக pp
தேச) ப்பி (ரஷ்ட pp தேச) ப்பி (ரஷ்ட pp
_ஜாதி) ப்பி (ரஷ்ட pp _ஜாதி) ப்பி (ரஷ்ட pp
_வான) ப்பி (ரஸ்த pp
ஆ) ப்பி (ரிக்க f ஆ) ப்பி (ரிக்க f
தென்னா) ப்பி (ரிக்க fV தென்னா) ப்பி (ரிக்க fV
_கஜ) ப்ப (ிருஷ்ட bb _கஜ) ப்ப (ிருஷ்ட bb
_உ) ஸ்பெக் zbek _உ) ஸ்பெக் zbek
_நவா) ஸ zV# _நவா) ஸ zV#
பெர்னாண்ட) ஸ zV# பெர்னாண்ட) ஸ zV#
_ம) ஸ்த (ூர zd
அரி) ஸ (ோன z


.group ஹ .group ஹ
ஹ HV ஹ HV

+ 19
- 2
dictsource/ur_list View File

// This ur_list file is prepared by Him Prasad Gautam (Kathmandu, Nepal)
// This ur_list file is prepared by Him Prasad Gautam (Kathmandu, Nepal)
// This file is UTF8 encoded // This file is UTF8 encoded
// Letter Names, Numbers and exceptional pronounciation of Urdu // Letter Names, Numbers and exceptional pronounciation of Urdu


_dpt _ISaRI'Ia_ _dpt _ISaRI'Ia_




// Exception of phonemes


// pronouns
یہ jE $u یہ jE $u
کہ kE $u کہ kE $u
وہ wo: $u وہ wo: $u
پ $u
تم tUm $u
ہم Ham $u
اس Is $u
ان In $u


// unstressed prepositions
کا $u
کی $u
کے $u
سے $u


اور OR $u $brk

// unstressed verbs
ہے $u
ہیں $u

// Pronunciation exceptions
پاکستان p'a:k'i:st'a:n پاکستان p'a:k'i:st'a:n

+ 8
- 2
dictsource/ur_rules View File


// This ur_rules file is written by Him Prasad Gautam (Kathmandu, Nepal). // This ur_rules file is written by Him Prasad Gautam (Kathmandu, Nepal).
// This file is UTF8 encoded // This file is UTF8 encoded
// phoneme rules for Urdu // phoneme rules for Urdu
وٗ u: وٗ u:
و (L01 v و (L01 v
_) و vV _) و vV
وع (_ u:


.group ی .group ی
ی e: ی e:
ی (L01 j ی (L01 j
ی (_ i: ی (_ i:
_) ی jV _) ی jV
یع(_ i:




.group ے // yeh barree .group ے // yeh barree
.group ء .group ء
ء ء


.group ہ
.group ہ
ہ H ہ H
_) ہ Ha
_) ہ (L01 H
_) ہ (ند HI

ہ (_ a ہ (_ a





+ 0
- 3
espeak-data/voices/en View File

language en 2 language en 2
gender male gender male


replace 03 I i
replace 03 I2 i

//pitch 80 118 //pitch 80 118


tunes s1 c1 q1 e1 tunes s1 c1 q1 e1

+ 1
- 1
phsource/ph_english View File



phoneme @L phoneme @L
vowel starttype #@ endtype l vowel starttype #@ endtype l
ipa əl
ipa ə|l
unstressed unstressed
length 160 length 160
CALL vowelstart_l CALL vowelstart_l

+ 16
- 6
phsource/ph_english_sc View File

vowel starttype #a endtype #@ vowel starttype #a endtype #@
length 250 length 250
ipa aː ipa aː
AppendPhoneme(r)
IF NOT nextPhW(r) THEN
AppendPhoneme(r)
ENDIF
FMT(vowelr/aa_r) FMT(vowelr/aa_r)
endphoneme endphoneme


vowel starttype #o endtype #@ vowel starttype #o endtype #@
length 230 length 230
ipa ɔ ipa ɔ
AppendPhoneme(r)
IF NOT nextPhW(r) THEN
AppendPhoneme(r)
ENDIF
FMT(vowelr/oo_r) FMT(vowelr/oo_r)
endphoneme endphoneme


vowel starttype #o endtype #@ vowel starttype #o endtype #@
length 230 length 230
ipa o ipa o
AppendPhoneme(r)
IF NOT nextPhW(r) THEN
AppendPhoneme(r)
ENDIF
FMT(vowelr/oo_r) FMT(vowelr/oo_r)
endphoneme endphoneme


vowel starttype #e endtype #@ vowel starttype #e endtype #@
length 220 length 220
ipa e ipa e
AppendPhoneme(r)
IF NOT nextPhW(r) THEN
AppendPhoneme(r)
ENDIF
FMT(vdiph2/e@) FMT(vdiph2/e@)
endphoneme endphoneme


vowel starttype #i endtype #@ vowel starttype #i endtype #@
ipa ɪ ipa ɪ
length 240 length 240
AppendPhoneme(r)
IF NOT nextPhW(r) THEN
AppendPhoneme(r)
ENDIF
FMT(vowelr/i_r) FMT(vowelr/i_r)
endphoneme endphoneme


liquid rhotic liquid rhotic
lengthmod 7 lengthmod 7
trill trill

IF nextPh(isNotVowel) THEN IF nextPh(isNotVowel) THEN
ChangePhoneme(r/) ChangePhoneme(r/)
ENDIF ENDIF
CALL base/r CALL base/r
ipa r
endphoneme endphoneme





+ 6
- 6
phsource/ph_english_us View File



phoneme A@ // Used for [A:] when followed by 'r', becomes [A:]+[r] in American phoneme A@ // Used for [A:] when followed by 'r', becomes [A:]+[r] in American
vowel starttype #a endtype #a vowel starttype #a endtype #a
ipa ɑːɹ
ipa ɑː|ɹ
IF nextPh(r-) THEN IF nextPh(r-) THEN
ipa ɑː ipa ɑː
ENDIF ENDIF
phoneme O@ phoneme O@
vowel starttype #o endtype #@ vowel starttype #o endtype #@
length 250 length 250
ipa ɔːɹ
ipa ɔː|ɹ
IF nextPhW(r) THEN IF nextPhW(r) THEN
ipa ɔː ipa ɔː
ENDIF ENDIF
phoneme o@ phoneme o@
vowel starttype #o endtype #@ vowel starttype #o endtype #@
length 250 length 250
ipa oːɹ
ipa oː|ɹ
IF nextPhW(r) THEN IF nextPhW(r) THEN
ipa oː ipa oː
ENDIF ENDIF
phoneme e@ phoneme e@
vowel starttype #e endtype #@ vowel starttype #e endtype #@
length 280 length 280
ipa ɛɹ
ipa ɛ|ɹ
IF nextPhW(r) THEN IF nextPhW(r) THEN
ipa ɛ ipa ɛ
ENDIF ENDIF
phoneme i@3 phoneme i@3
vowel starttype #i endtype #@ vowel starttype #i endtype #@
length 280 length 280
ipa ɪɹ
ipa ɪ|ɹ
IF nextPhW(r) THEN IF nextPhW(r) THEN
ipa ɪ ipa ɪ
ENDIF ENDIF
phoneme U@ phoneme U@
vowel starttype #@ endtype #@ vowel starttype #@ endtype #@
length 250 length 250
ipa ʊɹ
ipa ʊ|ɹ
IF nextPhW(r-) THEN IF nextPhW(r-) THEN
ipa ʊ ipa ʊ
ENDIF ENDIF

+ 48
- 11
src/compiledata.cpp View File



extern void FindPhonemesUsed(void); extern void FindPhonemesUsed(void);
extern void DisplayErrorFile(const char *fname); extern void DisplayErrorFile(const char *fname);
extern int utf8_in(int *c, const char *buf);
extern int utf8_out(unsigned int c, char *buf); extern int utf8_out(unsigned int c, char *buf);
extern void DrawEnvelopes(); extern void DrawEnvelopes();
extern void ReadPhondataManifest(); extern void ReadPhondataManifest();


enum { enum {
kPHONEMESTART = 1, kPHONEMESTART = 1,
kUTF8_BOM,
kPROCEDURE, kPROCEDURE,
kENDPHONEME, kENDPHONEME,
kENDPROCEDURE, kENDPROCEDURE,
kTUNE_SPLIT, kTUNE_SPLIT,
}; };


static const char utf8_bom[] = {0xef,0xbb,0xbf,0};

static keywtab_t k_intonation[] = { static keywtab_t k_intonation[] = {
{"tune", 0, kTUNE}, {"tune", 0, kTUNE},
{"endtune", 0, kENDTUNE}, {"endtune", 0, kENDTUNE},
{"phonemenumber",tSTATEMENT, kPHONEMENUMBER}, {"phonemenumber",tSTATEMENT, kPHONEMENUMBER},
{"phonemetable",tSTATEMENT, kPHONEMETABLE}, {"phonemetable",tSTATEMENT, kPHONEMETABLE},
{"include", tSTATEMENT, kINCLUDE}, {"include", tSTATEMENT, kINCLUDE},
{utf8_bom, tSTATEMENT, kUTF8_BOM},


{"phoneme", tSTATEMENT, kPHONEMESTART}, {"phoneme", tSTATEMENT, kPHONEMESTART},
{"procedure", tSTATEMENT, kPROCEDURE}, {"procedure", tSTATEMENT, kPROCEDURE},
int keyword; int keyword;
int value; int value;
int phcode = 0; int phcode = 0;
int flags;
int ix; int ix;
unsigned int c;
int start;
int count;
int c;
char *p; char *p;
char number_buf[12]; char number_buf[12];
char ipa_buf[N_ITEM_STRING];
char ipa_buf[N_ITEM_STRING+1];
PHONEME_TAB phoneme_out2; PHONEME_TAB phoneme_out2;
PHONEME_PROG_LOG phoneme_prog_log; PHONEME_PROG_LOG phoneme_prog_log;


strcpy(item_string," "); strcpy(item_string," ");


// copy the string, recognize characters in the form U+9999 // copy the string, recognize characters in the form U+9999
p = item_string;
ix = 0;
while((c = *p++) != 0)
flags = 0;
count = 0;
ix = 1;

for(p=item_string; *p != 0;)
{ {
p += utf8_in(&c, p);

if((c == '|') && (count > 0))
{
// '|' means don't allow a tie or joiner before this letter
flags |= (1 << (count -1));
}
else
if((c=='U') && (p[0]=='+')) if((c=='U') && (p[0]=='+'))
{ {
int j;
// U+9999 // U+9999
memcpy(number_buf,&p[1],4); // U+ should be followed by 4 hex digits
p++;
memcpy(number_buf,p,4); // U+ should be followed by 4 hex digits
number_buf[4] = 0; number_buf[4] = 0;
c = 0;
c = '#';
sscanf(number_buf,"%x",&c); sscanf(number_buf,"%x",&c);
p += 5;

// move past the 4 hexdecimal digits
for(j=0; j<4; j++)
{
if(!isalnum(*p))
break;
p++;
}
ix += utf8_out(c, &ipa_buf[ix]); ix += utf8_out(c, &ipa_buf[ix]);
count++;
} }
else else
{ {
ipa_buf[ix++] = c;
ix += utf8_out(c, &ipa_buf[ix]);
count++;
} }
} }
ipa_buf[0] = flags;
ipa_buf[ix] = 0; ipa_buf[ix] = 0;
value = strlen(ipa_buf); // number of UTF-8 bytes

start = 1;
if(flags != 0)
start = 0; // only include the flags byte if bits are set
value = strlen(&ipa_buf[start]); // number of UTF-8 bytes


*prog_out++ = (i_IPA_NAME << 8) + value; *prog_out++ = (i_IPA_NAME << 8) + value;
for(ix=0; ix < value; ix += 2) for(ix=0; ix < value; ix += 2)
{ {
*prog_out++ = (ipa_buf[ix] << 8) + (ipa_buf[ix+1] & 0xff);
*prog_out++ = (ipa_buf[ix+start] << 8) + (ipa_buf[ix+start+1] & 0xff);
} }
break; break;
} }


switch(item) switch(item)
{ {
case kUTF8_BOM:
break; // ignore bytes 0xef 0xbb 0xbf

case kINCLUDE: case kINCLUDE:
NextItem(tSTRING); NextItem(tSTRING);
sprintf(buf,"%s%s",path_source,item_string); sprintf(buf,"%s%s",path_source,item_string);

+ 48
- 20
src/dictionary.cpp View File

}; };




char *WritePhMnemonic(char *phon_out, PHONEME_TAB *ph, PHONEME_LIST *plist, int use_ipa)
{//=====================================================================================
char *WritePhMnemonic(char *phon_out, PHONEME_TAB *ph, PHONEME_LIST *plist, int use_ipa, int *flags)
{//===================================================================================================
int c; int c;
int mnem; int mnem;
int len; int len;
int first; int first;
int ix = 0; int ix = 0;
char *p; char *p;
unsigned int ipa_control=0; // first byte of ipa string may control the phoneme name interpretation. 0x20 = ignore this phoneme
PHONEME_DATA phdata; PHONEME_DATA phdata;


if(ph->code == phonEND_WORD) if(ph->code == phonEND_WORD)
InterpretPhoneme(NULL, 0, plist, &phdata, NULL); InterpretPhoneme(NULL, 0, plist, &phdata, NULL);
} }


len = strlen(phdata.ipa_string);
p = phdata.ipa_string;
if(*p == 0x20)
{
// indicates no name for this phoneme
*phon_out = 0;
return(phon_out);
}
if((*p != 0) && ((*p & 0xff) < 0x20))
{
// name starts with a flags byte
if(flags != NULL)
*flags = *p;
p++;
}

len = strlen(p);
if(len > 0) if(len > 0)
{ {
if((ipa_control = phdata.ipa_string[0]) > 0x20)
{
strcpy(&phon_out[ix], phdata.ipa_string);
ix += len;
}
if(ipa_control >= 0x20)
{
phon_out = &phon_out[ix];
*phon_out = 0;
return(phon_out); // 0x20 = ignore phoneme
}
strcpy(phon_out, p);
phon_out += len;
*phon_out = 0;
return(phon_out);
} }
} }


unsigned int max_len; unsigned int max_len;
int phon_out_ix=0; int phon_out_ix=0;
int stress; int stress;
unsigned int c;
int c;
char *p;
char *buf; char *buf;
int count;
int flags;
char phon_buf[30]; char phon_buf[30];
char phon_buf2[30];
PHONEME_LIST *plist; PHONEME_LIST *plist;


static const char *stress_chars = "==,,''"; static const char *stress_chars = "==,,''";
static const int char_tie[] = {0x0361, 0x200d}; // combining-double-inverted-breve, zero-width-joiner


if(phon_out != NULL) if(phon_out != NULL)
{ {
} }
} }


buf = WritePhMnemonic(buf, plist->ph, plist, use_ipa);
flags = 0;
WritePhMnemonic(phon_buf2, plist->ph, plist, use_ipa, &flags);
count = 0;
for(p=phon_buf2; *p != 0;)
{
p += utf8_in(&c, p);
if(use_ipa > 1)
{
// look for non-inital alphabetic character, but not diacritic, superscript etc.
if((count>0) && !(flags & (1 << (count-1))) && ((c < 0x2b0) || (c > 0x36f)) && iswalpha(c))
{
buf += utf8_out(char_tie[use_ipa-2], buf);
}
}
buf += utf8_out(c, buf);
count++;
}


if(plist->ph->code != phonSWITCH) if(plist->ph->code != phonSWITCH)
{ {
if(plist->synthflags & SFLAG_LENGTHEN) if(plist->synthflags & SFLAG_LENGTHEN)
{ {
buf = WritePhMnemonic(buf, phoneme_tab[phonLENGTHEN], NULL, use_ipa);
buf = WritePhMnemonic(buf, phoneme_tab[phonLENGTHEN], NULL, use_ipa, NULL);
} }
if((plist->synthflags & SFLAG_SYLLABLE) && (plist->type != phVOWEL)) if((plist->synthflags & SFLAG_SYLLABLE) && (plist->type != phVOWEL))
{ {
// syllablic consonant // syllablic consonant
buf = WritePhMnemonic(buf, phoneme_tab[phonSYLLABIC], NULL, use_ipa);
buf = WritePhMnemonic(buf, phoneme_tab[phonSYLLABIC], NULL, use_ipa, NULL);
} }
if(plist->tone_ph > 0) if(plist->tone_ph > 0)
{ {
buf = WritePhMnemonic(buf, phoneme_tab[plist->tone_ph], NULL, use_ipa);
buf = WritePhMnemonic(buf, phoneme_tab[plist->tone_ph], NULL, use_ipa, NULL);
} }
} }



+ 13
- 1
src/espeak.cpp View File

"\t Compile pronunciation rules and dictionary from the current\n" "\t Compile pronunciation rules and dictionary from the current\n"
"\t directory. <voice name> specifies the language\n" "\t directory. <voice name> specifies the language\n"
"--ipa Write phonemes to stdout using International Phonetic Alphabet\n" "--ipa Write phonemes to stdout using International Phonetic Alphabet\n"
"\t --ipa=1 Use ties, --ipa=2 Use ZWJ\n"
"--path=\"<path>\"\n" "--path=\"<path>\"\n"
"\t Specifies the directory containing the espeak-data directory\n" "\t Specifies the directory containing the espeak-data directory\n"
"--pho Write mbrola phoneme data (.pho) to stdout or to the file in --phonout\n" "--pho Write mbrola phoneme data (.pho) to stdout or to the file in --phonout\n"
{"path", required_argument, 0, 0x107}, {"path", required_argument, 0, 0x107},
{"phonout", required_argument, 0, 0x108}, {"phonout", required_argument, 0, 0x108},
{"pho", no_argument, 0, 0x109}, {"pho", no_argument, 0, 0x109},
{"ipa", no_argument, 0, 0x10a},
{"ipa", optional_argument, 0, 0x10a},
{"version", no_argument, 0, 0x10b}, {"version", no_argument, 0, 0x10b},
{0, 0, 0, 0} {0, 0, 0, 0}
}; };


case 0x10a: // --ipa case 0x10a: // --ipa
option_phonemes = 3; option_phonemes = 3;
if(optarg2 != NULL)
{
value = -1;
sscanf(optarg2,"%d",&value);
if((value<0) || (value>2))
{
fprintf(stderr,"Bad value for -ipa=\n");
value = 0;
}
option_phonemes += value;
}
break; break;


case 0x10b: // -version case 0x10b: // -version

+ 2
- 1
src/numbers.cpp View File

alphabet = AlphabetFromChar(letter); alphabet = AlphabetFromChar(letter);
if(alphabet != current_alphabet) if(alphabet != current_alphabet)
{ {
// speak the name of the alphabet
current_alphabet = alphabet; current_alphabet = alphabet;
if((alphabet != NULL) && !(alphabet->flags & AL_DONT_NAME))
if((alphabet != NULL) && !(alphabet->flags & AL_DONT_NAME) && (alphabet->offset != translator->letter_bits_offset))
{ {
phontab_1 = tr->phoneme_tab_ix; phontab_1 = tr->phoneme_tab_ix;
ph_buf2[0] = 0; ph_buf2[0] = 0;

+ 13
- 1
src/speak.cpp View File

"\t Compile pronunciation rules and dictionary from the current\n" "\t Compile pronunciation rules and dictionary from the current\n"
"\t directory. <voice name> specifies the language\n" "\t directory. <voice name> specifies the language\n"
"--ipa Write phonemes to stdout using International Phonetic Alphabet\n" "--ipa Write phonemes to stdout using International Phonetic Alphabet\n"
"\t --ipa=1 Use ties, --ipa=2 Use ZWJ\n"
"--path=\"<path>\"\n" "--path=\"<path>\"\n"
"\t Specifies the directory containing the espeak-data directory\n" "\t Specifies the directory containing the espeak-data directory\n"
"--pho Write mbrola phoneme data (.pho) to stdout or to the file in --phonout\n" "--pho Write mbrola phoneme data (.pho) to stdout or to the file in --phonout\n"
{"path", required_argument, 0, 0x107}, {"path", required_argument, 0, 0x107},
{"phonout", required_argument, 0, 0x108}, {"phonout", required_argument, 0, 0x108},
{"pho", no_argument, 0, 0x109}, {"pho", no_argument, 0, 0x109},
{"ipa", no_argument, 0, 0x10a},
{"ipa", optional_argument, 0, 0x10a},
{"version", no_argument, 0, 0x10b}, {"version", no_argument, 0, 0x10b},
{0, 0, 0, 0} {0, 0, 0, 0}
}; };


case 0x10a: // --ipa case 0x10a: // --ipa
option_phonemes = 3; option_phonemes = 3;
if(optarg2 != NULL)
{
value = -1;
sscanf(optarg2,"%d",&value);
if((value<0) || (value>2))
{
fprintf(stderr,"Bad value for -ipa=\n");
value = 0;
}
option_phonemes += value;
}
break; break;


case 0x10b: // --version case 0x10b: // --version

+ 62
- 62
src/speak_lib.cpp View File

static int dispatch_audio(short* outbuf, int length, espeak_EVENT* event) static int dispatch_audio(short* outbuf, int length, espeak_EVENT* event)
{//====================================================================== {//======================================================================
ENTER("dispatch_audio"); ENTER("dispatch_audio");
int a_wave_can_be_played = fifo_is_command_enabled(); int a_wave_can_be_played = fifo_is_command_enabled();
#ifdef DEBUG_ENABLED #ifdef DEBUG_ENABLED
SHOW("*** dispatch_audio > uid=%d, [write=%p (%d bytes)], sample=%d, a_wave_can_be_played = %d\n",
(event) ? event->unique_identifier : 0, wave_test_get_write_buffer(), 2*length,
SHOW("*** dispatch_audio > uid=%d, [write=%p (%d bytes)], sample=%d, a_wave_can_be_played = %d\n",
(event) ? event->unique_identifier : 0, wave_test_get_write_buffer(), 2*length,
(event) ? event->sample : 0, (event) ? event->sample : 0,
a_wave_can_be_played); a_wave_can_be_played);
#endif #endif
while(a_wave_can_be_played) { while(a_wave_can_be_played) {
// TBD: some event are filtered here but some insight might be given // TBD: some event are filtered here but some insight might be given
// TBD: in synthesise.cpp for avoiding to create WORDs with size=0. // TBD: in synthesise.cpp for avoiding to create WORDs with size=0.
// TBD: For example sentence "or ALT)." returns three words
// "or", "ALT" and "".
// TBD: For example sentence "or ALT)." returns three words
// "or", "ALT" and "".
// TBD: the last one has its size=0. // TBD: the last one has its size=0.
if (event && (event->type == espeakEVENT_WORD) && (event->length==0)) if (event && (event->type == espeakEVENT_WORD) && (event->length==0))
{ {
} }


SHOW_TIME("LEAVE dispatch_audio\n"); SHOW_TIME("LEAVE dispatch_audio\n");
return (a_wave_can_be_played==0); // 1 = stop synthesis, -1 = error return (a_wave_can_be_played==0); // 1 = stop synthesis, -1 = error
} }


int i=0; int i=0;


// The audio data are written to the output device. // The audio data are written to the output device.
// The list of events in event_list (index: event_list_ix) is read:
// The list of events in event_list (index: event_list_ix) is read:
// Each event is declared to the "event" object which stores them internally. // Each event is declared to the "event" object which stores them internally.
// The event object is responsible of calling the external callback // The event object is responsible of calling the external callback
// as soon as the relevant audio sample is played. // as soon as the relevant audio sample is played.


do
do
{ // for each event { // for each event
espeak_EVENT* event; espeak_EVENT* event;
if (event_list_ix == 0) if (event_list_ix == 0)


if (my_mode==AUDIO_OUTPUT_PLAYBACK) if (my_mode==AUDIO_OUTPUT_PLAYBACK)
{ {
while(1)
while(1)
{ {
espeak_ERROR a_error = event_declare(event_list); espeak_ERROR a_error = event_declare(event_list);
if (a_error != EE_BUFFER_FULL) if (a_error != EE_BUFFER_FULL)
int GetFileLength(const char *filename) int GetFileLength(const char *filename)
{//==================================== {//====================================
struct stat statbuf; struct stat statbuf;
if(stat(filename,&statbuf) != 0) if(stat(filename,&statbuf) != 0)
return(0); return(0);
if((statbuf.st_mode & S_IFMT) == S_IFDIR) if((statbuf.st_mode & S_IFMT) == S_IFDIR)
// if(S_ISDIR(statbuf.st_mode)) // if(S_ISDIR(statbuf.st_mode))
return(-2); // a directory return(-2); // a directory
return(statbuf.st_size); return(statbuf.st_size);
} // end of GetFileLength } // end of GetFileLength


{ {
sprintf(path_home,"%s/espeak-data",env); sprintf(path_home,"%s/espeak-data",env);
if(GetFileLength(path_home) == -2) if(GetFileLength(path_home) == -2)
return; // an espeak-data directory exists
return; // an espeak-data directory exists
} }


buf[0] = 0; buf[0] = 0;
{ {
snprintf(path_home,sizeof(path_home),"%s/espeak-data",env); snprintf(path_home,sizeof(path_home),"%s/espeak-data",env);
if(GetFileLength(path_home) == -2) if(GetFileLength(path_home) == -2)
return; // an espeak-data directory exists
return; // an espeak-data directory exists
} }


snprintf(path_home,sizeof(path_home),"%s/espeak-data",getenv("HOME")); snprintf(path_home,sizeof(path_home),"%s/espeak-data",getenv("HOME"));
ENTER("MarkerEvent"); ENTER("MarkerEvent");
espeak_EVENT *ep; espeak_EVENT *ep;
double time; double time;
if((event_list == NULL) || (event_list_ix >= (n_event_list-2))) if((event_list == NULL) || (event_list_ix >= (n_event_list-2)))
return; return;
ep = &event_list[event_list_ix++]; ep = &event_list[event_list_ix++];
ep->type = (espeak_EVENT_TYPE)type; ep->type = (espeak_EVENT_TYPE)type;
ep->unique_identifier = my_unique_identifier; ep->unique_identifier = my_unique_identifier;
ep->user_data = my_user_data; ep->user_data = my_user_data;
ep->text_position = char_position & 0xffffff; ep->text_position = char_position & 0xffffff;
ep->length = char_position >> 24; ep->length = char_position >> 24;
time = (double(count_samples + mbrola_delay + (out_ptr - out_start)/2)*1000.0)/samplerate; time = (double(count_samples + mbrola_delay + (out_ptr - out_start)/2)*1000.0)/samplerate;
ep->audio_position = int(time); ep->audio_position = int(time);
ep->sample = (count_samples + mbrola_delay + (out_ptr - out_start)/2); ep->sample = (count_samples + mbrola_delay + (out_ptr - out_start)/2);
#ifdef DEBUG_ENABLED #ifdef DEBUG_ENABLED
SHOW("MarkerEvent > count_samples=%d, out_ptr=%x, out_start=0x%x\n",count_samples, out_ptr, out_start); SHOW("MarkerEvent > count_samples=%d, out_ptr=%x, out_start=0x%x\n",count_samples, out_ptr, out_start);
SHOW("*** MarkerEvent > type=%s, uid=%d, text_pos=%d, length=%d, audio_position=%d, sample=%d\n", SHOW("*** MarkerEvent > type=%s, uid=%d, text_pos=%d, length=%d, audio_position=%d, sample=%d\n",






espeak_ERROR sync_espeak_Synth(unsigned int unique_identifier, const void *text, size_t size,
unsigned int position, espeak_POSITION_TYPE position_type,
espeak_ERROR sync_espeak_Synth(unsigned int unique_identifier, const void *text, size_t size,
unsigned int position, espeak_POSITION_TYPE position_type,
unsigned int end_position, unsigned int flags, void* user_data) unsigned int end_position, unsigned int flags, void* user_data)
{//=========================================================================== {//===========================================================================
#ifdef DEBUG_ENABLED #ifdef DEBUG_ENABLED
ENTER("sync_espeak_Synth"); ENTER("sync_espeak_Synth");
SHOW("sync_espeak_Synth > position=%d, position_type=%d, end_position=%d, flags=%d, user_data=0x%x, text=%s\n", position, position_type, end_position, flags, user_data, text); SHOW("sync_espeak_Synth > position=%d, position_type=%d, end_position=%d, flags=%d, user_data=0x%x, text=%s\n", position, position_type, end_position, flags, user_data, text);
#endif #endif


espeak_ERROR aStatus; espeak_ERROR aStatus;
InitText(flags); InitText(flags);
my_unique_identifier = unique_identifier; my_unique_identifier = unique_identifier;
my_user_data = user_data; my_user_data = user_data;
for (int i=0; i < N_SPEECH_PARAM; i++) for (int i=0; i < N_SPEECH_PARAM; i++)
saved_parameters[i] = param_stack[0].parameter[i]; saved_parameters[i] = param_stack[0].parameter[i];


case POS_CHARACTER: case POS_CHARACTER:
skip_characters = position; skip_characters = position;
break; break;
case POS_WORD: case POS_WORD:
skip_words = position; skip_words = position;
break; break;
case POS_SENTENCE: case POS_SENTENCE:
skip_sentences = position; skip_sentences = position;
break; break;
} }
if(skip_characters || skip_words || skip_sentences) if(skip_characters || skip_words || skip_sentences)
skipping_text = 1; skipping_text = 1;
end_character_position = end_position; end_character_position = end_position;
aStatus = Synthesize(unique_identifier, text, flags); aStatus = Synthesize(unique_identifier, text, flags);
#ifdef USE_ASYNC #ifdef USE_ASYNC
wave_flush(my_audio); wave_flush(my_audio);
#endif #endif
SHOW_TIME("LEAVE sync_espeak_Synth"); SHOW_TIME("LEAVE sync_espeak_Synth");
return aStatus; return aStatus;
} // end of sync_espeak_Synth } // end of sync_espeak_Synth






espeak_ERROR sync_espeak_Synth_Mark(unsigned int unique_identifier, const void *text, size_t size,
const char *index_mark, unsigned int end_position,
espeak_ERROR sync_espeak_Synth_Mark(unsigned int unique_identifier, const void *text, size_t size,
const char *index_mark, unsigned int end_position,
unsigned int flags, void* user_data) unsigned int flags, void* user_data)
{//========================================================================= {//=========================================================================
espeak_ERROR aStatus; espeak_ERROR aStatus;
InitText(flags); InitText(flags);
my_unique_identifier = unique_identifier; my_unique_identifier = unique_identifier;
my_user_data = user_data; my_user_data = user_data;
if(index_mark != NULL) if(index_mark != NULL)
{ {
strncpy0(skip_marker, index_mark, sizeof(skip_marker)); strncpy0(skip_marker, index_mark, sizeof(skip_marker));
skipping_text = 1; skipping_text = 1;
} }
end_character_position = end_position; end_character_position = end_position;
aStatus = Synthesize(unique_identifier, text, flags | espeakSSML); aStatus = Synthesize(unique_identifier, text, flags | espeakSSML);
SHOW_TIME("LEAVE sync_espeak_Synth_Mark"); SHOW_TIME("LEAVE sync_espeak_Synth_Mark");
return (aStatus); return (aStatus);
} // end of sync_espeak_Synth_Mark } // end of sync_espeak_Synth_Mark


char buf[80]; char buf[80];
my_unique_identifier = 0; my_unique_identifier = 0;
my_user_data = NULL; my_user_data = NULL;
sprintf(buf,"<say-as interpret-as=\"tts:char\">&#%d;</say-as>",character); sprintf(buf,"<say-as interpret-as=\"tts:char\">&#%d;</say-as>",character);
Synthesize(0, buf,espeakSSML); Synthesize(0, buf,espeakSSML);
} }
// Set the list of punctuation which are spoken for "some". // Set the list of punctuation which are spoken for "some".
my_unique_identifier = 0; my_unique_identifier = 0;
my_user_data = NULL; my_user_data = NULL;
wcsncpy(option_punctlist, punctlist, N_PUNCTLIST); wcsncpy(option_punctlist, punctlist, N_PUNCTLIST);
option_punctlist[N_PUNCTLIST-1] = 0; option_punctlist[N_PUNCTLIST-1] = 0;
} // end of sync_espeak_SetPunctuationList } // end of sync_espeak_SetPunctuationList
setlocale(LC_CTYPE,""); setlocale(LC_CTYPE,"");
} }
#endif #endif
init_path(path); init_path(path);
initialise(options); initialise(options);
select_output(output_type); select_output(output_type);
outbuf = (unsigned char*)realloc(outbuf,outbuf_size); outbuf = (unsigned char*)realloc(outbuf,outbuf_size);
if((out_start = outbuf) == NULL) if((out_start = outbuf) == NULL)
return(EE_INTERNAL_ERROR); return(EE_INTERNAL_ERROR);
// allocate space for event list. Allow 200 events per second. // allocate space for event list. Allow 200 events per second.
// Add a constant to allow for very small buf_length // Add a constant to allow for very small buf_length
n_event_list = (buf_length*200)/1000 + 20; n_event_list = (buf_length*200)/1000 + 20;
if((event_list = (espeak_EVENT *)realloc(event_list,sizeof(espeak_EVENT) * n_event_list)) == NULL) if((event_list = (espeak_EVENT *)realloc(event_list,sizeof(espeak_EVENT) * n_event_list)) == NULL)
return(EE_INTERNAL_ERROR); return(EE_INTERNAL_ERROR);
option_phonemes = 0; option_phonemes = 0;
option_mbrola_phonemes = 0; option_mbrola_phonemes = 0;
option_phoneme_events = (options & (espeakINITIALIZE_PHONEME_EVENTS | espeakINITIALIZE_PHONEME_IPA)); option_phoneme_events = (options & (espeakINITIALIZE_PHONEME_EVENTS | espeakINITIALIZE_PHONEME_IPA));


VoiceReset(0); VoiceReset(0);
// SetVoiceByName("default"); // SetVoiceByName("default");
for(param=0; param<N_SPEECH_PARAM; param++) for(param=0; param<N_SPEECH_PARAM; param++)
param_stack[0].parameter[param] = saved_parameters[param] = param_defaults[param]; param_stack[0].parameter[param] = saved_parameters[param] = param_defaults[param];
SetParameter(espeakRATE,175,0); SetParameter(espeakRATE,175,0);
SetParameter(espeakVOLUME,100,0); SetParameter(espeakVOLUME,100,0);
SetParameter(espeakCAPITALS,option_capitals,0); SetParameter(espeakCAPITALS,option_capitals,0);
SetParameter(espeakPUNCTUATION,option_punctuation,0); SetParameter(espeakPUNCTUATION,option_punctuation,0);
SetParameter(espeakWORDGAP,0,0); SetParameter(espeakWORDGAP,0,0);
// DoVoiceChange(voice); // DoVoiceChange(voice);
#ifdef USE_ASYNC #ifdef USE_ASYNC
fifo_init(); fifo_init();
#endif #endif






ESPEAK_API espeak_ERROR espeak_Synth(const void *text, size_t size,
unsigned int position,
ESPEAK_API espeak_ERROR espeak_Synth(const void *text, size_t size,
unsigned int position,
espeak_POSITION_TYPE position_type, espeak_POSITION_TYPE position_type,
unsigned int end_position, unsigned int flags,
unsigned int end_position, unsigned int flags,
unsigned int* unique_identifier, void* user_data) unsigned int* unique_identifier, void* user_data)
{//===================================================================================== {//=====================================================================================
#ifdef DEBUG_ENABLED #ifdef DEBUG_ENABLED






ESPEAK_API espeak_ERROR espeak_Synth_Mark(const void *text, size_t size,
const char *index_mark,
unsigned int end_position,
unsigned int flags,
ESPEAK_API espeak_ERROR espeak_Synth_Mark(const void *text, size_t size,
const char *index_mark,
unsigned int end_position,
unsigned int flags,
unsigned int* unique_identifier, unsigned int* unique_identifier,
void* user_data) void* user_data)
{//========================================================================= {//=========================================================================


#ifdef USE_ASYNC #ifdef USE_ASYNC
// Create the mark command // Create the mark command
t_espeak_command* c1 = create_espeak_mark(text, size, index_mark, end_position,
t_espeak_command* c1 = create_espeak_mark(text, size, index_mark, end_position,
flags, user_data); flags, user_data);
// Retrieve the unique identifier // Retrieve the unique identifier
*unique_identifier = c1->u.my_mark.unique_identifier; *unique_identifier = c1->u.my_mark.unique_identifier;
// Create the "terminated msg" command (same uid) // Create the "terminated msg" command (same uid)
t_espeak_command* c2 = create_espeak_terminated_msg(*unique_identifier, user_data); t_espeak_command* c2 = create_espeak_terminated_msg(*unique_identifier, user_data);
// Try to add these 2 commands (single transaction) // Try to add these 2 commands (single transaction)
if (c1 && c2) if (c1 && c2)
{ {
value=0 No phoneme output (default) value=0 No phoneme output (default)
value=1 Output the translated phoneme symbols for the text value=1 Output the translated phoneme symbols for the text
value=2 as (1), but also output a trace of how the translation was done (matching rules and list entries) value=2 as (1), but also output a trace of how the translation was done (matching rules and list entries)
value=3 as (1), but produces IPA phoneme names rather than ascii
value=3 as (1), but produces IPA phoneme names rather than ascii
bit 4: produce mbrola pho data bit 4: produce mbrola pho data
*/ */
option_phonemes = value & 3;
option_phonemes = value & 7;
option_mbrola_phonemes = value & 16; option_mbrola_phonemes = value & 16;
f_trans = stream; f_trans = stream;
if(stream == NULL) if(stream == NULL)
f_trans = stderr; f_trans = stderr;
} // end of espeak_SetPhonemes } // end of espeak_SetPhonemes






#pragma GCC visibility pop #pragma GCC visibility pop



+ 2
- 2
src/synth_mbrola.cpp View File

/*************************************************************************** /***************************************************************************
* 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 *
if(ph->code != phonEND_WORD) if(ph->code != phonEND_WORD)
{ {
char phoneme_name[16]; char phoneme_name[16];
WritePhMnemonic(phoneme_name, p->ph, p, option_phoneme_events & espeakINITIALIZE_PHONEME_IPA);
WritePhMnemonic(phoneme_name, p->ph, p, option_phoneme_events & espeakINITIALIZE_PHONEME_IPA, NULL);
DoPhonemeMarker(espeakEVENT_PHONEME, (p->sourceix & 0x7ff) + clause_start_char, 0, phoneme_name); DoPhonemeMarker(espeakEVENT_PHONEME, (p->sourceix & 0x7ff) + clause_start_char, 0, phoneme_name);
} }



+ 2
- 2
src/synthdata.cpp View File

#include "translate.h" #include "translate.h"
#include "wave.h" #include "wave.h"


const char *version_string = "1.46.39 01.Mar.13";
const int version_phdata = 0x014639;
const char *version_string = "1.46.41 03.Mar.13";
const int version_phdata = 0x014640;


int option_device_number = -1; int option_device_number = -1;
FILE *f_logespeak = NULL; FILE *f_logespeak = NULL;

+ 4
- 4
src/synthesize.cpp View File

} }
else else
{ {
WritePhMnemonic(phoneme_name, p->ph, p, use_ipa);
WritePhMnemonic(phoneme_name, p->ph, p, use_ipa, NULL);
DoPhonemeMarker(espeakEVENT_PHONEME, sourceix, 0, phoneme_name); DoPhonemeMarker(espeakEVENT_PHONEME, sourceix, 0, phoneme_name);
done_phoneme_marker = 1; done_phoneme_marker = 1;
} }


if((option_phoneme_events) && (done_phoneme_marker == 0)) if((option_phoneme_events) && (done_phoneme_marker == 0))
{ {
WritePhMnemonic(phoneme_name, p->ph, p, use_ipa);
WritePhMnemonic(phoneme_name, p->ph, p, use_ipa, NULL);
DoPhonemeMarker(espeakEVENT_PHONEME, sourceix, 0, phoneme_name); DoPhonemeMarker(espeakEVENT_PHONEME, sourceix, 0, phoneme_name);
} }


if((option_phonemes > 0) || (phoneme_callback != NULL)) if((option_phonemes > 0) || (phoneme_callback != NULL))
{ {
int use_ipa = 0; int use_ipa = 0;
if(option_phonemes == 3)
use_ipa = 1;
if(option_phonemes >= 3)
use_ipa = option_phonemes-2; // 1=ipa, 2=ipa with tie, 3=ipa with ZWJ


GetTranslatedPhonemeString(translator->phon_out, sizeof(translator->phon_out), use_ipa); GetTranslatedPhonemeString(translator->phon_out, sizeof(translator->phon_out), use_ipa);
if(option_phonemes > 0) if(option_phonemes > 0)

+ 15
- 3
src/tr_languages.cpp View File

/*************************************************************************** /***************************************************************************
* 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 *


// ignore these characters // ignore these characters
static const unsigned short chars_ignore_default[] = { static const unsigned short chars_ignore_default[] = {
0xad, 1, // soft hyphtn
0xad, 1, // soft hyphen
0x200c, 1, // zero width non-joiner 0x200c, 1, // zero width non-joiner
0x200d, 1, // zero width joiner 0x200d, 1, // zero width joiner
0, 0 }; 0, 0 };
int name2 = 0; int name2 = 0;
Translator *tr; Translator *tr;


static const short stress_lengths_equal[8] = {250, 250, 250, 250, 0, 0, 250, 250};
static const unsigned char stress_amps_equal[8] = {18,18, 18,18, 18,18, 18,18 };

static const short stress_lengths_fr[8] = {190, 170, 190, 200, 0, 0, 190, 240}; static const short stress_lengths_fr[8] = {190, 170, 190, 200, 0, 0, 190, 240};
static const unsigned char stress_amps_fr[8] = {18,16, 18,18, 18,18, 18,18 }; static const unsigned char stress_amps_fr[8] = {18,16, 18,18, 18,18, 18,18 };


static const unsigned char stress_amps_sk[8] = {17,16, 20,20, 20,22, 22,21 }; static const unsigned char stress_amps_sk[8] = {17,16, 20,20, 20,22, 22,21 };
static const short stress_lengths_sk[8] = {190,190, 210,210, 0,0, 210,210}; static const short stress_lengths_sk[8] = {190,190, 210,210, 0,0, 210,210};


static const short stress_lengths_ta[8] = {200, 200, 210, 210, 0, 0, 230, 230};
static const short stress_lengths_ta[8] = {240, 240, 250, 250, 0, 0, 270, 270};
static const unsigned char stress_amps_ta[8] = {18,18, 18,18, 20,20, 22,22 }; static const unsigned char stress_amps_ta[8] = {18,18, 18,18, 20,20, 22,22 };


// convert name string into a word of up to 4 characters, for the switch() // convert name string into a word of up to 4 characters, for the switch()
{ {
tr->letter_bits_offset = OFFSET_GURMUKHI; tr->letter_bits_offset = OFFSET_GURMUKHI;
} }
else
if(name2 == L('g','u'))
{
SetupTranslator(tr,stress_lengths_equal,stress_amps_equal);
tr->letter_bits_offset = OFFSET_GUJARATI;
tr->langopts.stress_rule = STRESSPOSN_2R;
}
else
if(name2 == L('n','e')) if(name2 == L('n','e'))
{ {
SetupTranslator(tr,stress_lengths_equal,stress_amps_equal);
tr->langopts.break_numbers = 0x2aaaa8; tr->langopts.break_numbers = 0x2aaaa8;
tr->langopts.max_digits = 22; tr->langopts.max_digits = 22;
tr->langopts.numbers2 |= NUM2_ENGLISH_NUMERALS; tr->langopts.numbers2 |= NUM2_ENGLISH_NUMERALS;

+ 15
- 11
src/translate.cpp View File

*pn++ = tr->langopts.thousands_sep; *pn++ = tr->langopts.thousands_sep;
} }
*pn++ = ' '; *pn++ = ' ';
if(tr->langopts.break_numbers & (1 << (nx-1)))
{
// the next group only has 1 digits (i.e. NUM2_10000), make it three
*pn++ = '0';
*pn++ = '0';
}
if(tr->langopts.break_numbers & (1 << (nx-2)))
{
// the next group only has 2 digits (i.e. NUM2_10000), make it three
*pn++ = '0';
}

if((words[ix].flags & FLAG_INDIVIDUAL_DIGITS) == 0)
{
if(tr->langopts.break_numbers & (1 << (nx-1)))
{
// the next group only has 1 digits, make it three
*pn++ = '0';
*pn++ = '0';
}
if(tr->langopts.break_numbers & (1 << (nx-2)))
{
// the next group only has 2 digits (eg. Indian languages), make it three
*pn++ = '0';
}
}
} }
} }
pw--; pw--;

+ 1
- 1
src/translate.h View File

void SetVoiceStack(espeak_VOICE *v, const char *variant_name); void SetVoiceStack(espeak_VOICE *v, const char *variant_name);
void InterpretPhoneme(Translator *tr, int control, PHONEME_LIST *plist, PHONEME_DATA *phdata, WORD_PH_DATA *worddata); void InterpretPhoneme(Translator *tr, int control, PHONEME_LIST *plist, PHONEME_DATA *phdata, WORD_PH_DATA *worddata);
void InterpretPhoneme2(int phcode, PHONEME_DATA *phdata); void InterpretPhoneme2(int phcode, PHONEME_DATA *phdata);
char *WritePhMnemonic(char *phon_out, PHONEME_TAB *ph, PHONEME_LIST *plist, int use_ipa);
char *WritePhMnemonic(char *phon_out, PHONEME_TAB *ph, PHONEME_LIST *plist, int use_ipa, int *flags);


extern FILE *f_trans; // for logging extern FILE *f_trans; // for logging
extern FILE *f_logespeak; extern FILE *f_logespeak;

Loading…
Cancel
Save