Change program code for espeak/libespeak to C, remove C++ features. Language changes: af, ga, grc, hu, nl, sw, ta git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@364 d46cf337-b52f-0410-862d-fd96e6ae7743master
bangladesj baNglad'ES | bangladesj baNglad'ES | ||||
barcelona bars@l'o@na | barcelona bars@l'o@na | ||||
barkly _^_EN | barkly _^_EN | ||||
batavië bat'A:vi@ | |||||
bellevue b&lvju: | bellevue b&lvju: | ||||
bermuda $2 | bermuda $2 | ||||
bethlehem bEt_liEm | bethlehem bEt_liEm | ||||
djakarta dZak'arta | djakarta dZak'arta | ||||
doebaai $2 | doebaai $2 | ||||
duitswes dYytsv'Es | duitswes dYytsv'Es | ||||
eastgate _^_EN | |||||
eastgate _^_EN | |||||
efese e@f@s@ | efese e@f@s@ | ||||
ermelo &rm@lo@ | ermelo &rm@lo@ | ||||
florida flOrida | florida flOrida | ||||
richardsbaai ritS@dsb'AI | richardsbaai ritS@dsb'AI | ||||
riviersonderend r@fi:rsOn@r_'Ent | riviersonderend r@fi:rsOn@r_'Ent | ||||
robertson _^_EN | robertson _^_EN | ||||
saldanha sald'ana | |||||
salvador salvadO:r | salvador salvadO:r | ||||
santiago santi;'A:gu | santiago santi;'A:gu | ||||
secunda s@kunda | secunda s@kunda | ||||
abdullah abd'ula | abdullah abd'ula | ||||
Abiméleg abin'e@lEx2 | Abiméleg abin'e@lEx2 | ||||
abraham A:bram | abraham A:bram | ||||
achilles ak'il@s | |||||
ackerman ak@rman | ackerman ak@rman | ||||
adam adam | adam adam | ||||
adonis ad'o@n@s | |||||
adriaan A:drijan | adriaan A:drijan | ||||
adrie A:dri | adrie A:dri | ||||
agnes _^_EN | agnes _^_EN | ||||
lucas lukas | lucas lukas | ||||
lukas lukas | lukas lukas | ||||
lulu lulu | lulu lulu | ||||
lydia lIdia | |||||
mabalêl mabal'&l | mabalêl mabal'&l | ||||
mabel _^_EN | mabel _^_EN | ||||
macgill m@gjil | macgill m@gjil | ||||
ogden _^_EN | ogden _^_EN | ||||
olga Olga | olga Olga | ||||
ontong OntON | ontong OntON | ||||
pamela _^_EN | |||||
patrick _^_EN | patrick _^_EN | ||||
petoors p@to@rs | petoors p@to@rs | ||||
phillips fIl@ps | phillips fIl@ps | ||||
(nie waar nie) n,i||v,A:r||n'i | (nie waar nie) n,i||v,A:r||n'i | ||||
(sy aan sy) s,eI||an||s'eI | (sy aan sy) s,eI||an||s'eI | ||||
// Latin terms | |||||
ab _^_LA | |||||
actio _^_LA | |||||
ad _^_LA | |||||
alterius _^_LA | |||||
amico _^_LA | |||||
amicus _^_LA | |||||
beneficium _^_LA | |||||
bona _^_LA | |||||
bono _^_LA | |||||
contestatio _^_LA | |||||
cum _^_LA | |||||
curiae _^_LA | |||||
(de facto) _^_LA | |||||
(de jure) _^_LA | |||||
delicti _^_LA | |||||
delicto _^_LA | |||||
deo _^_LA | |||||
directus _^_LA | |||||
divisionis _^_LA | |||||
dolus _^_LA | |||||
domicilium _^_LA | |||||
eventualis _^_LA | |||||
exclusio _^_LA | |||||
executandi _^_LA | |||||
excussionis _^_LA | |||||
extremis _^_LA | |||||
facto _^_LA | |||||
factum _^_LA | |||||
fide _^_LA | |||||
fides _^_LA | |||||
forma _^_LA | |||||
grata _^_LA | |||||
habitatio _^_LA | |||||
inclusio _^_LA | |||||
(in debiti) _^_LA | |||||
(in absentia) _^_LA | |||||
(in extremis) _^_LA | |||||
initio _^_LA | |||||
inter _^_LA | |||||
ipsa _^_LA | |||||
jus _^_LA | |||||
laude _^_LA | |||||
litis _^_LA | |||||
loquitur _^_LA | |||||
luna _^_LA | |||||
mercatrix _^_LA | |||||
mutandi _^_LA | |||||
mutatis _^_LA | |||||
nisi _^_LA | |||||
pauperis _^_LA | |||||
persona _^_LA | |||||
publica _^_LA | |||||
restitutio _^_LA | |||||
sine _^_LA | |||||
unius _^_LA | |||||
usufruct _^_LA | |||||
usufructus _^_LA | |||||
usus _^_LA | |||||
vivendi _^_LA | |||||
vivos _^_LA | |||||
// main word list | // main word list | ||||
babelaas bab@lA:s | babelaas bab@lA:s | ||||
barrikade $3 | barrikade $3 | ||||
bedewete be@d@ve@t@ | |||||
beide beId@ | beide beId@ | ||||
bekaf b&kaf | bekaf b&kaf | ||||
belangriker b@laNr@k,Ir | belangriker b@laNr@k,Ir | ||||
beta be@ta $only | beta be@ta $only | ||||
betlehemster bEtli:Emst&r | betlehemster bEtli:Emst&r | ||||
bewe be@v@ | bewe be@v@ | ||||
bewebeen be@v@be@n | |||||
bewend be@v@nt | bewend be@v@nt | ||||
bewering b@ve@rIN | bewering b@ve@rIN | ||||
biopsie bi'Opsi | biopsie bi'Opsi | ||||
dadelik dA:d@lIk | dadelik dA:d@lIk | ||||
dagorde dax2_Ord@ | dagorde dax2_Ord@ | ||||
dagster dax2st&r | dagster dax2st&r | ||||
dagure dax2_yr@ | |||||
daisy deIzi | daisy deIzi | ||||
darem dar@m | darem dar@m | ||||
dawidster dA:v@tst&r | dawidster dA:v@tst&r | ||||
//gesamentlik x2@sA:m@ntl@k | //gesamentlik x2@sA:m@ntl@k | ||||
gentleman _^_EN | gentleman _^_EN | ||||
germolene dZI:m@l'i:n | germolene dZI:m@l'i:n | ||||
geseling x2e@s@l@N | |||||
gevallene x2@fal@n@ | gevallene x2@fal@n@ | ||||
gewellys x2e@v@lleIs | gewellys x2e@v@lleIs | ||||
gladiator x2ladi'A:tOr | gladiator x2ladi'A:tOr | ||||
gomorra x2@mOra | gomorra x2@mOra | ||||
graffiti graf'iti | graffiti graf'iti | ||||
gratis x2r'A:t@s | gratis x2r'A:t@s | ||||
groepeer $2 | |||||
grondys x2rO:nt_eIs | grondys x2rO:nt_eIs | ||||
hallo h'Il,@U | hallo h'Il,@U | ||||
kulture $2 | kulture $2 | ||||
kunsmatige kWnsm'A:t@x2@ | kunsmatige kWnsm'A:t@x2@ | ||||
kwansuis $2 | kwansuis $2 | ||||
kweekwal kwe@kval | |||||
lasagne las'anj@ | lasagne las'anj@ | ||||
legaat l@x2A:t | legaat l@x2A:t | ||||
macho matS@U | macho matS@U | ||||
madame mad'A:m | madame mad'A:m | ||||
madamoiselle _^_FR | madamoiselle _^_FR | ||||
manalleen man_ale@n | |||||
maskering mask'e@r@N $only | maskering mask'e@r@N $only | ||||
massaal $2 | massaal $2 | ||||
massale $2 | massale $2 | ||||
negeer n@x2e@r | negeer n@x2e@r | ||||
negering n@x2e@r@N | negering n@x2e@r@N | ||||
negester ne@x2@st&r | negester ne@x2@st&r | ||||
nekaar n&k_A:r | |||||
nekare n&k_A:r@ | |||||
netjies nE:icis | netjies nE:icis | ||||
netjiese nEicis@ | netjiese nEicis@ | ||||
netsowel nEtso@v&l | netsowel nEtso@v&l | ||||
verreweg f&r@v&x2 | verreweg f&r@v&x2 | ||||
verse f&:rs@ | verse f&:rs@ | ||||
vers f&:rs | vers f&:rs | ||||
versene f&rs@n@ | |||||
versindaba f&:rs_@ndA:ba | versindaba f&:rs_@ndA:ba | ||||
verste f&rst@ | verste f&rst@ | ||||
verte f&rt@ | verte f&rt@ | ||||
volswanger $1 | volswanger $1 | ||||
volte $1 | volte $1 | ||||
voluit fOl_Yyt | voluit fOl_Yyt | ||||
voorbene fo@rbe@n@ | |||||
voorgee fo@rx2e@ | voorgee fo@rx2e@ | ||||
voorkeer $1 | voorkeer $1 | ||||
voorkom $2 $only | voorkom $2 $only | ||||
weergalm $2 | weergalm $2 | ||||
weerklink $2 | weerklink $2 | ||||
weervoorspelling $1 | weervoorspelling $1 | ||||
wegeb v&x2_Eb | |||||
weggewens v&x2@v'E:ns | weggewens v&x2@v'E:ns | ||||
welaf v&l_af | welaf v&l_af | ||||
weleer v&l_'e@r | weleer v&l_'e@r |
//maintainer: Willem van der Walt | |||||
//maintainer: Willem van der Walt | |||||
// email: [email protected] | // email: [email protected] | ||||
// tel: +27 12 8413996 | // tel: +27 12 8413996 | ||||
// Meraka Institute, CSIR | // Meraka Institute, CSIR | ||||
karoo) d d // but Karoodorp/Karoodoring/Karoodistrik, etc. | karoo) d d // but Karoodorp/Karoodoring/Karoodistrik, etc. | ||||
du (pliC du // duplikaat/dupliseer | du (pliC du // duplikaat/dupliseer | ||||
duvet d%uveI: // duvet/-s/duvetoortreksel, etc. | duvet d%uveI: // duvet/-s/duvetoortreksel, etc. | ||||
@) d (yster t_ // fix d sound, pause: bind-/brand-/vuurherd-/smeedyster... | |||||
.group de | .group de | ||||
de (flasi d%e@ // fix e sound: deflasie(beleid)/deflasionêr/deflasionisties | de (flasi d%e@ // fix e sound: deflasie(beleid)/deflasionêr/deflasionisties | ||||
blind) e (C@ @ // fix e sound in compounds like: blindekol/-mol/-wese | blind) e (C@ @ // fix e sound in compounds like: blindekol/-mol/-wese | ||||
_eend) e (CA @ // fix e sound: eendedam/-dans/-kuil/-pastei... | _eend) e (CA @ // fix e sound: eendedam/-dans/-kuil/-pastei... | ||||
_eend) e (lig e@ // but: eendelig/-e/-heid | _eend) e (lig e@ // but: eendelig/-e/-heid | ||||
@C) elys @leIs // fix e sound: beskuldigde-/debiteure-/dividende-/geskenkelys | |||||
_meid) e (C @ // fix e sound: meidekamer/-naaier/-praatjies | _meid) e (C @ // fix e sound: meidekamer/-naaier/-praatjies | ||||
pous) e (C @ // fix e sound: pousebrood/-klok/-tyd, etc. | pous) e (C @ // fix e sound: pousebrood/-klok/-tyd, etc. | ||||
_siel) e (@ @ // fix e sound: sielesmart/-troos/-wroeging... | _siel) e (@ @ // fix e sound: sielesmart/-troos/-wroeging... | ||||
nl) eer e@r // restore default stress: kernleerplan and compounds | nl) eer e@r // restore default stress: kernleerplan and compounds | ||||
rl) eer e@r // move default stress: agterleer/burgerleer/kelderleer/solderleer | rl) eer e@r // move default stress: agterleer/burgerleer/kelderleer/solderleer | ||||
sl) eer e@r // words containing sleer take default stress: seemsleer/volstruisleer | sl) eer e@r // words containing sleer take default stress: seemsleer/volstruisleer | ||||
ep) eer e@r // default stress: (harde-/wilde-)peer and compounds | |||||
Cep) eer e@r // default stress: (harde-/wilde-)peer and compounds, but (ge)groepeer | |||||
Cs) eer e@r // words containing seer (meaning pain) take default stress | Cs) eer e@r // words containing seer (meaning pain) take default stress | ||||
ks) eer 'e@r // annekseer/indekseer/lakseer/takseer and their compounds | ks) eer 'e@r // annekseer/indekseer/lakseer/takseer and their compounds | ||||
ss) eer 'e@r // but many words cont. sseer take stress: adresseer, etc. | ss) eer 'e@r // but many words cont. sseer take stress: adresseer, etc. | ||||
gas (ig x2A:s // long a and no pause: gasig/-e/-heid | gas (ig x2A:s // long a and no pause: gasig/-e/-heid | ||||
gauteng x2%aUtEN //Gauteng and compounds | gauteng x2%aUtEN //Gauteng and compounds | ||||
_) gh g | _) gh g | ||||
gh (_ k | |||||
gh (_ x2 // Tulbagh and similar | |||||
@) gheid x2eIt // traagheid/leegheid/droogheid/stugheid | @) gheid x2eIt // traagheid/leegheid/droogheid/stugheid | ||||
ghi (ta g%i // move default stress: ghitaar and compounds/ghitare | ghi (ta g%i // move default stress: ghitaar and compounds/ghitare | ||||
ght _^_EN | ght _^_EN | ||||
ge x2@ | ge x2@ | ||||
C) ge (_ g@ | C) ge (_ g@ | ||||
_) gebede x2@be@d@ // fix stress and vowel sounds: gebedeboek/-e/-tafel/-s | _) gebede x2@be@d@ // fix stress and vowel sounds: gebedeboek/-e/-tafel/-s | ||||
gegesel x2@x2e@s@l // fix middle e sound | |||||
K) gele (_ x2e@l@ // fix stress and e sound: (eier)gele | K) gele (_ x2e@l@ // fix stress and e sound: (eier)gele | ||||
_) geler x2e@l@r // stress and 1st e sound: geler/gelerig | _) geler x2e@l@r // stress and 1st e sound: geler/gelerig | ||||
gemel (d x2@m&l // fix e sound: bo-/bowe-/laas-/meergemeld/-e | gemel (d x2@m&l // fix e sound: bo-/bowe-/laas-/meergemeld/-e | ||||
_) ig (lo ig // fix i and g sounds: iglo(e) | _) ig (lo ig // fix i and g sounds: iglo(e) | ||||
@) ika (_ =%ik%a // logika/dinamika | @) ika (_ =%ik%a // logika/dinamika | ||||
&) ike (_S3 @k@ | &) ike (_S3 @k@ | ||||
&C) ikes (_ @k@s // fix penultimate e sound: (on)belangrikes | |||||
C) iking @k@N | C) iking @k@N | ||||
imbe (s @mb@ // fix stress: imbesiel/-e | imbe (s @mb@ // fix stress: imbesiel/-e | ||||
_) immer (@P5 'Im@r_ // immerafhanklik/immeringesteld, etc. | _) immer (@P5 'Im@r_ // immerafhanklik/immeringesteld, etc. | ||||
w) it (A It // fix i sound: eiwitafskeiding/witagtig/kwiteer/grondserwituut | w) it (A It // fix i sound: eiwitafskeiding/witagtig/kwiteer/grondserwituut | ||||
itali (a %it%al%i // move default stress: Italianer/-s and compounds | itali (a %it%al%i // move default stress: Italianer/-s and compounds | ||||
item itEm // fix e sound in item and compounds | item itEm // fix e sound in item and compounds | ||||
@) iteit it'eIt // stress on iteit endings | |||||
iteit it'eIt // stress on iteit endings: universiteit/outoriteit | |||||
@C) itis (_ 'it@s // stress: many diseases ending in -itis | @C) itis (_ 'it@s // stress: many diseases ending in -itis | ||||
C) iveer if'e@r // always takes stress | C) iveer if'e@r // always takes stress | ||||
C) iver (A if'e@r // always takes stress: aktiverende/motivering | C) iver (A if'e@r // always takes stress: aktiverende/motivering | ||||
.group ka | .group ka | ||||
@A) kaa (t k'A: // advokaatstoga/fabrikaat/sertifikaatjie/triplikaat and many similar | @A) kaa (t k'A: // advokaatstoga/fabrikaat/sertifikaatjie/triplikaat and many similar | ||||
@) kate (_ k'A:t@ // plurals of some of the above | @) kate (_ k'A:t@ // plurals of some of the above | ||||
advo) kate (C 'kA:t@ // fix e sound and stress: advokatekamer/s/-latyn | |||||
kabare (t k%ab%arE // fix stress and 1st a sound: kabaret/-te and compounds | kabare (t k%ab%arE // fix stress and 1st a sound: kabaret/-te and compounds | ||||
kabel kA:b@l //stress and e sound | kabel kA:b@l //stress and e sound | ||||
kabeljou kab@lj'@U //kabeljou and compounds | kabeljou kab@lj'@U //kabeljou and compounds | ||||
manier m@ni:r //manier and compounds | manier m@ni:r //manier and compounds | ||||
manifes manifEs // fix vowel sounds: manifes and compounds/manifestasie/manifesteer | manifes manifEs // fix vowel sounds: manifes and compounds/manifestasie/manifesteer | ||||
mani (ku m%an%i // fix stress and a sound: manikuur and compounds | mani (ku m%an%i // fix stress and a sound: manikuur and compounds | ||||
manilla (C m%anIl%a // fix stress and a sounds: manillakoevert/-papier, etc. | |||||
manipu m%an%ip%y // fix stress and a sound: manipuleer/manipulering/manipulasie | manipu m%an%ip%y // fix stress and a sound: manipuleer/manipulering/manipulasie | ||||
manji (fie m%anj@ // fix stress and i sound: manjifiek/-e | manji (fie m%anj@ // fix stress and i sound: manjifiek/-e | ||||
man (moe m%an // move default stress: manmoedig/-e/-heid | man (moe m%an // move default stress: manmoedig/-e/-heid | ||||
ng (eeR Nx2 // diftongeer/gedistingeerde/rangeer and compounds | ng (eeR Nx2 // diftongeer/gedistingeerde/rangeer and compounds | ||||
ngees nx2e@s // split n/g: leuen-/span-/sportman-/wengees | ngees nx2e@s // split n/g: leuen-/span-/sportman-/wengees | ||||
e) n (goeC n // split ng: lakengoed/-goeters and similar | e) n (goeC n // split ng: lakengoed/-goeters and similar | ||||
n (_g N | |||||
ng (ent Nx2 // kontingent/tangent and derivatives | ng (ent Nx2 // kontingent/tangent and derivatives | ||||
CA) nger N@r // compounds of vinger/slinger; hangertjie/hongersnood/langeraad/swangerskap/tengerste | CA) nger N@r // compounds of vinger/slinger; hangertjie/hongersnood/langeraad/swangerskap/tengerste | ||||
@) nges (_ N@s // banges/langes/dinges | @) nges (_ N@s // banges/langes/dinges | ||||
@) otomie (_N %o@t%um'i // fix o sounds and stress of medical terms: laparotomie, etc. | @) otomie (_N %o@t%um'i // fix o sounds and stress of medical terms: laparotomie, etc. | ||||
@) otomie (ë %o@t%um'i: // fix o sounds and stress of plurals of medical terms: leukotomieë/nefrotomieë, etc. | @) otomie (ë %o@t%um'i: // fix o sounds and stress of plurals of medical terms: leukotomieë/nefrotomieë, etc. | ||||
_) outo (@P4 @Utu // fix stress and o sound: outomaat/-mate/-maties/outomobiel, etc. | _) outo (@P4 @Utu // fix stress and o sound: outomaat/-mate/-maties/outomobiel, etc. | ||||
outo (psie %@UtO // fix stress and O sound: outopsie/-s and compounds | |||||
out (okra %@Ut // to handle outokraat and derivatives | out (okra %@Ut // to handle outokraat and derivatives | ||||
oux 'u //in surnames like tredoux, leroux etc. | oux 'u //in surnames like tredoux, leroux etc. | ||||
_) o (va@ %o@ // move default stress: ovaal/ovale/ovaalvormig | _) o (va@ %o@ // move default stress: ovaal/ovale/ovaalvormig | ||||
pale (stA p%al@ // fix stress and a sound: Palestina/Palestyn and derivatives | pale (stA p%al@ // fix stress and a sound: Palestina/Palestyn and derivatives | ||||
pale (t p%alE // fix stress and a sound: palet/-te and compounds | pale (t p%alE // fix stress and a sound: palet/-te and compounds | ||||
palin (dro p%al@n // fix stress and a sound: palindroom/-drome/-dromies | palin (dro p%al@n // fix stress and a sound: palindroom/-drome/-dromies | ||||
palissade p%al%isA:d@ // fix a and i sounds and stress: palissade and compounds | |||||
_) palja (K palj''a // fix stress on -jas: (ge)paljas/paljasse/paljasagtig/-e | _) palja (K palj''a // fix stress on -jas: (ge)paljas/paljasse/paljasagtig/-e | ||||
pal (miet p%al // move default stress: palmiet and compounds | pal (miet p%al // move default stress: palmiet and compounds | ||||
panado p@nA:d@U: // fix stress and vowel sounds: panado/-'s | panado p@nA:d@U: // fix stress and vowel sounds: panado/-'s | ||||
per (so p@r // persoon/persone | per (so p@r // persoon/persone | ||||
pers (om p&rs_ // fix e sound, pause: persombudsman/-ne and compounds | pers (om p&rs_ // fix e sound, pause: persombudsman/-ne and compounds | ||||
perso (neel p%&rs%u // personeel and compounds | perso (neel p%&rs%u // personeel and compounds | ||||
perspex pIrspEks // prevent English translation of compounds: perspexvenster/-ruit | |||||
pervers p@rf&rs // pervers/perversie | pervers p@rf&rs // pervers/perversie | ||||
pervert p@rf&rt // fix stress and e sounds: pervert/-e and compounds | pervert p@rf&rt // fix stress and e sounds: pervert/-e and compounds | ||||
runder) pes pEs // fix e sound: runderpes and compounds | runder) pes pEs // fix e sound: runderpes and compounds | ||||
@@@) s (_S1 s // to correctly handle plural s | @@@) s (_S1 s // to correctly handle plural s | ||||
i) s (_ s // exceptions to rule: @@@) s (_S1 s | i) s (_ s // exceptions to rule: @@@) s (_S1 s | ||||
sahara sah'A:ra // fix stress and a sound: Sahara/-woestyn and similar compounds | sahara sah'A:ra // fix stress and a sound: Sahara/-woestyn and similar compounds | ||||
saldanha s%aldan%a // Saldanha(baai) | |||||
sangere (K s%aN@rE //sangeres and compounds: opera-/popsangeres | sangere (K s%aN@rE //sangeres and compounds: opera-/popsangeres | ||||
o) s (_ s // exceptions to rule: @@@) s (_S1 s | o) s (_ s // exceptions to rule: @@@) s (_S1 s | ||||
u) s (_ s // exceptions to rule: @@@) s (_S1 s | u) s (_ s // exceptions to rule: @@@) s (_S1 s | ||||
slag (off slax2_ // short a sound, insert pause: misdaadslagoffer and similar compounds | slag (off slax2_ // short a sound, insert pause: misdaadslagoffer and similar compounds | ||||
sla (vin sl%a // move default stress and shorten a sound: slavin/-ne and compounds | sla (vin sl%a // move default stress and shorten a sound: slavin/-ne and compounds | ||||
sla (we slA: // fix stress and a sound: slawearbeid/-er, etc. | sla (we slA: // fix stress and a sound: slawearbeid/-er, etc. | ||||
slawe (k slA:v@ // fix e sound: slawe(ketting/-kind(ers)/-kos | |||||
slop (emmer slOp_ // fix o sound and insert pause: slopemmer/-s | slop (emmer slOp_ // fix o sound and insert pause: slopemmer/-s | ||||
@) sering s'e@r@N // analisering/kategorisering | @) sering s'e@r@N // analisering/kategorisering | ||||
@) ses (_ s@s // fix 2 slb. words ending in ses | @) ses (_ s@s // fix 2 slb. words ending in ses | ||||
spesi (a sp%ES%i // spesiaal/spesiale/spesialis | spesi (a sp%ES%i // spesiaal/spesiale/spesialis | ||||
spesialis (A spESialis | spesialis (A spESialis | ||||
spesialis spESal'Is | spesialis spESal'Is | ||||
spesialis (een spESal'Is_ // fix stress, paus: spesialiseenheid/-eenhede | |||||
spesi (f sp%Es%I // spesifiek/spesifiseer | spesi (f sp%Es%I // spesifiek/spesifiseer | ||||
spine (t sp%inE // move default stress: spinet/-te and compounds | spine (t sp%inE // move default stress: spinet/-te and compounds | ||||
_) sub (a sWb_ // subagent/subartikel/subatomies, etc. | _) sub (a sWb_ // subagent/subartikel/subatomies, etc. | ||||
struktu (rerAn str%Wkt%y // fix stress: (her)strukturering(skoste)/strukturerende, etc. | struktu (rerAn str%Wkt%y // fix stress: (her)strukturering(skoste)/strukturerende, etc. | ||||
studen (t st%ydEn // fix stress: student/regstudent/studentesentrum, etc. | studen (t st%ydEn // fix stress: student/regstudent/studentesentrum, etc. | ||||
stu (de st%y // fix stress and e sound: bestuderend/bestudering | stu (de st%y // fix stress and e sound: bestuderend/bestudering | ||||
_) stuurdere (KK st%yrd@rE // fix stress and e sound: bestuurderes/-se/-sie | |||||
styfge (@P6 st'eIfx2@ // fix e sound: styfgewen/-de | styfge (@P6 st'eIfx2@ // fix e sound: styfgewen/-de | ||||
verf (@ f&rf // verfkwas/-voorraad/-emmer and similar | verf (@ f&rf // verfkwas/-voorraad/-emmer and similar | ||||
_) verf (lou f@rf // verflou/-ing | _) verf (lou f@rf // verflou/-ing | ||||
_) verf (o f@rf // verfoei(lik)/verfomfaai/verfoes, etc.; see rule: verf | _) verf (o f@rf // verfoei(lik)/verfomfaai/verfoes, etc.; see rule: verf | ||||
verf (raai f@rf // fix e sound and stress: verfraai(ing) | |||||
verf (rom f@rf // verfrommel/-de/-ing; see rule: verf | verf (rom f@rf // verfrommel/-de/-ing; see rule: verf | ||||
verf f&rf | verf f&rf | ||||
_) vergesog f'&:r;x2@sOx2 | _) vergesog f'&:r;x2@sOx2 | ||||
nd) w v // aandwandeling/brandweer/eindwedstryd/grondwet/grondwal | nd) w v // aandwandeling/brandweer/eindwedstryd/grondwet/grondwal | ||||
Cod) w v // fix w sound: godwelgevallig/godweet/godwees | Cod) w v // fix w sound: godwelgevallig/godweet/godwees | ||||
k) w w | k) w w | ||||
werk) week ve@k // fix last w sound: (vyf-/sesdag)werkweek | |||||
k) w (erC v // fix w sound: wrakwerf/-werwe | k) w (erC v // fix w sound: wrakwerf/-werwe | ||||
volks) w v // fix w sound: Volkswagen/volkswelsyn/-weldoener, etc. | volks) w v // fix w sound: Volkswagen/volkswelsyn/-weldoener, etc. | ||||
k) w (And v // fix w sound: buikwand/rukwinde | k) w (And v // fix w sound: buikwand/rukwinde | ||||
yd) w v // fix w sound: sluittydwerk/(wa)wydwakker | yd) w v // fix w sound: sluittydwerk/(wa)wydwakker | ||||
C) w (eerder v // fix w sound: insek-/muskiet-/reuk-/sweetweerder and similar | C) w (eerder v // fix w sound: insek-/muskiet-/reuk-/sweetweerder and similar | ||||
s) w (eerder w // but: eed-/geesbe-/saamsweerder and similar | s) w (eerder w // but: eed-/geesbe-/saamsweerder and similar | ||||
luk) wens ve~ns // fix w sound: gelukwens(brief...)/gelukwensing, etc. | |||||
w (ese_ v //words ending in wese | w (ese_ v //words ending in wese | ||||
wed (ren vEt // fix e and d sounds: (perde)wedren and other compounds | wed (ren vEt // fix e and d sounds: (perde)wedren and other compounds | ||||
@C) w (eë v // fix w sound: duikweë/staatsweë/uitweë, etc. | @C) w (eë v // fix w sound: duikweë/staatsweë/uitweë, etc. | ||||
welbehaaglik v%&lb@hA:x2l@k // move default stress: welbehaaglik/-e/-er/-ste | welbehaaglik v%&lb@hA:x2l@k // move default stress: welbehaaglik/-e/-er/-ste | ||||
_) wel (edel v%&l_ // fix e sound and stress, insert pause: weledel/-e | _) wel (edel v%&l_ // fix e sound and stress, insert pause: weledel/-e | ||||
welf (_ v&lf // fix e sound: omwelf/oorwelf | welf (_ v&lf // fix e sound: omwelf/oorwelf | ||||
_) wel (op v&l_ // fix e sound, pause: welopgevoede/-opgeleide, etc. | |||||
wel (skape v%&l // move default stress: welskape/-nheid | wel (skape v%&l // move default stress: welskape/-nheid | ||||
wel (spreken v%&l // move default stress: welsprekend/-e | wel (spreken v%&l // move default stress: welsprekend/-e | ||||
@) wendig v'End@x2 // inwendig/noodwendig/uitwendig | @) wendig v'End@x2 // inwendig/noodwendig/uitwendig | ||||
&) wene (_ v@n@ // fix penultimate e sound: afgestorwene/-s/ingeskrewene/verdorwene/verhewene | &) wene (_ v@n@ // fix penultimate e sound: afgestorwene/-s/ingeskrewene/verdorwene/verhewene | ||||
fees) wens ve~ns // fix w and e sounds: kersfeeswens/-e | fees) wens ve~ns // fix w and e sounds: kersfeeswens/-e | ||||
luk) wens ve~ns // fix w sound: gelukwens(brief...)/gelukwensing, etc. | |||||
A) wer (AA v@r // fix e sound: beyweraar/keweruitroeiing/nyweraar/oewereienaar | A) wer (AA v@r // fix e sound: beyweraar/keweruitroeiing/nyweraar/oewereienaar | ||||
ge) were ve@r@ // fix e sound in compounds ending in gewere | ge) were ve@r@ // fix e sound in compounds ending in gewere | ||||
werk (stelli v%&rk // fix stress: bewerkstellig and derivatives | werk (stelli v%&rk // fix stress: bewerkstellig and derivatives |
Neuseeland $2 | Neuseeland $2 | ||||
Rwanda rU'andA: | Rwanda rU'andA: | ||||
Sri sr,i: | Sri sr,i: | ||||
Tom tOm | |||||
Tim tIm | |||||
Tom tOm $only | |||||
Tim tIm $only | |||||
_) deme de:mE | _) deme de:mE | ||||
demo (g de:mo: | demo (g de:mo: | ||||
demo (k de:mo: | demo (k de:mo: | ||||
design _^_EN | |||||
design (_ d%IzaIn | |||||
dge (_ _^_EN | dge (_ _^_EN | ||||
_) dia d,i:a | _) dia d,i:a | ||||
_) diver d%i:vEr | _) diver d%i:vEr |
Phonemes which are used in the *_rules and *_list files | Phonemes which are used in the *_rules and *_list files | ||||
Dictionary af_dict 2011-11-22 | |||||
Dictionary af_dict 2013-09-22 | |||||
& &: 3: @ @- @L @U a | & &: 3: @ @- @L @U a | ||||
A: aI AI aU A~ E e: e@ | A: aI AI aU A~ E e: e@ | ||||
v w x z Z | v w x z Z | ||||
Dictionary de_dict 2013-04-27 | |||||
Dictionary de_dict 2013-09-22 | |||||
3 @ @- a A A: aI aU | 3 @ @- a A A: aI aU | ||||
A~ E E2 E: e: EI i I | A~ E E2 E: e: EI i I | ||||
ts v x z | ts v x z | ||||
Dictionary en_dict 2013-06-11 | |||||
Dictionary en_dict 2013-09-08 | |||||
0 0# 3 3: @ @- @2 @5 | 0 0# 3 3: @ @- @2 @5 | ||||
@L a a# A: A@ aa aI aI3 | @L a a# A: A@ aa aI aI3 | ||||
tS v z Z z2 z3 | tS v z Z z2 z3 | ||||
Dictionary ga_dict 2013-05-18 | |||||
Dictionary ga_dict 2013-09-21 | |||||
0 0# @ a a# A: aI aI# | 0 0# @ a a# A: aI aI# | ||||
aU aU# e E E# e: eI i | aU aU# e E E# e: eI i | ||||
Z | Z | ||||
Dictionary grc_dict 2008-03-03 | |||||
Dictionary grc_dict 2013-07-25 | |||||
a aI aU e E EI eU EU | a aI aU e E EI eU EU | ||||
i o O oI OI OU u y | i o O oI OI OU u y | ||||
t# t. t.# v w x z | t# t. t.# v w x z | ||||
Dictionary hu_dict 2013-06-10 | |||||
Dictionary hu_dict 2013-09-21 | |||||
a A a: e E e: i i: | a A a: e E e: i i: | ||||
o o: u u: Y y y: Y: | o o: u u: Y y y: Y: | ||||
t.# v w x z | t.# v w x z | ||||
Dictionary nl_dict 2013-06-11 | |||||
Dictionary nl_dict 2013-09-23 | |||||
8 @ @- a A a: A~ e | 8 @ @- a A a: A~ e | ||||
E e# E2 e: EI eU i I | E e# E2 e: EI eU i I | ||||
x z Z | x z Z | ||||
Dictionary sl_dict 2013-06-10 | |||||
Dictionary sl_dict 2013-07-02 | |||||
@ @- a e E E# i o | @ @- a e E E# i o | ||||
O o+ u y | O o+ u y | ||||
S s. S; sx t v w z | S s. S; sx t v w z | ||||
Dictionary sw_dict 2013-06-04 | |||||
Dictionary sw_dict 2013-06-22 | |||||
@- a a/ e i m- n- N- | |||||
o u | |||||
@- a e i m- n- N- o | |||||
u | |||||
* : b d D f g h | * : b d D f g h | ||||
j J k l m n N n^ | j J k l m n N n^ | ||||
v w x z | v w x z | ||||
Dictionary ta_dict 2013-05-18 | |||||
Dictionary ta_dict 2013-09-23 | |||||
a a: aI aU e E e: i | a a: aI aU e E e: i | ||||
I i: o o: u U u2 u: | I i: o o: u U u2 u: | ||||
b c d f g h j k | b c d f g h j k | ||||
l m n N p r s t | l m n N p r s t | ||||
tS v w z | tS v w z | ||||
Dictionary as_dict 2013-09-21 | |||||
& a a~ e e~ i i~ l- | |||||
o O o: O~ o~ r- u u~ | |||||
V | |||||
: b b# d d# d. d.# dZ | |||||
f g g# h H j J J# | |||||
k k# l m n N n. p | |||||
r r. s S t t# t. t.# | |||||
tS tS# v w ~ | |||||
Dictionary gu_dict 2013-09-17 | |||||
@ @- @2 @3 a a: aI aU | |||||
a~ e E e: E: e~ E~ i | |||||
I i: i~ l- o O o: O: | |||||
O~ o~ u U u: u~ V | |||||
* - : ; b b# c c# | |||||
d d# d. d.# f g g# h | |||||
H j J J# k k# l l. | |||||
m n N n. n^ p p# Q | |||||
q r r. s S s. t t# | |||||
t. t.# v w x z |
// ?7 Scottish | // ?7 Scottish | ||||
// ?8 Use full vowel, not schwa in some word endings | // ?8 Use full vowel, not schwa in some word endings | ||||
// $alt1 use strong ending (-an, -ance, -ative, -table, -inal, -ier) | |||||
// $alt1 use strong ending (-an, -ance, -ative, -table, -inal, -ier -ored) | |||||
// $alt2 use weak ending (ard, ate, ery, ess, ile, men, on) | // $alt2 use weak ending (ard, ate, ery, ess, ile, men, on) | ||||
// $alt3 use weak first vowel, a->[a#], e->[@], o->[0#] | // $alt3 use weak first vowel, a->[a#], e->[@], o->[0#] | ||||
// $alt4 separate 'h', not 'th' | // $alt4 separate 'h', not 'th' | ||||
ֹ o | ֹ o | ||||
ֻ u | ֻ u | ||||
ּ d'agES | ּ d'agES | ||||
U+5c1 SInd0t_ | |||||
U+5c2 sInd0t_ | |||||
// phonetic modifiers | // phonetic modifiers | ||||
// ABBREVIATIONS | // ABBREVIATIONS | ||||
//************** | //************** | ||||
aaa $abbrev $allcaps | |||||
abc $abbrev | abc $abbrev | ||||
ac $abbrev | ac $abbrev | ||||
adf $abbrev | adf $abbrev | ||||
adze adz | adze adz | ||||
aegis i:dZIs | aegis i:dZIs | ||||
aerate e@r'eIt | aerate e@r'eIt | ||||
aerogel e@roUdZEl | |||||
aether i:T@ | aether i:T@ | ||||
afar a#fA@ | afar a#fA@ | ||||
affirmation af3m'eIS@n | affirmation af3m'eIS@n | ||||
appal a#pO:l | appal a#pO:l | ||||
apparatus ap@r'eIt@s | apparatus ap@r'eIt@s | ||||
?3 apparatus ap@r'at@s | ?3 apparatus ap@r'at@s | ||||
appellate a#pEl@t | |||||
apprentice a#prEnt2Is | apprentice a#prEnt2Is | ||||
approximate a#pr0ksIm@t $only | approximate a#pr0ksIm@t $only | ||||
approximate a#pr0ksImeIt $verb | approximate a#pr0ksImeIt $verb | ||||
arch A@tS | arch A@tS | ||||
arches A@tSI#z | arches A@tSI#z | ||||
archimedes A@kIm'i:di:z | archimedes A@kIm'i:di:z | ||||
archiso A@tS'aIsoU | |||||
archway $1 | archway $1 | ||||
arena a#ri:n@ | arena a#ri:n@ | ||||
argon A@g0n | argon A@g0n | ||||
blockade bl0k'eId | blockade bl0k'eId | ||||
blouse blaUz | blouse blaUz | ||||
bluest blu:@st | bluest blu:@st | ||||
bluish blu:IS | |||||
blurry bl3:rI | blurry bl3:rI | ||||
?5 blurry blVRrI | ?5 blurry blVRrI | ||||
boing bOIN | boing bOIN | ||||
chorizo tSOr'i:zoU | chorizo tSOr'i:zoU | ||||
christmas krIsm@s | christmas krIsm@s | ||||
chromosome kroUm@soUm | chromosome kroUm@soUm | ||||
chrysalis krIs@lIs | |||||
ciao tSaU | ciao tSaU | ||||
cigar sI2gA@ | cigar sI2gA@ | ||||
cigarette sIg@'rEt | cigarette sIg@'rEt | ||||
cleanser klEnz3 | cleanser klEnz3 | ||||
?!3 clerk klA@k | ?!3 clerk klA@k | ||||
cliche kli:SeI | cliche kli:SeI | ||||
?3 cliche kli:S'eI | |||||
cliched kli:S'eId | |||||
?3 cliche kli:S'eI | |||||
clientele $2 | clientele $2 | ||||
clitoris klIt3rI#s | clitoris klIt3rI#s | ||||
close kloUs $only | close kloUs $only | ||||
constitute $1 | constitute $1 | ||||
construct $1 $onlys | construct $1 $onlys | ||||
construct $verb | construct $verb | ||||
consummate $1 | |||||
contemplative $2 | contemplative $2 | ||||
content $1 $onlys | content $1 $onlys | ||||
content $verb $past | content $verb $past | ||||
convolute k0nv@l'u:t | convolute k0nv@l'u:t | ||||
coop ku:p | coop ku:p | ||||
cooper ku:p3 | cooper ku:p3 | ||||
coordinate koU'O:dI2neIt $verb | |||||
coordinate koU'O@dI2neIt $verb | |||||
copier k0pi@3 | copier k0pi@3 | ||||
copilot koUpaIl@t | copilot koUpaIl@t | ||||
coral k0r@L | coral k0r@L | ||||
decolletage deIk0lt'A:Z | decolletage deIk0lt'A:Z | ||||
decor deIkO@ | decor deIkO@ | ||||
?3 decor deIk'O@ | ?3 decor deIk'O@ | ||||
decorative dEkr@tIv | |||||
decorative dEk@r@tIv | |||||
decoy di:kOI | decoy di:kOI | ||||
decry dI2kraI | decry dI2kraI | ||||
defect di:fEkt | defect di:fEkt | ||||
diaper daIp3 | diaper daIp3 | ||||
diaphanous daI'af@n@s | diaphanous daI'af@n@s | ||||
diaspora daI'asp@r@ | diaspora daI'asp@r@ | ||||
dieback daIbak | |||||
diehard daIhA@d | diehard daIhA@d | ||||
dielectric daI@l'EktrIk | dielectric daI@l'EktrIk | ||||
diesel di:z@L | diesel di:z@L | ||||
evit EvI2t // inevitable | evit EvI2t // inevitable | ||||
exalt Egz'0lt | exalt Egz'0lt | ||||
execute EksI2kju:t // not $2 | execute EksI2kju:t // not $2 | ||||
executable $3 | |||||
exile $1 | exile $1 | ||||
exodus Eks@d@s | exodus Eks@d@s | ||||
expedite Eksp@daIt // expedited | expedite Eksp@daIt // expedited | ||||
idly aIdlI | idly aIdlI | ||||
ignoramus Igno@r'eIm@s | ignoramus Igno@r'eIm@s | ||||
illiterate $alt2 | illiterate $alt2 | ||||
imagery ImIdZri | |||||
imagine I2madZI2n | imagine I2madZI2n | ||||
impedance Imp'i:d@ns | impedance Imp'i:d@ns | ||||
imperative Imp'Er@tIv | imperative Imp'Er@tIv | ||||
iron aI3n | iron aI3n | ||||
irony aIr@nI | irony aIr@nI | ||||
isosceles aIs'0s@li:z | isosceles aIs'0s@li:z | ||||
?3 issuance ISu:@ns | |||||
ja jA: | ja jA: | ||||
jagged dZagI#d | jagged dZagI#d | ||||
kowtow kaUt2aU | kowtow kaUt2aU | ||||
la ,la $only | la ,la $only | ||||
la $abbrev $allcaps | |||||
(la vie) la||v'i: | (la vie) la||v'i: | ||||
laboratory la#b'0r@trI | laboratory la#b'0r@trI | ||||
?3 laboratory labr@tO:ri | ?3 laboratory labr@tO:ri | ||||
lunchroom lVntS||ru:m | lunchroom lVntS||ru:m | ||||
luxury lVkS3ri | luxury lVkS3ri | ||||
lychee li:tSi: | lychee li:tSi: | ||||
lyin laIIn | |||||
macabre m@kA:br@ | macabre m@kA:br@ | ||||
macadamia mak@d'eImi@ | macadamia mak@d'eImi@ | ||||
phoenix fi:nIks | phoenix fi:nIks | ||||
photographer f@t'0gr@f@ | photographer f@t'0gr@f@ | ||||
photography f@t'0gr@fi | photography f@t'0gr@fi | ||||
photolysis foUt'0l@sIs | |||||
piano pI'anoU | piano pI'anoU | ||||
pecan pI#kA:n | pecan pI#kA:n | ||||
piecemeal p'i:sm,i:l | piecemeal p'i:sm,i:l | ||||
reindeer reIndi@3 | reindeer reIndi@3 | ||||
rekey r,i:k'i: | rekey r,i:k'i: | ||||
relative rEl@tIv | relative rEl@tIv | ||||
relay ri:leI | |||||
relic rElIk | relic rElIk | ||||
relish rElI2S | relish rElI2S | ||||
rely rI2laI | rely rI2laI | ||||
sealion si:laI@n | sealion si:laI@n | ||||
seance seI0ns | seance seI0ns | ||||
secant si:k@nt | secant si:k@nt | ||||
seconded sEk'0ndI#d | |||||
seconded s@k0ndI#d | |||||
secondment s@k0ndm@nt | |||||
secrecy si:kr@si | secrecy si:kr@si | ||||
secret si:kr@t | secret si:kr@t | ||||
secrete sI2kri:t | |||||
secretion sI2kri:S@n | |||||
secretive si:kr@tIv | secretive si:kr@tIv | ||||
secretary sEkr@trI | secretary sEkr@trI | ||||
sedan sI2dan | sedan sI2dan | ||||
segue sEgweI | segue sEgweI | ||||
separate sEp@-r@t | separate sEp@-r@t | ||||
separate sEp3reIt $verb | separate sEp3reIt $verb | ||||
semaphored $alt1 | |||||
semen si:m@n | semen si:m@n | ||||
?3 semi sEmaI | ?3 semi sEmaI | ||||
semibreve $1 | semibreve $1 | ||||
sewn soUn | sewn soUn | ||||
sex sEks // sexism | sex sEks // sexism | ||||
several sEvr@L | several sEvr@L | ||||
severest s@vi@r@st | |||||
shallow SaloU | shallow SaloU | ||||
shampoo $2 | shampoo $2 | ||||
shepherd SEp@d | shepherd SEp@d | ||||
sincerest sIns'i@r@st | sincerest sIns'i@r@st | ||||
sinew sInju: | sinew sInju: | ||||
sinus saIn@s | sinus saIn@s | ||||
siphon $alt2 | |||||
sir s,3: $only | sir s,3: $only | ||||
?5 sir s,VR $only | ?5 sir s,VR $only | ||||
site saIt // for sited | site saIt // for sited | ||||
sorbet sO@beI | sorbet sO@beI | ||||
soyabean sOI@bi:n | soyabean sOI@bi:n | ||||
spaghetti spa#gEti | spaghetti spa#gEti | ||||
spasm spas@m | |||||
specific sp@sIfIk | specific sp@sIfIk | ||||
specimen spEsI2m@n | specimen spEsI2m@n | ||||
spraycan spreIkan | spraycan spreIkan | ||||
troubadour tru:b@do@ | troubadour tru:b@do@ | ||||
truely tru:lI $verbf | truely tru:lI $verbf | ||||
truest tru:@st | truest tru:@st | ||||
tryin traIIn | |||||
tryst trIst | tryst trIst | ||||
tudor tju:d3 | tudor tju:d3 | ||||
turntable $alt1 | turntable $alt1 | ||||
unaware Vn@w'e@ | unaware Vn@w'e@ | ||||
uncle VNk@L | uncle VNk@L | ||||
undeny VndIn'aI | undeny VndIn'aI | ||||
undercarriage $1 | |||||
underground $1 $noun | underground $1 $noun | ||||
underling $1 | underling $1 | ||||
underlings Vnd3lINz | underlings Vnd3lINz | ||||
violin $2 | violin $2 | ||||
viral vaI3r@L | viral vaI3r@L | ||||
virginal $alt1 | virginal $alt1 | ||||
(vis à vis) vi:za#v'i: | |||||
(vis a vis) vi:za#v'i: | |||||
visa vi:z@ | visa vi:z@ | ||||
vitalis vaIt'alI#s | |||||
vitamin vIt@mI#n | vitamin vIt@mI#n | ||||
?3 vitamin vaIt@mI#n | ?3 vitamin vaIt@mI#n | ||||
vitriol vItri:@l | vitriol vItri:@l | ||||
Albuquerque alb@k3:ki | Albuquerque alb@k3:ki | ||||
Algiers $2 | Algiers $2 | ||||
Altura O:lt'U@r@ | Altura O:lt'U@r@ | ||||
?3 Amazon ama#z0n | |||||
Amman a#m'A:n | Amman a#m'A:n | ||||
Andes andi:z | Andes andi:z | ||||
Angeles andZ@li:s | Angeles andZ@li:s | ||||
Buenos bweIn0s | Buenos bweIn0s | ||||
Burundi bUr'Undi | Burundi bUr'Undi | ||||
Brazil $alt3 | Brazil $alt3 | ||||
Brunei bru:n'aI | |||||
Cadiz $alt3 | Cadiz $alt3 | ||||
Cairo kaIroU | Cairo kaIroU | ||||
Calcutta $2 | Calcutta $2 | ||||
Nevada nI2vA:d@ | Nevada nI2vA:d@ | ||||
?3 Nevada nI2vad@ | ?3 Nevada nI2vad@ | ||||
Newfoundland nju:f@ndla#nd | Newfoundland nju:f@ndla#nd | ||||
Nineveh nInIv@ | |||||
Noumea nu:m'eI@ | Noumea nu:m'eI@ | ||||
Oahu oU'A:hu: | Oahu oU'A:hu: | ||||
Oklahoma oUkla#h'oUm@ | Oklahoma oUkla#h'oUm@ | ||||
Peru p@ru: | Peru p@ru: | ||||
Philippine fIlI2pi:n | Philippine fIlI2pi:n | ||||
Philipine fIlI2pi:n // misspell | Philipine fIlI2pi:n // misspell | ||||
Phnom pn0m | |||||
Polish poUlIS $capital $only | Polish poUlIS $capital $only | ||||
Portugal po@tS@g@L | Portugal po@tS@g@L | ||||
Portuguese po@tS@g'i:z | Portuguese po@tS@g'i:z | ||||
Utah ju:t2A: | Utah ju:t2A: | ||||
?3 Utah ju:t2O | ?3 Utah ju:t2O | ||||
Utrecht ju:trECt | Utrecht ju:trECt | ||||
Valencia $alt3 | |||||
Vancouver $2 | Vancouver $2 | ||||
Vegas veIg@s | Vegas veIg@s | ||||
Vermont $2 | Vermont $2 | ||||
Angelika $2 | Angelika $2 | ||||
Anita $alt3 | Anita $alt3 | ||||
Annamaria an@ma#r'i:@ | Annamaria an@ma#r'i:@ | ||||
Anthony ant@ni | |||||
?!3 Anthony ant@ni | |||||
Anton ant0n | Anton ant0n | ||||
Aoife i:f@ | Aoife i:f@ | ||||
Aoiffe i:f@ | Aoiffe i:f@ | ||||
Connie k0ni | Connie k0ni | ||||
Connor k0n3 | Connor k0n3 | ||||
Conrad $1 | Conrad $1 | ||||
Corinne k@ri:n | |||||
Crichton kraIt@n | Crichton kraIt@n | ||||
Curtis k3:tI#s | Curtis k3:tI#s | ||||
?5 Curtis kVRtI#s | ?5 Curtis kVRtI#s | ||||
Cyrus saIr@s | |||||
Dana deIn@ | Dana deIn@ | ||||
Daphne dafni | Daphne dafni | ||||
Darryl dar@L | Darryl dar@L | ||||
Michelle mI2SEl | Michelle mI2SEl | ||||
Miguel mi:Q'El | Miguel mi:Q'El | ||||
Mildred mIldrI2d | Mildred mIldrI2d | ||||
Mimi mi:mi | |||||
Mindy mIndi | Mindy mIndi | ||||
Minerva mI2n3:v@ | Minerva mI2n3:v@ | ||||
Mirabel mIr@bEl | Mirabel mIr@bEl | ||||
Ferguson f3:g@s@n | Ferguson f3:g@s@n | ||||
Fleming flEmIN | Fleming flEmIN | ||||
Folger foUldZ3 | Folger foUldZ3 | ||||
Gallagher gal@g3 | |||||
Genghis dZENgIs | Genghis dZENgIs | ||||
Gibson gIbs@n | Gibson gIbs@n | ||||
Guinness gInIs | Guinness gInIs |
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 | |||||
alkali alk@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 | ||||
_) as (trolog a#s | _) as (trolog a#s | ||||
_) as (trono a#s | _) as (trono a#s | ||||
&) as (ty_ a#s | &) as (ty_ a#s | ||||
ass (ym as | |||||
_) as (ym eIs | |||||
purch) as (e Is | purch) as (e Is | ||||
ph) ase (_ eIz | ph) ase (_ eIz | ||||
r) ase (_ eIz | r) ase (_ eIz | ||||
be (see bI2 | be (see bI2 | ||||
be (sie bI2 | be (sie bI2 | ||||
_) be (sto bI2 | _) be (sto bI2 | ||||
_) bestse (ll bEsts'E | |||||
_) beta b,i:t@ | _) beta b,i:t@ | ||||
?3 _) beta b,eIt@ | ?3 _) beta b,eIt@ | ||||
_) be (th bE | _) be (th bE | ||||
_ta) ch k | _ta) ch k | ||||
ta) ch tS | ta) ch tS | ||||
sta) ch S | sta) ch S | ||||
e) ch (o k | |||||
_e) ch (o k | |||||
bron) ch k | bron) ch k | ||||
ch (ute S | ch (ute S | ||||
ch (ure S | ch (ure S | ||||
_) co (con k,oU | _) co (con k,oU | ||||
_) co (eCP2 k,oU | _) co (eCP2 k,oU | ||||
_) coe (l si: | _) coe (l si: | ||||
_) co (g k0 | |||||
_) cogno k0gn@ | |||||
co (hab k%oU | co (hab k%oU | ||||
co (llab k@ | co (llab k@ | ||||
co (llap k@ | co (llap k@ | ||||
_) deni (a dI2naI | _) deni (a dI2naI | ||||
deni (tri d%i:naI | deni (tri d%i:naI | ||||
_) de (no dI2 | _) de (no dI2 | ||||
_) de (nu dI2 | |||||
_) de (o d%i: | _) de (o d%i: | ||||
_) de (p@ dI2 | _) de (p@ dI2 | ||||
de (per d%i: | de (per d%i: | ||||
de (reg d%i: | de (reg d%i: | ||||
de (rel dE | de (rel dE | ||||
de (riC dI2 | de (riC dI2 | ||||
_) de (rAX dE | |||||
de (rog dI2 | de (rog dI2 | ||||
de (rACatio dE | de (rACatio dE | ||||
_) des (@ dI2s | _) des (@ dI2s | ||||
&) ency (_ @ns%i | &) ency (_ @ns%i | ||||
ency (cli %EnsI | ency (cli %EnsI | ||||
k) en (d_ En | k) en (d_ En | ||||
t) en (d_ En | |||||
en (dA_ 'En | en (dA_ 'En | ||||
_) en (d En | _) en (d En | ||||
_) en (da %En | _) en (da %En | ||||
eg) en (d @n | eg) en (d @n | ||||
en (dea %En | en (dea %En | ||||
en (der En | |||||
cal) en (der @n | |||||
en (dous En | en (dous En | ||||
_) endo EndoU | _) endo EndoU | ||||
@) en (do_ 'En | @) en (do_ 'En | ||||
en (ter En | en (ter En | ||||
en (tert ,En | en (tert ,En | ||||
enthra (l %EnTrO: | enthra (l %EnTrO: | ||||
en (tia_+ 'En | |||||
&) entice %EntaIs | &) entice %EntaIs | ||||
_) en (ti %En | _) en (ti %En | ||||
_c) enti EntI | _c) enti EntI | ||||
mb) er (_ 3 | mb) er (_ 3 | ||||
lin) er (_S1 3 | lin) er (_S1 3 | ||||
lin) ers (_S2 3z | lin) ers (_S2 3z | ||||
nc) er (_S1 3 | |||||
er 3: | er 3: | ||||
er (A 3:r | er (A 3:r | ||||
_) er (A I2r | _) er (A I2r | ||||
_) es (pl Es | _) es (pl Es | ||||
_) es (tab I2s | _) es (tab I2s | ||||
es (tate I2s | es (tate I2s | ||||
@) esc (enC 'Es | |||||
@) esc (ent_ 'Es | |||||
@) esc (ence_ 'Es | |||||
pr) es (ent Ez | pr) es (ent Ez | ||||
es (iA i:z | es (iA i:z | ||||
es (ian_ 'i:z | es (ian_ 'i:z | ||||
&) ia (_N =i|@ | &) ia (_N =i|@ | ||||
&) ia (_ =i@ | &) ia (_ =i@ | ||||
@@) ia (_ =i@ | @@) ia (_ =i@ | ||||
@) iae (_ =Ii: | |||||
@) ian (cy I|@n | @) ian (cy I|@n | ||||
l) iais I|eIz | l) iais I|eIz | ||||
p) ia (no Ia | p) ia (no Ia | ||||
_) in (flo In | _) in (flo In | ||||
_) in (flu In | _) in (flu In | ||||
_) in (fo_ In | _) in (fo_ In | ||||
_) info (t ,InfoU | |||||
_) infra (P5 ,Infr@ | _) infra (P5 ,Infr@ | ||||
_) infra (c %Infra | _) infra (c %Infra | ||||
in (ga_ 'IN | in (ga_ 'IN | ||||
_sp) it (e aIt | _sp) it (e aIt | ||||
cr) it (e_ It | cr) it (e_ It | ||||
wr) ite aIt | wr) ite aIt | ||||
it (ee_ aIt | |||||
_s) it (e aIt | _s) it (e aIt | ||||
_t) it (an aIt | _t) it (an aIt | ||||
x) ite (_ aIt | x) ite (_ aIt | ||||
br) oa (d O: | br) oa (d O: | ||||
oar o@ | oar o@ | ||||
oar (_ o@ | oar (_ o@ | ||||
_h) o 0 | |||||
cr) o (at oU | cr) o (at oU | ||||
X) o (ba oU | X) o (ba oU | ||||
t) o (bacc @ | t) o (bacc @ | ||||
or (ig 0r | or (ig 0r | ||||
or (ix 'O@r | or (ix 'O@r | ||||
&) ored (_ 3d | &) ored (_ 3d | ||||
h) ored (_S1 d | |||||
&) ored (_$w_alt1S1 d | |||||
_f) ore (C O@ | _f) ore (C O@ | ||||
f) ore (clo %o@ | f) ore (clo %o@ | ||||
f) ore (st 0rI | f) ore (st 0rI | ||||
hyp) ost 0st | hyp) ost 0st | ||||
osure 'oUZ3 | osure 'oUZ3 | ||||
X) os (y oUz | X) os (y oUz | ||||
@) os (y_ @s | |||||
.group ou | .group ou | ||||
ou aU | ou aU | ||||
rrhea r'i@ | rrhea r'i@ | ||||
rrhoea r'i@ | rrhoea r'i@ | ||||
_) ru (bL01 ru: | _) ru (bL01 ru: | ||||
_) rule (@ ru:l | |||||
_) run (a rVn | _) run (a rVn | ||||
_) run (o rVn | _) run (o rVn | ||||
&ant) ry (_S2 r%I | &ant) ry (_S2 r%I | ||||
A) sh (A_ =S | A) sh (A_ =S | ||||
&) ship (_S4 SIp | &) ship (_S4 SIp | ||||
&) ships (_S5 SIps | &) ships (_S5 SIps | ||||
&) shipe (_ SIp | |||||
&) shire (_S5 S3 | &) shire (_S5 S3 | ||||
//?3 &) shire (_S5 Si@ | //?3 &) shire (_S5 Si@ | ||||
sia (_ =zi@ | sia (_ =zi@ | ||||
u) sin (_ z@n | u) sin (_ z@n | ||||
A) s (itiv z | A) s (itiv z | ||||
_) size (C@ saIz | _) size (C@ saIz | ||||
s (mK z | |||||
a) s (m z | a) s (m z | ||||
o) s (m z | o) s (m z | ||||
L07) s (mAn_ z | L07) s (mAn_ z | ||||
&s) tian (_ tS@n | &s) tian (_ tS@n | ||||
_) tian tjan | _) tian tjan | ||||
&) tial S@L | &) tial S@L | ||||
&s) tial tj@L | |||||
s) tial tj@L | |||||
&) ti (ali SI | &) ti (ali SI | ||||
s) ti (ali tI | |||||
i) tia (liL06 S@ | i) tia (liL06 S@ | ||||
&) tien S@n | &) tien S@n | ||||
&) tience S@ns | &) tience S@ns | ||||
_) un (A_ ju:n | _) un (A_ ju:n | ||||
_) unn %Vnn | _) unn %Vnn | ||||
@) un (al 'ju:n | @) un (al 'ju:n | ||||
un (A_ 'u:n | |||||
une (_ ju:n | une (_ ju:n | ||||
?3 d) une (_ u:n | ?3 d) une (_ u:n | ||||
j) un (A u:n | j) un (A u:n | ||||
_) uni ju:nI | _) uni ju:nI | ||||
_) un (ide ,Vn | _) un (ide ,Vn | ||||
_) un (inP2 ,Vn | _) un (inP2 ,Vn | ||||
_) un (il ,ju:n | |||||
_) uni (l ,ju:nI | |||||
_) un (io ju:n | _) un (io ju:n | ||||
_) un (iq %ju:n | _) un (iq %ju:n | ||||
unit (e ju:n'aIt | unit (e ju:n'aIt | ||||
_) vehem vi@m | _) vehem vi@m | ||||
_) vibra (t v%aIbreI | _) vibra (t v%aIbreI | ||||
?3 _) vibra (t v'aIbreI | ?3 _) vibra (t v'aIbreI | ||||
video vIdI2oU | |||||
vivi (@ vIvI | vivi (@ vIvI | ||||
viv (_ vaIv | viv (_ vaIv | ||||
ä E | ä E | ||||
ë E | ë E | ||||
ï i: | ï i: | ||||
ó (n '0 | |||||
ö 3: | ö 3: | ||||
ör 3: | ör 3: | ||||
ü u: | ü u: |
// Irish Gaeilge dictionary | // Irish Gaeilge dictionary | ||||
// written by Ronan McGuirk | // written by Ronan McGuirk | ||||
// 2013 | // 2013 | ||||
// version 2.7 | |||||
// version 2.8.2 | |||||
// Please send comments and suggestions to [email protected] | // Please send comments and suggestions to [email protected] | ||||
// This file is UTF8 encoded | // This file is UTF8 encoded | ||||
// letters | // letters | ||||
// letter names, as they are spoken as a single character in text | |||||
// letter namesd, as they are spoken as a single character in text | |||||
// precede by _ to distinguish from pronunciation as a language word | // precede by _ to distinguish from pronunciation as a language word | ||||
_a eI | _a eI | ||||
//delete | //delete | ||||
// old script | |||||
ċur x'Ur | |||||
ḃ b,i:b'u:ltS@ | |||||
ċ s,i:b'u:ltS@ | |||||
ḋ d,i:b'u:ltS@ | |||||
ḟ ,Efb'u:ltS@ | |||||
ġ dZ,i:b'u:ltS@ | |||||
ṁ ,Emb'ultS@ | |||||
ṗ p,i:b'u:ltS@ | |||||
ṫ t,i:b'u:ltS@ | |||||
// words | // words | ||||
a @ | a @ | ||||
ab @b | |||||
abhaile @w'0l;E | abhaile @w'0l;E | ||||
ach 0x $u | ach 0x $u | ||||
ag Eg $verbf $u | ag Eg $verbf $u | ||||
aige @g'E | aige @g'E | ||||
air Er | air Er | ||||
acu 0k'U | acu 0k'U | ||||
ar Er $u | |||||
ar Er | |||||
arsa @rs@ | arsa @rs@ | ||||
agaibh 0g@Iv | agaibh 0g@Iv | ||||
agus 0g@s | |||||
agus 0g@s $u | |||||
aisfhilleadh ,aS'Il;@ | aisfhilleadh ,aS'Il;@ | ||||
amach @m'0x | amach @m'0x | ||||
amárach @m'A:r@x | amárach @m'A:r@x | ||||
amuigh @mu1'I | amuigh @mu1'I | ||||
amháin @w'A:in | amháin @w'A:in | ||||
hamháin h@w'A:in | |||||
am aUm | am aUm | ||||
anaithnid '0nah@nIdZ | anaithnid '0nah@nIdZ | ||||
anonn @naUn | anonn @naUn | ||||
atá @t['A: $u | atá @t['A: $u | ||||
baill bu1'i:l | baill bu1'i:l | ||||
bhaill vu1'i:l | bhaill vu1'i:l | ||||
beadh b;'@X | |||||
bheadh v;'@X | |||||
beidh bEg | beidh bEg | ||||
bhfuil w'Il | bhfuil w'Il | ||||
bheas v'e:@s | bheas v'e:@s | ||||
faigh faIg | faigh faIg | ||||
feadh fag | feadh fag | ||||
fear f'ar | fear f'ar | ||||
féin h'e:n | |||||
gcathair g0h@r | gcathair g0h@r | ||||
gan g0n $u | gan g0n $u | ||||
gheall jaUl | gheall jaUl | ||||
ina In@ $u | ina In@ $u | ||||
ins Ins $u | ins Ins $u | ||||
inniu Inj'u:v | inniu Inj'u:v | ||||
irish _^_EN | |||||
iontach 'i:nt[@x | |||||
hiontach h'i:nt[@x | |||||
irish _^_EN | |||||
is 'Is $u | is 'Is $u | ||||
(is ea) IS'a | (is ea) IS'a | ||||
isteach IstS'0x | isteach IstS'0x | ||||
mhama w'0m@ | mhama w'0m@ | ||||
maith m'0 | maith m'0 | ||||
mhaith w'0 | mhaith w'0 | ||||
mhaithe w'0h;E | |||||
mbeadh m;O#X | mbeadh m;O#X | ||||
mo mO# $u | mo mO# $u | ||||
mura mUr@ $u | mura mUr@ $u | ||||
ná nA: $u | ná nA: $u | ||||
nigh ni: | nigh ni: | ||||
níorbh ni:rv | |||||
níorbh ni:@r@vv $u | |||||
nó nu: $u | nó nu: $u | ||||
nollag n@l@g | nollag n@l@g | ||||
nolaig nO#lig | nolaig nO#lig | ||||
(s é) S'e: | (s é) S'e: | ||||
(s í) S'i: | (s í) S'i: | ||||
san s@n | san s@n | ||||
seo S@_ | |||||
san s'an $capital | |||||
seo SU_ $u | |||||
(sinn féin) S'In||f'e:n | |||||
tabhair t'u:@r | tabhair t'u:@r | ||||
(tiocfaidh ár lá) tSO#ki:|'A:r|l'A: | (tiocfaidh ár lá) tSO#ki:|'A:r|l'A: | ||||
// translation rules for Irish Gaeilge | |||||
f// translation rules for Irish Gaeilge | |||||
// This file is UTF-8 encoded | // This file is UTF-8 encoded | ||||
// written by Ronan McGuirk 2013 | // written by Ronan McGuirk 2013 | ||||
// Version 2.7 | |||||
// Version 2.8.3 | |||||
// Please send comments and suggestions to [email protected] | // Please send comments and suggestions to [email protected] | ||||
.L12 á é ó eo ua // when followed by i | .L12 á é ó eo ua // when followed by i | ||||
.L13 oc omb | .L13 oc omb | ||||
.L14 río dún gnío // followed with mh | .L14 río dún gnío // followed with mh | ||||
.L15 c ch f bhf m d dh g gc gh mh // aoi following | |||||
.L15 c ch f bhf fh m d dh g gc gh mh // aoi following | |||||
.L16 b c bh ch gr ghr t th // for inn word ending | .L16 b c bh ch gr ghr t th // for inn word ending | ||||
.L17 l le li niste nn | .L17 l le li niste nn | ||||
.L18 n nt nte neann neadh ntear nim nfear nfinn nfidh nfidis neamar | .L18 n nt nte neann neadh ntear nim nfear nfinn nfidh nfidis neamar | ||||
.L22 eadh eag eaga eagán eagáinín eo io iu iú eall eabh ealtaine eann | .L22 eadh eag eaga eagán eagáinín eo io iu iú eall eabh ealtaine eann | ||||
.L23 ea eo i | .L23 ea eo i | ||||
.L24 b mb bh g gh p ph bp m mh | .L24 b mb bh g gh p ph bp m mh | ||||
.replace | |||||
ḃ bh | |||||
ċ ch | |||||
ḋ dh | |||||
ḟ fh | |||||
ġ gh | |||||
ṁ mh | |||||
ṗ ph | |||||
ṫ th | |||||
ċ ch | |||||
.group a | .group a | ||||
a 0# | a 0# | ||||
_) ath 0h | _) ath 0h | ||||
a (rraige a | a (rraige a | ||||
ai (m_ @ | ai (m_ @ | ||||
aí i: | |||||
aí 'i: | |||||
aí (_ %i: | |||||
aoi @i: | aoi @i: | ||||
_) aoi i: | _) aoi i: | ||||
ath) aoi (r 'i:@ | ath) aoi (r 'i:@ | ||||
r) aoi (nín 'e:@ | r) aoi (nín 'e:@ | ||||
aoicht (_ 'i:@xt[ | aoicht (_ 'i:@xt[ | ||||
d) aoine (_ @i:n;%i: | |||||
C) ao (C @e:@ | C) ao (C @e:@ | ||||
_L24) ao (C w'e:@ | _L24) ao (C w'e:@ | ||||
C) ao (th_ @e: | C) ao (th_ @e: | ||||
arraing arIng | arraing arIng | ||||
_) ath (@@P3 ,0_ | _) ath (@@P3 ,0_ | ||||
_) athr '0hr | _) athr '0hr | ||||
_) ard (@P3 A:rd[ | |||||
.group á | .group á | ||||
á A: | á A: | ||||
_L04) ai (L18_++ u1'I//words like bain | _L04) ai (L18_++ u1'I//words like bain | ||||
c) ai (t_ u1'I | c) ai (t_ u1'I | ||||
s) ai (bh E | s) ai (bh E | ||||
sh) ai (bh E | |||||
aighre aIr@ | aighre aIr@ | ||||
X) aigh 'aI | X) aigh 'aI | ||||
aigh aI# L04) aill (_ wi:l | |||||
aigh aI# | |||||
_L04) aill (_ wi:l | |||||
aing (_ Ing | aing (_ Ing | ||||
ailleach '0l;@x | ailleach '0l;@x | ||||
ai (llimh++ '0 // words like Gaillimh | ai (llimh++ '0 // words like Gaillimh | ||||
_) beann (@ ba#n | _) beann (@ ba#n | ||||
_) bheann (@ va#n | _) bheann (@ va#n | ||||
_) bun (C@P3 b,Un | _) bun (C@P3 b,Un | ||||
?1 _m_) bun (C@P3 ,Un | |||||
_) bpríomh (@P7 bR,i:v | |||||
.group c | .group c | ||||
c k | c k | ||||
_) chabhr x'aUr | _) chabhr x'aUr | ||||
_) ceann (C@P5 k;,aUn | _) ceann (C@P5 k;,aUn | ||||
_) cheann (C@P6 C;,aUn | _) cheann (C@P6 C;,aUn | ||||
_) comh (@@P4 k,o: | |||||
_) chomh (@@P5 x,o: | |||||
comhar k'o:@r | |||||
chomhar x'o:@r | |||||
comhair k'o:@r | |||||
chomhair x'o:@r | |||||
.group d | .group d | ||||
d d[ // broad | d d[ // broad | ||||
L01) d dZ // slender | L01) d dZ // slender | ||||
d (L22 dZ // slender | d (L22 dZ // slender | ||||
d (L01 d; // slender | d (L01 d; // slender | ||||
d (CL01 dZ | |||||
i) d (i dZ | i) d (i dZ | ||||
?1 _n_) d (@ | ?1 _n_) d (@ | ||||
dh Q // broad | dh Q // broad | ||||
_) d (_'fh d | _) d (_'fh d | ||||
d'fh (L01 d | d'fh (L01 d | ||||
dhaoine Q@i:n;%i: | |||||
i) dh (_ g | i) dh (_ g | ||||
a) dh (_ X | a) dh (_ X | ||||
o) dh (_ X | o) dh (_ X | ||||
dheartháir gr@h'A:r | dheartháir gr@h'A:r | ||||
deirfiúr d;r@f'u:r | deirfiúr d;r@f'u:r | ||||
dheirfiúr g;r@f'u:r | dheirfiúr g;r@f'u:r | ||||
domhan d[aU@n | |||||
_) do (Ch@@P2 d[,U_ | _) do (Ch@@P2 d[,U_ | ||||
_) dí (C@@P2 d,i: | _) dí (C@@P2 d,i: | ||||
dícheall d;'i:Ca#l | dícheall d;'i:Ca#l | ||||
d) eo (ch O# | d) eo (ch O# | ||||
dh) eo (ch O# | dh) eo (ch O# | ||||
_) eo (ch O# | _) eo (ch O# | ||||
_h) eo (ch O# | |||||
s) eo (_ @ | s) eo (_ @ | ||||
ea (ltaine aU | ea (ltaine aU | ||||
g) ea (ll aU | g) ea (ll aU | ||||
l) eamh (n aU | l) eamh (n aU | ||||
dr) ea (m aU | |||||
Kdr) ea (m aU | |||||
X) ea (ch 0 | X) ea (ch 0 | ||||
_L04) ea (g @ | _L04) ea (g @ | ||||
_L04) ea (dh_ @ | _L04) ea (dh_ @ | ||||
L04) eaga (_ @g@ | L04) eaga (_ @g@ | ||||
eaghl aIl | eaghl aIl | ||||
eabhra aUr@ // words like Feabhra | eabhra aUr@ // words like Feabhra | ||||
eabhs aUs | |||||
eanbhean 'an@v,an | eanbhean 'an@v,an | ||||
eadhb aIb | eadhb aIb | ||||
fh (L22 ; // slender | fh (L22 ; // slender | ||||
@) f (L06_ h | @) f (L06_ h | ||||
fios fIs | fios fIs | ||||
faoi fw'i: | |||||
fhios Is | fhios Is | ||||
_) fo (C@@P2 f,U | _) fo (C@@P2 f,U | ||||
_) fogh f'aU | _) fogh f'aU | ||||
_) foc (@++ fOk | _) foc (@++ fOk | ||||
?1 _bh_) f (@ | ?1 _bh_) f (@ | ||||
?1 _bh_) f (L22 ; | ?1 _bh_) f (L22 ; | ||||
_) fíor (@P4 f,i:r | |||||
.group g | .group g | ||||
g g // broad | g g // broad | ||||
g (L01 g; // slender | g (L01 g; // slender | ||||
?1 _n_) g (@ | ?1 _n_) g (@ | ||||
_) gh Q" | |||||
gh Q" | |||||
_) gh (L01 Q"j | _) gh (L01 Q"j | ||||
_) gc g // urú broad | _) gc g // urú broad | ||||
_) gc (L01 g; // urú slender | _) gc (L01 g; // urú slender | ||||
gh (n X@ | gh (n X@ | ||||
gheobh j'o: | gheobh j'o: | ||||
gabh gaU | gabh gaU | ||||
_) gearr (C@P5 g;,aR | |||||
_) ghearr (C@P6 Q"j,aR | |||||
ghabh Q"aU | |||||
_) gearr (C@@P5 g;,aR | |||||
_) ghearr (C@@P6 Q"j,aR | |||||
_) gnáth (@@P5 g@n,A: | |||||
_) ghnáth (@P6 X@n,A: | |||||
.group h | .group h | ||||
h h // silent | h h // silent | ||||
iu U | iu U | ||||
ia (tha i: | ia (tha i: | ||||
io O# | io O# | ||||
iond O#n@d[ | |||||
ioml O#m@l | |||||
io (dá I | io (dá I | ||||
_) io (nadh u:// words like ionadh | _) io (nadh u:// words like ionadh | ||||
s) io (mb I | s) io (mb I | ||||
iú u: | iú u: | ||||
m) i (d_ i: // verb ending | m) i (d_ i: // verb ending | ||||
_) in (@@P2 ,In_ | _) in (@@P2 ,In_ | ||||
_) inn In | |||||
_) in (tinn 'In | |||||
_) ionad (C@@P5 ,Ona#d[ | _) ionad (C@@P5 ,Ona#d[ | ||||
.group í | .group í | ||||
í (_ i: | í (_ i: | ||||
ín (_ i:n | ín (_ i:n | ||||
ío i:@ | ío i:@ | ||||
íle (_ 'i:lE | |||||
.group l | .group l | ||||
ll (L23 l; | ll (L23 l; | ||||
l (g l@ | l (g l@ | ||||
l (b l@ | l (b l@ | ||||
L01) l (b l;@ | |||||
ll (b l | ll (b l | ||||
_) lorg (@@P4 l,Or@g | _) lorg (@@P4 l,Or@g | ||||
_) lán (@@P3 l,A:n | _) lán (@@P3 l,A:n | ||||
_) mh (n v@ | _) mh (n v@ | ||||
léir) mheas vas | léir) mheas vas | ||||
r) m @m // words like gorm | r) m @m // words like gorm | ||||
r) m (L20 @m; | |||||
_) mear (@@P4 m,ar | _) mear (@@P4 m,ar | ||||
_) mí (C@@P2 m,i: | |||||
.group n | .group n | ||||
n n // broad | n n // broad | ||||
?1 _) n (_L01 n; | ?1 _) n (_L01 n; | ||||
_) nd n // urú | _) nd n // urú | ||||
_) nd (L01 n; // urú slender | _) nd (L01 n; // urú slender | ||||
_) ng N | |||||
_) ng (L01 N; | |||||
ng N | |||||
ng (L01 N; | |||||
?1 _) n (_d n // urú | ?1 _) n (_d n // urú | ||||
?1 _) n (_dL01 n; // urú slender | ?1 _) n (_dL01 n; // urú slender | ||||
?1 _) n (_g N | ?1 _) n (_g N | ||||
_C) omh o: | _C) omh o: | ||||
_CC) omh o: | _CC) omh o: | ||||
omha o:@ | omha o:@ | ||||
omhai o:@ | omhai o:@ | ||||
o (ll_ aU | o (ll_ aU | ||||
C) o (nn_ aU | C) o (nn_ aU | ||||
r) o (nn_ O# | r) o (nn_ O# | ||||
C) ogh aU | C) ogh aU | ||||
omhan (_ aU@n | |||||
omhain (_ aUIn | omhain (_ aUIn | ||||
odha aU | odha aU | ||||
opaic @pIk | opaic @pIk | ||||
C) odh (_ o: | C) odh (_ o: | ||||
odl (a O#l | odl (a O#l | ||||
oí i: | oí i: | ||||
o (rd_ o: | |||||
o (ird_ o: | |||||
_) oll (@@P3 ,Ol | |||||
.group ó | .group ó | ||||
ó 'o: | ó 'o: | ||||
oi (mis @ | oi (mis @ | ||||
ois (++ O#S | ois (++ O#S | ||||
n) ois (_++ IS | n) ois (_++ IS | ||||
oill w'i:l | |||||
oill (+ w'i:l | |||||
_) oi (leá 'I | _) oi (leá 'I | ||||
oidh aI | oidh aI | ||||
oir (_ 'ERR | oir (_ 'ERR | ||||
l) oic (_ Ek | |||||
_sc) oi (r O | _sc) oi (r O | ||||
oigh (ea aI | oigh (ea aI | ||||
oighn aIXn | oighn aIXn | ||||
oinse (_ @i:nS@ | |||||
oi (nte @i: | |||||
.group p | .group p | ||||
p p // broad | p p // broad | ||||
p (L22 p; // slender | p (L22 p; // slender | ||||
ph (L20 f; // slender | ph (L20 f; // slender | ||||
?1 _b_) p (@ | ?1 _b_) p (@ | ||||
_) príomh (@P6 pR,i:v | |||||
_) phríomh (@P7 fR,i:v | |||||
.group r | .group r | ||||
r r // broad | r r // broad | ||||
L01) r R // slender | L01) r R // slender | ||||
_) r (L01 R | |||||
r (L01 R | |||||
L12i) r (e_ Z | L12i) r (e_ Z | ||||
L12i) r (t_ Z | L12i) r (t_ Z | ||||
rr R | rr R | ||||
s (lL01 S | s (lL01 S | ||||
_') s (_ s // 's in poems etc | _') s (_ s // 's in poems etc | ||||
_) sain (@P4 s,an | _) sain (@P4 s,an | ||||
_) sean (@@P4 S,an | |||||
.group t | .group t | ||||
t t[ // broad | t t[ // broad | ||||
ao) th (_ | ao) th (_ | ||||
thne (_ h@nE | thne (_ h@nE | ||||
A) th (_ // silent th at word end | A) th (_ // silent th at word end | ||||
c) th (e_ ih // guta cúnta | |||||
K) th (as_ @h // guta cúnta | |||||
.group u | .group u | ||||
u U# | u U# | ||||
ua u@ | ua u@ | ||||
ua (_ u:@ | |||||
uai u@ | uai u@ | ||||
uai (g ui | uai (g ui | ||||
uai (d ui | uai (d ui | ||||
g) ui (gh_ @i: | g) ui (gh_ @i: | ||||
gh) ui (gh_ @i: | gh) ui (gh_ @i: | ||||
uí i: | uí i: | ||||
uíomh 'i:@vv | |||||
uachai 'ux@ | uachai 'ux@ | ||||
_) uimhir (C@P6 ,IvIR | _) uimhir (C@P6 ,IvIR | ||||
uibhne (_ @'i:n;E | |||||
uibhneach (_ @'i:n@x | |||||
.group ú | .group ú | ||||
úi u: | úi u: | ||||
úinn (_ u:IN | úinn (_ u:IN | ||||
úibh (_ u:Iv | úibh (_ u:Iv | ||||
úi (g u:i | |||||
?1 _0lang _^_EN // speak numbers in English | ?1 _0lang _^_EN // speak numbers in English | ||||
// articles | // articles | ||||
hο $u // ὁ | |||||
ɦο $u // ὁ | |||||
τὼ $u // τώ | τὼ $u // τώ | ||||
οhι $u // οἱ | |||||
hη $u // ἡ | |||||
οɦι $u // οἱ | |||||
ɦη $u // ἡ | |||||
τὰ $u // τά | τὰ $u // τά | ||||
αhι $u // αἱ | |||||
αɦι $u // αἱ | |||||
τὸ $u // τό | τὸ $u // τό | ||||
τοὺ $u // τοῦ | τοὺ $u // τοῦ |
// Preliminary character substitution: | // Preliminary character substitution: | ||||
// Convert tonos, oxia and perispomeni to varia | // Convert tonos, oxia and perispomeni to varia | ||||
// Remove psili (soft breathing) | // Remove psili (soft breathing) | ||||
// Convert dasia accent to a separate prefix character ("h") | |||||
// Convert dasia accent to a separate prefix character ("ɦ") NOTE: using U+0266 because it's above eSpeak's Latin character limit of 0x250. | |||||
// Remove iota subscripts | // Remove iota subscripts | ||||
// Replace Latin characters by same-shape Greek characters | // Replace Latin characters by same-shape Greek characters | ||||
ᾷ ᾲ | ᾷ ᾲ | ||||
ἀ α | ἀ α | ||||
ἁ hα | |||||
ἁ ɦα | |||||
ἂ ὰ | ἂ ὰ | ||||
ἃ hὰ | |||||
ἃ ɦὰ | |||||
ἄ ὰ | ἄ ὰ | ||||
ἅ hὰ | |||||
ἅ ɦὰ | |||||
ἆ ὰ | ἆ ὰ | ||||
ἇ hὰ | |||||
ἇ ɦὰ | |||||
ᾀ ᾳ | ᾀ ᾳ | ||||
ᾁ hᾳ | |||||
ᾁ ɦᾳ | |||||
ᾂ ᾲ | ᾂ ᾲ | ||||
ᾃ hᾲ | |||||
ᾃ ɦᾲ | |||||
ᾄ ᾲ | ᾄ ᾲ | ||||
ᾅ hᾲ | |||||
ᾅ ɦᾲ | |||||
ᾆ ᾲ | ᾆ ᾲ | ||||
ᾇ hᾲ | |||||
ᾇ ɦᾲ | |||||
// epsilon | // epsilon | ||||
έ ὲ | έ ὲ | ||||
έ ὲ | έ ὲ | ||||
ἐ ε | ἐ ε | ||||
ἑ hε | |||||
ἑ ɦε | |||||
ἒ ὲ | ἒ ὲ | ||||
ἓ hὲ | |||||
ἓ ɦὲ | |||||
ἔ ὲ | ἔ ὲ | ||||
ἕ hὲ | |||||
ἕ ɦὲ | |||||
// eta | // eta | ||||
ή ὴ | ή ὴ | ||||
ῇ ῂ | ῇ ῂ | ||||
ἠ η | ἠ η | ||||
ἡ hη | |||||
ἡ ɦη | |||||
ἢ ὴ | ἢ ὴ | ||||
ἣ hὴ | |||||
ἣ ɦὴ | |||||
ἤ ὴ | ἤ ὴ | ||||
ἥ hὴ | |||||
ἥ ɦὴ | |||||
ἦ ὴ | ἦ ὴ | ||||
ἧ hὴ | |||||
ἧ ɦὴ | |||||
ᾐ ῃ | ᾐ ῃ | ||||
ᾑ hῃ | |||||
ᾑ ɦῃ | |||||
ᾒ ῂ | ᾒ ῂ | ||||
ᾓ hῂ | |||||
ᾓ ɦῂ | |||||
ᾔ ῂ | ᾔ ῂ | ||||
ᾕ hῂ | |||||
ᾕ ɦῂ | |||||
ᾖ ῂ | ᾖ ῂ | ||||
ᾗ hῂ | |||||
ᾗ ɦῂ | |||||
//iota | //iota | ||||
ί ὶ | ί ὶ | ||||
ῖ ὶ | ῖ ὶ | ||||
ἰ ι | ἰ ι | ||||
ἱ hι | |||||
ἱ ɦι | |||||
ἲ ὶ | ἲ ὶ | ||||
ἳ hὶ | |||||
ἳ ɦὶ | |||||
ἴ ὶ | ἴ ὶ | ||||
ἵ hὶ | |||||
ἵ ɦὶ | |||||
ἶ ὶ | ἶ ὶ | ||||
ἷ hὶ | |||||
ἷ ɦὶ | |||||
ΐ ῒ | ΐ ῒ | ||||
ῗ ῒ | ῗ ῒ | ||||
ό ὸ | ό ὸ | ||||
ό ὸ | ό ὸ | ||||
ὀ ο | ὀ ο | ||||
ὁ hο | |||||
ὁ ɦο | |||||
ὂ ὸ | ὂ ὸ | ||||
ὃ hὸ | |||||
ὃ ɦὸ | |||||
ὄ ὸ | ὄ ὸ | ||||
ὅ hὸ | |||||
ὅ ɦὸ | |||||
// upsilon | // upsilon | ||||
ύ ὺ | ύ ὺ | ||||
ῦ ὺ | ῦ ὺ | ||||
ὐ υ | ὐ υ | ||||
ὑ hυ | |||||
ὑ ɦυ | |||||
ὒ ὺ | ὒ ὺ | ||||
ὓ hὺ | |||||
ὓ ɦὺ | |||||
ὔ ὺ | ὔ ὺ | ||||
ὕ hὺ | |||||
ὕ ɦὺ | |||||
ὖ ὺ | ὖ ὺ | ||||
ὗ hὺ | |||||
ὗ ɦὺ | |||||
ΰ ῢ | ΰ ῢ | ||||
ῧ ῢ | ῧ ῢ | ||||
ῷ ῲ | ῷ ῲ | ||||
ὠ ω | ὠ ω | ||||
ὡ hω | |||||
ὡ ɦω | |||||
ὢ ὼ | ὢ ὼ | ||||
ὣ hὼ | |||||
ὣ ɦὼ | |||||
ὤ ὼ | ὤ ὼ | ||||
ὥ hὼ | |||||
ὥ ɦὼ | |||||
ὦ ὼ | ὦ ὼ | ||||
ὧ hὼ | |||||
ὧ ɦὼ | |||||
ᾠ ῳ | ᾠ ῳ | ||||
ᾡ hῳ | |||||
ᾡ ɦῳ | |||||
ᾢ ῲ | ᾢ ῲ | ||||
ᾣ hῲ | |||||
ᾣ ɦῲ | |||||
ᾤ ῲ | ᾤ ῲ | ||||
ᾥ hῲ | |||||
ᾥ ɦῲ | |||||
ᾦ ῲ | ᾦ ῲ | ||||
ᾧ hῲ | |||||
ᾧ ɦῲ | |||||
// rho | // rho | ||||
ῤ ρ | ῤ ρ | ||||
ῥ hρ | |||||
ῥ ɦρ | |||||
.group α | .group α | ||||
αὶ 'aI | αὶ 'aI | ||||
αυ aU | αυ aU | ||||
αὺ 'aU | αὺ 'aU | ||||
αhι haI | |||||
αhὶ 'haI | |||||
αhυ haU | |||||
αhὺ 'haU | |||||
αɦι haI | |||||
αɦὶ 'haI | |||||
αɦυ haU | |||||
αɦὺ 'haU | |||||
.group β | .group β | ||||
β b | β b | ||||
εὶ 'e: | εὶ 'e: | ||||
ευ eU | ευ eU | ||||
εὺ 'eU | εὺ 'eU | ||||
εhι he: | |||||
εhὶ 'he: | |||||
εhυ heU | |||||
εhὺ 'heU | |||||
εɦι he: | |||||
εɦὶ 'he: | |||||
εɦυ heU | |||||
εɦὺ 'heU | |||||
.group ζ | .group ζ | ||||
ζ z | ζ z | ||||
ηὶ 'EI: | ηὶ 'EI: | ||||
ηυ EU: | ηυ EU: | ||||
ηὺ 'EU: | ηὺ 'EU: | ||||
ηhι hEI: | |||||
ηhὶ 'hEI: | |||||
ηhυ hEU: | |||||
ηhὺ 'hEU: | |||||
ηɦι hEI: | |||||
ηɦὶ 'hEI: | |||||
ηɦυ hEU: | |||||
ηɦὺ 'hEU: | |||||
.group θ | .group θ | ||||
θ T | θ T | ||||
οὶ 'oI | οὶ 'oI | ||||
ου u: | ου u: | ||||
οὺ 'u: | οὺ 'u: | ||||
οhι hoI | |||||
οhὶ 'hoI | |||||
οhυ hu: | |||||
οhὺ 'hu: | |||||
οɦι hoI | |||||
οɦὶ 'hoI | |||||
οɦυ hu: | |||||
οɦὺ 'hu: | |||||
.group π | .group π | ||||
π p | π p | ||||
υ y | υ y | ||||
υι yI | υι yI | ||||
υὶ 'yI | υὶ 'yI | ||||
υhι hyI | |||||
υhὶ 'hyI | |||||
υɦι hyI | |||||
υɦὶ 'hyI | |||||
.group ϋ | .group ϋ | ||||
ϋ y | ϋ y | ||||
ϋι yI | ϋι yI | ||||
ϋὶ 'yI | ϋὶ 'yI | ||||
ϋhι hyI | |||||
ϋhὶ 'hyI | |||||
ϋɦι hyI | |||||
ϋɦὶ 'hyI | |||||
.group φ | .group φ | ||||
φ f | φ f | ||||
ωὶ 'OI: | ωὶ 'OI: | ||||
ωυ OU: | ωυ OU: | ||||
ωὺ 'OU: | ωὺ 'OU: | ||||
ωhι hOI: | |||||
ωhὶ 'hOI: | |||||
ωhυ hOU: | |||||
ωhὺ 'hOU: | |||||
ωɦι hOI: | |||||
ωɦὶ 'hOI: | |||||
ωɦυ hOU: | |||||
ωɦὺ 'hOU: | |||||
.group h // dasia (rough breathing) | |||||
h h | |||||
.group ɦ // dasia (rough breathing) | |||||
ɦ h | |||||
// Latin letters to equivalent Greek sounds (plus 'q = η' 'w = ω' | // Latin letters to equivalent Greek sounds (plus 'q = η' 'w = ω' | ||||
g g | g g | ||||
gg Ng | gg Ng | ||||
.group h | |||||
h h | |||||
.group i | .group i | ||||
i i | i i | ||||
_#9 tAb | _#9 tAb | ||||
_#32 s'o:kYz | _#32 s'o:kYz | ||||
_cap n'AJ_| | _cap n'AJ_| | ||||
_?? kAR2AktEr // unknown characters (change this) | |||||
_?? kAR2AktER2 // unknown characters (change this) | |||||
// Abbreviations | // Abbreviations | ||||
árban $unstressend | árban $unstressend | ||||
(boltok ajánlatai) boltok_'||Aja:nlAtAi $unstressend | (boltok ajánlatai) boltok_'||Aja:nlAtAi $unstressend | ||||
valaki $unstressend | valaki $unstressend | ||||
(kellene biztosítani) kEl:Ene_||bistosi:tAni $unstressend | |||||
(kellene biztosítani) kEl:EnE_||bistoSi:tAni $unstressend | |||||
(már lehetséges) ma:R2_||lEhEtS:e:gES $unstressend | (már lehetséges) ma:R2_||lEhEtS:e:gES $unstressend | ||||
(is támogatja) iS_||ta:mogAc:A $unstressend | (is támogatja) iS_||ta:mogAc:A $unstressend | ||||
(lehet használni) lEhEt_||hAsna:lni $unstressend | (lehet használni) lEhEt_||hAsna:lni $unstressend |
licen) ccs ts|tS | licen) ccs ts|tS | ||||
nyol) c (csat ts | nyol) c (csat ts | ||||
pokró) c (sá ts | pokró) c (sá ts | ||||
barká) cs (zen tS | |||||
kalapá) cs (zon tS | |||||
_kapol) cs tS | |||||
lán) c (sor ts | |||||
barká) cs (zen tS | |||||
kalapá) cs (zon tS | |||||
_kapol) cs tS | |||||
lán) c (sor ts | |||||
daró) c (cs ts | |||||
oroszlán) cs (or tS | |||||
harmin) c (sor ts | |||||
he) cc (sajt ts | |||||
ccsz ts|s | |||||
ifjon) c (csap ts | |||||
kapo) cs (zár tS | |||||
ketre) c (cs ts | |||||
ketre) c (so ts | |||||
kul) cs (zen tS | |||||
lán) c (seb ts | |||||
lidér) c (cs ts | |||||
mala) c (cs ts | |||||
matra) c (sor ts | |||||
nyol) c (sark ts | |||||
nyol) c (sej ts | |||||
nyol) c (sug ts | |||||
párdu) c (cs ts | |||||
kar) c (sor ts | |||||
szendvi) cs (zab tS | |||||
tán) cs (i tS | |||||
tanon) c (cs ts | |||||
titán) cs tS | |||||
torná) c (sor ts | |||||
ujjper) c (cs ts | |||||
ccsz ts|s | |||||
_ér) c (saru ts | |||||
.group ch | .group ch | ||||
anar) ch (i h | anar) ch (i h | ||||
almana) ch h | almana) ch h | ||||
kronoszti) ch (on h | kronoszti) ch (on h | ||||
arca) ch (on h | arca) ch (on h | ||||
sza) ch (arid h | |||||
szto) ch (aszti h | |||||
sza) ch (arid h | |||||
szto) ch (aszti h | |||||
a) ch (aem h | |||||
a) ch (át h | |||||
a) ch (illes h | |||||
ti) ch (on h | |||||
arca) ch (on h | |||||
ba) ch h | |||||
blaskovi) ch tS | |||||
?1 chip tSip | |||||
?1 damjani) ch tS | |||||
eu) ch (arisz h | |||||
eunu) ch h | |||||
fa) ch h | |||||
fis) ch (er | |||||
forgá) ch tS | |||||
grassalkovi) ch tS | |||||
ri) ch (ter C | |||||
jurisi) chcs tS: | |||||
jurisi) ch tS | |||||
keglevi) ch tS | |||||
s) ch (illing | |||||
le) ch (ner h | |||||
mala) ch (it h | |||||
metterni) ch C | |||||
pé) ch (y tS | |||||
pejacsevi) ch tS | |||||
kra) ch h | |||||
tri) ch (in h | |||||
e) ch (ó h | |||||
.group d | .group d | ||||
d d | d d | ||||
své) d (zseb d | své) d (zseb d | ||||
csalá) d (szer d | csalá) d (szer d | ||||
szaba) d (sajt d | szaba) d (sajt d | ||||
szomszé) d (jog d | |||||
elő) d (szerv d | |||||
árká) d (szerű d | |||||
csalá) d (sztor d | |||||
harminca) d (sze d | |||||
hol) d (szond d | |||||
kó) d (szöve d | |||||
lipi) d (szint d | |||||
máso) d (szava d | |||||
_ná) d (szeg d | |||||
nyárá) d (szere d | |||||
rú) d (szerű d | |||||
tize) d (szed d | |||||
_va) d (szerb d | |||||
va) d (tyúk d | |||||
bőrön) d (sze d | |||||
stran) d (szett d | |||||
szomszé) d (jog d | |||||
elő) d (szerv d | |||||
árká) d (szerű d | |||||
csalá) d (sztor d | |||||
harminca) d (sze d | |||||
hol) d (szond d | |||||
kó) d (szöve d | |||||
lipi) d (szint d | |||||
máso) d (szava d | |||||
_ná) d (szeg d | |||||
nyárá) d (szere d | |||||
rú) d (szerű d | |||||
tize) d (szed d | |||||
_va) d (szerb d | |||||
va) d (tyúk d | |||||
bőrön) d (sze d | |||||
stran) d (szett d | |||||
pa) d (szomszé d | |||||
akkor) d (játsz d | |||||
harma) d (szándék d | |||||
rekor) d (szer d | |||||
rekor) d (szezo d | |||||
va) d (szállí d | |||||
cső) d (szerű d | |||||
hol) d (szputnyik d | |||||
.group dz | .group dz | ||||
fogó) dz (kod ts | fogó) dz (kod ts | ||||
000_-) el (_ REl // double R for 1000-el | 000_-) el (_ REl // double R for 1000-el | ||||
000000_-) el (_ El // ... but not 1000000-el | 000000_-) el (_ El // ... but not 1000000-el | ||||
_) ehhez EhEz | _) ehhez EhEz | ||||
egyezség EJ:ESSe:g | |||||
egyezségg EJ:ESSe:g: | |||||
egyezség EJ:ESSe:g | |||||
egyezségg EJ:ESSe:g: | |||||
.group é | .group é | ||||
é e: | é e: | ||||
fo) g (gyűrű g | fo) g (gyűrű g | ||||
fo) g (gyö g | fo) g (gyö g | ||||
kuplun) g (gyár g | kuplun) g (gyár g | ||||
bélye) g (gyűjt g | |||||
bélye) g (gy g | |||||
jo) g (gyakor g | jo) g (gyakor g | ||||
dö) g (gyapjú g | dö) g (gyapjú g | ||||
fo) g (gyalu g | fo) g (gyalu g | ||||
é) gh (ajla kh | é) gh (ajla kh | ||||
pro) g (gyak g | pro) g (gyak g | ||||
arcüre) g (gyulladás g | arcüre) g (gyulladás g | ||||
bete) g (gyógyász g | |||||
szöve) g (gyűjt g | szöve) g (gyűjt g | ||||
ta) g (gyűl g | ta) g (gyűl g | ||||
gu) gg (ol g | gu) gg (ol g | ||||
baromsá) g (gy g | baromsá) g (gy g | ||||
tehetsé) g (gy g | tehetsé) g (gy g | ||||
bete) g (gy g | bete) g (gy g | ||||
egysé) g (gy g | |||||
átla) g (gy g | |||||
szőnye) g (gyár g | |||||
hűsé) g (gy g | |||||
_ma) g (gyűjt g | |||||
népessé) g (gy g | |||||
öröksé) g (gy g | |||||
_sze) g (gyár g | |||||
szö) g (gyors g | |||||
tisztsé) g (gy g | |||||
szúnyo) g (gy g | |||||
szala) g (gyakor g | |||||
szala) g (gyűjt g | |||||
egysé) g (gy g | |||||
átla) g (gy g | |||||
szőnye) g (gy g | |||||
hűsé) g (gy g | |||||
_ma) g (gyűjt g | |||||
népessé) g (gy g | |||||
öröksé) g (gy g | |||||
_sze) g (gyár g | |||||
szö) g (gyors g | |||||
tisztsé) g (gy g | |||||
szúnyo) g (gy g | |||||
szala) g (gyakor g | |||||
szala) g (gyűjt g | |||||
azonossá) g (gy g | |||||
barlan) g (gy g | |||||
betegsé) g (gy g | |||||
bizottsá) g (gy g | |||||
boldogsá) g (gy g | |||||
bumerán) g (gy g | |||||
szövetsé) g (gy g | |||||
cé) g (gyil g | |||||
cé) g (gyűr g | |||||
cukisá) g (gy g | |||||
me) ggy (önte J: | |||||
dö) g (gyár g | |||||
dömpin) g (gy g | |||||
dramatur) g (gy g | |||||
egyvele) g (gy g | |||||
ellensé) g (gy g | |||||
érdekessé) g (gy g | |||||
fére) g (gy g | |||||
feszültsé) g (gy g | |||||
gyalo) g (gy g | |||||
sere) g (gy g | |||||
hangszala) g (gy g | |||||
haran) g (gy g | |||||
híressé) g (gy g | |||||
hólya) g (gy g | |||||
horo) g (gy g | |||||
hülyesé) g (gy g | |||||
in) g (gyár g | |||||
jé) g (gyűr g | |||||
jo) g (gyűjt g | |||||
jo) g (gyüm g | |||||
közönsé) g (gy g | |||||
lé) g (gyár g | |||||
ma) g (gyár g | |||||
vé) g (gyant g | |||||
mássá) g (gy g | |||||
me) ggy (asz J: | |||||
me) ggy (ill J: | |||||
me) ggy (ültet J: | |||||
szala) g (gyár g | |||||
anya) g (gy g | |||||
nemzetsé) g (gy g | |||||
ördö) g (gy g | |||||
részle) g (gy g | |||||
réte) g (gy g | |||||
ru) g (gyant g | |||||
sebessé) g (gy g | |||||
szlen) g (gy g | |||||
ta) g (gyül g | |||||
tisztasá) g (gy g | |||||
újsá) g (gy g | |||||
végta) g (gy g | |||||
ele) ggy (el J: | |||||
.group gy | .group gy | ||||
gy J | gy J | ||||
száze) gy (edik J: | száze) gy (edik J: | ||||
védje) gy (straté J | védje) gy (straté J | ||||
na) gy (sor J | na) gy (sor J | ||||
e) gy (esít J: | |||||
ve) gy (érték J | |||||
e) gy (esít J: | |||||
ve) gy (érték J | |||||
.group h | .group h | ||||
h h | h h | ||||
sz) í (verő i: | sz) í (verő i: | ||||
sz) í (vevő i: | sz) í (vevő i: | ||||
expressz) í (v i: | expressz) í (v i: | ||||
recessz) í (ve i: | |||||
v) í (zener i: | |||||
recessz) í (ve i: | |||||
v) í (zener i: | |||||
.group j | .group j | ||||
j j | j j | ||||
k (-k k: //for example marok-körző word need cut one k letter and need spokening k: phoneme only | k (-k k: //for example marok-körző word need cut one k letter and need spokening k: phoneme only | ||||
k-) k //silent with second k phoneme | k-) k //silent with second k phoneme | ||||
_játé) kk (liens k: //exceptiof for kk (L01 rule | _játé) kk (liens k: //exceptiof for kk (L01 rule | ||||
községg kYS:e:g: | |||||
községg kYS:e:g: | |||||
.group l | .group l | ||||
lly (-L01 j //if have consonants after - character, need spokening one j letter with first part | lly (-L01 j //if have consonants after - character, need spokening one j letter with first part | ||||
ll (-L01 l | ll (-L01 l | ||||
bagate) ll (iz l | bagate) ll (iz l | ||||
fü) l (lyuk l | |||||
levé) l (lyuk l | |||||
nyé) l (lyuk l | |||||
.group m | .group m | ||||
m m | m m | ||||
n'Em _!'Ellt,e:,ES | n'Em _!'Ellt,e:,ES | ||||
porcelá) n (ny n | porcelá) n (ny n | ||||
részvé) ny (jegy n^ | |||||
agyo) n (játsz n | |||||
kölcsö) n (nyak n | |||||
dohá) ny (jöv n^ | |||||
elektro) n (ny n | |||||
magá) n (nyar n | |||||
igé) ny (jog n^ | |||||
szé) n (nyom n | |||||
verse) ny (játsz n^ | |||||
ár) ny (játé n^ | |||||
részvé) ny (jegy n^ | |||||
agyo) n (játsz n | |||||
kölcsö) n (nyak n | |||||
dohá) ny (jöv n^ | |||||
elektro) n (ny n | |||||
magá) n (nyar n | |||||
igé) ny (jog n^ | |||||
szé) n (nyom n | |||||
verse) ny (játsz n^ | |||||
ár) ny (játé n^ | |||||
arzé) n ((ny n | |||||
bá) n (nyíre n | |||||
benzi) n (ny n | |||||
nny (elv n|n^ | |||||
kö) nny (elv n^: | |||||
elektro) n (ny n | |||||
szé) n (nyom n | |||||
haszo) n (ny n | |||||
ingatla) n (nyil n | |||||
io) n (ny n | |||||
karbo) n (ny n | |||||
kazá) n (ny n | |||||
kokai) n (ny n | |||||
kölcsö) n (ny n | |||||
kupo) n (ny n | |||||
vászo) n (ny n | |||||
marato) n (ny n | |||||
mediá) n (ny n | |||||
telefo) n (ny n | |||||
morfi) n (ny n | |||||
mikro) n (ny n | |||||
neutro) n (ny n | |||||
oxigé) n (ny n | |||||
_ö) n (nyug n | |||||
panteo) n (ny n | |||||
sablo) n (ny n | |||||
skanze) n (ny n | |||||
szentivá) n (ny n | |||||
szé) n (nyom n | |||||
ta) n (nyomd n | |||||
vagyo) n (ny n | |||||
külö) n (jára n | |||||
szí) n (jeles n | |||||
.group o | .group o | ||||
o o | o o | ||||
_ki) s (szín S | _ki) s (szín S | ||||
kérdé) s S | kérdé) s S | ||||
végzé) s S | végzé) s S | ||||
blue) s (zen S | |||||
fúvó) s (zené S | |||||
települé) s (zón S | |||||
adá) s (zár S | |||||
blue) s (zen S | |||||
fúvó) s (zené S | |||||
települé) s (zón S | |||||
_adá) s (zár S | |||||
basszu) s (zen S | |||||
blue) s (zon S | |||||
egyene) s (zár S | |||||
fázi) s (zár S | |||||
konfliktu) s (zón S | |||||
kortár) s (zen S | |||||
kóru) s (zen S | |||||
mikulá) s (zacs S | |||||
mulató) s (zen S | |||||
orvo) s (zseb S | |||||
ő) s (száj S | |||||
ő) s (szám S | |||||
ő) s (szava S | |||||
ő) s (szent S | |||||
ő) s (szó S | |||||
rugó) s (zárj S | |||||
szeku) s (zen S | |||||
töré) s (zón S | |||||
verbunko) s (zen S | |||||
.group ss | .group ss | ||||
ssz ss2 | ssz ss2 | ||||
közlekedé) ssz Ss | közlekedé) ssz Ss | ||||
laká) ssz Ss | laká) ssz Ss | ||||
légzé) ssz Ss | légzé) ssz Ss | ||||
_le) ssz (ab Ss | |||||
le) ssz (ab Ss | |||||
meglepeté) ssz Ss | meglepeté) ssz Ss | ||||
nyila) ssz Ss | nyila) ssz Ss | ||||
pszichológu) ssz Ss | pszichológu) ssz Ss | ||||
zsarolá) ssz (er S|s | zsarolá) ssz (er S|s | ||||
dőlé) ssz (ab S|s | dőlé) ssz (ab S|s | ||||
települé) ssz (isz Ss | települé) ssz (isz Ss | ||||
vallá) ssz Ss | |||||
folyá) ssz (er Ss | |||||
_katyva) ssz s: | |||||
mitugrá) ssz (al s: | |||||
basszu) ssz Ss | |||||
buká) ssz Ss | |||||
erőlködé) ssz Ss | |||||
szarva) ssz Ss | |||||
ricinu) ssz Ss | |||||
települé) ssz Ss | |||||
utalá) ssz Ss | |||||
erősíté) ssz Ss | |||||
fázi) ssz Ss | |||||
fejleszté) ssz Ss | |||||
fúvó) ssz Ss | |||||
autó) ssz Ss | |||||
nyomá) ssz Ss | |||||
hatá) ssz Ss | |||||
effektu) ssz Ss | |||||
pulzu) ssz Ss | |||||
jelenté) ssz Ss | |||||
váltá) ssz Ss | |||||
mondá) ssz Ss | |||||
fázá) ssz Ss | |||||
ve) ssz (ők s: | |||||
_ő) ssz (láv Ss | |||||
periódu) ssz Ss | |||||
pólu) ssz Ss | |||||
rová) ssz Ss | |||||
utasítá) ssz Ss | |||||
tudá) ssz Ss | |||||
turizmu) ssz Ss | |||||
hajó) ssz (leng Ss | |||||
vezeté) ssz Ss | |||||
_vonó) ssz (iv Ss | |||||
ülé) ssz Ss | |||||
motoro) ssz Ss | |||||
vallá) ssz Ss | |||||
folyá) ssz (er Ss | |||||
_katyva) ssz s: | |||||
mitugrá) ssz (al s: | |||||
basszu) ssz Ss | |||||
buká) ssz Ss | |||||
erőlködé) ssz Ss | |||||
szarva) ssz Ss | |||||
ricinu) ssz Ss | |||||
települé) ssz Ss | |||||
utalá) ssz Ss | |||||
erősíté) ssz Ss | |||||
fázi) ssz Ss | |||||
fejleszté) ssz Ss | |||||
fúvó) ssz Ss | |||||
autó) ssz Ss | |||||
nyomá) ssz Ss | |||||
hatá) ssz Ss | |||||
effektu) ssz Ss | |||||
pulzu) ssz Ss | |||||
jelenté) ssz Ss | |||||
váltá) ssz Ss | |||||
mondá) ssz Ss | |||||
fázá) ssz Ss | |||||
ve) ssz (ők s: | |||||
_ő) ssz (láv Ss | |||||
periódu) ssz Ss | |||||
pólu) ssz Ss | |||||
rová) ssz Ss | |||||
utasítá) ssz Ss | |||||
tudá) ssz Ss | |||||
turizmu) ssz Ss | |||||
hajó) ssz (leng Ss | |||||
vezeté) ssz Ss | |||||
_vonó) ssz (iv Ss | |||||
ülé) ssz Ss | |||||
motoro) ssz Ss | |||||
adá) ssz Ss | |||||
adó) ssz Ss | |||||
aktivitá) ssz Ss | |||||
akusztiku) ssz Ss | |||||
arco) ssz Ss | |||||
alkotá) ssz Ss | |||||
állomá) ssz Ss | |||||
típu) ssz Ss | |||||
analízi) ssz Ss | |||||
anyó) ssz Ss | |||||
áramlá) ssz Ss | |||||
emelkedé) ssz Ss | |||||
árré) ssz Ss | |||||
árveré) ssz Ss | |||||
áttöré) ssz Ss | |||||
autizmu) ssz Ss | |||||
autoritá) ssz Ss | |||||
metszé) ssz Ss | |||||
mutatkozá) ssz Ss | |||||
blue) ssz (al s: | |||||
blue) ssz Ss | |||||
bombázá) ssz Ss | |||||
bukfencezé) ssz Ss | |||||
bunyó) ssz Ss | |||||
büfögé) ssz Ss | |||||
carie) ssz Ss | |||||
ciklu) ssz Ss | |||||
cipru) ssz Ss | |||||
ciripelé) ssz Ss | |||||
citru) ssz Ss | |||||
csevegé) ssz Ss | |||||
csicsergé) ssz Ss | |||||
diakónu) ssz Ss | |||||
díjszabá) ssz Ss | |||||
dinamiku) ssz Ss | |||||
dobolá) ssz Ss | |||||
dózi) ssz Ss | |||||
dzsidá) ssz Ss | |||||
egymá) ssz Ss | |||||
elbeszélé) ssz Ss | |||||
elektroniku) ssz Ss | |||||
ellátá) ssz Ss | |||||
eltolá) ssz Ss | |||||
emigrán) ssz Ss | |||||
éneke) ssz Ss | |||||
epilógu) ssz Ss | |||||
építé) ssz (ab Ss | |||||
erőforrá) ssz Ss | |||||
erszénye) ssz Ss | |||||
érvelé) ssz Ss | |||||
esé) ssz Ss | |||||
észlelé) ssz Ss | |||||
evező) ssz Ss | |||||
evolven) ssz Ss | |||||
fagyá) ssz Ss | |||||
fá) ssz (er Ss | |||||
dísze) ssz Ss | |||||
fejlődé) ssz Ss | |||||
fékezé) ssz Ss | |||||
lángolá) ssz Ss | |||||
feltevé) ssz Ss | |||||
felvoná) ssz Ss | |||||
féti) ssz Ss | |||||
foga) ssz Ss | |||||
fordítá) ssz Ss | |||||
fotó) ssz Ss | |||||
földmíve) ssz Ss | |||||
földműve) ssz Ss | |||||
rengé) ssz Ss | |||||
főzé) ssz Ss | |||||
fuvaro) ssz Ss | |||||
hú) ssz (er Ss | |||||
gerjeszté) ssz Ss | |||||
gesztu) ssz Ss | |||||
szűré) ssz Ss | |||||
gulyá) ssz Ss | |||||
gyártá) ssz Ss | |||||
gyülekezé) ssz Ss | |||||
gyűlé) ssz Ss | |||||
hajtá) ssz Ss | |||||
hangzá) ssz Ss | |||||
hányado) ssz Ss | |||||
háztartá) ssz Ss | |||||
hente) ssz Ss | |||||
hitelesíté) ssz Ss | |||||
hivatá) ssz Ss | |||||
horga) ssz Ss | |||||
horkolá) ssz Ss | |||||
hú) ssz (ál Ss | |||||
hú) ssz (ekt Ss | |||||
hú) ssz (eml Ss | |||||
hú) ssz (int Ss | |||||
hú) ssz (örny Ss | |||||
hú) ssz (üksé Ss | |||||
hűté) ssz Ss | |||||
identitá) ssz Ss | |||||
igazgatá) ssz Ss | |||||
inciden) ssz Ss | |||||
indítá) ssz Ss | |||||
intriku) ssz Ss | |||||
írá) ssz Ss | |||||
játéko) ssz Ss | |||||
jelölé) ssz Ss | |||||
jézu) ssz Ss | |||||
júdá) ssz Ss | |||||
kaka) ssz Ss | |||||
kántálá) ssz Ss | |||||
kapacitá) ssz Ss | |||||
kapitalizmu) ssz Ss | |||||
karbantartá) ssz Ss | |||||
kárpito) ssz Ss | |||||
ver) ssz (er Ss | |||||
kerékpáro) ssz Ss | |||||
döfé) ssz Ss | |||||
ké) ssz (án Ss | |||||
ké) ssz (ár Ss | |||||
ké) ssz (er Ss | |||||
kette) ssz Ss | |||||
kézműve) ssz Ss | |||||
kidolgozá) ssz Ss | |||||
kifejezé) ssz Ss | |||||
ki) ssz (eke Ss | |||||
ro) ssz (abb s: | |||||
konfliktu) ssz Ss | |||||
konstan) ssz Ss | |||||
kontinen) ssz Ss | |||||
kóro) ssz (en Ss | |||||
kortár) ssz Ss | |||||
kóru) ssz Ss | |||||
_ko) ssz (er Ss | |||||
köle) ssz Ss | |||||
könyve) ssz (é s: | |||||
könyvtáro) ssz Ss | |||||
körö) ssz (e Ss | |||||
kőrö) ssz (eg Ss | |||||
kreativitá) ssz Ss | |||||
krízi) ssz Ss | |||||
kubiko) ssz Ss | |||||
kulturáli) ssz Ss | |||||
kurzu) ssz Ss | |||||
kutatá) ssz Ss | |||||
labirintu) ssz Ss | |||||
lakato) ssz Ss | |||||
lángo) ssz Ss | |||||
ömlé) ssz Ss | |||||
lebegé) ssz Ss | |||||
leképezé) ssz Ss | |||||
nyúlá) ssz Ss | |||||
rohaná) ssz Ss | |||||
levelezé) ssz Ss | |||||
fo) ssz (ín Ss | |||||
libbené) ssz Ss | |||||
likviditá) ssz Ss | |||||
lobbaná) ssz Ss | |||||
lövé) ssz (ám Ss | |||||
lövöldözé) ssz Ss | |||||
maga) ssz (int Ss | |||||
magatartá) ssz Ss | |||||
mágu) ssz Ss | |||||
érzé) ssz Ss | |||||
jegyzé) ssz (er Ss | |||||
lepé) ssz (er Ss | |||||
művelé) ssz Ss | |||||
megoldá) ssz Ss | |||||
rendelé) ssz Ss | |||||
megtorlá) ssz Ss | |||||
méhka) ssz (er Ss | |||||
mellka) ssz Ss | |||||
mentő) ssz Ss | |||||
mérgezé) ssz Ss | |||||
mestersége) ssz Ss | |||||
meteorológu) ssz Ss | |||||
mósu) ssz (er Ss | |||||
mután) ssz Ss | |||||
működé) ssz Ss | |||||
náda) ssz Ss | |||||
négye) ssz Ss | |||||
nyaralá) ssz Ss | |||||
nyögé) ssz Ss | |||||
oktatá) ssz Ss | |||||
olvasá) ssz Ss | |||||
órá) ssz Ss | |||||
orgazmu) ssz Ss | |||||
gyilko) ssz Ss | |||||
orvo) ssz Ss | |||||
ölelé) ssz Ss | |||||
ellenőrzé) ssz Ss | |||||
önkénte) ssz Ss | |||||
öntözé) ssz Ss | |||||
összeomlá) ssz Ss | |||||
ötvö) ssz Ss | |||||
pálo) ssz (en Ss | |||||
lámpá) ssz Ss | |||||
pazarlá) ssz Ss | |||||
pedagógu) ssz Ss | |||||
pesti) ssz Ss | |||||
pirami) ssz Ss | |||||
postá) ssz Ss | |||||
pörsené) ssz Ss | |||||
pré) ssz (ak Ss | |||||
prímá) ssz Ss | |||||
prioritá) ssz Ss | |||||
próbálkozá) ssz Ss | |||||
ré) ssz (ele Ss | |||||
részesedé) ssz Ss | |||||
reziden) ssz Ss | |||||
rítu) ssz Ss | |||||
robbaná) ssz Ss | |||||
robbantá) ssz Ss | |||||
röfögé) ssz Ss | |||||
rögtönzé) ssz Ss | |||||
rugó) ssz Ss | |||||
sakkozá) ssz Ss | |||||
sa) ssz (ikl Ss | |||||
sa) ssz (imb Ss | |||||
sa) ssz (obr Ss | |||||
sa) ssz (obor Ss | |||||
sercegé) ssz Ss | |||||
_sor) ssz (ab Ss | |||||
sörha) ssz Ss | |||||
száza) ssz Ss | |||||
szedé) ssz Ss | |||||
széle) ssz Ss | |||||
játszá) ssz Ss | |||||
szintetiku) ssz Ss | |||||
dobbaná) ssz Ss | |||||
szociáli) ssz Ss | |||||
szolgáltatá) ssz Ss | |||||
szövé) ssz Ss | |||||
taktu) ssz Ss | |||||
tanulá) ssz Ss | |||||
tapsolá) ssz Ss | |||||
társulá) ssz Ss | |||||
teknő) ssz Ss | |||||
telje) ssz Ss | |||||
teremté) ssz Ss | |||||
terhe) ssz Ss | |||||
termé) ssz Ss | |||||
tervezé) ssz Ss | |||||
tetoválá) ssz Ss | |||||
textu) ssz Ss | |||||
tizede) ssz Ss | |||||
tölté) ssz Ss | |||||
töré) ssz Ss | |||||
trombitálá) ssz Ss | |||||
trónu) ssz Ss | |||||
tűré) ssz Ss | |||||
tüsszögé) ssz Ss | |||||
unikorni) ssz Ss | |||||
uta) ssz Ss | |||||
uzsorá) ssz Ss | |||||
űrhajó) ssz Ss | |||||
ütközé) ssz Ss | |||||
vágá) ssz Ss | |||||
ütő) ssz Ss | |||||
választá) ssz Ss | |||||
vállalkozá) ssz Ss | |||||
varrá) ssz Ss | |||||
esztergályo) ssz Ss | |||||
verbunko) ssz Ss | |||||
versengé) ssz Ss | |||||
villámlá) ssz Ss | |||||
vívá) ssz Ss | |||||
bizto) ssz Ss | |||||
vonaglá) ssz Ss | |||||
voná) ssz Ss | |||||
zaklatá) ssz Ss | |||||
zászló) ssz Ss | |||||
zöldsége) ssz Ss | |||||
emlő) ssz (erű Ss | |||||
kapá) ssz (őlő Ss | |||||
kuva) ssz (al s: | |||||
szertartá) ssz (erű Ss | |||||
csipogá) ssz Ss | |||||
.group sz | .group sz | ||||
sz s | sz s | ||||
ré) sz (árás Sz | ré) sz (árás Sz | ||||
_te) szts (or st|S | _te) szts (or st|S | ||||
serté) szs (ir S|Z | serté) szs (ir S|Z | ||||
tava) sz (áról s | |||||
te) sztsz (ezon st|s | |||||
balla) szts (úly st|S | |||||
kere) sztsz (ala st|s | |||||
para) szts (alá st|S | |||||
para) szts (ere st|S | |||||
para) szts (orb st|S | |||||
tava) sz (áról s | |||||
te) sztsz (ezon st|s | |||||
balla) szts (úly st|S | |||||
kere) sztsz (ala st|s | |||||
para) szts (alá st|S | |||||
para) szts (ere st|S | |||||
para) szts (orb st|S | |||||
csömö) sz (öl s | |||||
enyve) szs (in S|Z | |||||
li) sztsz (emek st|s | |||||
.group t | .group t | ||||
t t | t t | ||||
álla) t (cirk t | álla) t (cirk t | ||||
szen) t (szob t | szen) t (szob t | ||||
koncer) t (jeg t | koncer) t (jeg t | ||||
tesz) t (cikl t | |||||
tesz) t (járm t | |||||
tesz) t (játék t | |||||
interne) t (jog t | |||||
á) tsz (orzás t|s | |||||
bará) t (szeren t | |||||
bi) t (széles t | |||||
spor) t (sér t | |||||
sej) t (szinte t | |||||
cson) t (sová t | |||||
direk) t (szorza t | |||||
ese) t (szétvá t | |||||
gondola) t (szond t | |||||
karsz) t (járat t | |||||
klariné) t (sz t | |||||
látsza) t (jóin t | |||||
metsze) t (sor t | |||||
mosza) t (sejt t | |||||
sej) t (sűrű t | |||||
vilaje) t (szék t | |||||
tesz) t (cikl t | |||||
tesz) t (járm t | |||||
tesz) t (játék t | |||||
interne) t (jog t | |||||
á) tsz (orzás t|s | |||||
bará) t (szeren t | |||||
bi) t (széles t | |||||
spor) t (sér t | |||||
sej) t (szinte t | |||||
cson) t (sová t | |||||
direk) t (szorza t | |||||
ese) t (szétvá t | |||||
gondola) t (szond t | |||||
karsz) t (járat t | |||||
klariné) t (sz t | |||||
látsza) t (jóin t | |||||
metsze) t (sor t | |||||
mosza) t (sejt t | |||||
sej) t (sűrű t | |||||
vilaje) t (szék t | |||||
csopor) t (sorsol t | |||||
saj) t (salát t | |||||
kama) t (jövedel t | |||||
tisztele) t (jeggy t | |||||
épüle) t (szobrá t | |||||
eszkor) t (szolgál t | |||||
foszfá) t (jövedel t | |||||
gráni) t (szob t | |||||
.group tj | .group tj | ||||
C) tj c | C) tj c | ||||
ké) tj (átszm tj | ké) tj (átszm tj | ||||
szavaza) tj (og tj | szavaza) tj (og tj | ||||
szavaza) tj (eg tj | szavaza) tj (eg tj | ||||
vona) tj (eggy tj | |||||
vona) tj (eggy tj | |||||
billentyűze) tj (áté tj | |||||
.group ts | .group ts | ||||
ts (_S2 tS //general rule with word end of ts letters | ts (_S2 tS //general rule with word end of ts letters | ||||
bennszülö) tt (jelmez t | bennszülö) tt (jelmez t | ||||
krike) tt (ját t | krike) tt (ját t | ||||
szé) tt (rancsír t: | szé) tt (rancsír t: | ||||
elláto) tt (jog t | |||||
felnő) tt (játszó t | |||||
.group ty | .group ty | ||||
mindszen) ty t|i | mindszen) ty t|i | ||||
_ré) zs (ó zS | _ré) zs (ó zS | ||||
ő) zs (uta zS | ő) zs (uta zS | ||||
_vá) zs (or zS | _vá) zs (or zS | ||||
szára) zs (ág SS | |||||
szára) zs (ág SS | |||||
_nehé) zs (ely zS | _nehé) zs (ely zS | ||||
_) zürich tsyR2i C | _) zürich tsyR2i C | ||||
tí) zsz (er s: | tí) zsz (er s: | ||||
_tí) z (shill z | _tí) z (shill z | ||||
topá) z z | topá) z z | ||||
dör) zsz (ör Z|z | dör) zsz (ör Z|z | ||||
raj) z (sa z | |||||
tí) z (seb z | |||||
raj) z (sa z | |||||
tí) z (seb z | |||||
egészségkö) z (pont s | egészségkö) z (pont s | ||||
leme) z (slá z | |||||
raj) z (sor z | |||||
ri) zs (zab Z | |||||
leme) z (slá z | |||||
raj) z (sor z | |||||
ri) zs (zab Z | |||||
vá) z (sér z | |||||
ví) z z | |||||
leme) z z | |||||
eszkö) z z | |||||
gá) z (zsám z | |||||
gá) z (seb z | |||||
gá) z (ster z | |||||
gá) z (súr z | |||||
gá) z (sűr z | |||||
gá) z (süt z | |||||
gá) z (sát z | |||||
halma) z z | |||||
gá) z (síp z | |||||
masszá) zs (zuh Z | |||||
ő) z (salát z | |||||
ő) z (sírá z | |||||
raj) z (skic z | |||||
raj) z (st z | |||||
ré) z (zsan z | |||||
tí) z (sch z | |||||
ví) z (zsák z | |||||
ví) z (zsong z | |||||
.group | .group | ||||
$ dolla:R2 | $ dolla:R2 |
het h@t $only | het h@t $only | ||||
een @n $only | een @n $only | ||||
ən @-n // char.replacement for 'n | ən @-n // char.replacement for 'n | ||||
ət t // char.replacement for 't | |||||
ət @t // char.replacement for 't | |||||
een e:n $atend | een e:n $atend | ||||
(de een) d@||e:n | (de een) d@||e:n | ||||
(het een) h@t||e:n | (het een) h@t||e:n | ||||
trokken $alt | trokken $alt | ||||
zeten $alt | zeten $alt | ||||
// -emen is not a stressed ending | |||||
boezemen $alt | |||||
ademen $alt | |||||
bliksemen $alt | |||||
wasemen $alt | |||||
// words where -er is not a stressed verb ending | // words where -er is not a stressed verb ending | ||||
diller $alt // bediller | diller $alt // bediller | ||||
schepper $alt // opschepper | schepper $alt // opschepper | ||||
steller $alt // aansteller | steller $alt // aansteller | ||||
wakker $alt | wakker $alt | ||||
wapper $alt | wapper $alt | ||||
water $alt | water $alt | ||||
wedijver $alt | |||||
wedijver v#Ed'EIv@r $alt | |||||
weelder $alt | weelder $alt | ||||
wegwijzer $alt | wegwijzer $alt | ||||
weiger $alt | weiger $alt | ||||
alles Al@s | alles Al@s | ||||
amino $1 | amino $1 | ||||
amnestie $3 | amnestie $3 | ||||
antenne $2 $alt2 | |||||
april a:pr'Il | april a:pr'Il | ||||
armand _^_FR | armand _^_FR | ||||
augustus VUQ'8st8s | augustus VUQ'8st8s | ||||
damascering damA;s'e:rIN | damascering damA;s'e:rIN | ||||
december $2 | december $2 | ||||
desillusie dEsIlyzi | desillusie dEsIlyzi | ||||
desondanks dEsOnd'ANks | |||||
detail de:t'Aj | detail de:t'Aj | ||||
dieet $2 | dieet $2 | ||||
diesel diz@l | diesel diz@l | ||||
enorm $2 | enorm $2 | ||||
enquête A~k'Et@ $alt2 | enquête A~k'Et@ $alt2 | ||||
erosie e:r'o:zi | erosie e:r'o:zi | ||||
evangelie e:vANQ'e:li | |||||
eucharistie $4 | eucharistie $4 | ||||
explosie $2 | explosie $2 | ||||
extern Ekst'Ern | |||||
februari fe:bry'a:ri | februari fe:bry'a:ri | ||||
fiche fiS@ | fiche fiS@ | ||||
franchise frA'Si:z@ | franchise frA'Si:z@ | ||||
gouache Qu'AS | gouache Qu'AS | ||||
gefrituurd $3 | gefrituurd $3 | ||||
hysterie hIstI:r'i | hysterie hIstI:r'i | ||||
ideaal ide:j'a:l | |||||
ideale ide:j'a:l@ | |||||
immens Im'Ens | |||||
impregnering Impr,EQn'e:IN | impregnering Impr,EQn'e:IN | ||||
inductie $2 | inductie $2 | ||||
informatieve InfOrma:t'iv@ | informatieve InfOrma:t'iv@ | ||||
ingrediënt $4 | ingrediënt $4 | ||||
ingenieur Inzj@nj'Y:r | ingenieur Inzj@nj'Y:r | ||||
informatie $3 | informatie $3 | ||||
intern Int'Ern | |||||
invasie $2 | invasie $2 | ||||
januari $3 | januari $3 | ||||
jury Zyri | jury Zyri | ||||
kadaster $2 | kadaster $2 | ||||
kleinzerig klEInz'e:r@Q | kleinzerig klEInz'e:r@Q | ||||
kredietwaardig $3 | |||||
leesregel le:sre:Q@l | leesregel le:sre:Q@l | ||||
levendig le:v@nd@Q | levendig le:v@nd@Q | ||||
lunch l8nS | lunch l8nS | ||||
mysterie mIst'I:ri | mysterie mIst'I:ri | ||||
nabij nab'EI | nabij nab'EI | ||||
new nyU | new nyU | ||||
noordelijk no:rd@l@k | |||||
november $2 | november $2 | ||||
oceaan o:se:j'a:n | |||||
oceanen o:se:j'a:n@n | |||||
oktober $2 | oktober $2 | ||||
oliesel o:lis@l | oliesel o:lis@l | ||||
omver o:mv'Er | omver o:mv'Er | ||||
//ongelukkig $3 | //ongelukkig $3 | ||||
ongerieflijk $3 | ongerieflijk $3 | ||||
//ongrondwettig $3 | //ongrondwettig $3 | ||||
oostelijk o:st@l@k | |||||
partijvoorzitters $2 | partijvoorzitters $2 | ||||
periferie pI:rifI:r'i | periferie pI:rifI:r'i | ||||
perron $2 | perron $2 | ||||
pistache pist'AS | pistache pist'AS | ||||
premie $1 | |||||
privilege privil'e:Z@ $alt2 | privilege privil'e:Z@ $alt2 | ||||
proces $2 | proces $2 | ||||
projectielen $3 | projectielen $3 | ||||
spektakel $2 | spektakel $2 | ||||
sportief $2 | sportief $2 | ||||
sportieve $2 | sportieve $2 | ||||
stream stri:m | |||||
tegennatuur $4 | tegennatuur $4 | ||||
tralie $1 | tralie $1 | ||||
travestie $3 | travestie $3 | ||||
vergezicht vErQ@zIxt | vergezicht vErQ@zIxt | ||||
verre vEr@ | verre vEr@ | ||||
verrekijker vEr@kEIk@r | verrekijker vEr@kEIk@r | ||||
versa vErs'a: | |||||
verste vErst@ | verste vErst@ | ||||
verte vErt@ | verte vErt@ | ||||
volledig $2 | volledig $2 | ||||
wanschapen $2 | wanschapen $2 | ||||
wantrouwend $2 | wantrouwend $2 | ||||
weliswaar v#ElIsw'a:r | weliswaar v#ElIsw'a:r | ||||
werelden v#I:r@ld@n | |||||
werktuigelijk $2 | werktuigelijk $2 | ||||
westelijk v#Est@l@k | |||||
zeeën ze:@n | |||||
ziekenhuisbevalling zi:k@nhWysb@vAlIN | ziekenhuisbevalling zi:k@nhWysb@vAlIN | ||||
zuiden zWyd@n | |||||
zuidelijk zWyd@l@k | |||||
alexandrië $3 | alexandrië $3 | ||||
Benin be:n'in | Benin be:n'in | ||||
canada kAna:da: | canada kAna:da: | ||||
Genua Qe:nyv#a: | |||||
Kinshasa kInS'a:sa: | Kinshasa kInS'a:sa: | ||||
Nairobi nAjr'o:bi | Nairobi nAjr'o:bi | ||||
Napel $alt | Napel $alt |
_) adres (@P5 a:dr'Es | _) adres (@P5 a:dr'Es | ||||
_) af (C@P2 'Af | _) af (C@P2 'Af | ||||
_) affich %AfiS | _) affich %AfiS | ||||
_) af (rika a:f | |||||
age (_ 'a:Z@ | age (_ 'a:Z@ | ||||
ages (_S1 s | ages (_S1 s | ||||
age (_$w_alt a:Q@ | age (_$w_alt a:Q@ | ||||
@) ant (e_ 'Ant | @) ant (e_ 'Ant | ||||
@) ant (en_ 'Ant | @) ant (en_ 'Ant | ||||
@) ant (er_ 'Ant | @) ant (er_ 'Ant | ||||
ao (_ 'VU // cacao | |||||
@) ares (_ a:r'Es | @) ares (_ a:r'Es | ||||
aris (_ 'a:rIs | aris (_ 'a:rIs | ||||
arissen (_ 'a:rIs@n | arissen (_ 'a:rIs@n | ||||
el) e (_+S1qd @ | el) e (_+S1qd @ | ||||
er) e (_+S1qd @ | er) e (_+S1qd @ | ||||
ig) e (_+S1qdm @ | ig) e (_+S1qdm @ | ||||
lijk) e (_S1m @ | |||||
ea (_ 'e:a: | ea (_ 'e:a: | ||||
eau 'o: //words with French origin | eau 'o: //words with French origin | ||||
@) ee (_ 'e: | @) ee (_ 'e: | ||||
@) ee (X_ 'e: | @) ee (X_ 'e: | ||||
@) ee (r_ 'I | @) ee (r_ 'I | ||||
h) ee (r_ I: | |||||
@) ee (rt_ 'I | @) ee (rt_ 'I | ||||
@) ee (rd_ 'I | @) ee (rd_ 'I | ||||
@) ee (rde_ 'I | @) ee (rde_ 'I | ||||
@) elen (_ 'e:l@n | @) elen (_ 'e:l@n | ||||
@) el (en_$p_alt2 @L | @) el (en_$p_alt2 @L | ||||
@) elds (_ @lts | |||||
&) elijks @l@ks | &) elijks @l@ks | ||||
&) em (_ @m | &) em (_ @m | ||||
&) emen (_$w_alt @m@n | |||||
waarn) em e:m | |||||
&) e (ment @ | &) e (ment @ | ||||
eden (_ e:d@n // ?? | eden (_ e:d@n // ?? | ||||
&) en (_S2qd @n | &) en (_S2qd @n | ||||
KAC) en (_S2e @n // flag 'e' means double the previous vowel | KAC) en (_S2e @n // flag 'e' means double the previous vowel | ||||
KAj) en (_S2 @n | KAj) en (_S2 @n | ||||
KAx) en (_S2 @n | |||||
and) en (_S2 @n | and) en (_S2 @n | ||||
ie) en (_S2 @n | |||||
el) en (_+S2qd @n | el) en (_+S2qd @n | ||||
er) en (_+S2qd @n | er) en (_+S2qd @n | ||||
@) er (ingen_ 'I:r | @) er (ingen_ 'I:r | ||||
&) er (_$p_alt =@r | &) er (_$p_alt =@r | ||||
&) er (e_$p_alt =@r | &) er (e_$p_alt =@r | ||||
&) er (en_$p_alt =@r | |||||
&) er (en_$p_alt =@r // where 'eren' is not a verb ending | |||||
&) er (t_$p_alt =@r | &) er (t_$p_alt =@r | ||||
&) er (d_$p_alt =@r | &) er (d_$p_alt =@r | ||||
&) er (de_$p_alt =@r | &) er (de_$p_alt =@r | ||||
_) er (@P2 Er | _) er (@P2 Er | ||||
&) er (_ @r | &) er (_ @r | ||||
&) ere (_ @r@ | &) ere (_ @r@ | ||||
&) er (en_$p_alt @r // where 'eren' is not a verb ending | |||||
eren (_ 'I:r@n | eren (_ 'I:r@n | ||||
erend (_ 'I:r@nd | erend (_ 'I:r@nd | ||||
@) eres (_S4qd @r'Es | @) eres (_S4qd @r'Es | ||||
gg Q | gg Q | ||||
s) g x | s) g x | ||||
_) gast (@ Q'Ast | |||||
_) gasten (@P6 Q'Ast@n | |||||
g (é Z | g (é Z | ||||
g (ee_ Z | g (ee_ Z | ||||
_lo) g (eer Z | _lo) g (eer Z | ||||
gener (aal Q,e:n@r | gener (aal Q,e:n@r | ||||
_) gelijk Q@lEIk | _) gelijk Q@lEIk | ||||
_) gemeente (@P8 Q@m'e:nt@ | _) gemeente (@P8 Q@m'e:nt@ | ||||
genre ZA~r@ | |||||
_) ge (lC QE | _) ge (lC QE | ||||
_) ge (rC QE | _) ge (rC QE | ||||
_) ge (lenL02 Qe: | _) ge (lenL02 Qe: | ||||
h h | h h | ||||
C) h (K | C) h (K | ||||
C) hand (_S4 h'Ant | |||||
_) handicap hEndikEp | _) handicap hEndikEp | ||||
_) her (@P3 hEr | _) her (@P3 hEr | ||||
_) her (der hEr | |||||
_) her (ds hEr | |||||
_) her (en hI:r | _) her (en hI:r | ||||
_) herfst (@P6 h'Erfst | |||||
_) herinn h%ErIn // herinneren | _) herinn h%ErIn // herinneren | ||||
_) hersen h'Ers@n | _) hersen h'Ers@n | ||||
&) heid (_S4 hEIt | &) heid (_S4 hEIt | ||||
CAss) ie (_ =i | CAss) ie (_ =i | ||||
@) ig (_S2dq =@Q | @) ig (_S2dq =@Q | ||||
@) ige (_S1m @ | @) ige (_S1m @ | ||||
_) ige (_ @Q@ // when a prefix is removed, eg "herfstige" | |||||
@) igen (_ =@Q@n | @) igen (_ =@Q@n | ||||
@) iger (_ =@Q@r | @) iger (_ =@Q@r | ||||
@) igere (_ =@Q@r@ | @) igere (_ =@Q@r@ | ||||
&) iko (_ =iko: | &) iko (_ =iko: | ||||
fam) i (lie 'i | fam) i (lie 'i | ||||
_) in (C@P2 'In | _) in (C@P2 'In | ||||
_) ing (eC_ IN // bewerkingen | |||||
_) in (do In | _) in (do In | ||||
_) in (forma In | _) in (forma In | ||||
ine (_ 'in@ | ine (_ 'in@ | ||||
ines (_ 'in@s | ines (_ 'in@s | ||||
_) informatie (@P10 InfOrm'a:tsi | _) informatie (@P10 InfOrm'a:tsi | ||||
_) inn (@P2 'I // ?? inneren | |||||
_) inn (er 'In // ?? inneren | |||||
_) inn (ig In | |||||
_) inter Int@r | _) inter Int@r | ||||
io (nage iO | io (nage iO | ||||
io (de_ i'o: | io (de_ i'o: | ||||
@) isme (_ 'Ism@ | @) isme (_ 'Ism@ | ||||
@) ist (_ 'Ist | @) ist (_ 'Ist | ||||
@) isten (_ 'Ist@n | @) isten (_ 'Ist@n | ||||
Ar) ia (_ =ia: | |||||
Ar) ium (_ =i8m | |||||
.group j | .group j | ||||
j j | j j | ||||
_) jaar (@P4 j'a:r | _) jaar (@P4 j'a:r | ||||
jaar (lijk ja:r | jaar (lijk ja:r | ||||
jou (rna Zu | jou (rna Zu | ||||
kokkerel kOk@r'El | kokkerel kOk@r'El | ||||
_) koning k'o:nIN // in compounds | _) koning k'o:nIN // in compounds | ||||
_) koningin ko:nIQ'In | _) koningin ko:nIQ'In | ||||
_) krediet (@P7 kr@d'it | |||||
.group l | .group l | ||||
l l | l l | ||||
l) l | l) l | ||||
&) lijk (_S4 l@k | &) lijk (_S4 l@k | ||||
&) lijke (_S5 l@k@ | |||||
&) lijken (_S6 l@k@n | &) lijken (_S6 l@k@n | ||||
&) lijker (_S6 l@k@r | &) lijker (_S6 l@k@r | ||||
&) lijkere (_S7 l@k@r@ | &) lijkere (_S7 l@k@r@ | ||||
&) laan (_S4 la:n | &) laan (_S4 la:n | ||||
_) lange (@P5 laN@ | _) lange (@P5 laN@ | ||||
_) land (@P4 l'And | |||||
_) land (e l'And | |||||
_) lente (@P5 l'Ent@ | |||||
_) liefdes (@P7 l'ifd@s | _) liefdes (@P7 l'ifd@s | ||||
detai) ll | detai) ll | ||||
@) loog (_ lo:x | @) loog (_ lo:x | ||||
_) mee (rC mI: | _) mee (rC mI: | ||||
menu (_ m@ny | menu (_ m@ny | ||||
_) mi (cro mi | _) mi (cro mi | ||||
_) milieu mIlj'Y: | |||||
_) mi (s@ m%I | _) mi (s@ m%I | ||||
_) mis (anC miz | _) mis (anC miz | ||||
_) mis (commP3 m'Is | _) mis (commP3 m'Is | ||||
_) op (enen+ 'o:p | _) op (enen+ 'o:p | ||||
_) openings (P8 'o:p@nINs | _) openings (P8 'o:p@nINs | ||||
_) op (era 'o:p | _) op (era 'o:p | ||||
_) opper Op@r | |||||
_) op (tion Op | _) op (tion Op | ||||
os (_ Os | os (_ Os | ||||
ou (che_ u | ou (che_ u | ||||
sch sx | sch sx | ||||
sch (_ s | sch (_ s | ||||
sch (e_ s | sch (e_ s | ||||
sch (er_ s | |||||
_) sch (n S | _) sch (n S | ||||
_) sh S | _) sh S | ||||
sh (K S | sh (K S | ||||
_) trans (@P5 tr,Ans | _) trans (@P5 tr,Ans | ||||
.group te | .group te | ||||
_) tege (lijk t@Q@ | |||||
_) tegen (P5 t'e:Q@n | _) tegen (P5 t'e:Q@n | ||||
_) terug (P5 t@r'8x | _) terug (P5 t@r'8x | ||||
_) te (gelijkP2 t@ | _) te (gelijkP2 t@ | ||||
v v | v v | ||||
s) v f | s) v f | ||||
_) vakantie (@P8 va:k'Antsi | |||||
_) van (@P3 v%An | _) van (@P3 v%An | ||||
_) vanzelf (@P7 vAnz,Elf | _) vanzelf (@P7 vAnz,Elf | ||||
_) vang vAN | _) vang vAN | ||||
_) weg (@P3 v#'EQ | _) weg (@P3 v#'EQ | ||||
_) weg (en v#e:Q | _) weg (en v#e:Q | ||||
_) weg (e_ v#e:Q // bewegelijk | _) weg (e_ v#e:Q // bewegelijk | ||||
_) weg (ing v#e:Q // bewegingen | |||||
_) wereld (@P6 v#'I:r@lt | |||||
_) werk (@P4 v#'Erk | _) werk (@P4 v#'Erk | ||||
_) werk (el v#'Erk | _) werk (el v#'Erk | ||||
_) werk (ing v#'Erk | |||||
_) west (@P4 v#Est | _) west (@P4 v#Est | ||||
_) wets (@P4 v#'Ets | |||||
_) winter (@P6 v#'Int@r | |||||
_) woon (@P4 v#'o:n | _) woon (@P4 v#'o:n | ||||
_) wr (@ vr | _) wr (@ vr | ||||
z (z | z (z | ||||
s) z | s) z | ||||
_) zee (@P3 z'e: | |||||
_) zeeuw zeU | |||||
zele (_S4 ze:l@ // common suffix for cities. | zele (_S4 ze:l@ // common suffix for cities. | ||||
@) zelf (_S4 s'Elf | @) zelf (_S4 s'Elf | ||||
_) zoge (@P4 z,o:Q@ | _) zoge (@P4 z,o:Q@ | ||||
_) zomer (@P5 z'o:m@r | |||||
_) zuid (@P4 zWyt | _) zuid (@P4 zWyt | ||||
@ 'a:fna | @ 'a:fna | ||||
# l'e:stvitsa | # l'e:stvitsa | ||||
$ d'o:laR | $ d'o:laR | ||||
% Otst'o:tOw | |||||
% Otst'o:tkOw | |||||
& 'i:n | & 'i:n | ||||
* zv'e:ditsa | * zv'e:ditsa | ||||
+ plu:s | + plu:s |
z zedi | z zedi | ||||
// numbers | // numbers | ||||
_0 sif'uRi | _0 sif'uRi | ||||
_1 m'oJa | _1 m'oJa | ||||
kwavyo $pause // by means of which | kwavyo $pause // by means of which | ||||
kwaye $pause // by means of which | kwaye $pause // by means of which | ||||
kwa $u $brk // with | |||||
kwa $u // with | |||||
mwenye $u $brk // with | mwenye $u $brk // with | ||||
wenye $u $brk // with | wenye $u $brk // with | ||||
yenye $u $brk // with | yenye $u $brk // with | ||||
chenye $u $brk // with | chenye $u $brk // with | ||||
vyenye $u $brk // with | vyenye $u $brk // with | ||||
zenye $u $brk // with | zenye $u $brk // with | ||||
malipo $unstressend | |||||
// conjunctions | // conjunctions | ||||
ingawa $pause // although | ingawa $pause // although | ||||
iwapo $pause // when | iwapo $pause // when | ||||
japo $pause | japo $pause | ||||
(juu ya) J,u:ja/ $pause // as for | |||||
(juu ya) J,u:ja $pause // as for | |||||
kama $u+ $pause // if,like | kama $u+ $pause // if,like | ||||
kisha $pause // moreover | kisha $pause // moreover | ||||
kusudi $pause // in order to | kusudi $pause // in order to | ||||
kuwa $u $pause // that | kuwa $u $pause // that | ||||
(kwa kuwa) kwa||k,uwa/ $pause // becuse | |||||
(kwa kuwa) kwa||k,uwa $pause // becuse | |||||
kwamba $u $pause // that | kwamba $u $pause // that | ||||
lakini $pause // however | lakini $pause // however | ||||
walakini $pause // however | walakini $pause // however | ||||
yaani $pause // i.e. | yaani $pause // i.e. | ||||
// exceptions | |||||
mantiki ma_|nt'iki $u1+ | |||||
zanzibar $3 | |||||
.group a | .group a | ||||
a a | a a | ||||
aa a: | |||||
.group b | .group b | ||||
b b | b b | ||||
.group e | .group e | ||||
e e | e e | ||||
ee e: | |||||
.group f | .group f | ||||
f f | f f | ||||
.group i | .group i | ||||
i i | i i | ||||
ii i: | |||||
.group j | .group j | ||||
j J | j J | ||||
j (w J | |||||
.group k | .group k | ||||
k k | k k | ||||
K) k (@@ _|k | |||||
kh x | kh x | ||||
.group l | .group l | ||||
l l | l l | ||||
.group m | .group m | ||||
m m | m m | ||||
_) m m- | _) m m- | ||||
K) m (@@ _|m | K) m (@@ _|m | ||||
K) m (C m- | K) m (C m- | ||||
K) m (b@@ _|m | K) m (b@@ _|m | ||||
K) m (v@@ _|m | |||||
K) m (v@ _|m | |||||
K) m (w@@ _|m | K) m (w@@ _|m | ||||
.group n | .group n | ||||
n (A n | n (A n | ||||
n (@@ n | n (@@ n | ||||
ny n^ | ny n^ | ||||
n (ch n^ | |||||
n (ch n- | |||||
n (j n^ | n (j n^ | ||||
ng' N | |||||
ng (' N | |||||
n (k N | n (k N | ||||
_) n (k N- | _) n (k N- | ||||
_) n (k@@ N- | _) n (k@@ N- | ||||
n (g N | n (g N | ||||
K) n (g N- | |||||
_) n (g@@ N- | |||||
.group o | .group o | ||||
o o | o o | ||||
oo o: | |||||
.group p | .group p | ||||
p p | p p | ||||
.group u | .group u | ||||
u u | u u | ||||
uu u: | |||||
.group v | .group v | ||||
v v | v v | ||||
.group w | .group w | ||||
w w | w w | ||||
j) w %u | |||||
ny) w %u | |||||
j) w %u | |||||
ny) w %u | |||||
.group x | .group x | ||||
x ks | x ks |
_: mukka:l||pul.l.i // முக்கால் புள்ளி | _: mukka:l||pul.l.i // முக்கால் புள்ளி | ||||
_( id.V||piRaI // இட பிறை | _( id.V||piRaI // இட பிறை | ||||
_) vVlV||piRaI // வல பிறை | _) vVlV||piRaI // வல பிறை | ||||
_[ id.V||sadUrVm // இட சதுரம் | |||||
_] vVlV||sadUrVm // வல சதுரம் | |||||
_[ id.VppVgVrVm // இடப்பகரம் | |||||
_] vVlVppVgVrVm // வலப்பகரம். | |||||
_{ id.V||gVn.Vm // இட கணம் | _{ id.V||gVn.Vm // இட கணம் | ||||
_} vVlV||gVn.Vm // வல கணம் | _} vVlV||gVn.Vm // வல கணம் | ||||
< kuRaIvU // குறைவு | < kuRaIvU // குறைவு | ||||
புசு $alt | புசு $alt | ||||
புஸு $alt | புஸு $alt | ||||
பாதிக்காம $alt | பாதிக்காம $alt | ||||
பனியா $alt | |||||
பாம் $alt | |||||
// initial த as [d] | // initial த as [d] | ||||
தாயம் $alt | தாயம் $alt | ||||
திமு $alt | திமு $alt | ||||
தாவா $alt | தாவா $alt | ||||
துருவா $alt | |||||
// initial ட | // initial ட |
.L30 மெடல பிஷ ஃபிஷ | .L30 மெடல பிஷ ஃபிஷ | ||||
// endings after போர்ட (board) | // endings after போர்ட (board) | ||||
.L31 ் ிங் ின ை ுக்க ில ும | |||||
.L31 ்_ ிங் ின ை ுக்க ில ும | |||||
// consonants | // consonants | ||||
க் (_க k | க் (_க k | ||||
//sort | //sort | ||||
_) க (ஃபார gV | |||||
_) க (ங்கபாடி gV | _) க (ங்கபாடி gV | ||||
_) க (ங்கர gV | _) க (ங்கர gV | ||||
_) க (ங்கா gV | _) க (ங்கா gV | ||||
_) க (தியை gV | _) க (தியை gV | ||||
_) க (ந்தக gV | _) க (ந்தக gV | ||||
_) க (ந்தகிரி kV | _) க (ந்தகிரி kV | ||||
_) க (ந்தக்கோட்ட kV | |||||
_) க (ந்தர்வ gV | _) க (ந்தர்வ gV | ||||
_) கனக (ச்சித gVnVkV | _) கனக (ச்சித gVnVkV | ||||
_) க (னக்க gV | _) க (னக்க gV | ||||
_) க (னத் gV | _) க (னத் gV | ||||
_) க (னபாடி gV | _) க (னபாடி gV | ||||
_) க (னப்ப gV | |||||
_) க (னம gV | _) க (னம gV | ||||
_) க (னரக gV | _) க (னரக gV | ||||
_) கப (ார gVf | |||||
_) கப் (L04ா gVp | _) கப் (L04ா gVp | ||||
_) கப்ச (ிப் gVptS | _) கப்ச (ிப் gVptS | ||||
_) க (ப்புன gV | _) க (ப்புன gV | ||||
_) க (ாந்தத் g | _) க (ாந்தத் g | ||||
_) க (ாந்தப் g | _) க (ாந்தப் g | ||||
_) க (ாந்தமா g | _) க (ாந்தமா g | ||||
_) க (ாந்தர்வ g | |||||
_) க (ாந்தார g | _) க (ாந்தார g | ||||
_) க (ாந்தி g | _) க (ாந்தி g | ||||
_) க (ானங் g | _) க (ானங் g | ||||
க (ாரன k | க (ாரன k | ||||
_) க (ார்டன g | _) க (ார்டன g | ||||
_) க (ார்டியன g | _) க (ார்டியன g | ||||
_) க (ால்ஃப் g | |||||
_) கால்ப் ga:lf | |||||
_) க (ிஃப்ட g | _) க (ிஃப்ட g | ||||
_) கிட (ார git. | _) கிட (ார git. | ||||
_) க (ிடுகிடு g | _) க (ிடுகிடு g | ||||
_) கி (றித்த k | _) கி (றித்த k | ||||
_) கி (றிஸ்டல k | _) கி (றிஸ்டல k | ||||
_) கி (றிஸ்த k | _) கி (றிஸ்த k | ||||
_) கி (லேசியர g | |||||
_) க (ில்மா g | _) க (ில்மா g | ||||
_) கி (ளப்_ k | _) கி (ளப்_ k | ||||
_) கிளப்ப (ில kl.Vbb | _) கிளப்ப (ில kl.Vbb | ||||
_) கி (ளாL04ு k | _) கி (ளாL04ு k | ||||
_) கி (ளாL04ை k | _) கி (ளாL04ை k | ||||
_) கி (ளாமர g | _) கி (ளாமர g | ||||
_) கிளார்க் kl.a:rk | |||||
_) கி (ளாஸ்_ g | _) கி (ளாஸ்_ g | ||||
_) கி (ளாஸ்_மேட k | _) கி (ளாஸ்_மேட k | ||||
_) கிளாஸ்க (ோ gl.a:sg | _) கிளாஸ்க (ோ gl.a:sg | ||||
_) க (ுஜால g | _) க (ுஜால g | ||||
_) க (ுடியாத்த g | _) க (ுடியாத்த g | ||||
_) க (ுடுகுடு g | _) க (ுடுகுடு g | ||||
_) க (ுணக் g | |||||
_) க (ுணங் g | _) க (ுணங் g | ||||
_) க (ுணசாலி g | |||||
_) குணச (ித்திர gun.VtS | _) குணச (ித்திர gun.VtS | ||||
_) க (ுணசீல g | _) க (ுணசீல g | ||||
_) க (ுணசேகர g | _) க (ுணசேகர g | ||||
_) க (ுருகுல g | _) க (ுருகுல g | ||||
_) க (ுருக்கள g | _) க (ுருக்கள g | ||||
_) க (ுருக்குல g | _) க (ுருக்குல g | ||||
_) க (ுருக்ஷேத்திர g | |||||
_) க (ுருசாமி g | _) க (ுருசாமி g | ||||
_) குருச (ேத்திர gurUs. | |||||
_) க (ுருஜி g | _) க (ுருஜி g | ||||
_) க (ுருதேவ g | _) க (ுருதேவ g | ||||
_) க (ுருத்வார g | |||||
_) க (ுருநா g | _) க (ுருநா g | ||||
_) க (ுருபகவான g | _) க (ுருபகவான g | ||||
_) குருப (த்தினி gurupV | _) குருப (த்தினி gurupV | ||||
_) குருப (ீட gurup | _) குருப (ீட gurup | ||||
_) குருப (ூ gurup | _) குருப (ூ gurup | ||||
_) க (ுருபூஜை g | _) க (ுருபூஜை g | ||||
_) க (ுருபோத g | |||||
_) குருப்பி (ரசாத gurupp | _) குருப்பி (ரசாத gurupp | ||||
_) க (ுருப்பெயர 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 | ||||
_) க (ுருஷேத்திர g | |||||
_) கு (ரூப் g | _) கு (ரூப் g | ||||
_) க (ுலாப g | _) க (ுலாப g | ||||
_) க (ுலாம g | _) க (ுலாம g | ||||
_) க (ெட்டிக்கனும k | _) க (ெட்டிக்கனும k | ||||
_) க (ெட்டிக்கி k | _) க (ெட்டிக்கி k | ||||
_) க (ெட்டிரு k | _) க (ெட்டிரு k | ||||
_) க (ெட்டில k | |||||
_) க (ெத் g | _) க (ெத் g | ||||
_) க (ெரில்லா g | _) க (ெரில்லா g | ||||
_) கெள (தம gaU | _) கெள (தம gaU | ||||
_) க (ேமை g | _) க (ேமை g | ||||
_) க (ேம்ஸ g | _) க (ேம்ஸ g | ||||
_) கேரண்ட ge:rVn.t.V# | _) கேரண்ட ge:rVn.t.V# | ||||
_) கேலக (்சி ge:lVk | |||||
_) க (ேலக்ஸி g | |||||
_) க (ேலரி g | _) க (ேலரி g | ||||
_) க (ேலி g | _) க (ேலி g | ||||
_) க (ேஸ்_L26 g | _) க (ேஸ்_L26 g | ||||
_) க் (ரீன g | _) க் (ரீன g | ||||
_) க் (ரூப g | _) க் (ரூப g | ||||
_) க் (ரௌண்ட g | _) க் (ரௌண்ட g | ||||
_) க் (லேசியர g | |||||
_) க் (ளாமர g | _) க் (ளாமர g | ||||
_) க் (ளாஸ்_ g | _) க் (ளாஸ்_ g | ||||
_) க்வ (A kw | _) க்வ (A kw | ||||
_தர்ம) க (ர்த kV | _தர்ம) க (ர்த kV | ||||
_குல்) க (ர்னி kV | _குல்) க (ர்னி kV | ||||
விஸ்வ) க (ர்மா kV | விஸ்வ) க (ர்மா kV | ||||
உரை) க (ற் kV | |||||
_மைல்) க (ற் kV | |||||
_விண்) க (ற் kV | _விண்) க (ற் kV | ||||
_லோ) க (ல kV | _லோ) க (ல kV | ||||
_மெடி) க (ல kV | _மெடி) க (ல kV | ||||
_சூரிய) க (லா kV | _சூரிய) க (லா kV | ||||
_யூ) க (லிப்டஸ kV | _யூ) க (லிப்டஸ kV | ||||
_ஜீவ) க (லை kV | _ஜீவ) க (லை kV | ||||
உரை) க (ல் kV | |||||
_மைல்) க (ல் kV | |||||
_காய) கல்ப kVlpV# | _காய) கல்ப kVlpV# | ||||
பஞ்ச) க (ல்யாண kV | பஞ்ச) க (ல்யாண kV | ||||
_ரண) க (ள kV | _ரண) க (ள kV | ||||
_கண்) க (ாணா k | _கண்) க (ாணா k | ||||
_கர்ம) க (ாண்ட g | _கர்ம) க (ாண்ட g | ||||
உத்திரா) க (ாண்ட k | உத்திரா) க (ாண்ட k | ||||
அ) காத (மி ka:d.V | |||||
_ராம) க (ாதை k | _ராம) க (ாதை k | ||||
இராம) க (ாதை k | இராம) க (ாதை k | ||||
_ஸ்ரீ) காந்த ka:ntV# | _ஸ்ரீ) காந்த ka:ntV# | ||||
_கை) க (ுலு k | _கை) க (ுலு k | ||||
_) குல்க (ந்த gulkV | _) குல்க (ந்த gulkV | ||||
_மெரு) க (ூட்ட g | _மெரு) க (ூட்ட g | ||||
_லா) க (ூர H | |||||
_தயை) க (ூர k | _தயை) க (ூர k | ||||
_தயவு) க (ூர k | _தயவு) க (ூர k | ||||
அருள்) க (ூர k | அருள்) க (ூர k | ||||
_நினைவு) க (ூர k | _நினைவு) க (ூர k | ||||
_மு) க (ூர்த H | |||||
_குறை) க (ூற k | _குறை) க (ூற k | ||||
அறை) க (ூவ k | அறை) க (ூவ k | ||||
_மார்) கெட் ket. | _மார்) கெட் ket. | ||||
அயோ) க்க (ிய gg | அயோ) க்க (ிய gg | ||||
ஆரோ) க்க (ிய gg | ஆரோ) க்க (ிய gg | ||||
வைரா) க்க (ிய gg | வைரா) க்க (ிய gg | ||||
_மூல) க்கி (ர gg | |||||
அநு) க்கி (ர gg | அநு) க்கி (ர gg | ||||
அனு) க்கி (ர gg | அனு) க்கி (ர gg | ||||
_கர்ப்ப) க்கி (ர gg | _கர்ப்ப) க்கி (ர gg | ||||
என்சை) க்லோப (ீடியா klo:p | என்சை) க்லோப (ீடியா klo:p | ||||
_சு) க் (ள k | _சு) க் (ள k | ||||
_ஷு) க் (ள k | _ஷு) க் (ள k | ||||
_து) க்ளக் kl.Vk | |||||
க் (ஸ k | க் (ஸ k | ||||
_எ) க் (ஸாம g | _எ) க் (ஸாம g | ||||
_மெ) க்ஸிக (ோ ksik | _மெ) க்ஸிக (ோ ksik | ||||
ஞ்) ச dZV | ஞ்) ச dZV | ||||
ஞ்) ச (B dZ | ஞ்) ச (B dZ | ||||
ச் (_N tS | ச் (_N tS | ||||
ச்_) ச tSV // previous word ends in ச் | |||||
ச்_) ச (B tS | |||||
ச் (_ச tS | |||||
ச்_) ச (++ :V# // previous word ends in ச் | |||||
_) சாம்ப (ியன tSa:mp | _) சாம்ப (ியன tSa:mp | ||||
//sort | //sort | ||||
_) ச (த்ரபதி tSV | _) ச (த்ரபதி tSV | ||||
_) ச (த்ரு tSV | _) ச (த்ரு tSV | ||||
ச (ந்தர tSV | ச (ந்தர tSV | ||||
_வ) ச (ந்தர sV | |||||
_) ச (ந்தர்ப sV | _) ச (ந்தர்ப sV | ||||
அ) ச (ந்தர்ப sV | அ) ச (ந்தர்ப sV | ||||
ச (ந்திர tSV | ச (ந்திர tSV | ||||
_) ச (ப்பி tSV | _) ச (ப்பி tSV | ||||
_) ச (ப்பு tSV | _) ச (ப்பு tSV | ||||
_) ச (ப்பெ tSV | _) ச (ப்பெ tSV | ||||
_) ச (ம்பல்பூர tSV | |||||
_) சம்ப (ாரன tSVmp | _) சம்ப (ாரன tSVmp | ||||
_நா) ச (ர zV | _நா) ச (ர zV | ||||
_ரே) ச (ர zV | _ரே) ச (ர zV | ||||
விப) ச (ார tS | விப) ச (ார tS | ||||
_கிரL06) ச (ார tS | _கிரL06) ச (ார tS | ||||
_குணா) ச (ார tS | _குணா) ச (ார tS | ||||
_பிரிவுப) ச (ார tS | |||||
_விருந்துப) ச (ார tS | |||||
ராஜோப) ச (ார tS | ராஜோப) ச (ார tS | ||||
ஆ) ச (ார_ tS | ஆ) ச (ார_ tS | ||||
ஆ) ச (ாரங்கள tS | ஆ) ச (ாரங்கள tS | ||||
_வி) ச (ாரங்கள tS | _வி) ச (ாரங்கள tS | ||||
ஆ) ச (ாரத் tS | ஆ) ச (ாரத் tS | ||||
_வி) ச (ாரத்த tS | _வி) ச (ாரத்த tS | ||||
ஆ) ச (ாரப்பட tS | |||||
ஆ) ச (ாரம tS | ஆ) ச (ாரம tS | ||||
_வி) ச (ாரம tS | _வி) ச (ாரம tS | ||||
_சிவா) ச (ாரி tS | _சிவா) ச (ாரி tS | ||||
_சுகா) ச (ாரி tS | |||||
_ரங்கா) ச (ாரி tS | _ரங்கா) ச (ாரி tS | ||||
_வரதா) ச (ாரி tS | _வரதா) ச (ாரி tS | ||||
_வேதா) ச (ாரி tS | _வேதா) ச (ாரி tS | ||||
_) ச (ார்ஜை tS | _) ச (ார்ஜை tS | ||||
_மொ) ச (ார்ட z | _மொ) ச (ார்ட z | ||||
_) ச (ார்மினார tS | _) ச (ார்மினார tS | ||||
ஆ) ச (ார்ய tS | |||||
_) ச (ார்லஸ tS | _) ச (ார்லஸ tS | ||||
_) ச (ார்லி tS | _) ச (ார்லி tS | ||||
_) ச (ாலக்குடி tS | _) ச (ாலக்குடி tS | ||||
_மலே) ச (ிய s. | _மலே) ச (ிய s. | ||||
இந்தோனே) ச (ிய s. | இந்தோனே) ச (ிய s. | ||||
_) ச (ியர்ஸ tS | _) ச (ியர்ஸ tS | ||||
_) சி (யாம s. | |||||
_பக்தி_) சிரத் (தை srVd | _பக்தி_) சிரத் (தை srVd | ||||
_) சிரத்த (ைL27 srVdd | _) சிரத்த (ைL27 srVdd | ||||
சி (ரம s | சி (ரம s | ||||
_கபாலீ) சு (வ s | _கபாலீ) சு (வ s | ||||
_ஜலகண்டே) சு (வ s | _ஜலகண்டே) சு (வ s | ||||
அர்த்தனாரீ) சு (வ s | அர்த்தனாரீ) சு (வ s | ||||
_) சு (வமேத s | |||||
_சனீ) சு (வர s | _சனீ) சு (வர s | ||||
ராஜே) சு (வர s | ராஜே) சு (வர s | ||||
_மங்களே) சு (வர s | _மங்களே) சு (வர s | ||||
_) ச (ேஞ்ச tS | _) ச (ேஞ்ச tS | ||||
_) ச (ேட்டன tS | _) ச (ேட்டன tS | ||||
_) ச (ேட்டர்ஜி tS | _) ச (ேட்டர்ஜி tS | ||||
_குரு) ச (ேத்திர s. | |||||
_) ச (ேனல tS | _) ச (ேனல tS | ||||
_) ச (ேரி tS | _) ச (ேரி tS | ||||
_தல) ச (ேரி tS | _தல) ச (ேரி tS | ||||
_) சௌப (ாத்தி tSaUp | _) சௌப (ாத்தி tSaUp | ||||
_) ச (ௌபே tS | _) ச (ௌபே tS | ||||
_) ச (ௌஹான tS | _) ச (ௌஹான tS | ||||
_ந) ச் (னு tS | |||||
_கா) ச்மூச tSmu:tSV# | _கா) ச்மூச tSmu:tSV# | ||||
//endsort | //endsort | ||||
ஜ (B dZ | ஜ (B dZ | ||||
//sort | //sort | ||||
_கெ) ஜ (ட் zV | _கெ) ஜ (ட் zV | ||||
_ட) ஜ (ன zV | |||||
_டின்) ஜ (ர tSV | _டின்) ஜ (ர tSV | ||||
_) ஜ (ர்தாரி zV | _) ஜ (ர்தாரி zV | ||||
_க) ஜ (லா zV | _க) ஜ (லா zV | ||||
_) ஜ (ாக்கீர z | _) ஜ (ாக்கீர z | ||||
_ரம்) ஜ (ான z | _ரம்) ஜ (ான z | ||||
_நி) ஜ (ாம z | _நி) ஜ (ாம z | ||||
_) ஜ (ாம்பிய z | |||||
_ப) ஜ (ார z | _ப) ஜ (ார z | ||||
அ) ஜ (ாருதீன z | அ) ஜ (ாருதீன z | ||||
_நா) ஜ (ி z | _நா) ஜ (ி z | ||||
_) ஜிப்(_ zip | _) ஜிப்(_ zip | ||||
_) ஜ (ிப்ப z | _) ஜ (ிப்ப z | ||||
_) ஜ (ிப்பா dZ | _) ஜ (ிப்பா dZ | ||||
_) ஜ (ிம்பாப்வே z | |||||
_) ஜ (ியா_ z | _) ஜ (ியா_ z | ||||
_) ஜ (ியாவ z | _) ஜ (ியாவ z | ||||
_) ஜ (ீனத் z | _) ஜ (ீனத் z | ||||
_) ஜ (ுல்ஃபி z | _) ஜ (ுல்ஃபி z | ||||
_) ஜ (ுல்பி z | _) ஜ (ுல்பி z | ||||
_) ஜு (வால dZ | _) ஜு (வால dZ | ||||
_) ஜ (ூலு z | |||||
_) ஜ (ெனித் z | _) ஜ (ெனித் z | ||||
_) ஜ (ெராக்ஸ z | _) ஜ (ெராக்ஸ z | ||||
//endsort | //endsort | ||||
//sort | //sort | ||||
_டே) ட t.V# | _டே) ட t.V# | ||||
_மால்) ட t.V# | |||||
_பேண்) ட t.V# | _பேண்) ட t.V# | ||||
_வால்) ட t.V# | _வால்) ட t.V# | ||||
_கமெண்) ட t.V# | _கமெண்) ட t.V# | ||||
_) டோர்னமெண்ட t.o:rnVmen.t.V# | _) டோர்னமெண்ட t.o:rnVmen.t.V# | ||||
_) ட (ோலிவுட் t. | _) ட (ோலிவுட் t. | ||||
_லே) ட் t. | _லே) ட் t. | ||||
_ஹி) ட் t. | |||||
@மெண்) ட் t. // -ment | @மெண்) ட் t. // -ment | ||||
_பேண்) ட் t. | _பேண்) ட் t. | ||||
_ஹெல்மெ) ட் t. | _ஹெல்மெ) ட் t. | ||||
_பாலிவு) ட்ட 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. | |||||
இ) ட்ட (ிலி d.d. | இ) ட்ட (ிலி d.d. | ||||
_ஜி) ட்ட (ு d.d. | _ஜி) ட்ட (ு d.d. | ||||
_ஷெ) ட்ட (ு d.d. | |||||
_ஷெ) ட்ட (ை d.d. | |||||
அப்பாயிண்) ட்மெண்ட t.men.t.V# | அப்பாயிண்) ட்மெண்ட t.men.t.V# | ||||
_) ட் (யூசன t. | _) ட் (யூசன t. | ||||
_) ட் (யூன t. | _) ட் (யூன t. | ||||
எண்) ட் (ரி t. | எண்) ட் (ரி t. | ||||
_) ட்ரிக (ர t.riggV | _) ட்ரிக (ர t.riggV | ||||
_) ட்ரிக் t.rik | _) ட்ரிக் t.rik | ||||
_ஹா) ட்ரிக் t.rik | |||||
_) ட்ரிக்க (ர t.riggV | _) ட்ரிக்க (ர t.riggV | ||||
_) ட் (ரிங்_ t. | _) ட் (ரிங்_ t. | ||||
_நியூ) ட் (ரின t. | _நியூ) ட் (ரின t. | ||||
_) த (கன dV | _) த (கன dV | ||||
_) த (கி dV | _) த (கி dV | ||||
_) த (க்க்ஷிண dV | _) த (க்க்ஷிண dV | ||||
_) த (க்ஷக dV | |||||
_) த (க்ஷசீல dV | |||||
_) த (க்ஷன dV | _) த (க்ஷன dV | ||||
_) த (க்ஷிண dV | _) த (க்ஷிண dV | ||||
_) த (க்ஷிணா dV | _) த (க்ஷிணா dV | ||||
_) தத்த (ியா dVdd | _) தத்த (ியா dVdd | ||||
_) த (னகோடி 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 | ||||
_முல்) த (ான t | _முல்) த (ான t | ||||
_சாந்) த (ானு tV# | _சாந்) த (ானு tV# | ||||
_சி) த (ார t | _சி) த (ார t | ||||
_நயன்) த (ாரா t | |||||
_சரி) த (ாவ t | _சரி) த (ாவ t | ||||
_ஹரி) த (ாஸ்_ d | _ஹரி) த (ாஸ்_ d | ||||
_சும) த (ி t | _சும) த (ி t | ||||
_) ப (ட்டக்ஸ bV | _) ப (ட்டக்ஸ bV | ||||
_) ப (ட்டன bV | _) ப (ட்டன bV | ||||
_) ப (ட்டன_ pV | _) ப (ட்டன_ pV | ||||
_) ப (ட்டனப்பாக்க pV | |||||
_) ப (ட்டாசாரி bV | _) ப (ட்டாசாரி bV | ||||
_) ப (தில bV | _) ப (தில bV | ||||
_) பத்த (ிரகாளி bVdd | _) பத்த (ிரகாளி bVdd | ||||
_) பத்த (ிரபாகு bVdd | |||||
_) பத்திரப் (_ bVttirVp | _) பத்திரப் (_ bVttirVp | ||||
_) பத்திரப் (_பதி pVttirVp | _) பத்திரப் (_பதி pVttirVp | ||||
_) ப (த்திரப்பட bV | _) ப (த்திரப்பட bV | ||||
_) பத்த (ிரி_ bVdd | _) பத்த (ிரி_ bVdd | ||||
_) பத்த (ிரிக்கு bVdd | _) பத்த (ிரிக்கு bVdd | ||||
_) பத்த (ிரிய bVdd | _) பத்த (ிரிய bVdd | ||||
_) ப (த்ரபாகு bV | |||||
_) ப (த்ரி bV | _) ப (த்ரி bV | ||||
_) பத் (ரிக்க pVt | _) பத் (ரிக்க pVt | ||||
_சொந்த_) ப (ந்த bV | _சொந்த_) ப (ந்த bV | ||||
_) ப (னாரச bV | _) ப (னாரச bV | ||||
_) ப (னாரஸ bV | _) ப (னாரஸ bV | ||||
_) ப (னியன bV | _) ப (னியன bV | ||||
_) ப (னியாக்கள bV | |||||
_) ப (னியாவ bV | |||||
_) ப (ன்சல bV | _) ப (ன்சல bV | ||||
_) ப (ன்னாரி bV | _) ப (ன்னாரி bV | ||||
_டீயும்_) ப (ன்னும்_ bV | _டீயும்_) ப (ன்னும்_ bV | ||||
_) ப (லத்தின bV | _) ப (லத்தின bV | ||||
_) ப (லத்தினா bV | _) ப (லத்தினா bV | ||||
_) ப (லத்தினுட bV | _) ப (லத்தினுட bV | ||||
_) ப (லத்திற்க bV | |||||
_) ப (லத்தில bV | _) ப (லத்தில bV | ||||
_) ப (லத்துக் bV | _) ப (லத்துக் bV | ||||
_) ப (லத்துச் bV | _) ப (லத்துச் bV | ||||
_) ப (லப்பத்த bV | _) ப (லப்பத்த bV | ||||
_) ப (லப்பம bV | _) ப (லப்பம bV | ||||
_) ப (லப்பரீட்சை bV | _) ப (லப்பரீட்சை bV | ||||
_) பலப்பி (ரயோ bVlVpp | |||||
_) ப (லமணைத்த bV | _) ப (லமணைத்த bV | ||||
_) ப (லமற்ற bV | _) ப (லமற்ற bV | ||||
_) ப (லமாகC் bV | _) ப (லமாகC் bV | ||||
_) ப (ாசு b | _) ப (ாசு b | ||||
_) பாசுப (த pa:sUpV | _) பாசுப (த pa:sUpV | ||||
_) ப (ாசுர p | _) ப (ாசுர p | ||||
_) பாட (னி ba:t.V | |||||
_டெட்_) ப (ாடி b | _டெட்_) ப (ாடி b | ||||
_) ப (ாடி_பில்டர b | _) ப (ாடி_பில்டர b | ||||
_) ப (ாடி_பில்டிங் b | _) ப (ாடி_பில்டிங் b | ||||
_) ப (ாட்டிலுடன b | _) ப (ாட்டிலுடன b | ||||
_) ப (ாட்டிலை b | _) ப (ாட்டிலை b | ||||
_) ப (ாட்டில்கள b | _) ப (ாட்டில்கள b | ||||
_) பாட்மிண்ட (ன ba:d.min.t.V | |||||
_) ப (ாணங் b | _) ப (ாணங் b | ||||
_) ப (ாணமு b | _) ப (ாணமு b | ||||
_) ப (ாணர b | _) ப (ாணர b | ||||
_) ப (ாதிப்படையுமெ b | _) ப (ாதிப்படையுமெ b | ||||
_) ப (ாதிப்படைவ b | _) ப (ாதிப்படைவ b | ||||
_) ப (ாதிப்பதா b | _) ப (ாதிப்பதா b | ||||
_) ப (ாதிப்பதுண்ட b | |||||
_) ப (ாதிப்பதும b | |||||
_) ப (ாதிப்பதை b | _) ப (ாதிப்பதை b | ||||
_) ப (ாதிப்பவை b | _) ப (ாதிப்பவை b | ||||
_) ப (ாதிப்பாகி b | _) ப (ாதிப்பாகி b | ||||
_) ப (ாதிப்புண்ட b | _) ப (ாதிப்புண்ட b | ||||
_) ப (ாதிப்பும b | _) ப (ாதிப்பும b | ||||
_) ப (ாதிப்புள்ள b | _) ப (ாதிப்புள்ள b | ||||
_) ப (ாதிப்பென b | |||||
_) ப (ாதிப்பேர p | _) ப (ாதிப்பேர p | ||||
_) ப (ாதிப்பை b | _) ப (ாதிப்பை b | ||||
_) ப (ாதிப்போ b | |||||
_) பாத (ிமா fa:t | _) பாத (ிமா fa:t | ||||
_) ப (ாதுஷா b | _) ப (ாதுஷா b | ||||
_) ப (ாத்திமா f | _) ப (ாத்திமா f | ||||
_) பாத்த (ியதை ba:dd | _) பாத்த (ியதை ba:dd | ||||
_) பாத்த (ியப் ba:dd | |||||
_) பாத்த (ியம்_ ba:dd | _) பாத்த (ியம்_ ba:dd | ||||
_) ப (ாத்யதை b | _) ப (ாத்யதை b | ||||
_) ப (ாத்ரூம b | _) ப (ாத்ரூம b | ||||
_டைம்_) ப (ாம b | _டைம்_) ப (ாம b | ||||
_) ப (ாமாவ b | _) ப (ாமாவ b | ||||
_) ப (ாமினி b | _) ப (ாமினி b | ||||
_) ப (ாமிரு b | |||||
_) ப (ாமிலி f | _) ப (ாமிலி f | ||||
_) ப (ாமில்ல b | |||||
_) ப (ாமை b | |||||
_) ப (ாம்கள b | |||||
_) ப (ாம்பே b | _) ப (ாம்பே b | ||||
_ஆடு_) ப (ாம்பே p | _ஆடு_) ப (ாம்பே p | ||||
_விளையாடு_) ப (ாம்பே p | _விளையாடு_) ப (ாம்பே p | ||||
_) ப (ாலாம்பாள b | _) ப (ாலாம்பாள b | ||||
_) ப (ாலாம்பிக b | _) ப (ாலாம்பிக b | ||||
_) ப (ாலாவ b | _) ப (ாலாவ b | ||||
_) ப (ாலாவி_ p | |||||
_) ப (ாலாவிய p | |||||
_) ப (ாலித்_தீவ b | |||||
_) ப (ாலின் p | _) ப (ாலின் p | ||||
_) ப (ாலியத்த b | _) ப (ாலியத்த b | ||||
_) ப (ாலிவுட் b | _) ப (ாலிவுட் b | ||||
முகத்திலிருந்து_) ப (ாவ b | முகத்திலிருந்து_) ப (ாவ b | ||||
_) ப (ாவனா b | _) ப (ாவனா b | ||||
_) ப (ாவனை b | _) ப (ாவனை b | ||||
_) ப (ாவமும்_நானே b | |||||
_) ப (ாவிக்கப்பட b | _) ப (ாவிக்கப்பட b | ||||
_) ப (ாவிக்கல b | _) ப (ாவிக்கல b | ||||
_) ப (ாவிக்கவில்ல b | _) ப (ாவிக்கவில்ல b | ||||
_) பி (ரதேஷ p | _) பி (ரதேஷ p | ||||
_) பி (ரதோஷ p | _) பி (ரதோஷ p | ||||
_) பி (ரத்தியேக p | _) பி (ரத்தியேக p | ||||
_) பிரத் (யக்ஷ prVt | |||||
_) பிரத் (யட்ச prVt | |||||
_) பிரத் (யேக prVt | _) பிரத் (யேக prVt | ||||
_) பி (ரனாப p | _) பி (ரனாப p | ||||
_) பி (ரப p | _) பி (ரப p | ||||
_) பிராஞ்ச bra:n^tS | _) பிராஞ்ச bra:n^tS | ||||
_) பி (ராடாக f | _) பி (ராடாக f | ||||
_) பி (ராட்_ f | _) பி (ராட்_ f | ||||
_) பி (ராட்டஸ்ட p | |||||
_) பி (ராட்டிஸ்லாவ b | _) பி (ராட்டிஸ்லாவ b | ||||
_) பி (ராட்வே b | _) பி (ராட்வே b | ||||
_) பி (ராண_ p | _) பி (ராண_ p | ||||
_) பிரித (ிவ prit | _) பிரித (ிவ prit | ||||
_) ப (ிரித்தானி b | _) ப (ிரித்தானி b | ||||
_) பி (ரித்தானி b | _) பி (ரித்தானி b | ||||
_) பி (ரின்L04ிபல p | |||||
_) பிரின்சிப (ால prinsip | _) பிரின்சிப (ால prinsip | ||||
_) பி (ரிமிய p | _) பி (ரிமிய p | ||||
_) பி (ரியங்கள p | _) பி (ரியங்கள p | ||||
_) பி (ரே p | _) பி (ரே p | ||||
_) பி (ரேக்க b | _) பி (ரேக்க b | ||||
_) பிரேச (ில bre:z | _) பிரேச (ில bre:z | ||||
_) பி (ரேயில b | |||||
_) பி (ரைல b | _) பி (ரைல b | ||||
_) பிரைவேட praIve:t.V# | _) பிரைவேட praIve:t.V# | ||||
_) பி (ரோகிதர p | _) பி (ரோகிதர p | ||||
_) ப (ில்லி b | _) ப (ில்லி b | ||||
_) ப (ில்லு b | _) ப (ில்லு b | ||||
_) ப (ில்லை b | _) ப (ில்லை b | ||||
_) பி (ளவர f | |||||
_) பி (ளவுஸ b | _) பி (ளவுஸ b | ||||
_) பி (ளஸ p | _) பி (ளஸ p | ||||
_) பி (ளஸ்_ p | _) பி (ளஸ்_ p | ||||
_) பிளாக் bla:k | _) பிளாக் bla:k | ||||
_) பி (ளாட்பார p | _) பி (ளாட்பார p | ||||
_) பிளாப் fl.a:p | _) பிளாப் fl.a:p | ||||
_) பி (ளாஸ்க் f // flask | |||||
_) பி (ளாஷ f | |||||
_) பி (ளாஸ்க f // flask | |||||
_) பி (ளீஸ p | _) பி (ளீஸ p | ||||
_) பிள (ைட் fl. | _) பிள (ைட் fl. | ||||
_) பி (ளௌஸ b | _) பி (ளௌஸ b | ||||
_) புத்த (ம்_புதிய puttV | _) புத்த (ம்_புதிய puttV | ||||
_) புத்த (ம்_புது puttV | _) புத்த (ம்_புது puttV | ||||
_) புத்த (ரிசி puttV | _) புத்த (ரிசி puttV | ||||
_) புத்த (ள puttV | |||||
_) புத்த (ழக puttV | _) புத்த (ழக puttV | ||||
_) ப (ுத்திக் b | _) ப (ுத்திக் b | ||||
_) ப (ுத்திசாலி b | _) ப (ுத்திசாலி b | ||||
_) பு (ருனாய b | _) பு (ருனாய b | ||||
_) புரூப pru:fV# | _) புரூப pru:fV# | ||||
_) புரொப (சர profV | _) புரொப (சர profV | ||||
_) புரொப (ஸர profV | |||||
_) புரொபொ (சர profV | _) புரொபொ (சர profV | ||||
_) பு (ரோகித p | _) பு (ரோகித p | ||||
_) ப (ுரோக்கர b | _) ப (ுரோக்கர b | ||||
_) பு (ரௌச b | _) பு (ரௌச b | ||||
_) ப (ுல்_L15 f | _) ப (ுல்_L15 f | ||||
_) புல்க (ா fulk | _) புல்க (ா fulk | ||||
_) புல்க (ான pulg | |||||
_) ப (ுல்டோசர b | _) ப (ுல்டோசர b | ||||
_) ப (ுல்லட் b | _) ப (ுல்லட் b | ||||
_) ப (ுல்லா_ f | _) ப (ுல்லா_ f | ||||
_) ப (ேகத் b | _) ப (ேகத் b | ||||
_) ப (ேகம b | _) ப (ேகம b | ||||
_) ப (ேக்கரி b | _) ப (ேக்கரி b | ||||
_) ப (ேக்கிங்_சோடா b | |||||
_) ப (ேக்டர f | _) ப (ேக்டர f | ||||
_) ப (ேங்க் b | _) ப (ேங்க் b | ||||
_) ப (ேச்சலர b | _) ப (ேச்சலர b | ||||
_) ப (ொம்மனாட்டி p | _) ப (ொம்மனாட்டி p | ||||
_) ப (ொம்மல b | _) ப (ொம்மல b | ||||
_) ப (ொம்மை b | _) ப (ொம்மை b | ||||
_) ப (ொலிவிய b | |||||
_) ப (ோஃபர்ஸ b | _) ப (ோஃபர்ஸ b | ||||
_) ப (ோஃபோர் b | _) ப (ோஃபோர் b | ||||
_) ப (ோக_L13 b | _) ப (ோக_L13 b | ||||
_) ப்ரோட (ான pro:t | _) ப்ரோட (ான pro:t | ||||
_) ப் (ரௌச b | _) ப் (ரௌச b | ||||
_) ப் (ரௌன b | _) ப் (ரௌன b | ||||
_) ப் (ளவர f | |||||
_) ப் (ளவுஸ b | _) ப் (ளவுஸ b | ||||
_) ப்ளாப் fl.a:p | _) ப்ளாப் fl.a:p | ||||
_) ப் (ளாஷ f | |||||
_) ப் (ளாஸ்க f | |||||
_) ப் (ளூஸ b | _) ப் (ளூஸ b | ||||
_) ப் (ளோரிடா f | _) ப் (ளோரிடா f | ||||
_) ப் (ளௌஸ b | _) ப் (ளௌஸ b | ||||
நடை) ப pV# | நடை) ப pV# | ||||
_கேம்) ப pV# | _கேம்) ப pV# | ||||
_பிரதீ) ப pV# | _பிரதீ) ப pV# | ||||
அஷ்ர) ப fV# | |||||
ஒலிம்) ப pV# | ஒலிம்) ப pV# | ||||
சங்கல்) ப pV# | சங்கல்) ப pV# | ||||
_சொல்) ப pV# | _சொல்) ப pV# | ||||
_நிலை) ப pV# | _நிலை) ப pV# | ||||
_பயன்) ப pV# | _பயன்) ப pV# | ||||
_விகல்) ப pV# | _விகல்) ப pV# | ||||
_ஸ்டம்) ப pV# | |||||
அடால்) ப fV# | அடால்) ப fV# | ||||
அஷ்ரா) ப fV# | அஷ்ரா) ப fV# | ||||
_ஒL10ி) ப pV# | _ஒL10ி) ப pV# | ||||
_செயல்) ப pV# | _செயல்) ப pV# | ||||
_முஷார) ப fV# | |||||
_ருடால்) ப fV# | _ருடால்) ப fV# | ||||
_ஸ்டாம்) ப pV# | |||||
_ஷரீ) ப (+ fV# | _ஷரீ) ப (+ fV# | ||||
_ஷெரீ) ப (+ fV# | _ஷெரீ) ப (+ fV# | ||||
_ஸ்தா) ப (+ bV# | _ஸ்தா) ப (+ bV# | ||||
தென்) ப (குதி pV | தென்) ப (குதி pV | ||||
அக்கம்) ப (க்க bV | அக்கம்) ப (க்க bV | ||||
ப (க்கK pV | ப (க்கK pV | ||||
_தா) ப (க்கணல bV | |||||
பரம) ப (க்த bV | பரம) ப (க்த bV | ||||
ராம) ப (க்த bV | ராம) ப (க்த bV | ||||
_தா) ப (ங்கள bV | _தா) ப (ங்கள bV | ||||
_பக்கப்) ப (ல bV | _பக்கப்) ப (ல bV | ||||
ஆன்ம) ப (ல bV | ஆன்ம) ப (ல bV | ||||
படைப்) ப (ல bV | படைப்) ப (ல bV | ||||
_பிரின்L04ி) ப (ல p | |||||
_முனிசி) ப (ல pV | _முனிசி) ப (ல pV | ||||
ஆயுதப்) ப (ல bV | ஆயுதப்) ப (ல bV | ||||
_சம) ப (லங்கள bV | _சம) ப (லங்கள bV | ||||
த) ப (ஸ bV | த) ப (ஸ bV | ||||
_வா) ப (ஸ pV | _வா) ப (ஸ pV | ||||
ஆக்டோ) ப (ஸ pV | ஆக்டோ) ப (ஸ pV | ||||
_ப்ரொ) ப (ஸர fV | |||||
_தீ) ப (ா p | _தீ) ப (ா p | ||||
_கலி) ப (ா f | _கலி) ப (ா f | ||||
_கலீ) ப (ா f | _கலீ) ப (ா f | ||||
_) பாபவிமோசன pa:bVvimo:tSV | _) பாபவிமோசன pa:bVvimo:tSV | ||||
_சாயி) பாப (ா ba:b | _சாயி) பாப (ா ba:b | ||||
_சாய்) பாப (ா ba:b | _சாய்) பாப (ா ba:b | ||||
அலி) பாப (ா ba:b | |||||
அலை) ப (ாய p | அலை) ப (ாய p | ||||
அ) பாயிண்ட்மெண்ட pa:jin.t.ment.V# | அ) பாயிண்ட்மெண்ட pa:jin.t.ment.V# | ||||
அல்) ப (ாயு p | அல்) ப (ாயு p | ||||
எதிர்) ப (ார p | எதிர்) ப (ார p | ||||
_பிளாட்) ப (ார f | _பிளாட்) ப (ார f | ||||
_யுக) ப (ாரதி b | _யுக) ப (ாரதி b | ||||
_டி) பார்ட்மெண்ட pa:rt.men.t.V# | |||||
இன்) ப (ார்ம f | இன்) ப (ார்ம f | ||||
_யூனி) ப (ார்ம f | _யூனி) ப (ார்ம f | ||||
அ) பார்மெண்ட pa:rment.V# | அ) பார்மெண்ட pa:rment.V# | ||||
_மா) ப (ியா f | _மா) ப (ியா f | ||||
_கன்) பி (யுச f | _கன்) பி (யுச f | ||||
_பெர்) பி (யூம f | _பெர்) பி (யூம f | ||||
_கடற்) பி (ர p | |||||
_வரப்) பி (ரL04ாத p | _வரப்) பி (ரL04ாத p | ||||
_ஞான) பிரக (ா prVk | _ஞான) பிரக (ா prVk | ||||
_ஞானப்) பிரக (ா prVk | _ஞானப்) பிரக (ா prVk | ||||
_சொற்) பி (ரயோக p | _சொற்) பி (ரயோக p | ||||
L03ந்தப்) பி (ரளய p | L03ந்தப்) பி (ரளய p | ||||
_சொற்) பி (ரவாக p | _சொற்) பி (ரவாக p | ||||
உட்) பி (ரவேச p | |||||
எக்ஸ்) பிர (ஸ pre | எக்ஸ்) பிர (ஸ pre | ||||
ஆ) பி (ரஹாம b | ஆ) பி (ரஹாம b | ||||
பயப்) பி (ராந்தி b | பயப்) பி (ராந்தி b | ||||
ஆண்) ப (ிள்ளை p | ஆண்) ப (ிள்ளை p | ||||
பெண்) ப (ிள்ளை p | பெண்) ப (ிள்ளை p | ||||
அச்சா) ப (ீ f | அச்சா) ப (ீ f | ||||
_தபாலா) ப (ீ f | |||||
_ர) பீக் fi:k | _ர) பீக் fi:k | ||||
உப) ப (ீட p | உப) ப (ீட p | ||||
விக்கி) ப (ீடியா p | விக்கி) ப (ீடியா p | ||||
_மர) ப (ுரிமை b | _மர) ப (ுரிமை b | ||||
இன்) ப (ுற b | இன்) ப (ுற b | ||||
_துன்) ப (ுற b | _துன்) ப (ுற b | ||||
_நம்) ப (ுற b | |||||
ப (ுறK p | ப (ுறK p | ||||
_பா) ப (ுலர p | _பா) ப (ுலர p | ||||
_) பு (ளோரன்ஸ f | _) பு (ளோரன்ஸ f | ||||
_வட) ப (ெண்ணை p | _வட) ப (ெண்ணை p | ||||
_தென்) ப (ெண்ணை p | _தென்) ப (ெண்ணை p | ||||
_கம்) ப (ெனி p | _கம்) ப (ெனி p | ||||
_மறு) ப (ெயர p | |||||
இடம்) ப (ெயர p | இடம்) ப (ெயர p | ||||
_புலம்) ப (ெயர p | _புலம்) ப (ெயர p | ||||
மொழி) ப (ெயர் p | மொழி) ப (ெயர் p | ||||
_ச) ப்த (மிய ptV | _ச) ப்த (மிய ptV | ||||
_ச) ப் (தரிஷி p | _ச) ப் (தரிஷி p | ||||
_ச) ப் (தஸ்வர p | _ச) ப் (தஸ்வர p | ||||
_லு) ப் (தான f | |||||
_ஹி) ப்னாட (ிச pna:t. | _ஹி) ப்னாட (ிச pna:t. | ||||
கர்) ப்ப bbV# | கர்) ப்ப bbV# | ||||
_நவா) ப்ப bbV# | _நவா) ப்ப bbV# | ||||
_நகர்) ப்ப ppV# | |||||
_ராமசு) ப்ப bbV# | _ராமசு) ப்ப bbV# | ||||
L03) ப்ப (ங்களா bbV | L03) ப்ப (ங்களா bbV | ||||
L03) ப்ப (தில bbV | L03) ப்ப (தில bbV | ||||
_வெளி) ப்பி (ரகார pp | _வெளி) ப்பி (ரகார pp | ||||
அதிக) ப்பி (ரசங்க pp | அதிக) ப்பி (ரசங்க pp | ||||
L03) ப்பிரச (ார pprVtS | L03) ப்பிரச (ார pprVtS | ||||
_மலை) ப்பி (ரதேச pp | |||||
_வன) ப்பி (ரதேச pp | _வன) ப்பி (ரதேச pp | ||||
_காட்டு) ப்பி (ரதேச pp | _காட்டு) ப்பி (ரதேச pp | ||||
_நில) ப்பி (ரபு pp | _நில) ப்பி (ரபு pp | ||||
_யூ) ப்ரட (ீஸ frVt. | _யூ) ப்ரட (ீஸ frVt. | ||||
_சு) ப் (ரியா p | _சு) ப் (ரியா p | ||||
_ஸ்ரீ) ப் (ரியா p | _ஸ்ரீ) ப் (ரியா p | ||||
அ) ப் (ரீதி f | |||||
_சு) ப் (ரீம p | _சு) ப் (ரீம p | ||||
_) ப் (ரீயா f | _) ப் (ரீயா f | ||||
_கம்) ப் (ரெஸ p | _கம்) ப் (ரெஸ p | ||||
இம்) ப் (ரெஸ p | இம்) ப் (ரெஸ p | ||||
_) ப் (லெட்சர f | _) ப் (லெட்சர f | ||||
_மா) ப் (ள p | _மா) ப் (ள p | ||||
_ம) ப் (ளர f | |||||
ஏரோ) ப் (ளேன p | ஏரோ) ப் (ளேன p | ||||
_) ப் (ளோரன்ஸ f | _) ப் (ளோரன்ஸ f | ||||
ப் (ஸ p | ப் (ஸ p | ||||
வ (B v | வ (B v | ||||
_) வி (யா v | _) வி (யா v | ||||
வி (யூக v | வி (யூக v | ||||
இண்டர்) வி (யூ v | |||||
.group ஶ | .group ஶ | ||||
இ (ரவைகள | இ (ரவைகள | ||||
இ (ரவையை | இ (ரவையை | ||||
இ (ராக | இ (ராக | ||||
இ (ராக்_ i | |||||
இ (ராக்_கால | |||||
இ (ராக்கிட i | |||||
இ (ராக்கின i | |||||
இ (ராக்கில i | |||||
இ (ராக்கு i | |||||
இ (ராக்கை i | |||||
இ (ராச | இ (ராச | ||||
இ (ராஜ | இ (ராஜ | ||||
இராஞ்ச ra:n^tSV# | இராஞ்ச ra:n^tSV# | ||||
இ (லவங்க | இ (லவங்க | ||||
இ (லவங்காய i | இ (லவங்காய i | ||||
இ (லாகவ | இ (லாகவ | ||||
இலாக (ூர la:H | |||||
இ (லாப | இ (லாப | ||||
இ (லாவண்ய | இ (லாவண்ய | ||||
இலேக்க (ிய le:gg | இலேக்க (ிய le:gg |
89 phoneme tables | |||||
91 phoneme tables | |||||
new total | new total | ||||
base 109 109 | base 109 109 | ||||
consonants 11 119 | consonants 11 119 | ||||
vi-sgn 18 151 | vi-sgn 18 151 | ||||
zhy 41 138 | zhy 41 138 | ||||
zh 64 155 | zh 64 155 | ||||
sw 9 110 | |||||
sw 19 109 | |||||
tr 20 129 | tr 20 129 | ||||
ku 18 129 | ku 18 129 | ||||
id 16 128 | id 16 128 | ||||
dv 14 149 | dv 14 149 | ||||
te 18 149 | te 18 149 | ||||
si 24 155 | si 24 155 | ||||
gu 1 149 | |||||
as 12 152 | |||||
tn 27 121 | tn 27 121 | ||||
mt 32 129 | mt 32 129 | ||||
bo 10 153 | bo 10 153 | ||||
dzh/dzh2 [dZ] hr | dzh/dzh2 [dZ] hr | ||||
[dZ;] hr | [dZ;] hr | ||||
dzh/dz_pzd [J] base | dzh/dz_pzd [J] base | ||||
[J] sw | |||||
[J] tr | [J] tr | ||||
[J] ku | [J] ku | ||||
dzh/dz_pzd_ [J] base | dzh/dz_pzd_ [J] base | ||||
[g] ru | [g] ru | ||||
[g;] bg | [g;] bg | ||||
[g] es | [g] es | ||||
[g] sw | |||||
g/g_ [g] base | g/g_ [g] base | ||||
[g-] en | [g-] en | ||||
[g] cy | [g] cy | ||||
[g] ru | [g] ru | ||||
[g;] bg | [g;] bg | ||||
[g] es | [g] es | ||||
[g] sw | |||||
g/xgr [g] fr | g/xgr [g] fr | ||||
h/h_ [h] base | h/h_ [h] base | ||||
[h] fi | [h] fi | ||||
[b] fr | [b] fr | ||||
klatt/bh [B] base | klatt/bh [B] base | ||||
klatt/dz_pzd [J] base | klatt/dz_pzd [J] base | ||||
[J] sw | |||||
[J] tr | [J] tr | ||||
klatt/dz_pzd_ [J] base | klatt/dz_pzd_ [J] base | ||||
klatt/m [m] base | klatt/m [m] base | ||||
[n] fr | [n] fr | ||||
klatt/n^ [n^] base | klatt/n^ [n^] base | ||||
[n#] ru | [n#] ru | ||||
[n^] sw | |||||
klatt/n^@ [n^] base | klatt/n^@ [n^] base | ||||
[n#] ru | [n#] ru | ||||
[n^] sw | |||||
klatt/nn [N] base | klatt/nn [N] base | ||||
[N] sw | |||||
klatt/nn_ [N] base | klatt/nn_ [N] base | ||||
klatt/nr [n.] base | klatt/nr [n.] base | ||||
klatt/n-syl [n-] base | klatt/n-syl [n-] base | ||||
n^/n^_ [n^] base | n^/n^_ [n^] base | ||||
[n;] lt | [n;] lt | ||||
[n#] ru | [n#] ru | ||||
[n^] sw | |||||
n^/n^@ [n^] base | n^/n^@ [n^] base | ||||
[n;] lt | [n;] lt | ||||
[n#] ru | [n#] ru | ||||
[n^] sw | |||||
n^/n^#_ [n^#] is | n^/n^#_ [n^#] is | ||||
n/_n [n] base | n/_n [n] base | ||||
[n] fr | [n] fr | ||||
n^/n^a [n^] base | n^/n^a [n^] base | ||||
[n;] lt | [n;] lt | ||||
[n#] ru | [n#] ru | ||||
[n^] sw | |||||
n/na [n] base | n/na [n] base | ||||
[n] fr | [n] fr | ||||
[n#] is | [n#] is | ||||
n^/n^e [n^] base | n^/n^e [n^] base | ||||
[n;] lt | [n;] lt | ||||
[n#] ru | [n#] ru | ||||
[n^] sw | |||||
n/ne [n] base | n/ne [n] base | ||||
[n] fr | [n] fr | ||||
[n#] is | [n#] is | ||||
n^/n^i [n^] base | n^/n^i [n^] base | ||||
[n;] lt | [n;] lt | ||||
[n#] ru | [n#] ru | ||||
[n^] sw | |||||
n/ni [n] base | n/ni [n] base | ||||
[n] fr | [n] fr | ||||
[n#] is | [n#] is | ||||
nn/_nn [N] base | nn/_nn [N] base | ||||
[N] zh | [N] zh | ||||
nn/nn_ [N] base | nn/nn_ [N] base | ||||
[N] sw | |||||
nn/nn@ [N] base | nn/nn@ [N] base | ||||
[N#] is | [N#] is | ||||
[N] zh | [N] zh | ||||
[N] sw | |||||
nn/nn#_ [N#] is | nn/nn#_ [N#] is | ||||
nn/nn2_ [N] zh | nn/nn2_ [N] zh | ||||
[N-] zh | [N-] zh | ||||
nn/nna [N] base | nn/nna [N] base | ||||
[N#] is | [N#] is | ||||
[N] zh | [N] zh | ||||
[N] sw | |||||
nn/nne [N] base | nn/nne [N] base | ||||
[N#] is | [N#] is | ||||
[N] zh | [N] zh | ||||
[N] sw | |||||
nn/nni [N] base | nn/nni [N] base | ||||
[N#] is | [N#] is | ||||
[N] zh | [N] zh | ||||
[N] sw | |||||
nn/nnj [N] base | nn/nnj [N] base | ||||
nn/nno [N] base | nn/nno [N] base | ||||
[N#] is | [N#] is | ||||
[N] zh | [N] zh | ||||
[N] sw | |||||
nn/nn-syl [N-] base | nn/nn-syl [N-] base | ||||
nn/nnu [N] base | nn/nnu [N] base | ||||
[N#] is | [N#] is | ||||
[N] zh | [N] zh | ||||
[N] sw | |||||
n^/n^o [n^] base | n^/n^o [n^] base | ||||
[n;] lt | [n;] lt | ||||
[n#] ru | [n#] ru | ||||
[n^] sw | |||||
n/no [n] base | n/no [n] base | ||||
[n] fr | [n] fr | ||||
[n#] is | [n#] is | ||||
n^/n^u [n^] base | n^/n^u [n^] base | ||||
[n;] lt | [n;] lt | ||||
[n#] ru | [n#] ru | ||||
[n^] sw | |||||
n/nu [n] base | n/nu [n] base | ||||
[n] fr | [n] fr | ||||
[n#] is | [n#] is | ||||
[z] fr | [z] fr | ||||
[s] es | [s] es | ||||
[z;] ro | [z;] ro | ||||
[s] sw | |||||
[z] sq | [z] sq | ||||
ufric/s! [s] base | ufric/s! [s] base | ||||
[s] fr | [s] fr | ||||
[S] fr | [S] fr | ||||
ufric/sh3 [S] hr | ufric/sh3 [S] hr | ||||
[Z] hr | [Z] hr | ||||
[S] sw | |||||
ufric/sh_pzd [S;] base | ufric/sh_pzd [S;] base | ||||
[Z;] base | [Z;] base | ||||
[S;] ro | [S;] ro | ||||
ufric/s_pzd [s;] base | ufric/s_pzd [s;] base | ||||
[z;] base | [z;] base | ||||
[s;] ro | [s;] ro | ||||
[z] sw | |||||
ufric/s_pzd_ [s;] base | ufric/s_pzd_ [s;] base | ||||
[z;] base | [z;] base | ||||
ufric/sx_sv [sx] sv | ufric/sx_sv [sx] sv | ||||
ufric/th [T] base | ufric/th [T] base | ||||
ufric/th_ [T] base | ufric/th_ [T] base | ||||
[T] sw | |||||
ufric/tl# [tl#] is | ufric/tl# [tl#] is | ||||
[tl#] kl | [tl#] kl | ||||
ufric/tlh [K] nso | ufric/tlh [K] nso | ||||
[k] fr | [k] fr | ||||
[k] lv | [k] lv | ||||
[k] el | [k] el | ||||
[k] sw | |||||
[k] sq | [k] sq | ||||
[k] sl | [k] sl | ||||
ustop/k_asp [k#] consonants | ustop/k_asp [k#] consonants | ||||
ustop/p [p] base | ustop/p [p] base | ||||
[p2] fr | [p2] fr | ||||
[p] zhy | [p] zhy | ||||
[p] sw | |||||
[p] da | [p] da | ||||
ustop/p_ [p] base | ustop/p_ [p] base | ||||
[ph] consonants | [ph] consonants | ||||
[t] sl | [t] sl | ||||
ustop/t_dnt2 [t] base2 | ustop/t_dnt2 [t] base2 | ||||
[d] kn | [d] kn | ||||
ustop/t_hard [t] sw | |||||
ustop/t_hi [t[] base | ustop/t_hi [t[] base | ||||
[t] et | [t] et | ||||
[t^] et | [t^] et | ||||
[z;] base | [z;] base | ||||
voc/z_pzd_ [Z;] base | voc/z_pzd_ [Z;] base | ||||
[z;] base | [z;] base | ||||
[z] sw | |||||
vowel/@ [@] base | vowel/@ [@] base | ||||
[@] en | [@] en | ||||
[@] en-rp | [@] en-rp | ||||
[O] grc | [O] grc | ||||
vowel/0_2 [0] en-n | vowel/0_2 [0] en-n | ||||
[O] pt-pt | [O] pt-pt | ||||
[o] sw | |||||
[O] sl | [O] sl | ||||
[o] nso | [o] nso | ||||
[o] tn | [o] tn | ||||
[@/] sq | [@/] sq | ||||
[V] tt | [V] tt | ||||
vowel/&_2 [&] bn | vowel/&_2 [&] bn | ||||
[&] as | |||||
vowel/@_3 [@#] en | vowel/@_3 [@#] en | ||||
[@] en-sc | [@] en-sc | ||||
[I] en-sc | [I] en-sc | ||||
[&] hr | [&] hr | ||||
[a] sv | [a] sv | ||||
[a] is | [a] is | ||||
[a/] sw | |||||
[a] tr | [a] tr | ||||
[a] ka | [a] ka | ||||
[a] nso | [a] nso | ||||
[a] sq | [a] sq | ||||
[a] ka | [a] ka | ||||
[a:] si | [a:] si | ||||
[a] as | |||||
vowel/a#_3 [a#] en | vowel/a#_3 [a#] en | ||||
[a#] en-n | [a#] en-n | ||||
[a#] en-us | [a#] en-us | ||||
[e] dv | [e] dv | ||||
[e:] dv | [e:] dv | ||||
[e:] te | [e:] te | ||||
[e] as | |||||
[E] kl | [E] kl | ||||
vowel/e# [I] en-sc | vowel/e# [I] en-sc | ||||
[e] et | [e] et | ||||
[i] dv | [i] dv | ||||
[i] te | [i] te | ||||
[i] si | [i] si | ||||
[i] as | |||||
vowel/i#_6 [i.] zh | vowel/i#_6 [i.] zh | ||||
vowel/i_7 [i:] et | vowel/i_7 [i:] et | ||||
[i] pl | [i] pl | ||||
[o:] wo | [o:] wo | ||||
[o] te | [o] te | ||||
[o:] te | [o:] te | ||||
[o] as | |||||
[o] bo | [o] bo | ||||
[o] kl | [o] kl | ||||
vowel/o_2 [o:] cy | vowel/o_2 [o:] cy | ||||
vowel/o_3 [oU] en-sc | vowel/o_3 [oU] en-sc | ||||
[o] kk | [o] kk | ||||
vowel/o-_3 [U] en-rp | vowel/o-_3 [U] en-rp | ||||
vowel/o_4 [o] sw | |||||
vowel/o-_4 [o] ro | vowel/o-_4 [o] ro | ||||
[o] am | [o] am | ||||
vowel/o_5 [o] vi-sgn | vowel/o_5 [o] vi-sgn | ||||
[O] pl | [O] pl | ||||
[O] is | [O] is | ||||
[O] sq | [O] sq | ||||
[O] as | |||||
vowel/oo_en [O] en | vowel/oo_en [O] en | ||||
[O:] en | [O:] en | ||||
[O@] en | [O@] en | ||||
[u] prs | [u] prs | ||||
[u] ak | [u] ak | ||||
[u:] wo | [u:] wo | ||||
[u] as | |||||
[u] bo | [u] bo | ||||
[u] tt | [u] tt | ||||
vowel/u# [u:] en-sc | vowel/u# [u:] en-sc | ||||
[y] ml | [y] ml | ||||
[y] vi-sgn | [y] vi-sgn | ||||
vowel/u_5 [U1] et | vowel/u_5 [U1] et | ||||
[u] sw | |||||
[u] nso | [u] nso | ||||
[u] tn | [u] tn | ||||
vowel/u#_5 [y] vi | vowel/u#_5 [y] vi | ||||
[u:] fr | [u:] fr | ||||
[u:] la | [u:] la | ||||
[u] es | [u] es | ||||
[u] sw | |||||
[u] fa | [u] fa | ||||
[u] ht | [u] ht | ||||
[u] kl | [u] kl | ||||
w/w@ [w] base | w/w@ [w] base | ||||
[w] fr | [w] fr | ||||
[w/] fr | [w/] fr | ||||
[w] sw | |||||
w/w2 [w2] base2 | w/w2 [w2] base2 | ||||
[w] pl | [w] pl | ||||
[w] sw | |||||
[w] sq | [w] sq | ||||
w/wa [w] base | w/wa [w] base | ||||
[w] sw | |||||
w/we [w] base | w/we [w] base | ||||
[w] fr | [w] fr | ||||
[w/] fr | [w/] fr | ||||
[w] sw | |||||
w/wi [w] base | w/wi [w] base | ||||
[w] fr | [w] fr | ||||
[w/] fr | [w/] fr | ||||
[i] vi | [i] vi | ||||
[w] sw | |||||
w/wi2 [i:] en | w/wi2 [i:] en | ||||
[i:] en-n | [i:] en-n | ||||
[i:] en-sc | [i:] en-sc | ||||
w/wo [w] base | w/wo [w] base | ||||
[w] fr | [w] fr | ||||
[w/] fr | [w/] fr | ||||
[w] sw | |||||
w/wu [w] base | w/wu [w] base | ||||
[w] fr | [w] fr | ||||
[w/] fr | [w/] fr | ||||
[w] sw | |||||
w/xw [w] base | w/xw [w] base | ||||
[w/] fr | [w/] fr | ||||
[w] sw | |||||
x/b [b] base | x/b [b] base | ||||
[b] fr | [b] fr | ||||
[b;] ro | [b;] ro | ||||
[dZ;] lt | [dZ;] lt | ||||
[dZ;] mk | [dZ;] mk | ||||
[dZ;] ru | [dZ;] ru | ||||
[J] sw | |||||
x/dz_pzd [dZ;] base | x/dz_pzd [dZ;] base | ||||
[dZ;] mk | [dZ;] mk | ||||
[dZ;] ko | [dZ;] ko | ||||
[g;] bg | [g;] bg | ||||
[g] es | [g] es | ||||
[g] is | [g] is | ||||
[g] sw | |||||
x/g2_ [g-] en | x/g2_ [g-] en | ||||
x/g3 [g] ru | x/g3 [g] ru |
// Irish Phonemes | // Irish Phonemes | ||||
//Please contact [email protected] | //Please contact [email protected] | ||||
// Version 2.7 2013 | |||||
// Version 2.8 2013 | |||||
// short vowels | // short vowels | ||||
phoneme i | phoneme i | ||||
vowel starttype #i endtype #i | vowel starttype #i endtype #i | ||||
length 165 | |||||
length 200 | |||||
FMT(vowel/i) | FMT(vowel/i) | ||||
endphoneme | endphoneme | ||||
phoneme e | phoneme e | ||||
vowel starttype #e endtype #e | vowel starttype #e endtype #e | ||||
length 180 | |||||
length 210 | |||||
FMT(vowel/e_mid2) | FMT(vowel/e_mid2) | ||||
endphoneme | endphoneme | ||||
phoneme a/ | |||||
vowel starttype #@ endtype #@ | |||||
length 180 | |||||
FMT(vowel/a#_2) | |||||
endphoneme | |||||
phoneme a | phoneme a | ||||
vowel starttype #a endtype #a | vowel starttype #a endtype #a | ||||
length 180 | |||||
ChangeIfUnstressed(a/) | |||||
length 210 | |||||
FMT(vowel/a_5) | FMT(vowel/a_5) | ||||
endphoneme | endphoneme | ||||
phoneme o | phoneme o | ||||
vowel starttype #o endtype #o | vowel starttype #o endtype #o | ||||
length 180 | |||||
FMT(vowel/0_2) | |||||
length 210 | |||||
FMT(vowel/o_4) | |||||
endphoneme | endphoneme | ||||
phoneme u | phoneme u | ||||
vowel starttype #u endtype #u | vowel starttype #u endtype #u | ||||
length 170 | |||||
FMT(vowel/u_5) | |||||
length 200 | |||||
FMT(vowel/u_bck2) | |||||
endphoneme | endphoneme | ||||
import_phoneme base2/d | import_phoneme base2/d | ||||
endphoneme | endphoneme | ||||
phoneme z | |||||
vcd alv frc sibilant | |||||
voicingswitch s | |||||
lengthmod 6 | |||||
Vowelout f1=0 f2=1700 -300 300 f3=-100 60 len=50 | |||||
IF KlattSynth THEN | |||||
Vowelin f1=0 f2=1390 -300 300 f3=0 0 | |||||
Vowelout f1=1 f2=1390 -300 300 f3=-100 60 len=50 brk | |||||
ENDIF | |||||
FMT(voc/z_pzd_) addWav(ufric/s_pzd, 75) | |||||
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(ustop/t_hard, 70) | |||||
endphoneme | |||||
phoneme T | |||||
vls dnt frc | |||||
voicingswitch D | |||||
lengthmod 3 | |||||
Vowelin f1=0 f2=1700 -300 300 f3=-100 80 | |||||
Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 | |||||
WAV(ufric/th_,50) | |||||
endphoneme | |||||
phoneme S | |||||
vls pla frc sibilant | |||||
voicingswitch Z | |||||
lengthmod 3 | |||||
Vowelin f1=0 f2=2100 100 300 f3=-100 80 | |||||
Vowelout f1=0 f2=2100 100 300 f3=-100 80 | |||||
WAV(ufric/sh3) | |||||
endphoneme | |||||
phoneme s | |||||
vls alv frc sibilant | |||||
voicingswitch z | |||||
lengthmod 3 | |||||
Vowelin f1=0 f2=1700 -300 300 f3=-100 80 | |||||
Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 | |||||
WAV(ufric/s_,60) | |||||
endphoneme | |||||
phoneme p | |||||
vls blb stop | |||||
voicingswitch b | |||||
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) | |||||
endphoneme | |||||
phoneme n^ | |||||
vcd pal nasal palatal | |||||
ipa ɲ | |||||
Vowelout f1=3 f2=2500 300 500 f3=100 80 len=45 brk rate | |||||
lengthmod 4 | |||||
IF KlattSynth THEN | |||||
VowelStart(klatt/n^@) | |||||
FMT(klatt/n^) | |||||
ENDIF | |||||
NextVowelStarts | |||||
VowelStart(n^/n^@) | |||||
VowelStart(n^/n^a) | |||||
VowelStart(n^/n^e) | |||||
VowelStart(n^/n^i) | |||||
VowelStart(n^/n^o) | |||||
VowelStart(n^/n^u) | |||||
EndSwitch | |||||
FMT(n^/n^_) | |||||
endphoneme | |||||
phoneme N | |||||
vcd vel nasal | |||||
Vowelout f1=3 f2=2300 300 400 f3=-200 80 len=40 rms=20 brk | |||||
lengthmod 8 // longer than 'n' | |||||
IF KlattSynth THEN | |||||
Vowelin f1=0 f2=2100 50 300 f3=0 80 | |||||
FMT(klatt/nn) | |||||
ENDIF | |||||
NextVowelStarts | |||||
VowelStart(nn/nn@) | |||||
VowelStart(nn/nna) | |||||
VowelStart(nn/nne) | |||||
VowelStart(nn/nni) | |||||
VowelStart(nn/nno) | |||||
VowelStart(nn/nnu) | |||||
EndSwitch | |||||
FMT(nn/nn_,50) | |||||
endphoneme | |||||
phoneme w | |||||
liquid | |||||
lengthmod 7 | |||||
NextVowelStarts | |||||
VowelStart(w/w@) | |||||
VowelStart(w/wa) | |||||
VowelStart(w/we) | |||||
VowelStart(w/wi) | |||||
VowelStart(w/wo) | |||||
VowelStart(w/wu) | |||||
EndSwitch | |||||
VowelEnding(w/xw, -30) | |||||
FMT(w/w2) | |||||
endphoneme | |||||
phoneme k | |||||
vls vel stop | |||||
voicingswitch g | |||||
lengthmod 2 | |||||
Vowelin f1=0 f2=2300 200 300 f3=-200 80 | |||||
Vowelout f1=0 f2=2300 300 400 f3=-200 80 rms=20 | |||||
IF KlattSynth THEN | |||||
Vowelout f1=0 f2=2300 200 300 f3=-200 80 rms=20 | |||||
ENDIF | |||||
WAV(ustop/k_,50) | |||||
endphoneme | |||||
phoneme J | |||||
vcd pal afr sibilant palatal | |||||
voicingswitch c | |||||
lengthmod 5 | |||||
Vowelin f1=2 f2=2700 400 600 f3=300 80 rate len=70 | |||||
Vowelout f1=2 f2=2700 400 600 f3=300 80 colr=1 | |||||
IF KlattSynth THEN | |||||
FMT(klatt/dz_pzd) addWav(x/dzh_, 45) | |||||
ENDIF | |||||
IF nextPh(isNotVowel) THEN | |||||
FMT(dzh/dz_pzd) addWav(x/dzh_, 45) | |||||
ELSE | |||||
FMT(dzh/dz_pzd) addWav(x/dzh_, 45) | |||||
ENDIF | |||||
endphoneme | |||||
phoneme g | |||||
vcd vel stop | |||||
voicingswitch k | |||||
lengthmod 5 | |||||
Vowelin f1=2 f2=2300 200 300 f3=-300 80 | |||||
Vowelout f1=2 f2=2300 250 300 f3=-300 80 brk | |||||
IF PreVoicing THEN | |||||
FMT(g/xg) | |||||
ENDIF | |||||
FMT(g/g) addWav(x/g2, 50) | |||||
endphoneme |
phonemetable si hi | phonemetable si hi | ||||
include ph_sinhala | include ph_sinhala | ||||
phonemetable gu hi | |||||
include ph_gujarati | |||||
phonemetable as bn | |||||
include ph_assamese | |||||
phonemetable tn base | phonemetable tn base | ||||
include ph_setswana | include ph_setswana | ||||
} | } | ||||
spectseq->Load(stream); | spectseq->Load(stream); | ||||
if(spectseq->frames == NULL) | |||||
{ | |||||
error("Bad vowel file, no frames: '%s'",path); | |||||
return(0); | |||||
} | |||||
// do we need additional klatt data ? | // do we need additional klatt data ? | ||||
for(frame=0; frame < spectseq->numframes; frame++) | for(frame=0; frame < spectseq->numframes; frame++) | ||||
{ | { | ||||
"# ------- ---------\n"); | "# ------- ---------\n"); | ||||
fprintf(f_errors, "Source data path = '%s'\n", path_source); | |||||
strncpy0(fname,path_phfile.mb_str(wxConvLocal),sizeof(fname)); | |||||
fprintf(f_errors, "Master phonemes file = '%s'\n", fname); | |||||
fprintf(f_errors, "Output to '%s/'\n\n", path_home); | |||||
sprintf(fname,"%s/%s",path_home,"phondata"); | sprintf(fname,"%s/%s",path_home,"phondata"); | ||||
f_phdata = fopen_log(f_errors,fname,"wb"); | f_phdata = fopen_log(f_errors,fname,"wb"); | ||||
} | } | ||||
static void copy_rule_string(char *string, int &state) | |||||
{//=================================================== | |||||
static void copy_rule_string(char *string, int *state_out) | |||||
{//======================================================= | |||||
// state 0: conditional, 1=pre, 2=match, 3=post, 4=phonemes | // state 0: conditional, 1=pre, 2=match, 3=post, 4=phonemes | ||||
static char *outbuf[5] = {rule_cond, rule_pre, rule_match, rule_post, rule_phonemes}; | static char *outbuf[5] = {rule_cond, rule_pre, rule_match, rule_post, rule_phonemes}; | ||||
static int next_state[5] = {2,2,4,4,4}; | static int next_state[5] = {2,2,4,4,4}; | ||||
int value; | int value; | ||||
int literal; | int literal; | ||||
int hexdigit_input = 0; | int hexdigit_input = 0; | ||||
int state = *state_out; | |||||
MNEM_TAB *mr; | MNEM_TAB *mr; | ||||
if(string[0] == 0) return; | if(string[0] == 0) return; | ||||
if(c == 0) break; | if(c == 0) break; | ||||
} | } | ||||
state = next_state[state]; | |||||
*state_out = next_state[state]; | |||||
} // end of copy_rule_string | } // end of copy_rule_string | ||||
case ')': // end of prefix section | case ')': // end of prefix section | ||||
*p = 0; | *p = 0; | ||||
state = 1; | state = 1; | ||||
copy_rule_string(buf,state); | |||||
copy_rule_string(buf,&state); | |||||
p = buf; | p = buf; | ||||
break; | break; | ||||
case '(': // start of suffix section | case '(': // start of suffix section | ||||
*p = 0; | *p = 0; | ||||
state = 2; | state = 2; | ||||
copy_rule_string(buf,state); | |||||
copy_rule_string(buf,&state); | |||||
state = 3; | state = 3; | ||||
p = buf; | p = buf; | ||||
if(input[ix+1] == ' ') | if(input[ix+1] == ' ') | ||||
case '\r': | case '\r': | ||||
case 0: // end of line | case 0: // end of line | ||||
*p = 0; | *p = 0; | ||||
copy_rule_string(buf,state); | |||||
copy_rule_string(buf,&state); | |||||
finish=1; | finish=1; | ||||
break; | break; | ||||
case '\t': // end of section section | case '\t': // end of section section | ||||
case ' ': | case ' ': | ||||
*p = 0; | *p = 0; | ||||
copy_rule_string(buf,state); | |||||
copy_rule_string(buf,&state); | |||||
p = buf; | p = buf; | ||||
break; | break; | ||||
0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,0x7b,0x7c,0x7d,0x303,0x7f | 0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,0x7b,0x7c,0x7d,0x303,0x7f | ||||
}; | }; | ||||
#define N_PHON_OUT 500 | |||||
#define N_PHON_OUT 500 // realloc increment | |||||
static char *phon_out_buf = NULL; | static char *phon_out_buf = NULL; | ||||
static int phon_out_size = 0; | static int phon_out_size = 0; | ||||
static int GetVowelStress(Translator *tr, unsigned char *phonemes, signed char *vowel_stress, int &vowel_count, int &stressed_syllable, int control) | |||||
static int GetVowelStress(Translator *tr, unsigned char *phonemes, signed char *vowel_stress, int *vowel_count, int *stressed_syllable, int control) | |||||
{//================================================================================================================================================= | {//================================================================================================================================================= | ||||
// control = 1, set stress to 1 for forced unstressed vowels | // control = 1, set stress to 1 for forced unstressed vowels | ||||
unsigned char phcode; | unsigned char phcode; | ||||
{ | { | ||||
/* primary stress on preceeding vowel */ | /* primary stress on preceeding vowel */ | ||||
j = count - 1; | j = count - 1; | ||||
while((j > 0) && (stressed_syllable == 0) && (vowel_stress[j] < 4)) | |||||
while((j > 0) && (*stressed_syllable == 0) && (vowel_stress[j] < 4)) | |||||
{ | { | ||||
if((vowel_stress[j] != 0) && (vowel_stress[j] != 1)) | if((vowel_stress[j] != 0) && (vowel_stress[j] != 1)) | ||||
{ | { | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
if((ph->std_length < 4) || (stressed_syllable == 0)) | |||||
if((ph->std_length < 4) || (*stressed_syllable == 0)) | |||||
{ | { | ||||
stress = ph->std_length; | stress = ph->std_length; | ||||
*ph_out = 0; | *ph_out = 0; | ||||
/* has the position of the primary stress been specified by $1, $2, etc? */ | /* has the position of the primary stress been specified by $1, $2, etc? */ | ||||
if(stressed_syllable > 0) | |||||
if(*stressed_syllable > 0) | |||||
{ | { | ||||
if(stressed_syllable >= count) | |||||
stressed_syllable = count-1; // the final syllable | |||||
if(*stressed_syllable >= count) | |||||
*stressed_syllable = count-1; // the final syllable | |||||
vowel_stress[stressed_syllable] = 4; | |||||
vowel_stress[*stressed_syllable] = 4; | |||||
max_stress = 4; | max_stress = 4; | ||||
primary_posn = stressed_syllable; | |||||
primary_posn = *stressed_syllable; | |||||
} | } | ||||
if(max_stress == 5) | if(max_stress == 5) | ||||
max_stress = 4; | max_stress = 4; | ||||
} | } | ||||
stressed_syllable = primary_posn; | |||||
vowel_count = count; | |||||
*stressed_syllable = primary_posn; | |||||
*vowel_count = count; | |||||
return(max_stress); | return(max_stress); | ||||
} // end of GetVowelStress | } // end of GetVowelStress | ||||
signed char vowel_stress[N_WORD_PHONEMES/2]; | signed char vowel_stress[N_WORD_PHONEMES/2]; | ||||
strcpy((char *)phonetic,word); | strcpy((char *)phonetic,word); | ||||
max_stress = GetVowelStress(tr, phonetic, vowel_stress, vowel_count, stressed_syllable, 0); | |||||
max_stress = GetVowelStress(tr, phonetic, vowel_stress, &vowel_count, &stressed_syllable, 0); | |||||
if(new_stress >= 4) | if(new_stress >= 4) | ||||
{ | { | ||||
unstressed_word = 1; | unstressed_word = 1; | ||||
} | } | ||||
max_stress = GetVowelStress(tr, phonetic, vowel_stress, vowel_count, stressed_syllable, 1); | |||||
max_stress = GetVowelStress(tr, phonetic, vowel_stress, &vowel_count, &stressed_syllable, 1); | |||||
if((max_stress < 0) && dictionary_flags) | if((max_stress < 0) && dictionary_flags) | ||||
{ | { | ||||
max_stress = 0; | max_stress = 0; | ||||
vowel_stress[stressed_syllable] = 4; | vowel_stress[stressed_syllable] = 4; | ||||
max_stress = 4; | max_stress = 4; | ||||
break; | break; | ||||
case 13: // LANG=ml, 1st unless 1st vowel is short and 2nd is long | |||||
if(stressed_syllable == 0) | |||||
{ | |||||
stressed_syllable = 1; | |||||
if((vowel_length[1] == 0) && (vowel_count > 2) && (vowel_length[2] > 0)) | |||||
stressed_syllable = 2; | |||||
vowel_stress[stressed_syllable] = 4; | |||||
max_stress = 4; | |||||
} | |||||
break; | |||||
} | } | ||||
/* now guess the complete stress pattern */ | /* now guess the complete stress pattern */ | ||||
if(tr->transpose_min > 0) | if(tr->transpose_min > 0) | ||||
{ | { | ||||
strncpy0(word_buf,word, N_WORD_BYTES); | strncpy0(word_buf,word, N_WORD_BYTES); | ||||
wlen = TransposeAlphabet(tr, word_buf); | |||||
wlen = TransposeAlphabet(tr, word_buf); // bit 6 indicates compressed characters | |||||
word = word_buf; | word = word_buf; | ||||
} | } | ||||
else | else |
"--split=\"<minutes>\"\n" | "--split=\"<minutes>\"\n" | ||||
"\t Starts a new WAV file every <minutes>. Used with -w\n" | "\t Starts a new WAV file every <minutes>. Used with -w\n" | ||||
"--stdout Write speech output to stdout\n" | "--stdout Write speech output to stdout\n" | ||||
"--version Shows version number and date, and location of espeak-data\n" | |||||
"--voices=<language>\n" | "--voices=<language>\n" | ||||
"\t List the available voices for the specified language.\n" | "\t List the available voices for the specified language.\n" | ||||
"\t If <language> is omitted, then list all voices.\n"; | "\t If <language> is omitted, then list all voices.\n"; |
//<decls and function prototypes | //<decls and function prototypes | ||||
// my_mutex: protects my_thread_is_talking, | |||||
// my_mutex: protects my_thread_is_talking, | |||||
static pthread_mutex_t my_mutex; | static pthread_mutex_t my_mutex; | ||||
static sem_t my_sem_start_is_required; | static sem_t my_sem_start_is_required; | ||||
static sem_t my_sem_stop_is_required; | static sem_t my_sem_stop_is_required; | ||||
enum {MIN_TIMEOUT_IN_MS=10, | enum {MIN_TIMEOUT_IN_MS=10, | ||||
ACTIVITY_TIMEOUT=50, // in ms, check that the stream is active | ACTIVITY_TIMEOUT=50, // in ms, check that the stream is active | ||||
MAX_ACTIVITY_CHECK=6 | |||||
MAX_ACTIVITY_CHECK=6 | |||||
}; | }; | ||||
assert(-1 != sem_init(&my_sem_stop_is_required, 0, 0)); | assert(-1 != sem_init(&my_sem_stop_is_required, 0, 0)); | ||||
assert(-1 != sem_init(&my_sem_stop_is_acknowledged, 0, 0)); | assert(-1 != sem_init(&my_sem_stop_is_acknowledged, 0, 0)); | ||||
pthread_attr_t a_attrib; | |||||
pthread_attr_t a_attrib; | |||||
if (pthread_attr_init (& a_attrib) | if (pthread_attr_init (& a_attrib) | ||||
|| pthread_attr_setdetachstate(&a_attrib, PTHREAD_CREATE_JOINABLE) | || pthread_attr_setdetachstate(&a_attrib, PTHREAD_CREATE_JOINABLE) | ||||
|| pthread_create( &my_thread, | |||||
& a_attrib, | |||||
polling_thread, | |||||
|| pthread_create( &my_thread, | |||||
& a_attrib, | |||||
polling_thread, | |||||
(void*)NULL)) | (void*)NULL)) | ||||
{ | { | ||||
assert(0); | assert(0); | ||||
"MARK", | "MARK", | ||||
"PLAY", | "PLAY", | ||||
"END", | "END", | ||||
"MSG_TERMINATED" | |||||
"MSG_TERMINATED" | |||||
}; | }; | ||||
SHOW("event_display > event=0x%x\n",event); | SHOW("event_display > event=0x%x\n",event); | ||||
static espeak_EVENT* event_copy (espeak_EVENT* event) | static espeak_EVENT* event_copy (espeak_EVENT* event) | ||||
{ | { | ||||
ENTER("event_copy"); | ENTER("event_copy"); | ||||
if (event==NULL) | if (event==NULL) | ||||
{ | { | ||||
return NULL; | return NULL; | ||||
} | } | ||||
espeak_EVENT* a_event=(espeak_EVENT*)malloc(sizeof(espeak_EVENT)); | espeak_EVENT* a_event=(espeak_EVENT*)malloc(sizeof(espeak_EVENT)); | ||||
if (a_event) | if (a_event) | ||||
{ | { | ||||
memcpy(a_event, event, sizeof(espeak_EVENT)); | memcpy(a_event, event, sizeof(espeak_EVENT)); | ||||
switch(event->type) | switch(event->type) | ||||
{ | { | ||||
case espeakEVENT_MARK: | case espeakEVENT_MARK: | ||||
a_event->id.name = strdup(event->id.name); | a_event->id.name = strdup(event->id.name); | ||||
} | } | ||||
break; | break; | ||||
default: | default: | ||||
break; | break; | ||||
} | } | ||||
} | } | ||||
event_display(a_event); | event_display(a_event); | ||||
return a_event; | return a_event; | ||||
} | } | ||||
return EE_INTERNAL_ERROR; | return EE_INTERNAL_ERROR; | ||||
} | } | ||||
int a_status = pthread_mutex_lock(&my_mutex); | |||||
int a_status = pthread_mutex_lock(&my_mutex); | |||||
espeak_ERROR a_error = EE_OK; | espeak_ERROR a_error = EE_OK; | ||||
if (!a_status) | if (!a_status) | ||||
// | // | ||||
// if (!a_status && !my_event_is_running && (a_error == EE_OK)) | // if (!a_status && !my_event_is_running && (a_error == EE_OK)) | ||||
// { | // { | ||||
// // quit when command is actually started | |||||
// // quit when command is actually started | |||||
// // (for possible forthcoming 'end of command' checks) | // // (for possible forthcoming 'end of command' checks) | ||||
SHOW_TIME("event_declare > post my_sem_start_is_required\n"); | SHOW_TIME("event_declare > post my_sem_start_is_required\n"); | ||||
sem_post(&my_sem_start_is_required); | sem_post(&my_sem_start_is_required); | ||||
add_time_in_ms( &ts, time_in_ms); | add_time_in_ms( &ts, time_in_ms); | ||||
SHOW("polling_thread > sleep_until_timeout_or_stop_request > start sem_timedwait from %d.%09lu to %d.%09lu \n", | |||||
SHOW("polling_thread > sleep_until_timeout_or_stop_request > start sem_timedwait from %d.%09lu to %d.%09lu \n", | |||||
to.tv_sec, to.tv_nsec, | to.tv_sec, to.tv_nsec, | ||||
ts.tv_sec, ts.tv_nsec); | ts.tv_sec, ts.tv_nsec); | ||||
while ((err = sem_timedwait(&my_sem_stop_is_required, &ts)) == -1 | |||||
while ((err = sem_timedwait(&my_sem_stop_is_required, &ts)) == -1 | |||||
&& errno == EINTR) | && errno == EINTR) | ||||
{ | { | ||||
continue; // Restart when interrupted by handler | continue; // Restart when interrupted by handler | ||||
} | } | ||||
assert (gettimeofday(&tv, NULL) != -1); | assert (gettimeofday(&tv, NULL) != -1); | ||||
SHOW("polling_thread > sleep_until_timeout_or_stop_request > stop sem_timedwait %d.%09lu \n", | |||||
SHOW("polling_thread > sleep_until_timeout_or_stop_request > stop sem_timedwait %d.%09lu \n", | |||||
tv.tv_sec, tv.tv_usec*1000); | tv.tv_sec, tv.tv_usec*1000); | ||||
if (err == 0) | if (err == 0) | ||||
//> | //> | ||||
//<get_remaining_time | //<get_remaining_time | ||||
// Asked for the time interval required for reaching the sample. | // Asked for the time interval required for reaching the sample. | ||||
// If the stream is opened but the audio samples are not played, | |||||
// If the stream is opened but the audio samples are not played, | |||||
// a timeout is started. | // a timeout is started. | ||||
static int get_remaining_time(uint32_t sample, uint32_t* time_in_ms, int* stop_is_required) | static int get_remaining_time(uint32_t sample, uint32_t* time_in_ms, int* stop_is_required) | ||||
// stream opened but not active | // stream opened but not active | ||||
// | // | ||||
// Several possible states: | |||||
// * the stream is opened but not yet started: | |||||
// Several possible states: | |||||
// * the stream is opened but not yet started: | |||||
// | // | ||||
// wait for the start of stream | // wait for the start of stream | ||||
// | // | ||||
// * some samples have already been played, | |||||
// * some samples have already been played, | |||||
// ** the end of stream is reached | // ** the end of stream is reached | ||||
// ** or there is an underrun | // ** or there is an underrun | ||||
// | |||||
// | |||||
// wait for the close of stream | // wait for the close of stream | ||||
*stop_is_required = sleep_until_timeout_or_stop_request( ACTIVITY_TIMEOUT); | |||||
*stop_is_required = sleep_until_timeout_or_stop_request( ACTIVITY_TIMEOUT); | |||||
} | } | ||||
return err; | return err; | ||||
SHOW_TIME("polling_thread > unlocked\n"); | SHOW_TIME("polling_thread > unlocked\n"); | ||||
a_stop_is_required=0; | a_stop_is_required=0; | ||||
a_status = sem_getvalue(&my_sem_stop_is_required, &a_stop_is_required); | |||||
if ((a_status==0) && a_stop_is_required) | |||||
a_status = sem_getvalue(&my_sem_stop_is_required, &a_stop_is_required); // NOTE: may set a_stop_is_required to -1 | |||||
if ((a_status==0) && (a_stop_is_required > 0)) | |||||
{ | { | ||||
SHOW("polling_thread > stop required (%d)\n", __LINE__); | SHOW("polling_thread > stop required (%d)\n", __LINE__); | ||||
while(0 == sem_trywait(&my_sem_stop_is_required)) | while(0 == sem_trywait(&my_sem_stop_is_required)) | ||||
} | } | ||||
// In this loop, my_event_is_running = 1 | // In this loop, my_event_is_running = 1 | ||||
while (head && !a_stop_is_required) | |||||
while (head && (a_stop_is_required <= 0)) | |||||
{ | { | ||||
SHOW_TIME("polling_thread > check head\n"); | SHOW_TIME("polling_thread > check head\n"); | ||||
while(0 == sem_trywait(&my_sem_start_is_required)) | while(0 == sem_trywait(&my_sem_start_is_required)) | ||||
{ | { | ||||
}; | }; | ||||
espeak_EVENT* event = (espeak_EVENT*)(head->data); | espeak_EVENT* event = (espeak_EVENT*)(head->data); | ||||
assert(event); | assert(event); | ||||
uint32_t time_in_ms = 0; | uint32_t time_in_ms = 0; | ||||
int err = get_remaining_time((uint32_t)event->sample, | |||||
&time_in_ms, | |||||
int err = get_remaining_time((uint32_t)event->sample, | |||||
&time_in_ms, | |||||
&a_stop_is_required); | &a_stop_is_required); | ||||
if (a_stop_is_required) | |||||
if (a_stop_is_required > 0) | |||||
{ | { | ||||
break; | break; | ||||
} | } | ||||
else if (err != 0) | else if (err != 0) | ||||
{ | |||||
{ | |||||
// No available time: the event is deleted. | // No available time: the event is deleted. | ||||
SHOW("polling_thread > %s\n","audio device down"); | SHOW("polling_thread > %s\n","audio device down"); | ||||
a_status = pthread_mutex_lock(&my_mutex); | a_status = pthread_mutex_lock(&my_mutex); | ||||
if (my_callback) | if (my_callback) | ||||
{ | { | ||||
event_notify(event); | event_notify(event); | ||||
// the user_data (and the type) are cleaned to be sure | |||||
// the user_data (and the type) are cleaned to be sure | |||||
// that MSG_TERMINATED is called twice (at delete time too). | // that MSG_TERMINATED is called twice (at delete time too). | ||||
event->type=espeakEVENT_LIST_TERMINATED; | event->type=espeakEVENT_LIST_TERMINATED; | ||||
event->user_data=NULL; | event->user_data=NULL; | ||||
} | } | ||||
a_status = pthread_mutex_lock(&my_mutex); | a_status = pthread_mutex_lock(&my_mutex); | ||||
SHOW_TIME("polling_thread > locked\n"); | SHOW_TIME("polling_thread > locked\n"); | ||||
event_delete( (espeak_EVENT*)pop()); | event_delete( (espeak_EVENT*)pop()); | ||||
a_status = pthread_mutex_unlock(&my_mutex); | a_status = pthread_mutex_unlock(&my_mutex); | ||||
SHOW_TIME("polling_thread > unlocked\n"); | SHOW_TIME("polling_thread > unlocked\n"); | ||||
a_stop_is_required=0; | a_stop_is_required=0; | ||||
a_status = sem_getvalue(&my_sem_stop_is_required, &a_stop_is_required); | a_status = sem_getvalue(&my_sem_stop_is_required, &a_stop_is_required); | ||||
if ((a_status==0) && a_stop_is_required) | |||||
if ((a_status==0) && (a_stop_is_required > 0)) | |||||
{ | { | ||||
SHOW("polling_thread > stop required (%d)\n", __LINE__); | SHOW("polling_thread > stop required (%d)\n", __LINE__); | ||||
while(0 == sem_trywait(&my_sem_stop_is_required)) | while(0 == sem_trywait(&my_sem_stop_is_required)) | ||||
a_stop_is_required = sleep_until_timeout_or_stop_request(time_in_ms); | a_stop_is_required = sleep_until_timeout_or_stop_request(time_in_ms); | ||||
} | } | ||||
} | } | ||||
a_status = pthread_mutex_lock(&my_mutex); | a_status = pthread_mutex_lock(&my_mutex); | ||||
SHOW_TIME("polling_thread > locked\n"); | SHOW_TIME("polling_thread > locked\n"); | ||||
SHOW_TIME("polling_thread > my_event_is_running = 0\n"); | SHOW_TIME("polling_thread > my_event_is_running = 0\n"); | ||||
my_event_is_running = 0; | my_event_is_running = 0; | ||||
if(!a_stop_is_required) | |||||
if(a_stop_is_required <= 0) | |||||
{ | { | ||||
a_status = sem_getvalue(&my_sem_stop_is_required, &a_stop_is_required); | a_status = sem_getvalue(&my_sem_stop_is_required, &a_stop_is_required); | ||||
if ((a_status==0) && a_stop_is_required) | |||||
if ((a_status==0) && (a_stop_is_required > 0)) | |||||
{ | { | ||||
SHOW("polling_thread > stop required (%d)\n", __LINE__); | SHOW("polling_thread > stop required (%d)\n", __LINE__); | ||||
while(0 == sem_trywait(&my_sem_stop_is_required)) | while(0 == sem_trywait(&my_sem_stop_is_required)) | ||||
a_status = pthread_mutex_unlock(&my_mutex); | a_status = pthread_mutex_unlock(&my_mutex); | ||||
SHOW_TIME("polling_thread > unlocked\n"); | SHOW_TIME("polling_thread > unlocked\n"); | ||||
if (a_stop_is_required) | |||||
{ | |||||
if (a_stop_is_required > 0) | |||||
{ | |||||
SHOW("polling_thread > %s\n","stop required!"); | SHOW("polling_thread > %s\n","stop required!"); | ||||
// no mutex required since the stop command is synchronous | // no mutex required since the stop command is synchronous | ||||
// and waiting for my_sem_stop_is_acknowledged | // and waiting for my_sem_stop_is_acknowledged | ||||
SHOW("event > push > %s\n", "EE_BUFFER_FULL"); | SHOW("event > push > %s\n", "EE_BUFFER_FULL"); | ||||
return EE_BUFFER_FULL; | return EE_BUFFER_FULL; | ||||
} | } | ||||
node *n = (node *)malloc(sizeof(node)); | node *n = (node *)malloc(sizeof(node)); | ||||
if (n == NULL) | if (n == NULL) | ||||
{ | { | ||||
return EE_INTERNAL_ERROR; | return EE_INTERNAL_ERROR; | ||||
} | } | ||||
if (head == NULL) | if (head == NULL) | ||||
{ | { | ||||
head = n; | head = n; | ||||
tail->next = n; | tail->next = n; | ||||
tail = n; | tail = n; | ||||
} | } | ||||
tail->next = NULL; | tail->next = NULL; | ||||
tail->data = the_data; | tail->data = the_data; | ||||
node_counter++; | node_counter++; | ||||
SHOW("event > push > counter=%d (uid=%d)\n",node_counter,((espeak_EVENT*)the_data)->unique_identifier); | SHOW("event > push > counter=%d (uid=%d)\n",node_counter,((espeak_EVENT*)the_data)->unique_identifier); | ||||
return EE_OK; | return EE_OK; | ||||
} | } | ||||
{ | { | ||||
ENTER("event > pop"); | ENTER("event > pop"); | ||||
void* the_data = NULL; | void* the_data = NULL; | ||||
assert((!head && !tail) || (head && tail)); | assert((!head && !tail) || (head && tail)); | ||||
if (head != NULL) | if (head != NULL) | ||||
{ | { | ||||
node* n = head; | node* n = head; | ||||
node_counter--; | node_counter--; | ||||
SHOW("event > pop > event=0x%x (counter=%d, uid=%d)\n",the_data, node_counter,((espeak_EVENT*)the_data)->unique_identifier); | SHOW("event > pop > event=0x%x (counter=%d, uid=%d)\n",the_data, node_counter,((espeak_EVENT*)the_data)->unique_identifier); | ||||
} | } | ||||
if(head == NULL) | if(head == NULL) | ||||
{ | { | ||||
tail = NULL; | tail = NULL; | ||||
} | } | ||||
return the_data; | return the_data; | ||||
} | } | ||||
static void init() | static void init() | ||||
{ | { | ||||
ENTER("event > init"); | ENTER("event > init"); | ||||
while (event_delete( (espeak_EVENT*)pop() )) | while (event_delete( (espeak_EVENT*)pop() )) | ||||
{} | {} | ||||
node_counter = 0; | node_counter = 0; | ||||
} | } | ||||
void event_terminate() | void event_terminate() | ||||
{ | { | ||||
ENTER("event_terminate"); | ENTER("event_terminate"); | ||||
if (my_thread) | if (my_thread) | ||||
{ | { | ||||
pthread_cancel(my_thread); | pthread_cancel(my_thread); |
//> | //> | ||||
//<decls and function prototypes | //<decls and function prototypes | ||||
// my_mutex: protects my_thread_is_talking, | |||||
// my_mutex: protects my_thread_is_talking, | |||||
// my_stop_is_required, and the command fifo | // my_stop_is_required, and the command fifo | ||||
static pthread_mutex_t my_mutex; | static pthread_mutex_t my_mutex; | ||||
static int my_command_is_running = 0; | static int my_command_is_running = 0; | ||||
// + fifo | // + fifo | ||||
// | // | ||||
// my_thread: reads commands from the fifo, and runs them. | |||||
// my_thread: reads commands from the fifo, and runs them. | |||||
static pthread_t my_thread; | static pthread_t my_thread; | ||||
static sem_t my_sem_start_is_required; | static sem_t my_sem_start_is_required; | ||||
static sem_t my_sem_stop_is_acknowledged; | static sem_t my_sem_stop_is_acknowledged; | ||||
assert(-1 != sem_init(&my_sem_start_is_required, 0, 0)); | assert(-1 != sem_init(&my_sem_start_is_required, 0, 0)); | ||||
assert(-1 != sem_init(&my_sem_stop_is_acknowledged, 0, 0)); | assert(-1 != sem_init(&my_sem_stop_is_acknowledged, 0, 0)); | ||||
pthread_attr_t a_attrib; | |||||
pthread_attr_t a_attrib; | |||||
if (pthread_attr_init (& a_attrib) | if (pthread_attr_init (& a_attrib) | ||||
|| pthread_attr_setdetachstate(&a_attrib, PTHREAD_CREATE_JOINABLE) | || pthread_attr_setdetachstate(&a_attrib, PTHREAD_CREATE_JOINABLE) | ||||
|| pthread_create( &my_thread, | |||||
& a_attrib, | |||||
say_thread, | |||||
|| pthread_create( &my_thread, | |||||
& a_attrib, | |||||
say_thread, | |||||
(void*)NULL)) | (void*)NULL)) | ||||
{ | { | ||||
assert(0); | assert(0); | ||||
espeak_ERROR fifo_add_command (t_espeak_command* the_command) | espeak_ERROR fifo_add_command (t_espeak_command* the_command) | ||||
{ | { | ||||
ENTER("fifo_add_command"); | ENTER("fifo_add_command"); | ||||
int a_status = pthread_mutex_lock(&my_mutex); | |||||
int a_status = pthread_mutex_lock(&my_mutex); | |||||
espeak_ERROR a_error = EE_OK; | espeak_ERROR a_error = EE_OK; | ||||
if (!a_status) | if (!a_status) | ||||
if (!a_status && !my_command_is_running && (a_error == EE_OK)) | if (!a_status && !my_command_is_running && (a_error == EE_OK)) | ||||
{ | { | ||||
// quit when command is actually started | |||||
// quit when command is actually started | |||||
// (for possible forthcoming 'end of command' checks) | // (for possible forthcoming 'end of command' checks) | ||||
SHOW_TIME("fifo_add_command > post my_sem_start_is_required\n"); | SHOW_TIME("fifo_add_command > post my_sem_start_is_required\n"); | ||||
sem_post(&my_sem_start_is_required); | sem_post(&my_sem_start_is_required); | ||||
int val=1; | int val=1; | ||||
while (val) | |||||
while (val > 0) | |||||
{ | { | ||||
usleep(50000); // TBD: event? | usleep(50000); // TBD: event? | ||||
sem_getvalue(&my_sem_start_is_required, &val); | sem_getvalue(&my_sem_start_is_required, &val); | ||||
espeak_ERROR fifo_add_commands (t_espeak_command* command1, t_espeak_command* command2) | espeak_ERROR fifo_add_commands (t_espeak_command* command1, t_espeak_command* command2) | ||||
{ | { | ||||
ENTER("fifo_add_command"); | ENTER("fifo_add_command"); | ||||
int a_status = pthread_mutex_lock(&my_mutex); | |||||
int a_status = pthread_mutex_lock(&my_mutex); | |||||
espeak_ERROR a_error = EE_OK; | espeak_ERROR a_error = EE_OK; | ||||
if (!a_status) | if (!a_status) | ||||
if (!a_status && !my_command_is_running && (a_error == EE_OK)) | if (!a_status && !my_command_is_running && (a_error == EE_OK)) | ||||
{ | { | ||||
// quit when one command is actually started | |||||
// quit when one command is actually started | |||||
// (for possible forthcoming 'end of command' checks) | // (for possible forthcoming 'end of command' checks) | ||||
SHOW_TIME("fifo_add_command > post my_sem_start_is_required\n"); | SHOW_TIME("fifo_add_command > post my_sem_start_is_required\n"); | ||||
sem_post(&my_sem_start_is_required); | sem_post(&my_sem_start_is_required); | ||||
int val=1; | int val=1; | ||||
while (val) | |||||
while (val > 0) | |||||
{ | { | ||||
usleep(50000); // TBD: event? | usleep(50000); // TBD: event? | ||||
sem_getvalue(&my_sem_start_is_required, &val); | sem_getvalue(&my_sem_start_is_required, &val); | ||||
int a_start_is_required=0; | int a_start_is_required=0; | ||||
// Wait for the start request (my_sem_start_is_required). | // Wait for the start request (my_sem_start_is_required). | ||||
// Besides this, if the audio stream is still busy, | |||||
// check from time to time its end. | |||||
// The end of the stream is confirmed by several checks | |||||
// Besides this, if the audio stream is still busy, | |||||
// check from time to time its end. | |||||
// The end of the stream is confirmed by several checks | |||||
// for filtering underflow. | // for filtering underflow. | ||||
// | // | ||||
int i=0; | int i=0; | ||||
add_time_in_ms( &ts, INACTIVITY_TIMEOUT); | add_time_in_ms( &ts, INACTIVITY_TIMEOUT); | ||||
SHOW("fifo > sleep_until_start_request_or_inactivity > start sem_timedwait (start_is_required) from %d.%09lu to %d.%09lu \n", | |||||
SHOW("fifo > sleep_until_start_request_or_inactivity > start sem_timedwait (start_is_required) from %d.%09lu to %d.%09lu \n", | |||||
to.tv_sec, to.tv_nsec, | to.tv_sec, to.tv_nsec, | ||||
ts.tv_sec, ts.tv_nsec); | ts.tv_sec, ts.tv_nsec); | ||||
while ((err = sem_timedwait(&my_sem_start_is_required, &ts)) == -1 | |||||
while ((err = sem_timedwait(&my_sem_start_is_required, &ts)) == -1 | |||||
&& errno == EINTR) | && errno == EINTR) | ||||
{ | { | ||||
continue; | continue; | ||||
} | } | ||||
assert (gettimeofday(&tv, NULL) != -1); | assert (gettimeofday(&tv, NULL) != -1); | ||||
SHOW("fifo > sleep_until_start_request_or_inactivity > stop sem_timedwait (start_is_required, err=%d) %d.%09lu \n", err, | |||||
SHOW("fifo > sleep_until_start_request_or_inactivity > stop sem_timedwait (start_is_required, err=%d) %d.%09lu \n", err, | |||||
tv.tv_sec, tv.tv_usec*1000); | tv.tv_sec, tv.tv_usec*1000); | ||||
if (err==0) | if (err==0) | ||||
{ | { | ||||
SHOW_TIME("fifo > close_stream > ENTER\n"); | SHOW_TIME("fifo > close_stream > ENTER\n"); | ||||
// Warning: a wave_close can be already required by | |||||
// an external command (espeak_Cancel + fifo_stop), if so: | |||||
// Warning: a wave_close can be already required by | |||||
// an external command (espeak_Cancel + fifo_stop), if so: | |||||
// my_stop_is_required = 1; | // my_stop_is_required = 1; | ||||
int a_status = pthread_mutex_lock(&my_mutex); | int a_status = pthread_mutex_lock(&my_mutex); | ||||
a_stop_is_required = my_stop_is_required; | a_stop_is_required = my_stop_is_required; | ||||
a_status = pthread_mutex_unlock(&my_mutex); | a_status = pthread_mutex_unlock(&my_mutex); | ||||
if (a_stop_is_required) | if (a_stop_is_required) | ||||
{ | { | ||||
// acknowledge the stop request | // acknowledge the stop request | ||||
}; | }; | ||||
if (my_stop_is_required) | if (my_stop_is_required) | ||||
{ | |||||
{ | |||||
SHOW_TIME("say_thread > my_command_is_running = 0\n"); | SHOW_TIME("say_thread > my_command_is_running = 0\n"); | ||||
my_command_is_running = 0; | my_command_is_running = 0; | ||||
} | } | ||||
} | } | ||||
if (my_stop_is_required) | if (my_stop_is_required) | ||||
{ | |||||
{ | |||||
// no mutex required since the stop command is synchronous | // no mutex required since the stop command is synchronous | ||||
// and waiting for my_sem_stop_is_acknowledged | // and waiting for my_sem_stop_is_acknowledged | ||||
init(1); | init(1); | ||||
while(0==sem_trywait(&my_sem_start_is_required)) | while(0==sem_trywait(&my_sem_start_is_required)) | ||||
{ | { | ||||
}; | }; | ||||
// acknowledge the stop request | // acknowledge the stop request | ||||
SHOW_TIME("say_thread > post my_sem_stop_is_acknowledged\n"); | SHOW_TIME("say_thread > post my_sem_stop_is_acknowledged\n"); | ||||
int a_status = sem_post(&my_sem_stop_is_acknowledged); | int a_status = sem_post(&my_sem_stop_is_acknowledged); | ||||
assert( a_status != -1); | assert( a_status != -1); | ||||
} | } | ||||
// and wait for the next start | // and wait for the next start | ||||
SHOW_TIME("say_thread > wait for my_sem_start_is_required\n"); | |||||
SHOW_TIME("say_thread > wait for my_sem_start_is_required\n"); | |||||
} | } | ||||
return NULL; | return NULL; | ||||
} | } | ||||
{ | { | ||||
return EE_INTERNAL_ERROR; | return EE_INTERNAL_ERROR; | ||||
} | } | ||||
if (head == NULL) | if (head == NULL) | ||||
{ | { | ||||
head = n; | head = n; | ||||
tail->next = n; | tail->next = n; | ||||
tail = n; | tail = n; | ||||
} | } | ||||
tail->next = NULL; | tail->next = NULL; | ||||
tail->data = the_command; | tail->data = the_command; | ||||
} | } | ||||
display_espeak_command(the_command); | display_espeak_command(the_command); | ||||
return the_command; | return the_command; | ||||
} | } | ||||
number_body = 0; | number_body = 0; | ||||
number_tail = 0; /* number between tonic syllable and next primary */ | number_tail = 0; /* number between tonic syllable and next primary */ | ||||
last_primary = -1; | last_primary = -1; | ||||
for(ix=start; ix<end; ix++) | for(ix=start; ix<end; ix++) | ||||
{ | { | ||||
stress = syllable_tab[ix].stress; /* marked stress level */ | stress = syllable_tab[ix].stress; /* marked stress level */ | ||||
n_steps = count_increments(syl_ix+1, head_final, 4); | n_steps = count_increments(syl_ix+1, head_final, 4); | ||||
pitch = tune->onset << 8; | pitch = tune->onset << 8; | ||||
used_onset = 1; | used_onset = 1; | ||||
} | |||||
} | |||||
if(n_steps > tune->head_max_steps) | if(n_steps > tune->head_max_steps) | ||||
n_steps = tune->head_max_steps; | n_steps = tune->head_max_steps; | ||||
n_primary--; | n_primary--; | ||||
if((tn->backwards) && (n_primary < 2)) | if((tn->backwards) && (n_primary < 2)) | ||||
{ | { | ||||
pitch = tn->backwards[n_primary] << 8; | |||||
pitch = tn->backwards[n_primary] << 8; | |||||
} | } | ||||
} | } | ||||
if(n_increments <= 0) | if(n_increments <= 0) | ||||
return; | return; | ||||
if(n_increments > 1) | if(n_increments > 1) | ||||
{ | { | ||||
increment = increment / n_increments; | increment = increment / n_increments; | ||||
if(option_tone_flags & OPTION_EMPHASIZE_PENULTIMATE) | if(option_tone_flags & OPTION_EMPHASIZE_PENULTIMATE) | ||||
{ | { | ||||
tone_posn = tone_posn2; // put tone on the penultimate stressed word | |||||
tone_posn = tone_posn2; // put tone on the penultimate stressed word | |||||
} | } | ||||
ix = SetHeadIntonation(tune, ix, tone_posn, 0); | ix = SetHeadIntonation(tune, ix, tone_posn, 0); | ||||
/* tonic syllable */ | /* tonic syllable */ | ||||
/******************/ | /******************/ | ||||
// if(tn->flags & T_EMPH) | // if(tn->flags & T_EMPH) | ||||
// { | // { | ||||
// syllable_tab[ix].flags |= SYL_EMPHASIS; | // syllable_tab[ix].flags |= SYL_EMPHASIS; | ||||
/* tail, after the tonic syllable */ | /* tail, after the tonic syllable */ | ||||
/**********************************/ | /**********************************/ | ||||
SetPitchGradient(ix, end, tune->tail_start, tune->tail_end); | SetPitchGradient(ix, end, tune->tail_start, tune->tail_end); | ||||
return(tone_pitch_env); | return(tone_pitch_env); | ||||
if(option_tone_flags & OPTION_EMPHASIZE_PENULTIMATE) | if(option_tone_flags & OPTION_EMPHASIZE_PENULTIMATE) | ||||
{ | { | ||||
tone_posn = tone_posn2; // put tone on the penultimate stressed word | |||||
tone_posn = tone_posn2; // put tone on the penultimate stressed word | |||||
} | } | ||||
ix = calc_pitch_segment(ix,tone_posn, th, tn, PRIMARY, continuing); | ix = calc_pitch_segment(ix,tone_posn, th, tn, PRIMARY, continuing); | ||||
// ix = SetBodyIntonation(&tunes[0], ix, tone_posn, 0); | // ix = SetBodyIntonation(&tunes[0], ix, tone_posn, 0); | ||||
/* tonic syllable */ | /* tonic syllable */ | ||||
/******************/ | /******************/ | ||||
if(tn->flags & T_EMPH) | if(tn->flags & T_EMPH) | ||||
{ | { | ||||
syllable_tab[ix].flags |= SYL_EMPHASIS; | syllable_tab[ix].flags |= SYL_EMPHASIS; | ||||
/* tail, after the tonic syllable */ | /* tail, after the tonic syllable */ | ||||
/**********************************/ | /**********************************/ | ||||
SetPitchGradient(ix, end, tn->tail_start, tn->tail_end); | SetPitchGradient(ix, end, tn->tail_start, tn->tail_end); | ||||
return(tone_pitch_env); | return(tone_pitch_env); | ||||
if(tph->mnemonic == 0x343132) // [214] | if(tph->mnemonic == 0x343132) // [214] | ||||
prev_p->tone_ph = PhonemeCode2('3','5'); | prev_p->tone_ph = PhonemeCode2('3','5'); | ||||
else | else | ||||
prev_p->tone_ph = PhonemeCode2('2','1'); | |||||
prev_p->tone_ph = PhonemeCode2('2','1'); | |||||
} | } | ||||
if((prev_tph->mnemonic == 0x3135) && (tph->mnemonic == 0x3135)) // [51] + [51] | if((prev_tph->mnemonic == 0x3135) && (tph->mnemonic == 0x3135)) // [51] + [51] | ||||
{ | { | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
group_tone = tr->punct_to_tone[option][clause_type]; | |||||
group_tone = tr->punct_to_tone[option][clause_type]; | |||||
group_tone_emph = tr->punct_to_tone[option][5]; // emphatic form of statement | group_tone_emph = tr->punct_to_tone[option][5]; // emphatic form of statement | ||||
group_tone_comma = tr->punct_to_tone[option][1]; // emphatic form of statement | group_tone_comma = tr->punct_to_tone[option][1]; // emphatic form of statement | ||||
} | } | ||||
calc_pitches(option, st_start, st_ix, group_tone); | calc_pitches(option, st_start, st_ix, group_tone); | ||||
} | } | ||||
// unpack pitch data | // unpack pitch data | ||||
st_ix=0; | st_ix=0; | ||||
for(ix=ph_start; ix < ph_end; ix++) | for(ix=ph_start; ix < ph_end; ix++) | ||||
{ | { | ||||
p = &phoneme_list[ix]; | p = &phoneme_list[ix]; | ||||
p->stresslevel = syllable_tab[st_ix].stress; | p->stresslevel = syllable_tab[st_ix].stress; | ||||
if(p->synthflags & SFLAG_SYLLABLE) | if(p->synthflags & SFLAG_SYLLABLE) | ||||
{ | { | ||||
syl = &syllable_tab[st_ix]; | syl = &syllable_tab[st_ix]; | ||||
{ | { | ||||
p->stresslevel |= 8; // emphasized | p->stresslevel |= 8; // emphasized | ||||
} | } | ||||
st_ix++; | st_ix++; | ||||
} | } | ||||
} | } | ||||
} // end of CalcPitches | } // end of CalcPitches | ||||
// speak in the language for this alphabet (or English) | // speak in the language for this alphabet (or English) | ||||
ph_buf[2] = SetTranslator2(WordToString2(language)); | ph_buf[2] = SetTranslator2(WordToString2(language)); | ||||
if(((code = letter - 0xac00) >= 0) && (letter <= 0xd7af)) | |||||
if(translator2 != NULL) | |||||
{ | { | ||||
// Special case for Korean letters. | |||||
// break a syllable hangul into 2 or 3 individual jamo | |||||
if(((code = letter - 0xac00) >= 0) && (letter <= 0xd7af)) | |||||
{ | |||||
// Special case for Korean letters. | |||||
// break a syllable hangul into 2 or 3 individual jamo | |||||
hangul_buf[0] = ' '; | |||||
p3 = &hangul_buf[1]; | |||||
if((initial = (code/28)/21) != 11) | |||||
hangul_buf[0] = ' '; | |||||
p3 = &hangul_buf[1]; | |||||
if((initial = (code/28)/21) != 11) | |||||
{ | |||||
p3 += utf8_out(initial + 0x1100, p3); | |||||
} | |||||
utf8_out(((code/28) % 21) + 0x1161, p3); // medial | |||||
utf8_out((code % 28) + 0x11a7, &p3[3]); // final | |||||
p3[6] = ' '; | |||||
p3[7] = 0; | |||||
ph_buf[3] = 0; | |||||
TranslateRules(translator2, &hangul_buf[1], &ph_buf[3], sizeof(ph_buf)-3, NULL, 0, NULL); | |||||
SetWordStress(translator2, &ph_buf[3], NULL, -1, 0); | |||||
} | |||||
else | |||||
{ | { | ||||
p3 += utf8_out(initial + 0x1100, p3); | |||||
LookupLetter(translator2, letter, word[n_bytes], &ph_buf[3], control & 1); | |||||
} | } | ||||
utf8_out(((code/28) % 21) + 0x1161, p3); // medial | |||||
utf8_out((code % 28) + 0x11a7, &p3[3]); // final | |||||
p3[6] = ' '; | |||||
p3[7] = 0; | |||||
ph_buf[3] = 0; | |||||
TranslateRules(translator2, &hangul_buf[1], &ph_buf[3], sizeof(ph_buf)-3, NULL, 0, NULL); | |||||
SetWordStress(translator2, &ph_buf[3], NULL, -1, 0); | |||||
} | |||||
else | |||||
{ | |||||
LookupLetter(translator2, letter, word[n_bytes], &ph_buf[3], control & 1); | |||||
} | |||||
if(ph_buf[3] == phonSWITCH) | |||||
{ | |||||
// another level of language change | |||||
ph_buf[2] = SetTranslator2(&ph_buf[4]); | |||||
LookupLetter(translator2, letter, word[n_bytes], &ph_buf[3], control & 1); | |||||
} | |||||
if(ph_buf[3] == phonSWITCH) | |||||
{ | |||||
// another level of language change | |||||
ph_buf[2] = SetTranslator2(&ph_buf[4]); | |||||
LookupLetter(translator2, letter, word[n_bytes], &ph_buf[3], control & 1); | |||||
} | |||||
SelectPhonemeTable(voice->phoneme_tab_ix); // revert to original phoneme table | |||||
SelectPhonemeTable(voice->phoneme_tab_ix); // revert to original phoneme table | |||||
if(ph_buf[3] != 0) | |||||
{ | |||||
ph_buf[0] = phonPAUSE; | |||||
ph_buf[1] = phonSWITCH; | |||||
len = strlen(&ph_buf[3]) + 3; | |||||
ph_buf[len] = phonSWITCH; // switch back | |||||
ph_buf[len+1] = tr->phoneme_tab_ix; | |||||
ph_buf[len+2] = 0; | |||||
if(ph_buf[3] != 0) | |||||
{ | |||||
ph_buf[0] = phonPAUSE; | |||||
ph_buf[1] = phonSWITCH; | |||||
len = strlen(&ph_buf[3]) + 3; | |||||
ph_buf[len] = phonSWITCH; // switch back | |||||
ph_buf[len+1] = tr->phoneme_tab_ix; | |||||
ph_buf[len+2] = 0; | |||||
} | |||||
} | } | ||||
} | } | ||||
} | } |
static void ProcessParamStack(char *outbuf, int &outix) | |||||
static void ProcessParamStack(char *outbuf, int *outix) | |||||
{//==================================================== | {//==================================================== | ||||
// Set the speech parameters from the parameter stack | // Set the speech parameters from the parameter stack | ||||
int param; | int param; | ||||
} | } | ||||
speech_parameters[param] = new_parameters[param]; | speech_parameters[param] = new_parameters[param]; | ||||
strcpy(&outbuf[outix],buf); | |||||
outix += strlen(buf); | |||||
strcpy(&outbuf[*outix],buf); | |||||
*outix += strlen(buf); | |||||
} | } | ||||
} | } | ||||
} // end of ProcessParamStack | } // end of ProcessParamStack | ||||
} // end of PushParamStack | } // end of PushParamStack | ||||
static void PopParamStack(int tag_type, char *outbuf, int &outix) | |||||
static void PopParamStack(int tag_type, char *outbuf, int *outix) | |||||
{//============================================================== | {//============================================================== | ||||
// unwind the stack up to and including the previous tag of this type | // unwind the stack up to and including the previous tag of this type | ||||
int ix; | int ix; | ||||
if((tail[0]=='s') && (tail[1]=='t')) | if((tail[0]=='s') && (tail[1]=='t')) | ||||
{ | { | ||||
#ifdef PLATFORM_RISCOS | |||||
*value_out = 100; | |||||
#else | |||||
double x; | double x; | ||||
// convert from semitones to a frequency percentage | // convert from semitones to a frequency percentage | ||||
x = pow(double(2.0),double((value*sign)/12)) * 100; | |||||
x = pow((double)2.0,(double)((value*sign)/12)) * 100; | |||||
*value_out = (int)x; | *value_out = (int)x; | ||||
#endif | |||||
return(2); // percentage | return(2); // percentage | ||||
} | } | ||||
} // end of SetProsodyParemeter | } // end of SetProsodyParemeter | ||||
static int ReplaceKeyName(char *outbuf, int index, int &outix) | |||||
static int ReplaceKeyName(char *outbuf, int index, int *outix) | |||||
{//=========================================================== | {//=========================================================== | ||||
// Replace some key-names by single characters, so they can be pronounced in different languages | // Replace some key-names by single characters, so they can be pronounced in different languages | ||||
static MNEM_TAB keynames[] = { | static MNEM_TAB keynames[] = { | ||||
if((letter = LookupMnem(keynames, p)) != 0) | if((letter = LookupMnem(keynames, p)) != 0) | ||||
{ | { | ||||
ix = utf8_out(letter, p); | ix = utf8_out(letter, p); | ||||
outix = index + ix; | |||||
*outix = index + ix; | |||||
return(letter); | return(letter); | ||||
} | } | ||||
return(0); | return(0); | ||||
} | } | ||||
static int ProcessSsmlTag(wchar_t *xml_buf, char *outbuf, int &outix, int n_outbuf, int self_closing) | |||||
static int ProcessSsmlTag(wchar_t *xml_buf, char *outbuf, int *outix, int n_outbuf, int self_closing) | |||||
{//================================================================================================== | {//================================================================================================== | ||||
// xml_buf is the tag and attributes with a zero terminator in place of the original '>' | // xml_buf is the tag and attributes with a zero terminator in place of the original '>' | ||||
// returns a clause terminator value. | // returns a clause terminator value. | ||||
// closing tag | // closing tag | ||||
if((tag_type = LookupMnem(ssmltags,&tag_name[1])) != HTML_NOSPACE) | if((tag_type = LookupMnem(ssmltags,&tag_name[1])) != HTML_NOSPACE) | ||||
{ | { | ||||
outbuf[outix++] = ' '; | |||||
outbuf[(*outix)++] = ' '; | |||||
} | } | ||||
tag_type += SSML_CLOSE; | tag_type += SSML_CLOSE; | ||||
} | } | ||||
if((tag_type = LookupMnem(ssmltags,tag_name)) != HTML_NOSPACE) | if((tag_type = LookupMnem(ssmltags,tag_name)) != HTML_NOSPACE) | ||||
{ | { | ||||
// separate SSML tags from the previous word (but not HMTL tags such as <b> <font> which can occur inside a word) | // separate SSML tags from the previous word (but not HMTL tags such as <b> <font> which can occur inside a word) | ||||
outbuf[outix++] = ' '; | |||||
outbuf[(*outix)++] = ' '; | |||||
} | } | ||||
if(self_closing && ignore_if_self_closing[tag_type]) | if(self_closing && ignore_if_self_closing[tag_type]) | ||||
} | } | ||||
sprintf(buf,"%c%dY",CTRL_EMBEDDED,value); | sprintf(buf,"%c%dY",CTRL_EMBEDDED,value); | ||||
strcpy(&outbuf[outix],buf); | |||||
outix += strlen(buf); | |||||
strcpy(&outbuf[*outix],buf); | |||||
*outix += strlen(buf); | |||||
sayas_start = outix; | |||||
sayas_start = *outix; | |||||
sayas_mode = value; // punctuation doesn't end clause during SAY-AS | sayas_mode = value; // punctuation doesn't end clause during SAY-AS | ||||
break; | break; | ||||
case SSML_SAYAS + SSML_CLOSE: | case SSML_SAYAS + SSML_CLOSE: | ||||
if(sayas_mode == SAYAS_KEY) | if(sayas_mode == SAYAS_KEY) | ||||
{ | { | ||||
outbuf[outix] = 0; | |||||
outbuf[*outix] = 0; | |||||
ReplaceKeyName(outbuf, sayas_start, outix); | ReplaceKeyName(outbuf, sayas_start, outix); | ||||
} | } | ||||
outbuf[outix++] = CTRL_EMBEDDED; | |||||
outbuf[outix++] = 'Y'; | |||||
outbuf[(*outix)++] = CTRL_EMBEDDED; | |||||
outbuf[(*outix)++] = 'Y'; | |||||
sayas_mode = 0; | sayas_mode = 0; | ||||
break; | break; | ||||
{ | { | ||||
// use the alias rather than the text | // use the alias rather than the text | ||||
ignore_text = 1; | ignore_text = 1; | ||||
outix += attrcopy_utf8(&outbuf[outix],attr1,n_outbuf-outix); | |||||
*outix += attrcopy_utf8(&outbuf[*outix],attr1,n_outbuf-*outix); | |||||
} | } | ||||
break; | break; | ||||
if((index = AddNameData(buf,0)) >= 0) | if((index = AddNameData(buf,0)) >= 0) | ||||
{ | { | ||||
sprintf(buf,"%c%dM",CTRL_EMBEDDED,index); | sprintf(buf,"%c%dM",CTRL_EMBEDDED,index); | ||||
strcpy(&outbuf[outix],buf); | |||||
outix += strlen(buf); | |||||
strcpy(&outbuf[*outix],buf); | |||||
*outix += strlen(buf); | |||||
} | } | ||||
} | } | ||||
break; | break; | ||||
if(index >= 0) | if(index >= 0) | ||||
{ | { | ||||
sprintf(buf,"%c%dI",CTRL_EMBEDDED,index); | sprintf(buf,"%c%dI",CTRL_EMBEDDED,index); | ||||
strcpy(&outbuf[outix],buf); | |||||
outix += strlen(buf); | |||||
strcpy(&outbuf[*outix],buf); | |||||
*outix += strlen(buf); | |||||
sp->parameter[espeakSILENCE] = 1; | sp->parameter[espeakSILENCE] = 1; | ||||
} | } | ||||
} | } | ||||
if(uri_callback(1,uri,xmlbase) == 0) | if(uri_callback(1,uri,xmlbase) == 0) | ||||
{ | { | ||||
sprintf(buf,"%c%dU",CTRL_EMBEDDED,index); | sprintf(buf,"%c%dU",CTRL_EMBEDDED,index); | ||||
strcpy(&outbuf[outix],buf); | |||||
outix += strlen(buf); | |||||
strcpy(&outbuf[*outix],buf); | |||||
*outix += strlen(buf); | |||||
sp->parameter[espeakSILENCE] = 1; | sp->parameter[espeakSILENCE] = 1; | ||||
} | } | ||||
} | } | ||||
if(value < 3) | if(value < 3) | ||||
{ | { | ||||
// adjust prepause on the following word | // adjust prepause on the following word | ||||
sprintf(&outbuf[outix],"%c%dB",CTRL_EMBEDDED,value); | |||||
outix += 3; | |||||
sprintf(&outbuf[*outix],"%c%dB",CTRL_EMBEDDED,value); | |||||
*outix += 3; | |||||
terminator = 0; | terminator = 0; | ||||
} | } | ||||
value = break_value[value]; | value = break_value[value]; | ||||
self_closing = 1; | self_closing = 1; | ||||
} | } | ||||
terminator = ProcessSsmlTag(xml_buf,buf,ix,n_buf,self_closing); | |||||
terminator = ProcessSsmlTag(xml_buf,buf,&ix,n_buf,self_closing); | |||||
if(terminator != 0) | if(terminator != 0) | ||||
{ | { |
"--split=\"<minutes>\"\n" | "--split=\"<minutes>\"\n" | ||||
"\t Starts a new WAV file every <minutes>. Used with -w\n" | "\t Starts a new WAV file every <minutes>. Used with -w\n" | ||||
"--stdout Write speech output to stdout\n" | "--stdout Write speech output to stdout\n" | ||||
"--version Shows version number and date, and location of espeak-data\n" | |||||
"--voices=<language>\n" | "--voices=<language>\n" | ||||
"\t List the available voices for the specified language.\n" | "\t List the available voices for the specified language.\n" | ||||
"\t If <language> is omitted, then list all voices.\n"; | "\t If <language> is omitted, then list all voices.\n"; |
#ifdef PLATFORM_RISCOS | #ifdef PLATFORM_RISCOS | ||||
setlocale(LC_CTYPE,"ISO8859-1"); | setlocale(LC_CTYPE,"ISO8859-1"); | ||||
#else | #else | ||||
if(setlocale(LC_CTYPE,"en_US.UTF-8") == NULL) | |||||
if(setlocale(LC_CTYPE,"C.UTF-8") == NULL) | |||||
{ | { | ||||
if(setlocale(LC_CTYPE,"UTF-8") == NULL) | if(setlocale(LC_CTYPE,"UTF-8") == NULL) | ||||
setlocale(LC_CTYPE,""); | |||||
if(setlocale(LC_CTYPE,"en_US.UTF-8") == NULL) | |||||
setlocale(LC_CTYPE,""); | |||||
} | } | ||||
#endif | #endif | ||||
espeakENDPAUSE If set then a sentence pause is added at the end of the text. If not set then | espeakENDPAUSE If set then a sentence pause is added at the end of the text. If not set then | ||||
this pause is suppressed. | this pause is suppressed. | ||||
unique_identifier: message identifier; helpful for identifying later | |||||
data supplied to the callback. | |||||
unique_identifier: This must be either NULL, or point to an integer variable to | |||||
which eSpeak writes a message identifier number. | |||||
eSpeak includes this number in espeak_EVENT messages which are the result of | |||||
this call of espeak_Synth(). | |||||
user_data: pointer which will be passed to the callback function. | |||||
user_data: a pointer (or NULL) which will be passed to the callback function in | |||||
espeak_EVENT messages. | |||||
Return: EE_OK: operation achieved | Return: EE_OK: operation achieved | ||||
EE_BUFFER_FULL: the command can not be buffered; | EE_BUFFER_FULL: the command can not be buffered; |
break; | break; | ||||
case '[': // width-- | case '[': // width-- | ||||
pk->pkright -= 1; | |||||
pk->pkright -= 10; | |||||
if(pk->pkright < 0) | if(pk->pkright < 0) | ||||
pk->pkright = 0; | pk->pkright = 0; | ||||
display = 1; | display = 1; | ||||
break; | break; | ||||
case ']': // width++ | case ']': // width++ | ||||
pk->pkright += 1; | |||||
pk->pkright += 10; | |||||
display = 1; | |||||
field = 4; | |||||
break; | |||||
case '{': // width-- | |||||
pk->pkright -= 2; | |||||
if(pk->pkright < 0) | |||||
pk->pkright = 0; | |||||
display = 1; | |||||
field = 4; | |||||
break; | |||||
case '}': // width++ | |||||
pk->pkright += 2; | |||||
display = 1; | display = 1; | ||||
field = 4; | field = 4; | ||||
break; | break; |
//#define USE_PORTAUDIO | //#define USE_PORTAUDIO | ||||
//#define USE_PULSEAUDIO | //#define USE_PULSEAUDIO | ||||
#define USE_NANOSLEEP | #define USE_NANOSLEEP | ||||
#define __cdecl | |||||
#define __cdecl | |||||
//#define ESPEAK_API extern "C" | //#define ESPEAK_API extern "C" | ||||
#ifdef LIBRARY | #ifdef LIBRARY |
#include "translate.h" | #include "translate.h" | ||||
#include "wave.h" | #include "wave.h" | ||||
const char *version_string = "1.47.11d 11.Jun.13"; | |||||
const char *version_string = "1.47.12 23.Sep.13"; | |||||
const int version_phdata = 0x014709; | const int version_phdata = 0x014709; | ||||
int option_device_number = -1; | int option_device_number = -1; | ||||
int vowel_transition0; | int vowel_transition0; | ||||
int vowel_transition1; | int vowel_transition1; | ||||
int FormantTransition2(frameref_t *seq, int &n_frames, unsigned int data1, unsigned int data2, PHONEME_TAB *other_ph, int which); | |||||
int FormantTransition2(frameref_t *seq, int *n_frames, unsigned int data1, unsigned int data2, PHONEME_TAB *other_ph, int which); | |||||
// do we need to modify a frame for blending with a consonant? | // do we need to modify a frame for blending with a consonant? | ||||
if((this_ph->type == phVOWEL) && (fmt_params->fmt2_addr == 0) && (fmt_params->use_vowelin)) | if((this_ph->type == phVOWEL) && (fmt_params->fmt2_addr == 0) && (fmt_params->use_vowelin)) | ||||
{ | { | ||||
seq_len_adjust += FormantTransition2(frames,nf,fmt_params->transition0,fmt_params->transition1,NULL,which); | |||||
seq_len_adjust += FormantTransition2(frames,&nf,fmt_params->transition0,fmt_params->transition1,NULL,which); | |||||
} | } | ||||
length1 = 0; | length1 = 0; |
q = wcmdq[wcmdq_tail]; | q = wcmdq[wcmdq_tail]; | ||||
q[0] = WCMD_WAVE2; | q[0] = WCMD_WAVE2; | ||||
q[1] = length | (wav_length << 16); // length in samples | q[1] = length | (wav_length << 16); // length in samples | ||||
q[2] = long64(&wavefile_data[index]); | |||||
q[2] = (long64)(&wavefile_data[index]); | |||||
q[3] = wav_scale + (amp << 8); | q[3] = wav_scale + (amp << 8); | ||||
WcmdqInc(); | WcmdqInc(); | ||||
return(length); | return(length); | ||||
q = wcmdq[wcmdq_tail]; | q = wcmdq[wcmdq_tail]; | ||||
q[0] = WCMD_WAVE; | q[0] = WCMD_WAVE; | ||||
q[1] = x; // length in samples | q[1] = x; // length in samples | ||||
q[2] = long64(&wavefile_data[index]); | |||||
q[2] = (long64)(&wavefile_data[index]); | |||||
q[3] = wav_scale + (amp << 8); | q[3] = wav_scale + (amp << 8); | ||||
WcmdqInc(); | WcmdqInc(); | ||||
q = wcmdq[wcmdq_tail]; | q = wcmdq[wcmdq_tail]; | ||||
q[0] = WCMD_WAVE; | q[0] = WCMD_WAVE; | ||||
q[1] = len4*2; // length in samples | q[1] = len4*2; // length in samples | ||||
q[2] = long64(&wavefile_data[index+x]); | |||||
q[2] = (long64)(&wavefile_data[index+x]); | |||||
q[3] = wav_scale + (amp << 8); | q[3] = wav_scale + (amp << 8); | ||||
WcmdqInc(); | WcmdqInc(); | ||||
q = wcmdq[wcmdq_tail]; | q = wcmdq[wcmdq_tail]; | ||||
q[0] = WCMD_WAVE; | q[0] = WCMD_WAVE; | ||||
q[1] = length; // length in samples | q[1] = length; // length in samples | ||||
q[2] = long64(&wavefile_data[index+x]); | |||||
q[2] = (long64)(&wavefile_data[index+x]); | |||||
q[3] = wav_scale + (amp << 8); | q[3] = wav_scale + (amp << 8); | ||||
WcmdqInc(); | WcmdqInc(); | ||||
} | } | ||||
} | } | ||||
int FormantTransition2(frameref_t *seq, int &n_frames, unsigned int data1, unsigned int data2, PHONEME_TAB *other_ph, int which) | |||||
int FormantTransition2(frameref_t *seq, int *n_frames, unsigned int data1, unsigned int data2, PHONEME_TAB *other_ph, int which) | |||||
{//============================================================================================================================== | {//============================================================================================================================== | ||||
int ix; | int ix; | ||||
int formant; | int formant; | ||||
frame_t *fr = NULL; | frame_t *fr = NULL; | ||||
if(n_frames < 2) | |||||
if(*n_frames < 2) | |||||
return(0); | return(0); | ||||
len = (data1 & 0x3f) * 2; | len = (data1 & 0x3f) * 2; | ||||
if(flags & 8) | if(flags & 8) | ||||
{ | { | ||||
fr = CopyFrame(seq[n_frames-1].frame,0); | |||||
seq[n_frames-1].frame = fr; | |||||
fr = CopyFrame(seq[*n_frames-1].frame,0); | |||||
seq[*n_frames-1].frame = fr; | |||||
rms = RMS_GLOTTAL1; | rms = RMS_GLOTTAL1; | ||||
// degree of glottal-stop effect depends on closeness of vowel (indicated by f1 freq) | // degree of glottal-stop effect depends on closeness of vowel (indicated by f1 freq) | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
fr = DuplicateLastFrame(seq,n_frames++,len); | |||||
fr = DuplicateLastFrame(seq,(*n_frames)++,len); | |||||
if(len > 36) | if(len > 36) | ||||
seq_len_adjust += (len - 36); | seq_len_adjust += (len - 36); | ||||
if((vcolour > 0) && (vcolour <= N_VCOLOUR)) | if((vcolour > 0) && (vcolour <= N_VCOLOUR)) | ||||
{ | { | ||||
for(ix=0; ix<n_frames; ix++) | |||||
for(ix=0; ix < *n_frames; ix++) | |||||
{ | { | ||||
fr = CopyFrame(seq[ix].frame,0); | fr = CopyFrame(seq[ix].frame,0); | ||||
seq[ix].frame = fr; | seq[ix].frame = fr; |
#define L_qa 0x716100 | #define L_qa 0x716100 | ||||
#define L_grc 0x677263 // grc Ancient Greek | #define L_grc 0x677263 // grc Ancient Greek | ||||
#define L_jbo 0x6a626f // jbo Lojban | #define L_jbo 0x6a626f // jbo Lojban | ||||
#define L_mni 0x6d6e69 // mni Manipuri | |||||
#define L_pap 0x706170 // pap Papiamento] | #define L_pap 0x706170 // pap Papiamento] | ||||
#define L_qvi 0x717669 // qvi Kichwa | #define L_qvi 0x717669 // qvi Kichwa | ||||
#define L_shs 0x736873 // shs Shuswap / Secwepemctsin | #define L_shs 0x736873 // shs Shuswap / Secwepemctsin | ||||
{"_hi", OFFSET_DEVANAGARI, 0x900, 0x97f,L('h','i'), AL_WORDS}, | {"_hi", OFFSET_DEVANAGARI, 0x900, 0x97f,L('h','i'), AL_WORDS}, | ||||
{"_bn", OFFSET_BENGALI, 0x0980, 0x9ff, L('b','n'), AL_WORDS}, | {"_bn", OFFSET_BENGALI, 0x0980, 0x9ff, L('b','n'), AL_WORDS}, | ||||
{"_gur", OFFSET_GURMUKHI, 0xa00, 0xa7f, L('p','a'), AL_WORDS}, | {"_gur", OFFSET_GURMUKHI, 0xa00, 0xa7f, L('p','a'), AL_WORDS}, | ||||
{"_gu", OFFSET_GUJARATI, 0xa80, 0xaff, 0, 0}, | |||||
{"_gu", OFFSET_GUJARATI, 0xa80, 0xaff, L('g','u'), AL_WORDS}, | |||||
{"_or", OFFSET_ORIYA, 0xb00, 0xb7f, 0, 0}, | {"_or", OFFSET_ORIYA, 0xb00, 0xb7f, 0, 0}, | ||||
{"_ta", OFFSET_TAMIL, 0xb80, 0xbff, L('t','a'), AL_WORDS}, | {"_ta", OFFSET_TAMIL, 0xb80, 0xbff, L('t','a'), AL_WORDS}, | ||||
{"_te", OFFSET_TELUGU, 0xc00, 0xc7f, L('t','e'), 0}, | {"_te", OFFSET_TELUGU, 0xc00, 0xc7f, L('t','e'), 0}, | ||||
Translator *tr; | Translator *tr; | ||||
static const short stress_lengths_equal[8] = {230, 230, 230, 230, 0, 0, 230, 230}; | static const short stress_lengths_equal[8] = {230, 230, 230, 230, 0, 0, 230, 230}; | ||||
static const unsigned char stress_amps_equal[8] = {18,18, 18,18, 18,18, 18,18 }; | |||||
static const unsigned char stress_amps_equal[8] = {19,19, 19,19, 19,19, 19,19 }; | |||||
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 }; | ||||
break; | break; | ||||
case L('b','n'): // Bengali | case L('b','n'): // Bengali | ||||
case L('a','s'): // Assamese | |||||
case L_mni: // Manipuri (temporary placement - it's not indo-european) | |||||
{ | { | ||||
static const short stress_lengths_bn[8] = {180, 180, 210, 210, 0, 0, 230, 240}; | static const short stress_lengths_bn[8] = {180, 180, 210, 210, 0, 0, 230, 240}; | ||||
static const unsigned char stress_amps_bn[8] = {18,18, 18,18, 20,20, 22,22 }; | static const unsigned char stress_amps_bn[8] = {18,18, 18,18, 20,20, 22,22 }; | ||||
case L('h','i'): // Hindi | case L('h','i'): // Hindi | ||||
case L('n','e'): // Nepali | case L('n','e'): // Nepali | ||||
case L('o','r'): // Oriya | |||||
case L('p','a'): // Punjabi | case L('p','a'): // Punjabi | ||||
case L('g','u'): // Gujarati | case L('g','u'): // Gujarati | ||||
{ | { | ||||
tr->langopts.max_digits = 22; | tr->langopts.max_digits = 22; | ||||
tr->langopts.numbers2 |= NUM2_ENGLISH_NUMERALS; | tr->langopts.numbers2 |= NUM2_ENGLISH_NUMERALS; | ||||
} | } | ||||
else | |||||
if(name2 == L('o','r')) | |||||
{ | |||||
tr->letter_bits_offset = OFFSET_ORIYA; | |||||
} | |||||
SetIndicLetters(tr); | SetIndicLetters(tr); | ||||
} | } | ||||
break; | break; | ||||
break; | break; | ||||
case L('t','a'): // Tamil | case L('t','a'): // Tamil | ||||
case L('m','l'): // Malayalam | |||||
case L('k','n'): // Kannada | case L('k','n'): // Kannada | ||||
case L('m','l'): // Malayalam | |||||
case L('m','r'): // Marathi | case L('m','r'): // Marathi | ||||
case L('t','e'): // Telugu | case L('t','e'): // Telugu | ||||
{ | { | ||||
tr->langopts.length_mods0 = tr->langopts.length_mods; // don't lengthen vowels in the last syllable | tr->langopts.length_mods0 = tr->langopts.length_mods; // don't lengthen vowels in the last syllable | ||||
tr->langopts.stress_rule = STRESSPOSN_1L; | tr->langopts.stress_rule = STRESSPOSN_1L; | ||||
tr->langopts.stress_flags = S_FINAL_DIM_ONLY; // use 'diminished' for unstressed final syllable | |||||
tr->langopts.stress_flags = S_FINAL_DIM_ONLY | S_FINAL_NO_2; // use 'diminished' for unstressed final syllable | |||||
tr->langopts.spelling_stress = 1; | tr->langopts.spelling_stress = 1; | ||||
tr->langopts.break_numbers = 0x14a8; // 1000, 100,000 10,000,000 | tr->langopts.break_numbers = 0x14a8; // 1000, 100,000 10,000,000 | ||||
else | else | ||||
if(name2 == L('m','l')) | if(name2 == L('m','l')) | ||||
{ | { | ||||
static const short stress_lengths_ml[8] = {180, 160, 240, 240, 0, 0, 260, 260}; | |||||
SetupTranslator(tr,stress_lengths_ml, stress_amps_equal); | |||||
tr->letter_bits_offset = OFFSET_MALAYALAM; | tr->letter_bits_offset = OFFSET_MALAYALAM; | ||||
tr->langopts.numbers = NUM_OMIT_1_THOUSAND | NUM_OMIT_1_HUNDRED; | tr->langopts.numbers = NUM_OMIT_1_THOUSAND | NUM_OMIT_1_HUNDRED; | ||||
tr->langopts.numbers2 = NUM2_OMIT_1_HUNDRED_ONLY; | tr->langopts.numbers2 = NUM2_OMIT_1_HUNDRED_ONLY; | ||||
tr->langopts.stress_rule = 13; // 1st syllable, unless 1st vowel is short and 2nd is long | |||||
} | } | ||||
else | else | ||||
if(name2 == L('k','n')) | if(name2 == L('k','n')) |
return(0); | return(0); | ||||
if((c >= 0x2500) && (c < 0x25a0)) | if((c >= 0x2500) && (c < 0x25a0)) | ||||
return(1); // box drawing characters | return(1); // box drawing characters | ||||
if((c >= 0xfff9) && (c <= 0xffff)) | |||||
return(1); // unicode specials | |||||
// if(wcschr(chars_space,c)) | // if(wcschr(chars_space,c)) | ||||
// return(1); | // return(1); | ||||
return(iswspace(c)); | return(iswspace(c)); | ||||
int wflags; | int wflags; | ||||
int wmark; | int wmark; | ||||
int was_unpronouncable = 0; | int was_unpronouncable = 0; | ||||
int loopcount; | |||||
WORD_TAB wtab_null[8]; | WORD_TAB wtab_null[8]; | ||||
// translate these to get pronunciations of plural 's' suffix (different forms depending on | // translate these to get pronunciations of plural 's' suffix (different forms depending on | ||||
found = 0; | found = 0; | ||||
confirm_prefix = 1; | confirm_prefix = 1; | ||||
for (int loopcount = 0; (loopcount < 50) && (end_type & SUFX_P); loopcount++) | |||||
for (loopcount = 0; (loopcount < 50) && (end_type & SUFX_P); loopcount++) | |||||
{ | { | ||||
// Found a standard prefix, remove it and retranslate | // Found a standard prefix, remove it and retranslate | ||||
// loopcount guards against an endless loop | // loopcount guards against an endless loop | ||||
translator2 = SelectTranslator(new_language); | translator2 = SelectTranslator(new_language); | ||||
strcpy(translator2_language,new_language); | strcpy(translator2_language,new_language); | ||||
if(LoadDictionary(translator2, new_language, 0) != 0) | |||||
if(LoadDictionary(translator2, translator2->dictionary_name, 0) != 0) | |||||
{ | { | ||||
SelectPhonemeTable(voice->phoneme_tab_ix); // revert to original phoneme table | SelectPhonemeTable(voice->phoneme_tab_ix); // revert to original phoneme table | ||||
new_phoneme_tab = -1; | new_phoneme_tab = -1; | ||||
pre_pause = 1; | pre_pause = 1; | ||||
} | } | ||||
plist2 = &ph_list2[n_ph_list2]; | |||||
stress = 0; | stress = 0; | ||||
next_stress = 1; | next_stress = 1; | ||||
srcix = 0; | srcix = 0; | ||||
tr->prev_dict_flags[0] = 0; | tr->prev_dict_flags[0] = 0; | ||||
tr->prev_dict_flags[1] = 0; | tr->prev_dict_flags[1] = 0; | ||||
} | } | ||||
plist2 = &ph_list2[n_ph_list2]; | |||||
if((option_capitals==1) && (word_flags & FLAG_FIRST_UPPER)) | if((option_capitals==1) && (word_flags & FLAG_FIRST_UPPER)) | ||||
{ | { | ||||
static int EmbeddedCommand(unsigned int &source_index) | |||||
{//=================================================== | |||||
static int EmbeddedCommand(unsigned int *source_index_out) | |||||
{//======================================================= | |||||
// An embedded command to change the pitch, volume, etc. | // An embedded command to change the pitch, volume, etc. | ||||
// returns number of commands added to embedded_list | // returns number of commands added to embedded_list | ||||
unsigned char c; | unsigned char c; | ||||
char *p; | char *p; | ||||
int cmd; | int cmd; | ||||
int source_index = *source_index_out; | |||||
c = source[source_index]; | c = source[source_index]; | ||||
if(c == '+') | if(c == '+') | ||||
} | } | ||||
embedded_list[embedded_ix++] = cmd + sign + (value << 8); | embedded_list[embedded_ix++] = cmd + sign + (value << 8); | ||||
*source_index_out = source_index; | |||||
return(1); | return(1); | ||||
} // end of EmbeddedCommand | } // end of EmbeddedCommand | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
embedded_count += EmbeddedCommand(source_index); | |||||
embedded_count += EmbeddedCommand(&source_index); | |||||
prev_in_save = prev_in; | prev_in_save = prev_in; | ||||
// replace the embedded command by spaces | // replace the embedded command by spaces | ||||
memset(&source[srcix],' ',source_index-srcix); | memset(&source[srcix],' ',source_index-srcix); | ||||
} | } | ||||
} | } | ||||
letter_count++; | |||||
if(tr->letter_bits_offset > 0) | |||||
if(c != ' ') | |||||
{ | { | ||||
if(((c < 0x250) && (prev_out >= tr->letter_bits_offset)) || | |||||
((c >= tr->letter_bits_offset) && (letter_count > 1) && (prev_out < 0x250))) | |||||
letter_count++; | |||||
if(tr->letter_bits_offset > 0) | |||||
{ | { | ||||
// Don't mix native and Latin characters in the same word | |||||
// Break into separate words | |||||
c = ' '; | |||||
space_inserted = 1; | |||||
word_flags |= FLAG_HYPHEN_AFTER; | |||||
next_word_flags |= FLAG_HYPHEN; | |||||
if(((c < 0x250) && (prev_out >= tr->letter_bits_offset)) || | |||||
((c >= tr->letter_bits_offset) && (letter_count > 1) && (prev_out < 0x250))) | |||||
{ | |||||
// Don't mix native and Latin characters in the same word | |||||
// Break into separate words | |||||
if(IsAlpha(prev_out)) | |||||
{ | |||||
c = ' '; | |||||
space_inserted = 1; | |||||
word_flags |= FLAG_HYPHEN_AFTER; | |||||
next_word_flags |= FLAG_HYPHEN; | |||||
} | |||||
} | |||||
} | } | ||||
} | } | ||||
{ | { | ||||
int next2_in; | int next2_in; | ||||
utf8_in(&next2_in,&source[source_index + next_in_nbytes]); | utf8_in(&next2_in,&source[source_index + next_in_nbytes]); | ||||
if((tr->translator_name == L('n','l')) && (letter_count==2) && (c == 'j') && (prev_in == 'I')) | |||||
{ | |||||
// Dutch words may capitalise initial IJ, don't split | |||||
} | |||||
else | |||||
if(IsAlpha(next2_in)) | if(IsAlpha(next2_in)) | ||||
{ | { | ||||
// changing from upper to lower case, start new word at the last uppercase, if 3 or more letters | // changing from upper to lower case, start new word at the last uppercase, if 3 or more letters |
#define N_VOICE_VARIANTS 12 | #define N_VOICE_VARIANTS 12 | ||||
const char variants_either[N_VOICE_VARIANTS] = {1,2,12,3,13,4,14,5,11,0}; | const char variants_either[N_VOICE_VARIANTS] = {1,2,12,3,13,4,14,5,11,0}; | ||||
const char variants_male[N_VOICE_VARIANTS] = {1,2,3,4,5,6,7,0}; | |||||
const char variants_male[N_VOICE_VARIANTS] = {1,2,3,4,5,6,0}; | |||||
const char variants_female[N_VOICE_VARIANTS] = {11,12,13,14,0}; | const char variants_female[N_VOICE_VARIANTS] = {11,12,13,14,0}; | ||||
const char *variant_lists[3] = {variants_either, variants_male, variants_female}; | const char *variant_lists[3] = {variants_either, variants_male, variants_female}; | ||||
height2 = tone_pts[pt+1]; | height2 = tone_pts[pt+1]; | ||||
if((freq2 - freq1) > 0) | if((freq2 - freq1) > 0) | ||||
{ | { | ||||
rate = double(height2-height1)/(freq2-freq1); | |||||
rate = (double)(height2-height1)/(freq2-freq1); | |||||
for(ix=freq1; ix<freq2; ix++) | for(ix=freq1; ix<freq2; ix++) | ||||
{ | { | ||||
y = height1 + int(rate * (ix-freq1)); | |||||
y = height1 + (int)(rate * (ix-freq1)); | |||||
if(y > 255) | if(y > 255) | ||||
y = 255; | y = 255; | ||||
voice->tone_adjust[ix] = y; | voice->tone_adjust[ix] = y; | ||||
return; | return; | ||||
if(freq >= 0) | if(freq >= 0) | ||||
voice->freq[formant] = int(freq * 2.56001); | |||||
voice->freq[formant] = (int)(freq * 2.56001); | |||||
if(height >= 0) | if(height >= 0) | ||||
voice->height[formant] = int(height * 2.56001); | |||||
voice->height[formant] = (int)(height * 2.56001); | |||||
if(width >= 0) | if(width >= 0) | ||||
voice->width[formant] = int(width * 2.56001); | |||||
voice->width[formant] = (int)(width * 2.56001); | |||||
voice->freqadd[formant] = freqadd; | voice->freqadd[formant] = freqadd; | ||||
} | } | ||||
n = sscanf(p,"%d %d",&pitch1,&pitch2); | n = sscanf(p,"%d %d",&pitch1,&pitch2); | ||||
voice->pitch_base = (pitch1 - 9) << 12; | voice->pitch_base = (pitch1 - 9) << 12; | ||||
voice->pitch_range = (pitch2 - pitch1) * 108; | voice->pitch_range = (pitch2 - pitch1) * 108; | ||||
factor = double(pitch1 - 82)/82; | |||||
factor = (double)(pitch1 - 82)/82; | |||||
voice->formant_factor = (int)((1+factor/4) * 256); // nominal formant shift for a different voice pitch | voice->formant_factor = (int)((1+factor/4) * 256); // nominal formant shift for a different voice pitch | ||||
} | } | ||||
break; | break; | ||||
if((ix = SelectPhonemeTableName(phonemes_name)) < 0) | if((ix = SelectPhonemeTableName(phonemes_name)) < 0) | ||||
{ | { | ||||
fprintf(stderr,"Unknown phoneme table: '%s'\n",phonemes_name); | fprintf(stderr,"Unknown phoneme table: '%s'\n",phonemes_name); | ||||
ix = 0; | |||||
} | } | ||||
voice->phoneme_tab_ix = ix; | voice->phoneme_tab_ix = ix; | ||||
new_translator->phoneme_tab_ix = ix; | new_translator->phoneme_tab_ix = ix; | ||||
vp = voices[ix]; | vp = voices[ix]; | ||||
// is the main voice the required gender? | // is the main voice the required gender? | ||||
skip=0; | skip=0; | ||||
if((gender != 0) && (vp->gender != gender)) | if((gender != 0) && (vp->gender != gender)) | ||||
{ | { | ||||
skip=1; | skip=1; | ||||
{ | { | ||||
skip=1; | skip=1; | ||||
} | } | ||||
if(skip==0) | if(skip==0) | ||||
{ | { | ||||
voices2[ix2++] = vp; | voices2[ix2++] = vp; | ||||
void FreeVoiceList() | void FreeVoiceList() | ||||
{//================= | {//================= | ||||
for(int ix=0; ix<n_voices_list; ix++) | |||||
int ix; | |||||
for(ix=0; ix<n_voices_list; ix++) | |||||
{ | { | ||||
if(voices_list[ix] != NULL) | if(voices_list[ix] != NULL) | ||||
{ | { |
for(ix=0; ix <= wvoice->n_harmonic_peaks; ix++) | for(ix=0; ix <= wvoice->n_harmonic_peaks; ix++) | ||||
{ | { | ||||
peaks[ix].freq1 += peaks[ix].freq_inc; | peaks[ix].freq1 += peaks[ix].freq_inc; | ||||
peaks[ix].freq = int(peaks[ix].freq1); | |||||
peaks[ix].freq = (int)peaks[ix].freq1; | |||||
peaks[ix].height1 += peaks[ix].height_inc; | peaks[ix].height1 += peaks[ix].height_inc; | ||||
if((peaks[ix].height = int(peaks[ix].height1)) < 0) | |||||
if((peaks[ix].height = (int)peaks[ix].height1) < 0) | |||||
peaks[ix].height = 0; | peaks[ix].height = 0; | ||||
peaks[ix].left1 += peaks[ix].left_inc; | peaks[ix].left1 += peaks[ix].left_inc; | ||||
peaks[ix].left = int(peaks[ix].left1); | |||||
peaks[ix].left = (int)peaks[ix].left1; | |||||
if(ix < 3) | if(ix < 3) | ||||
{ | { | ||||
peaks[ix].right1 += peaks[ix].right_inc; | peaks[ix].right1 += peaks[ix].right_inc; | ||||
peaks[ix].right = int(peaks[ix].right1); | |||||
peaks[ix].right = (int)peaks[ix].right1; | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
if(ix < 7) | if(ix < 7) | ||||
{ | { | ||||
peaks[ix].freq1 += peaks[ix].freq_inc; | peaks[ix].freq1 += peaks[ix].freq_inc; | ||||
peaks[ix].freq = int(peaks[ix].freq1); | |||||
peaks[ix].freq = (int)peaks[ix].freq1; | |||||
} | } | ||||
peaks[ix].height1 += peaks[ix].height_inc; | peaks[ix].height1 += peaks[ix].height_inc; | ||||
if((peaks[ix].height = int(peaks[ix].height1)) < 0) | |||||
if((peaks[ix].height = (int)peaks[ix].height1) < 0) | |||||
peaks[ix].height = 0; | peaks[ix].height = 0; | ||||
} | } | ||||
if((amp = wvoice->breath[ix]) != 0) | if((amp = wvoice->breath[ix]) != 0) | ||||
{ | { | ||||
amp *= (peaks[ix].height >> 14); | amp *= (peaks[ix].height >> 14); | ||||
value += int(resonator(&rbreath[ix],noise) * amp); | |||||
value += (int)resonator(&rbreath[ix],noise) * amp; | |||||
} | } | ||||
} | } | ||||
#endif | #endif | ||||
for(pk=wvoice->n_harmonic_peaks+1; pk<N_PEAKS; pk++) | for(pk=wvoice->n_harmonic_peaks+1; pk<N_PEAKS; pk++) | ||||
{ | { | ||||
// find the nearest harmonic for HF peaks where we don't use shape | // find the nearest harmonic for HF peaks where we don't use shape | ||||
peak_harmonic[pk] = peaks[pk].freq / (wdata.pitch*16); | |||||
peak_harmonic[pk] = ((peaks[pk].freq / (wdata.pitch*8)) + 1) / 2; | |||||
} | } | ||||
// adjust amplitude to compensate for fewer harmonics at higher pitch | // adjust amplitude to compensate for fewer harmonics at higher pitch | ||||
for(h=1; h<=h_switch_sign; h++) | for(h=1; h<=h_switch_sign; h++) | ||||
{ | { | ||||
total += (int(sin_tab[theta >> 5]) * harmspect[h]); | |||||
total += ((int)sin_tab[theta >> 5] * harmspect[h]); | |||||
theta += waveph; | theta += waveph; | ||||
} | } | ||||
while(h<=maxh) | while(h<=maxh) | ||||
{ | { | ||||
total -= (int(sin_tab[theta >> 5]) * harmspect[h]); | |||||
total -= ((int)sin_tab[theta >> 5] * harmspect[h]); | |||||
theta += waveph; | theta += waveph; | ||||
h++; | h++; | ||||
} | } | ||||
if(ix < 7) | if(ix < 7) | ||||
{ | { | ||||
peaks[ix].freq1 = (fr1->ffreq[ix] * v->freq[ix] + v->freqadd[ix]*256) << 8; | peaks[ix].freq1 = (fr1->ffreq[ix] * v->freq[ix] + v->freqadd[ix]*256) << 8; | ||||
peaks[ix].freq = int(peaks[ix].freq1); | |||||
peaks[ix].freq = (int)peaks[ix].freq1; | |||||
next = (fr2->ffreq[ix] * v->freq[ix] + v->freqadd[ix]*256) << 8; | next = (fr2->ffreq[ix] * v->freq[ix] + v->freqadd[ix]*256) << 8; | ||||
peaks[ix].freq_inc = ((next - peaks[ix].freq1) * (STEPSIZE/4)) / length4; // lower headroom for fixed point math | peaks[ix].freq_inc = ((next - peaks[ix].freq1) * (STEPSIZE/4)) / length4; // lower headroom for fixed point math | ||||
} | } | ||||
peaks[ix].height1 = (fr1->fheight[ix] * v->height[ix]) << 6; | peaks[ix].height1 = (fr1->fheight[ix] * v->height[ix]) << 6; | ||||
peaks[ix].height = int(peaks[ix].height1); | |||||
peaks[ix].height = (int)peaks[ix].height1; | |||||
next = (fr2->fheight[ix] * v->height[ix]) << 6; | next = (fr2->fheight[ix] * v->height[ix]) << 6; | ||||
peaks[ix].height_inc = ((next - peaks[ix].height1) * STEPSIZE) / length2; | peaks[ix].height_inc = ((next - peaks[ix].height1) * STEPSIZE) / length2; | ||||
if((ix <= 5) && (ix <= wvoice->n_harmonic_peaks)) | if((ix <= 5) && (ix <= wvoice->n_harmonic_peaks)) | ||||
{ | { | ||||
peaks[ix].left1 = (fr1->fwidth[ix] * v->width[ix]) << 10; | peaks[ix].left1 = (fr1->fwidth[ix] * v->width[ix]) << 10; | ||||
peaks[ix].left = int(peaks[ix].left1); | |||||
peaks[ix].left = (int)peaks[ix].left1; | |||||
next = (fr2->fwidth[ix] * v->width[ix]) << 10; | next = (fr2->fwidth[ix] * v->width[ix]) << 10; | ||||
peaks[ix].left_inc = ((next - peaks[ix].left1) * STEPSIZE) / length2; | peaks[ix].left_inc = ((next - peaks[ix].left1) * STEPSIZE) / length2; | ||||
if(ix < 3) | if(ix < 3) | ||||
{ | { | ||||
peaks[ix].right1 = (fr1->fright[ix] * v->width[ix]) << 10; | peaks[ix].right1 = (fr1->fright[ix] * v->width[ix]) << 10; | ||||
peaks[ix].right = int(peaks[ix].right1); | |||||
peaks[ix].right = (int)peaks[ix].right1; | |||||
next = (fr2->fright[ix] * v->width[ix]) << 10; | next = (fr2->fright[ix] * v->width[ix]) << 10; | ||||
peaks[ix].right_inc = ((next - peaks[ix].right1) * STEPSIZE) / length2; | peaks[ix].right_inc = ((next - peaks[ix].right1) * STEPSIZE) / length2; | ||||
} | } |