| @@ -42,6 +42,7 @@ Makefile | |||
| Makefile.in | |||
| aclocal.m4 | |||
| autom4te.cache/ | |||
| compile | |||
| config.* | |||
| configure | |||
| depcomp | |||
| @@ -206,6 +206,7 @@ dictionaries: src/espeak \ | |||
| espeak-data/af_dict \ | |||
| espeak-data/am_dict \ | |||
| espeak-data/an_dict \ | |||
| espeak-data/as_dict \ | |||
| espeak-data/az_dict \ | |||
| espeak-data/bg_dict \ | |||
| espeak-data/bn_dict \ | |||
| @@ -224,6 +225,7 @@ dictionaries: src/espeak \ | |||
| espeak-data/fr_dict \ | |||
| espeak-data/ga_dict \ | |||
| espeak-data/grc_dict \ | |||
| espeak-data/gu_dict \ | |||
| espeak-data/hi_dict \ | |||
| espeak-data/hu_dict \ | |||
| espeak-data/hy_dict \ | |||
| @@ -246,6 +248,7 @@ dictionaries: src/espeak \ | |||
| espeak-data/ne_dict \ | |||
| espeak-data/nl_dict \ | |||
| espeak-data/no_dict \ | |||
| espeak-data/om_dict \ | |||
| espeak-data/pa_dict \ | |||
| espeak-data/pap_dict \ | |||
| espeak-data/pl_dict \ | |||
| @@ -284,6 +287,12 @@ dictsource/an_extra: | |||
| espeak-data/an_dict: src/espeak espeak-data/phontab dictsource/an_list dictsource/an_rules dictsource/an_extra | |||
| cd dictsource && ESPEAK_DATA_PATH=$(PWD) LD_LIBRARY_PATH=../src:${LD_LIBRARY_PATH} ../src/espeak --compile=an && cd .. | |||
| as: espeak-data/as_dict | |||
| dictsource/as_extra: | |||
| touch dictsource/as_extra | |||
| espeak-data/as_dict: src/espeak espeak-data/phontab dictsource/as_list dictsource/as_rules dictsource/as_extra | |||
| cd dictsource && ESPEAK_DATA_PATH=$(PWD) LD_LIBRARY_PATH=../src:${LD_LIBRARY_PATH} ../src/espeak --compile=as && cd .. | |||
| az: espeak-data/az_dict | |||
| dictsource/az_extra: | |||
| touch dictsource/az_extra | |||
| @@ -392,6 +401,12 @@ dictsource/grc_extra: | |||
| espeak-data/grc_dict: src/espeak espeak-data/phontab dictsource/grc_list dictsource/grc_rules dictsource/grc_extra | |||
| cd dictsource && ESPEAK_DATA_PATH=$(PWD) LD_LIBRARY_PATH=../src:${LD_LIBRARY_PATH} ../src/espeak --compile=grc && cd .. | |||
| gu: espeak-data/gu_dict | |||
| dictsource/gu_extra: | |||
| touch dictsource/gu_extra | |||
| espeak-data/gu_dict: src/espeak espeak-data/phontab dictsource/gu_list dictsource/gu_rules dictsource/gu_extra | |||
| cd dictsource && ESPEAK_DATA_PATH=$(PWD) LD_LIBRARY_PATH=../src:${LD_LIBRARY_PATH} ../src/espeak --compile=gu && cd .. | |||
| hi: espeak-data/hi_dict | |||
| dictsource/hi_extra: | |||
| touch dictsource/hi_extra | |||
| @@ -524,6 +539,12 @@ dictsource/no_extra: | |||
| espeak-data/no_dict: src/espeak espeak-data/phontab dictsource/no_list dictsource/no_rules dictsource/no_extra | |||
| cd dictsource && ESPEAK_DATA_PATH=$(PWD) LD_LIBRARY_PATH=../src:${LD_LIBRARY_PATH} ../src/espeak --compile=no && cd .. | |||
| om: espeak-data/om_dict | |||
| dictsource/om_extra: | |||
| touch dictsource/om_extra | |||
| espeak-data/om_dict: src/espeak espeak-data/phontab dictsource/om_list dictsource/om_rules dictsource/om_extra | |||
| cd dictsource && ESPEAK_DATA_PATH=$(PWD) LD_LIBRARY_PATH=../src:${LD_LIBRARY_PATH} ../src/espeak --compile=om && cd .. | |||
| pa: espeak-data/pa_dict | |||
| dictsource/pa_extra: | |||
| touch dictsource/pa_extra | |||
| @@ -1,12 +1,15 @@ | |||
| # Android Port of eSpeak Text-to-Speech | |||
| # eSpeak Text-to-Speech for Android | |||
| - [Prerequisites](#prerequisites) | |||
| - [Build Dependencies](#build-dependencies) | |||
| - [Debian](#debian) | |||
| - [Building with Gradle](#building-with-gradle) | |||
| - [Building with Eclipse](#building-with-eclipse) | |||
| - [Building with Ant](#building-with-ant) | |||
| - [Signing the APK](#signing-the-apk) | |||
| - [Installing the APK](#installing-the-apk) | |||
| - [Enabling eSpeak on the Device](#enabling-espeak-on-the-device) | |||
| - [Bugs](#bugs) | |||
| - [License Information](#license-information) | |||
| ---------- | |||
| @@ -34,6 +37,29 @@ If you are building on the command line, you will also need either: | |||
| [Ubuntu PPA](https://launchpad.net/~cwchien/+archive/gradle/+files/gradle-1.7_1.0-0ubuntu1_all.deb) | |||
| debian file (including on Debian systems) | |||
| ## Build Dependencies | |||
| In order to build eSpeak, you need: | |||
| 1. a functional autotools system (`make`, `autoconf`, `automake`, `libtool` | |||
| and `pkg-config`); | |||
| 2. a functional c++ compiler; | |||
| 3. wxWidgets development libraries (needed to build and run espeakedit | |||
| to compile the phoneme data). | |||
| Optionally, you need: | |||
| 1. the pulseaudio development library to enable pulseaudio output; | |||
| 2. the portaudio development library to enable portaudio output. | |||
| ### Debian | |||
| | Dependency | Install | | |||
| |---------------|------------------------------------------------------------------| | |||
| | autotools | `sudo apt-get install make autoconf automake libtool pkg-config` | | |||
| | c++ compiler | `sudo apt-get install gcc g++` | | |||
| | wxWidgets | `sudo apt-get install libwxgtk2.8-dev` | | |||
| ## Building with Gradle | |||
| 1. Set the location of the Android SDK: | |||
| @@ -111,3 +137,12 @@ To enable eSpeak, you need to: | |||
| 2. enable `eSpeak TTS` in the `Engines` section; | |||
| 3. select `eSpeak TTS` as the default engine; | |||
| 4. use the `Listen to an example` option to check if everything is working. | |||
| ## Bugs | |||
| Report bugs to the [espeak issues](https://github.com/rhdunn/espeak/issues) | |||
| page on GitHub. | |||
| ## License Information | |||
| eSpeak Text-to-Speech is released under the GPL version 3 or later license. | |||
| @@ -227,6 +227,7 @@ bainskloof beInsklo@f | |||
| bangladesj baNglad'ES | |||
| barcelona bars@l'o@na | |||
| barkly _^_EN | |||
| batavië bat'A:vi@ | |||
| bellevue b&lvju: | |||
| bermuda $2 | |||
| bethlehem bEt_liEm | |||
| @@ -260,7 +261,7 @@ denemarke de@n@mark@ | |||
| djakarta dZak'arta | |||
| doebaai $2 | |||
| duitswes dYytsv'Es | |||
| eastgate _^_EN | |||
| eastgate _^_EN | |||
| efese e@f@s@ | |||
| ermelo &rm@lo@ | |||
| florida flOrida | |||
| @@ -344,7 +345,6 @@ rhône _^_FR | |||
| richardsbaai ritS@dsb'AI | |||
| riviersonderend r@fi:rsOn@r_'Ent | |||
| robertson _^_EN | |||
| saldanha sald'ana | |||
| salvador salvadO:r | |||
| santiago santi;'A:gu | |||
| secunda s@kunda | |||
| @@ -387,8 +387,10 @@ zulu zulu // Kwazulu-Natal | |||
| abdullah abd'ula | |||
| Abiméleg abin'e@lEx2 | |||
| abraham A:bram | |||
| achilles ak'il@s | |||
| ackerman ak@rman | |||
| adam adam | |||
| adonis ad'o@n@s | |||
| adriaan A:drijan | |||
| adrie A:dri | |||
| agnes _^_EN | |||
| @@ -628,6 +630,7 @@ lucretia lukr'i:Sja | |||
| lucas lukas | |||
| lukas lukas | |||
| lulu lulu | |||
| lydia lIdia | |||
| mabalêl mabal'&l | |||
| mabel _^_EN | |||
| macgill m@gjil | |||
| @@ -693,6 +696,7 @@ oedipus o@dipWs | |||
| ogden _^_EN | |||
| olga Olga | |||
| ontong OntON | |||
| pamela _^_EN | |||
| patrick _^_EN | |||
| petoors p@to@rs | |||
| phillips fIl@ps | |||
| @@ -984,6 +988,67 @@ dis $u | |||
| (nie waar nie) n,i||v,A:r||n'i | |||
| (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 | |||
| @@ -1029,6 +1094,7 @@ aversie av'&rsi | |||
| babelaas bab@lA:s | |||
| barrikade $3 | |||
| bedewete be@d@ve@t@ | |||
| beide beId@ | |||
| bekaf b&kaf | |||
| belangriker b@laNr@k,Ir | |||
| @@ -1039,6 +1105,7 @@ bestes bEst@s | |||
| beta be@ta $only | |||
| betlehemster bEtli:Emst&r | |||
| bewe be@v@ | |||
| bewebeen be@v@be@n | |||
| bewend be@v@nt | |||
| bewering b@ve@rIN | |||
| biopsie bi'Opsi | |||
| @@ -1076,6 +1143,7 @@ crèche krES | |||
| dadelik dA:d@lIk | |||
| dagorde dax2_Ord@ | |||
| dagster dax2st&r | |||
| dagure dax2_yr@ | |||
| daisy deIzi | |||
| darem dar@m | |||
| dawidster dA:v@tst&r | |||
| @@ -1150,6 +1218,7 @@ genesis x2e@n@s@s | |||
| //gesamentlik x2@sA:m@ntl@k | |||
| gentleman _^_EN | |||
| germolene dZI:m@l'i:n | |||
| geseling x2e@s@l@N | |||
| gevallene x2@fal@n@ | |||
| gewellys x2e@v@lleIs | |||
| gladiator x2ladi'A:tOr | |||
| @@ -1159,6 +1228,7 @@ gooi x2OI | |||
| gomorra x2@mOra | |||
| graffiti graf'iti | |||
| gratis x2r'A:t@s | |||
| groepeer $2 | |||
| grondys x2rO:nt_eIs | |||
| hallo h'Il,@U | |||
| @@ -1233,6 +1303,7 @@ kritiek krIt'ik | |||
| kulture $2 | |||
| kunsmatige kWnsm'A:t@x2@ | |||
| kwansuis $2 | |||
| kweekwal kwe@kval | |||
| lasagne las'anj@ | |||
| legaat l@x2A:t | |||
| @@ -1251,6 +1322,7 @@ macaroni makar'o@ni | |||
| macho matS@U | |||
| madame mad'A:m | |||
| madamoiselle _^_FR | |||
| manalleen man_ale@n | |||
| maskering mask'e@r@N $only | |||
| massaal $2 | |||
| massale $2 | |||
| @@ -1287,6 +1359,8 @@ namate $2 | |||
| negeer n@x2e@r | |||
| negering n@x2e@r@N | |||
| negester ne@x2@st&r | |||
| nekaar n&k_A:r | |||
| nekare n&k_A:r@ | |||
| netjies nE:icis | |||
| netjiese nEicis@ | |||
| netsowel nEtso@v&l | |||
| @@ -1493,6 +1567,7 @@ verregaande f&r@x2'A:nd@ | |||
| verreweg f&r@v&x2 | |||
| verse f&:rs@ | |||
| vers f&:rs | |||
| versene f&rs@n@ | |||
| versindaba f&:rs_@ndA:ba | |||
| verste f&rst@ | |||
| verte f&rt@ | |||
| @@ -1506,6 +1581,7 @@ volspoed $1 | |||
| volswanger $1 | |||
| volte $1 | |||
| voluit fOl_Yyt | |||
| voorbene fo@rbe@n@ | |||
| voorgee fo@rx2e@ | |||
| voorkeer $1 | |||
| voorkom $2 $only | |||
| @@ -1530,6 +1606,7 @@ watwou vatv@U | |||
| weergalm $2 | |||
| weerklink $2 | |||
| weervoorspelling $1 | |||
| wegeb v&x2_Eb | |||
| weggewens v&x2@v'E:ns | |||
| welaf v&l_af | |||
| weleer v&l_'e@r | |||
| @@ -1,4 +1,4 @@ | |||
| //maintainer: Willem van der Walt | |||
| //maintainer: Willem van der Walt | |||
| // email: [email protected] | |||
| // tel: +27 12 8413996 | |||
| // Meraka Institute, CSIR | |||
| @@ -851,6 +851,7 @@ | |||
| karoo) d d // but Karoodorp/Karoodoring/Karoodistrik, etc. | |||
| du (pliC du // duplikaat/dupliseer | |||
| duvet d%uveI: // duvet/-s/duvetoortreksel, etc. | |||
| @) d (yster t_ // fix d sound, pause: bind-/brand-/vuurherd-/smeedyster... | |||
| .group de | |||
| de (flasi d%e@ // fix e sound: deflasie(beleid)/deflasionêr/deflasionisties | |||
| @@ -952,6 +953,7 @@ | |||
| blind) e (C@ @ // fix e sound in compounds like: blindekol/-mol/-wese | |||
| _eend) e (CA @ // fix e sound: eendedam/-dans/-kuil/-pastei... | |||
| _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 | |||
| pous) e (C @ // fix e sound: pousebrood/-klok/-tyd, etc. | |||
| _siel) e (@ @ // fix e sound: sielesmart/-troos/-wroeging... | |||
| @@ -1425,7 +1427,7 @@ | |||
| nl) eer e@r // restore default stress: kernleerplan and compounds | |||
| rl) eer e@r // move default stress: agterleer/burgerleer/kelderleer/solderleer | |||
| 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 | |||
| ks) eer 'e@r // annekseer/indekseer/lakseer/takseer and their compounds | |||
| ss) eer 'e@r // but many words cont. sseer take stress: adresseer, etc. | |||
| @@ -1641,7 +1643,7 @@ | |||
| gas (ig x2A:s // long a and no pause: gasig/-e/-heid | |||
| gauteng x2%aUtEN //Gauteng and compounds | |||
| _) gh g | |||
| gh (_ k | |||
| gh (_ x2 // Tulbagh and similar | |||
| @) gheid x2eIt // traagheid/leegheid/droogheid/stugheid | |||
| ghi (ta g%i // move default stress: ghitaar and compounds/ghitare | |||
| ght _^_EN | |||
| @@ -1716,6 +1718,7 @@ | |||
| ge x2@ | |||
| C) ge (_ g@ | |||
| _) 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 | |||
| _) geler x2e@l@r // stress and 1st e sound: geler/gelerig | |||
| gemel (d x2@m&l // fix e sound: bo-/bowe-/laas-/meergemeld/-e | |||
| @@ -2012,6 +2015,7 @@ | |||
| _) ig (lo ig // fix i and g sounds: iglo(e) | |||
| @) ika (_ =%ik%a // logika/dinamika | |||
| &) ike (_S3 @k@ | |||
| &C) ikes (_ @k@s // fix penultimate e sound: (on)belangrikes | |||
| C) iking @k@N | |||
| imbe (s @mb@ // fix stress: imbesiel/-e | |||
| _) immer (@P5 'Im@r_ // immerafhanklik/immeringesteld, etc. | |||
| @@ -2090,7 +2094,7 @@ | |||
| w) it (A It // fix i sound: eiwitafskeiding/witagtig/kwiteer/grondserwituut | |||
| itali (a %it%al%i // move default stress: Italianer/-s 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) iveer if'e@r // always takes stress | |||
| C) iver (A if'e@r // always takes stress: aktiverende/motivering | |||
| @@ -2341,6 +2345,7 @@ | |||
| .group ka | |||
| @A) kaa (t k'A: // advokaatstoga/fabrikaat/sertifikaatjie/triplikaat and many similar | |||
| @) 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 | |||
| kabel kA:b@l //stress and e sound | |||
| kabeljou kab@lj'@U //kabeljou and compounds | |||
| @@ -2733,6 +2738,7 @@ | |||
| manier m@ni:r //manier and compounds | |||
| manifes manifEs // fix vowel sounds: manifes and compounds/manifestasie/manifesteer | |||
| 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 | |||
| manji (fie m%anj@ // fix stress and i sound: manjifiek/-e | |||
| man (moe m%an // move default stress: manmoedig/-e/-heid | |||
| @@ -2964,7 +2970,6 @@ | |||
| ng (eeR Nx2 // diftongeer/gedistingeerde/rangeer and compounds | |||
| ngees nx2e@s // split n/g: leuen-/span-/sportman-/wengees | |||
| e) n (goeC n // split ng: lakengoed/-goeters and similar | |||
| n (_g N | |||
| ng (ent Nx2 // kontingent/tangent and derivatives | |||
| CA) nger N@r // compounds of vinger/slinger; hangertjie/hongersnood/langeraad/swangerskap/tengerste | |||
| @) nges (_ N@s // banges/langes/dinges | |||
| @@ -3268,6 +3273,7 @@ | |||
| @) 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. | |||
| _) 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 | |||
| oux 'u //in surnames like tredoux, leroux etc. | |||
| _) o (va@ %o@ // move default stress: ovaal/ovale/ovaalvormig | |||
| @@ -3609,6 +3615,7 @@ | |||
| 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 | |||
| 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 | |||
| pal (miet p%al // move default stress: palmiet and compounds | |||
| panado p@nA:d@U: // fix stress and vowel sounds: panado/-'s | |||
| @@ -3721,6 +3728,7 @@ | |||
| per (so p@r // persoon/persone | |||
| pers (om p&rs_ // fix e sound, pause: persombudsman/-ne 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 | |||
| pervert p@rf&rt // fix stress and e sounds: pervert/-e and compounds | |||
| runder) pes pEs // fix e sound: runderpes and compounds | |||
| @@ -3991,6 +3999,7 @@ | |||
| @@@) s (_S1 s // to correctly handle plural s | |||
| i) s (_ s // exceptions to rule: @@@) s (_S1 s | |||
| 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 | |||
| o) s (_ s // exceptions to rule: @@@) s (_S1 s | |||
| u) s (_ s // exceptions to rule: @@@) s (_S1 s | |||
| @@ -4115,6 +4124,7 @@ | |||
| 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 (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 | |||
| @) sering s'e@r@N // analisering/kategorisering | |||
| @) ses (_ s@s // fix 2 slb. words ending in ses | |||
| @@ -4211,6 +4221,7 @@ | |||
| spesi (a sp%ES%i // spesiaal/spesiale/spesialis | |||
| spesialis (A spESialis | |||
| spesialis spESal'Is | |||
| spesialis (een spESal'Is_ // fix stress, paus: spesialiseenheid/-eenhede | |||
| spesi (f sp%Es%I // spesifiek/spesifiseer | |||
| spine (t sp%inE // move default stress: spinet/-te and compounds | |||
| _) sub (a sWb_ // subagent/subartikel/subatomies, etc. | |||
| @@ -4442,6 +4453,7 @@ | |||
| struktu (rerAn str%Wkt%y // fix stress: (her)strukturering(skoste)/strukturerende, etc. | |||
| studen (t st%ydEn // fix stress: student/regstudent/studentesentrum, etc. | |||
| 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 | |||
| @@ -4988,6 +5000,7 @@ | |||
| verf (@ f&rf // verfkwas/-voorraad/-emmer and similar | |||
| _) verf (lou f@rf // verflou/-ing | |||
| _) 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 f&rf | |||
| _) vergesog f'&:r;x2@sOx2 | |||
| @@ -5088,6 +5101,7 @@ | |||
| nd) w v // aandwandeling/brandweer/eindwedstryd/grondwet/grondwal | |||
| Cod) w v // fix w sound: godwelgevallig/godweet/godwees | |||
| k) w w | |||
| werk) week ve@k // fix last w sound: (vyf-/sesdag)werkweek | |||
| k) w (erC v // fix w sound: wrakwerf/-werwe | |||
| volks) w v // fix w sound: Volkswagen/volkswelsyn/-weldoener, etc. | |||
| k) w (And v // fix w sound: buikwand/rukwinde | |||
| @@ -5133,7 +5147,6 @@ | |||
| yd) w v // fix w sound: sluittydwerk/(wa)wydwakker | |||
| C) w (eerder v // fix w sound: insek-/muskiet-/reuk-/sweetweerder 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 | |||
| wed (ren vEt // fix e and d sounds: (perde)wedren and other compounds | |||
| @C) w (eë v // fix w sound: duikweë/staatsweë/uitweë, etc. | |||
| @@ -5246,11 +5259,13 @@ | |||
| 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 | |||
| 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 (spreken v%&l // move default stress: welsprekend/-e | |||
| @) wendig v'End@x2 // inwendig/noodwendig/uitwendig | |||
| &) wene (_ v@n@ // fix penultimate e sound: afgestorwene/-s/ingeskrewene/verdorwene/verhewene | |||
| 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 | |||
| ge) were ve@r@ // fix e sound in compounds ending in gewere | |||
| werk (stelli v%&rk // fix stress: bewerkstellig and derivatives | |||
| @@ -0,0 +1,323 @@ | |||
| // Translation rules for Bengali | |||
| // This file is UTF8 encoded | |||
| // Numbers | |||
| // Bengali numbers are changed to latin characters before translation | |||
| _0 S'unjO | |||
| _1 '&k | |||
| _2 d'uj | |||
| _3 t'in | |||
| _4 tS'ar | |||
| _5 p'a~tS | |||
| _6 tS#'Oj | |||
| _7 S'at | |||
| _8 'at.# | |||
| _9 n'Oj | |||
| _2a d'u // with hundreds etc. | |||
| _6a tS#'a | |||
| _9a n'O | |||
| _10 d'OS | |||
| _11 '&garo | |||
| _12 b'arO | |||
| _13 t'erO | |||
| _14 tS'oddO | |||
| _15 p'OnerO | |||
| _16 S'olO | |||
| _17 S'OterO | |||
| _18 'at.#arO | |||
| _19 'uniS | |||
| _20 k'uri // or b'iS ?? | |||
| _21 ek'uS | |||
| _22 b'ajS | |||
| _23 t'ejS | |||
| _24 tS'ObbiS | |||
| _25 p'O~tSiS | |||
| _26 tSh'abbiS | |||
| _27 Sat'aS | |||
| _28 'at.#aS | |||
| _29 unOtr'iS | |||
| _30 tr'iS | |||
| _31 ekOtr'iS | |||
| _32 bOtr'iS | |||
| _33 tetr'iS | |||
| _34 tSowtr'iS | |||
| _35 pO~jtr'iS | |||
| _36 tS#'Otr'iS | |||
| _37 Sa~itr'iS | |||
| _38 at.tr'iS | |||
| _39 'unOtSOll'iS | |||
| _40 tSOll'iS | |||
| _41 ektSOll'iS | |||
| _42 biall'iS | |||
| _43 tetall'iS | |||
| _44 tSoall'iS | |||
| _45 pO~jtall'iS | |||
| _46 tSetSOll'iS | |||
| _47 SatSOll'is | |||
| _48 atSOll'iS | |||
| _49 unOpO~tSaS | |||
| _50 pO~tS'aS | |||
| _51 &kann'o | |||
| _52 bajann'o | |||
| _53 tepann'o | |||
| _54 tSujann'o | |||
| _55 pontSann'o | |||
| _56 tS#apann'o | |||
| _57 Satann'o | |||
| _58 at.ann'o | |||
| _59 unOS'at. | |||
| _60 s'at. | |||
| _61 ekSOt.t.'i | |||
| _62 baSOt.t.'i | |||
| _63 teSOt.t.'i | |||
| _64 tSowSOt.t.'i | |||
| _65 pojSOt.t.'i | |||
| _66 SeSOt.t.'i | |||
| _67 SatSOt.t.'i | |||
| _68 at.SOt.t.'i | |||
| _6X sat.t.'i | |||
| _69 unOSOtt'ur | |||
| _70 SOtt'Or | |||
| _71 ekatt'Or | |||
| _72 bahatt'Or | |||
| _73 tehatt'Or | |||
| _74 tSuhatt'Or | |||
| _75 pOtSatt'Or | |||
| _76 tS#ijatt'Or | |||
| _77 Satatt'Or | |||
| _78 at.att'Or | |||
| _79 unOaS'i | |||
| _80 aS'i | |||
| _81 &kaS'i | |||
| _82 beraS'i | |||
| _83 teraS'i | |||
| _84 tSuraS'i | |||
| _85 po~tSaS'i | |||
| _86 tS#ijaS'i | |||
| _87 SataS'i | |||
| _88 at.aS'i | |||
| _89 ,unOnObb'oj | |||
| _90 nObb'oj | |||
| _91 &kanObb'oj | |||
| _92 beranObb'oj | |||
| _93 teranObb'oj | |||
| _94 tSuranObb'oj | |||
| _95 pOtSanObb'oj | |||
| _96 tS#ijanObb'oj | |||
| _97 SatanObb'oj | |||
| _98 at.anObb'oj | |||
| _99 niranObb'oj | |||
| _0C S'o | |||
| _0M1 h'ajar | |||
| _0M2 l'ak# | |||
| _0M3 k'ot.i | |||
| _0M4 'Orbud | |||
| _dpt _d'Osomik_ | |||
| // Single consonants | |||
| ক kO | |||
| খ k#O | |||
| গ gO | |||
| ঘ g#O | |||
| ঙ 'uNO~ | |||
| চ tSO | |||
| ছ tShO // [h] to distinguish from [tS] | |||
| জ JO | |||
| ঝ J#O | |||
| ঞ 'iNO~ | |||
| ট t.O | |||
| ঠ t.#O | |||
| ড d.O | |||
| ঢ d.#O | |||
| ণ m,odd#en.n.'O | |||
| ত tO | |||
| থ t#O | |||
| দ dO | |||
| ধ d#O | |||
| ন d,ontenn'O | |||
| প pO | |||
| ফ fO // or [p#O] ? | |||
| ব bO | |||
| ভ b#O | |||
| ম mO | |||
| য় Oj | |||
| য ,ontostedZ'O | |||
| র rO | |||
| ড় r.O | |||
| ড় r.O // (d. + nukta) | |||
| ঢ় hr.O | |||
| ঢ় hr.O // (d#. + nukta) | |||
| ল lO | |||
| শ t,aleboS:'O | |||
| ষ m,ud#en:oS:'O | |||
| স d,onteS:'O | |||
| হ hO | |||
| ৎ kh,Ond.ot'O | |||
| ক্ষ k,ojmud#en:oS:'O | |||
| // full vowels | |||
| অ O | |||
| আ a | |||
| ই hrOS:o'i | |||
| ঈ dirg#o'i | |||
| উ hrOS:o'u | |||
| ঊ dirg#o'u | |||
| ঋ ri | |||
| ঔ ow | |||
| এ e $u+ // word 'it' | |||
| ঐ oj $u+ // word 'that' | |||
| ও o $u+ $brk // 'and' | |||
| _এ e | |||
| _ঐ oj | |||
| _ও o | |||
| // combining vowel signs | |||
| া 'akar | |||
| ি r'oS:ikar | |||
| ী d'irg#ikar | |||
| ূ r'oS:ukar | |||
| ু d'irg#ukar | |||
| ৃ r'ikar | |||
| ে 'ekar | |||
| ৈ 'ojkar | |||
| ো 'okar | |||
| ৌ 'owkar | |||
| // signs | |||
| ্ h'OSonto | |||
| ং 'OnuSSOr | |||
| ঃ b'iSOrgo | |||
| ঁ tS'Ondrobindu | |||
| ় b'indu | |||
| $ d.Olar | |||
| % SOtk'Ora | |||
| + jOg | |||
| = SOman | |||
| // Punctuation | |||
| । dVn.d.V | |||
| _, koma | |||
| _? pr'oSnOtSihnO | |||
| // Pronouns | |||
| আমি $u // main: I | |||
| আমায় $u | |||
| আমার $u | |||
| আমরা $u // we | |||
| আমাদের $u | |||
| আপনি $u // you(formal) | |||
| আপনাকে $u | |||
| আপনার $u | |||
| তুমি $u // you (informal) | |||
| তোমায় $u | |||
| তোমার $u | |||
| তোমাদের $u | |||
| তুই $u // you (informal) | |||
| তোকে $u | |||
| তোর $u | |||
| এ $u // he/she/it | |||
| আপনি $u | |||
| এটার $u | |||
| এর $u | |||
| ইনি $u // they | |||
| এনাকে $u | |||
| এনার $u | |||
| ও $u // he/she/it | |||
| সে $u | |||
| ওর $u | |||
| তার $u | |||
| ওরা $u // they | |||
| তারা $u | |||
| ওদের $u // unheṃ: them | |||
| তাদের $u | |||
| এই $u // e:I this/it | |||
| এটা $u // e:ta: this/it | |||
| এটার $u // e:ta:'r this/it | |||
| এর $u // e:r this/it | |||
| ওটা $u // o:ta: that | |||
| ওটাকে $u // o:ta:ke: to that | |||
| ওটার $u // o:ta:'r of that | |||
| ওগুলো $u // o:gu:lo: those | |||
| ওগুলোকে $u // o:gu:lo:ke: to those | |||
| ওগুলোর $u // o:gu:lo:'r of those | |||
| // Prepositions/Postpositions | |||
| মধ্যে $u // moddhe in | |||
| উপর $u // upor on, above | |||
| নীচে $u // niche below | |||
| পূর্ব্বে $u // purbe before, prior | |||
| পর্য্যন্ত $u // parjonto till | |||
| অব্দি $u // abdi till | |||
| বিনা $u // bina without | |||
| // Questions | |||
| কেন $u $pause // kano why interrogative particle | |||
| কি $u $pause // ki what | |||
| কোথায় $u $pause // kothaay where | |||
| কখন $u $pause // kakhon when | |||
| কে $u $pause // ke who | |||
| // Conjunctions | |||
| এবং $u $pause // ebong: and | |||
| আর $u $pause // aar: and | |||
| অথবা $u $pause // athoba: or | |||
| কিন্তু $u $pause // kintu: but | |||
| যদি $pause // jodi: if | |||
| তবু $pause // tobu: still, yet | |||
| তবে $pause // tabe: if...then | |||
| অথচ $u // athacho: yet | |||
| // Verbs | |||
| হয় $u | |||
| ছিল $u // chilo: past aux | |||
| ছিলেন $u // chilen | |||
| করছি $u // korchi: continuous | |||
| করছিলাম $u // korchilam: past indefinite | |||
| করেছি $u // korechi: past | |||
| // Exceptions | |||
| এত &to | |||
| @@ -0,0 +1,388 @@ | |||
| | |||
| // This file is UTF8 encoded | |||
| // letter groups: | |||
| // A vowel letters and vowel signs | |||
| // B vowel signs and virama ् | |||
| // C consonants | |||
| // Y vowel letters and vowel signs | |||
| .replace | |||
| ০ 0 | |||
| ১ 1 | |||
| ২ 2 | |||
| ৩ 3 | |||
| ৪ 4 | |||
| ৫ 5 | |||
| ৬ 6 | |||
| ৭ 7 | |||
| ৮ 8 | |||
| ৯ 9 | |||
| // Vowels | |||
| .group অ | |||
| অ V | |||
| অঁ O~ | |||
| অ্যা & // V,ja in [æmiba] | |||
| .group আ | |||
| আ a | |||
| আঁ a~ | |||
| .group ই | |||
| ই i | |||
| ইঁ i~ | |||
| .group ঈ | |||
| ঈ i | |||
| ঈঁ i~ | |||
| .group উ | |||
| উ u | |||
| উঁ u~ | |||
| .group ঊ | |||
| ঊ u | |||
| ঊঁ u~ | |||
| .group ঋ | |||
| ঋ ri | |||
| ঋঁ ri~ | |||
| .group ঌ | |||
| ঌ l- | |||
| .group এ | |||
| এ & | |||
| এঁ &~ | |||
| .group ঐ | |||
| ঐ oj | |||
| ঐঁ o~j | |||
| .group এ | |||
| এ e | |||
| এঁ e~ | |||
| এ্যা & // e,ja [ækademi] | |||
| .group ও | |||
| ও o | |||
| ওঁ o~ | |||
| .group ঔ | |||
| ঔ ow | |||
| ঔঁ o~w | |||
| .group ও //?? | |||
| ও o: | |||
| // Vowel Signs | |||
| .group া | |||
| া a | |||
| াঁ a~ | |||
| .group ি | |||
| ি i | |||
| িঁ i~ | |||
| .group ী | |||
| ী i | |||
| ীঁ i~ | |||
| .group ূ | |||
| ূ u | |||
| ূঁ u~ | |||
| .group ু | |||
| ু u | |||
| ুঁ u~ | |||
| .group ৃ | |||
| ৃ ri | |||
| ৃঁ ri~ | |||
| .group ে | |||
| ে e | |||
| েঁ e~ | |||
| েউ ew | |||
| .group ৈ | |||
| ৈ oj | |||
| ৈঁ o~j | |||
| .group ো | |||
| ো o | |||
| োঁ o~ | |||
| .group ৌ | |||
| ৌ ow | |||
| ৌঁ o~w | |||
| // Consonants | |||
| .group ক | |||
| ক kV | |||
| ক (B k | |||
| .group খ | |||
| খ k#V | |||
| খ (B k# | |||
| .group গ | |||
| গ gV | |||
| গ (B g | |||
| .group ঘ | |||
| ঘ g#V | |||
| ঘ (B g# | |||
| .group ঙ | |||
| ঙ NV | |||
| ঙ্ (B N | |||
| .group চ | |||
| চ tSV | |||
| চ (B tS | |||
| .group ছ | |||
| ছ tS#V | |||
| ছ (B tS# | |||
| .group জ | |||
| জ JV | |||
| জ (B J | |||
| জ্ব JV | |||
| জ্ব (B J | |||
| জ্ঞ ggo~ | |||
| জ্ঞ (B gg | |||
| .group ঝ | |||
| ঝ J#V | |||
| ঝ (B J# | |||
| .group ঞ | |||
| ঞ nV | |||
| ঞ্ (B n | |||
| .group ট | |||
| ট t.V | |||
| ট (B t. | |||
| .group ঠ | |||
| ঠ t.#V | |||
| ঠ (B t.# | |||
| .group ড | |||
| ড d.V | |||
| ড (B d. | |||
| ড় r.V // nukta | |||
| ড় (B r. | |||
| .group ঢ | |||
| ঢ d.#V | |||
| ঢ (B d.# | |||
| ঢ় hr.V | |||
| ঢ় (B hr. | |||
| .group ণ | |||
| ণ nV // should be [n.] if adjacent to t. or d. ? | |||
| ণ (B n | |||
| .group ত | |||
| ত tV | |||
| ত (B t | |||
| .group থ | |||
| থ t#V | |||
| থ (B t# | |||
| .group দ | |||
| দ dV | |||
| দ (B d | |||
| .group ধ | |||
| ধ d#V | |||
| ধ (B d# | |||
| .group ন | |||
| ন nV | |||
| ন (B n | |||
| .group প | |||
| প pV | |||
| প (B p | |||
| .group ফ | |||
| ফ fV // or [p#] ? | |||
| ফ (B f | |||
| .group ব | |||
| ব bV | |||
| ব (B b | |||
| .group ভ | |||
| ভ b#V | |||
| ভ (B b# | |||
| .group ম | |||
| ম mV | |||
| ম (B m | |||
| .group য় | |||
| য় jV | |||
| য় (B j | |||
| .group য | |||
| য dZV | |||
| য (B dZ | |||
| য় jV // nukta | |||
| য় (B j | |||
| ্) য (C & // ব্যস্ত [bæsto] | |||
| ্) যা & // ব্যাকরণ [bækɔron] | |||
| .group র | |||
| র rV | |||
| র (B r | |||
| .group ল | |||
| ল lV | |||
| ল (B l | |||
| .group শ | |||
| শ SV // or [s] ? | |||
| শ (B S | |||
| শ (্ল s | |||
| .group ষ | |||
| ষ SV | |||
| ষ (B S | |||
| .group স | |||
| স SV // or [s] ?? | |||
| স (B S | |||
| স (্থ s | |||
| স (্ত s | |||
| _) স্ব SV // shb | |||
| _) স্ব (B S | |||
| .group হ | |||
| হ hV | |||
| হ (B h | |||
| .group হ্ব | |||
| হ্ব vV | |||
| হ্ব (B v | |||
| .group ৎ | |||
| ৎ t | |||
| .group ড় // can be ড plus nukta | |||
| ড় r.V | |||
| ড় (B r. | |||
| .group ঢ় // can be ঢ plus nukta | |||
| ঢ় hr.V | |||
| ঢ় (B hr. | |||
| .group ঁ | |||
| ঁ O~ // candrabindu, nasalize the previous vowel | |||
| .group ং | |||
| ং N // anusvara/onushshor | |||
| .group ঃ // visarga/bishorgo | |||
| ঃ // doubles the following consonant | |||
| ঃ (_ H | |||
| .group ্ // virama/hoshonto | |||
| ্ | |||
| .group ় | |||
| ় // nukta, modifies a consonant | |||
| .group | |||
| // obsolete letters | |||
| ঋ r- | |||
| ৠ r- | |||
| ঌ l- | |||
| ৡ l- | |||
| ৃ r- | |||
| ৄ r- | |||
| ৢ l- | |||
| ৣ l- | |||
| __) - (_D bij'og | |||
| D_) - (_D bij'og | |||
| @@ -768,6 +768,6 @@ Neumexiko $2 | |||
| Neuseeland $2 | |||
| Rwanda rU'andA: | |||
| Sri sr,i: | |||
| Tom tOm | |||
| Tim tIm | |||
| Tom tOm $only | |||
| Tim tIm $only | |||
| @@ -315,7 +315,7 @@ | |||
| _) deme de:mE | |||
| demo (g de:mo: | |||
| demo (k de:mo: | |||
| design _^_EN | |||
| design (_ d%IzaIn | |||
| dge (_ _^_EN | |||
| _) dia d,i:a | |||
| _) diver d%i:vEr | |||
| @@ -16,7 +16,7 @@ | |||
| // ?7 Scottish | |||
| // ?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) | |||
| // $alt3 use weak first vowel, a->[a#], e->[@], o->[0#] | |||
| // $alt4 separate 'h', not 'th' | |||
| @@ -422,6 +422,8 @@ _zh tS'aIni:z | |||
| ֹ o | |||
| ֻ u | |||
| ּ d'agES | |||
| U+5c1 SInd0t_ | |||
| U+5c2 sInd0t_ | |||
| // phonetic modifiers | |||
| @@ -520,6 +522,7 @@ _90o n'aInti@ | |||
| // ABBREVIATIONS | |||
| //************** | |||
| aaa $abbrev $allcaps | |||
| abc $abbrev | |||
| ac $abbrev | |||
| adf $abbrev | |||
| @@ -717,6 +720,7 @@ adware 'adw,e@ | |||
| adze adz | |||
| aegis i:dZIs | |||
| aerate e@r'eIt | |||
| aerogel e@roUdZEl | |||
| aether i:T@ | |||
| afar a#fA@ | |||
| affirmation af3m'eIS@n | |||
| @@ -835,6 +839,7 @@ apropos apr@p'oU | |||
| appal a#pO:l | |||
| apparatus ap@r'eIt@s | |||
| ?3 apparatus ap@r'at@s | |||
| appellate a#pEl@t | |||
| apprentice a#prEnt2Is | |||
| approximate a#pr0ksIm@t $only | |||
| approximate a#pr0ksImeIt $verb | |||
| @@ -849,6 +854,7 @@ arcane $2 | |||
| arch A@tS | |||
| arches A@tSI#z | |||
| archimedes A@kIm'i:di:z | |||
| archiso A@tS'aIsoU | |||
| archway $1 | |||
| arena a#ri:n@ | |||
| argon A@g0n | |||
| @@ -979,6 +985,7 @@ bleh blEh | |||
| blockade bl0k'eId | |||
| blouse blaUz | |||
| bluest blu:@st | |||
| bluish blu:IS | |||
| blurry bl3:rI | |||
| ?5 blurry blVRrI | |||
| boing bOIN | |||
| @@ -1142,6 +1149,7 @@ cholesterol k@lEst@r0l | |||
| chorizo tSOr'i:zoU | |||
| christmas krIsm@s | |||
| chromosome kroUm@soUm | |||
| chrysalis krIs@lIs | |||
| ciao tSaU | |||
| cigar sI2gA@ | |||
| cigarette sIg@'rEt | |||
| @@ -1159,7 +1167,8 @@ cleanse klEnz | |||
| cleanser klEnz3 | |||
| ?!3 clerk klA@k | |||
| cliche kli:SeI | |||
| ?3 cliche kli:S'eI | |||
| cliched kli:S'eId | |||
| ?3 cliche kli:S'eI | |||
| clientele $2 | |||
| clitoris klIt3rI#s | |||
| close kloUs $only | |||
| @@ -1248,6 +1257,7 @@ consort $verb | |||
| constitute $1 | |||
| construct $1 $onlys | |||
| construct $verb | |||
| consummate $1 | |||
| contemplative $2 | |||
| content $1 $onlys | |||
| content $verb $past | |||
| @@ -1272,7 +1282,7 @@ convict $2 $verb | |||
| convolute k0nv@l'u:t | |||
| coop ku:p | |||
| cooper ku:p3 | |||
| coordinate koU'O:dI2neIt $verb | |||
| coordinate koU'O@dI2neIt $verb | |||
| copier k0pi@3 | |||
| copilot koUpaIl@t | |||
| coral k0r@L | |||
| @@ -1342,7 +1352,7 @@ declaration dEkl@'reIS@n | |||
| decolletage deIk0lt'A:Z | |||
| decor deIkO@ | |||
| ?3 decor deIk'O@ | |||
| decorative dEkr@tIv | |||
| decorative dEk@r@tIv | |||
| decoy di:kOI | |||
| decry dI2kraI | |||
| defect di:fEkt | |||
| @@ -1395,6 +1405,7 @@ diameter daI'amI2t3 | |||
| diaper daIp3 | |||
| diaphanous daI'af@n@s | |||
| diaspora daI'asp@r@ | |||
| dieback daIbak | |||
| diehard daIhA@d | |||
| dielectric daI@l'EktrIk | |||
| diesel di:z@L | |||
| @@ -1547,6 +1558,7 @@ evenings i:vnINz | |||
| evit EvI2t // inevitable | |||
| exalt Egz'0lt | |||
| execute EksI2kju:t // not $2 | |||
| executable $3 | |||
| exile $1 | |||
| exodus Eks@d@s | |||
| expedite Eksp@daIt // expedited | |||
| @@ -1815,6 +1827,7 @@ iconbar aIk0nbA@ | |||
| idly aIdlI | |||
| ignoramus Igno@r'eIm@s | |||
| illiterate $alt2 | |||
| imagery ImIdZri | |||
| imagine I2madZI2n | |||
| impedance Imp'i:d@ns | |||
| imperative Imp'Er@tIv | |||
| @@ -1894,6 +1907,7 @@ iris aIrIs | |||
| iron aI3n | |||
| irony aIr@nI | |||
| isosceles aIs'0s@li:z | |||
| ?3 issuance ISu:@ns | |||
| ja jA: | |||
| jagged dZagI#d | |||
| @@ -1931,6 +1945,7 @@ kosher koUS3 | |||
| kowtow kaUt2aU | |||
| la ,la $only | |||
| la $abbrev $allcaps | |||
| (la vie) la||v'i: | |||
| laboratory la#b'0r@trI | |||
| ?3 laboratory labr@tO:ri | |||
| @@ -2022,6 +2037,7 @@ lunatic lu:n@tIk | |||
| lunchroom lVntS||ru:m | |||
| luxury lVkS3ri | |||
| lychee li:tSi: | |||
| lyin laIIn | |||
| macabre m@kA:br@ | |||
| macadamia mak@d'eImi@ | |||
| @@ -2376,6 +2392,7 @@ philistine fIlI2staIn | |||
| phoenix fi:nIks | |||
| photographer f@t'0gr@f@ | |||
| photography f@t'0gr@fi | |||
| photolysis foUt'0l@sIs | |||
| piano pI'anoU | |||
| pecan pI#kA:n | |||
| piecemeal p'i:sm,i:l | |||
| @@ -2585,6 +2602,7 @@ reining reInIN | |||
| reindeer reIndi@3 | |||
| rekey r,i:k'i: | |||
| relative rEl@tIv | |||
| relay ri:leI | |||
| relic rElIk | |||
| relish rElI2S | |||
| rely rI2laI | |||
| @@ -2706,9 +2724,12 @@ seabed si:bEd | |||
| sealion si:laI@n | |||
| seance seI0ns | |||
| secant si:k@nt | |||
| seconded sEk'0ndI#d | |||
| seconded s@k0ndI#d | |||
| secondment s@k0ndm@nt | |||
| secrecy si:kr@si | |||
| secret si:kr@t | |||
| secrete sI2kri:t | |||
| secretion sI2kri:S@n | |||
| secretive si:kr@tIv | |||
| secretary sEkr@trI | |||
| sedan sI2dan | |||
| @@ -2717,6 +2738,7 @@ sega seIg@ | |||
| segue sEgweI | |||
| separate sEp@-r@t | |||
| separate sEp3reIt $verb | |||
| semaphored $alt1 | |||
| semen si:m@n | |||
| ?3 semi sEmaI | |||
| semibreve $1 | |||
| @@ -2739,6 +2761,7 @@ severely sI2v'i@3lI $verbf | |||
| sewn soUn | |||
| sex sEks // sexism | |||
| several sEvr@L | |||
| severest s@vi@r@st | |||
| shallow SaloU | |||
| shampoo $2 | |||
| shepherd SEp@d | |||
| @@ -2772,6 +2795,7 @@ singly sINglI $verbf | |||
| sincerest sIns'i@r@st | |||
| sinew sInju: | |||
| sinus saIn@s | |||
| siphon $alt2 | |||
| sir s,3: $only | |||
| ?5 sir s,VR $only | |||
| site saIt // for sited | |||
| @@ -2806,7 +2830,6 @@ souvenir su:v@n'i@3 | |||
| sorbet sO@beI | |||
| soyabean sOI@bi:n | |||
| spaghetti spa#gEti | |||
| spasm spas@m | |||
| specific sp@sIfIk | |||
| specimen spEsI2m@n | |||
| spraycan spreIkan | |||
| @@ -2980,6 +3003,7 @@ trophy troUfi | |||
| troubadour tru:b@do@ | |||
| truely tru:lI $verbf | |||
| truest tru:@st | |||
| tryin traIIn | |||
| tryst trIst | |||
| tudor tju:d3 | |||
| turntable $alt1 | |||
| @@ -3003,6 +3027,7 @@ unable Vn'eIb@L | |||
| unaware Vn@w'e@ | |||
| uncle VNk@L | |||
| undeny VndIn'aI | |||
| undercarriage $1 | |||
| underground $1 $noun | |||
| underling $1 | |||
| underlings Vnd3lINz | |||
| @@ -3082,7 +3107,10 @@ viola vaI'oUl@ | |||
| violin $2 | |||
| viral vaI3r@L | |||
| virginal $alt1 | |||
| (vis à vis) vi:za#v'i: | |||
| (vis a vis) vi:za#v'i: | |||
| visa vi:z@ | |||
| vitalis vaIt'alI#s | |||
| vitamin vIt@mI#n | |||
| ?3 vitamin vaIt@mI#n | |||
| vitriol vItri:@l | |||
| @@ -3231,6 +3259,7 @@ Alamo al@moU | |||
| Albuquerque alb@k3:ki | |||
| Algiers $2 | |||
| Altura O:lt'U@r@ | |||
| ?3 Amazon ama#z0n | |||
| Amman a#m'A:n | |||
| Andes andi:z | |||
| Angeles andZ@li:s | |||
| @@ -3273,6 +3302,7 @@ Budapest bu:d@p'Est | |||
| Buenos bweIn0s | |||
| Burundi bUr'Undi | |||
| Brazil $alt3 | |||
| Brunei bru:n'aI | |||
| Cadiz $alt3 | |||
| Cairo kaIroU | |||
| Calcutta $2 | |||
| @@ -3426,6 +3456,7 @@ Nepal nEp'O:l | |||
| Nevada nI2vA:d@ | |||
| ?3 Nevada nI2vad@ | |||
| Newfoundland nju:f@ndla#nd | |||
| Nineveh nInIv@ | |||
| Noumea nu:m'eI@ | |||
| Oahu oU'A:hu: | |||
| Oklahoma oUkla#h'oUm@ | |||
| @@ -3445,6 +3476,7 @@ Persia p3:Z@ | |||
| Peru p@ru: | |||
| Philippine fIlI2pi:n | |||
| Philipine fIlI2pi:n // misspell | |||
| Phnom pn0m | |||
| Polish poUlIS $capital $only | |||
| Portugal po@tS@g@L | |||
| Portuguese po@tS@g'i:z | |||
| @@ -3508,6 +3540,7 @@ Ural ju:@r@L | |||
| Utah ju:t2A: | |||
| ?3 Utah ju:t2O | |||
| Utrecht ju:trECt | |||
| Valencia $alt3 | |||
| Vancouver $2 | |||
| Vegas veIg@s | |||
| Vermont $2 | |||
| @@ -3563,7 +3596,7 @@ Angela andZ@l@ | |||
| Angelika $2 | |||
| Anita $alt3 | |||
| Annamaria an@ma#r'i:@ | |||
| Anthony ant@ni | |||
| ?!3 Anthony ant@ni | |||
| Anton ant0n | |||
| Aoife i:f@ | |||
| Aoiffe i:f@ | |||
| @@ -3616,9 +3649,11 @@ Connell k0n@l | |||
| Connie k0ni | |||
| Connor k0n3 | |||
| Conrad $1 | |||
| Corinne k@ri:n | |||
| Crichton kraIt@n | |||
| Curtis k3:tI#s | |||
| ?5 Curtis kVRtI#s | |||
| Cyrus saIr@s | |||
| Dana deIn@ | |||
| Daphne dafni | |||
| Darryl dar@L | |||
| @@ -3775,6 +3810,7 @@ Michele mI2SEl | |||
| Michelle mI2SEl | |||
| Miguel mi:Q'El | |||
| Mildred mIldrI2d | |||
| Mimi mi:mi | |||
| Mindy mIndi | |||
| Minerva mI2n3:v@ | |||
| Mirabel mIr@bEl | |||
| @@ -3906,6 +3942,7 @@ Emory Em3ri | |||
| Ferguson f3:g@s@n | |||
| Fleming flEmIN | |||
| Folger foUldZ3 | |||
| Gallagher gal@g3 | |||
| Genghis dZENgIs | |||
| Gibson gIbs@n | |||
| Guinness gInIs | |||
| @@ -600,7 +600,7 @@ | |||
| b) al (d+ O:l | |||
| b) al (k O:l | |||
| f) al (k 0l | |||
| alkali ak@laI | |||
| alkali alk@laI | |||
| b) all (K O:l | |||
| &b) all (er_ O:l | |||
| _c) al (e al | |||
| @@ -1093,7 +1093,7 @@ | |||
| _) as (trolog a#s | |||
| _) as (trono a#s | |||
| &) as (ty_ a#s | |||
| ass (ym as | |||
| _) as (ym eIs | |||
| purch) as (e Is | |||
| ph) ase (_ eIz | |||
| r) ase (_ eIz | |||
| @@ -1330,6 +1330,7 @@ | |||
| be (see bI2 | |||
| be (sie bI2 | |||
| _) be (sto bI2 | |||
| _) bestse (ll bEsts'E | |||
| _) beta b,i:t@ | |||
| ?3 _) beta b,eIt@ | |||
| _) be (th bE | |||
| @@ -1514,7 +1515,7 @@ | |||
| _ta) ch k | |||
| ta) ch tS | |||
| sta) ch S | |||
| e) ch (o k | |||
| _e) ch (o k | |||
| bron) ch k | |||
| ch (ute S | |||
| ch (ure S | |||
| @@ -1527,6 +1528,8 @@ | |||
| _) co (con k,oU | |||
| _) co (eCP2 k,oU | |||
| _) coe (l si: | |||
| _) co (g k0 | |||
| _) cogno k0gn@ | |||
| co (hab k%oU | |||
| co (llab k@ | |||
| co (llap k@ | |||
| @@ -1744,6 +1747,7 @@ | |||
| _) deni (a dI2naI | |||
| deni (tri d%i:naI | |||
| _) de (no dI2 | |||
| _) de (nu dI2 | |||
| _) de (o d%i: | |||
| _) de (p@ dI2 | |||
| de (per d%i: | |||
| @@ -1757,6 +1761,7 @@ | |||
| de (reg d%i: | |||
| de (rel dE | |||
| de (riC dI2 | |||
| _) de (rAX dE | |||
| de (rog dI2 | |||
| de (rACatio dE | |||
| _) des (@ dI2s | |||
| @@ -2260,11 +2265,14 @@ | |||
| &) ency (_ @ns%i | |||
| ency (cli %EnsI | |||
| k) en (d_ En | |||
| t) en (d_ En | |||
| en (dA_ 'En | |||
| _) en (d En | |||
| _) en (da %En | |||
| eg) en (d @n | |||
| en (dea %En | |||
| en (der En | |||
| cal) en (der @n | |||
| en (dous En | |||
| _) endo EndoU | |||
| @) en (do_ 'En | |||
| @@ -2307,6 +2315,7 @@ | |||
| en (ter En | |||
| en (tert ,En | |||
| enthra (l %EnTrO: | |||
| en (tia_+ 'En | |||
| &) entice %EntaIs | |||
| _) en (ti %En | |||
| _c) enti EntI | |||
| @@ -2407,6 +2416,7 @@ | |||
| mb) er (_ 3 | |||
| lin) er (_S1 3 | |||
| lin) ers (_S2 3z | |||
| nc) er (_S1 3 | |||
| er 3: | |||
| er (A 3:r | |||
| _) er (A I2r | |||
| @@ -2560,7 +2570,8 @@ | |||
| _) es (pl Es | |||
| _) es (tab I2s | |||
| es (tate I2s | |||
| @) esc (enC 'Es | |||
| @) esc (ent_ 'Es | |||
| @) esc (ence_ 'Es | |||
| pr) es (ent Ez | |||
| es (iA i:z | |||
| es (ian_ 'i:z | |||
| @@ -3024,6 +3035,7 @@ | |||
| &) ia (_N =i|@ | |||
| &) ia (_ =i@ | |||
| @@) ia (_ =i@ | |||
| @) iae (_ =Ii: | |||
| @) ian (cy I|@n | |||
| l) iais I|eIz | |||
| p) ia (no Ia | |||
| @@ -3307,6 +3319,7 @@ | |||
| _) in (flo In | |||
| _) in (flu In | |||
| _) in (fo_ In | |||
| _) info (t ,InfoU | |||
| _) infra (P5 ,Infr@ | |||
| _) infra (c %Infra | |||
| in (ga_ 'IN | |||
| @@ -3604,6 +3617,7 @@ | |||
| _sp) it (e aIt | |||
| cr) it (e_ It | |||
| wr) ite aIt | |||
| it (ee_ aIt | |||
| _s) it (e aIt | |||
| _t) it (an aIt | |||
| x) ite (_ aIt | |||
| @@ -3994,6 +4008,7 @@ | |||
| br) oa (d O: | |||
| oar o@ | |||
| oar (_ o@ | |||
| _h) o 0 | |||
| cr) o (at oU | |||
| X) o (ba oU | |||
| t) o (bacc @ | |||
| @@ -4443,7 +4458,7 @@ | |||
| or (ig 0r | |||
| or (ix 'O@r | |||
| &) ored (_ 3d | |||
| h) ored (_S1 d | |||
| &) ored (_$w_alt1S1 d | |||
| _f) ore (C O@ | |||
| f) ore (clo %o@ | |||
| f) ore (st 0rI | |||
| @@ -4537,6 +4552,7 @@ | |||
| hyp) ost 0st | |||
| osure 'oUZ3 | |||
| X) os (y oUz | |||
| @) os (y_ @s | |||
| .group ou | |||
| ou aU | |||
| @@ -5005,6 +5021,7 @@ | |||
| rrhea r'i@ | |||
| rrhoea r'i@ | |||
| _) ru (bL01 ru: | |||
| _) rule (@ ru:l | |||
| _) run (a rVn | |||
| _) run (o rVn | |||
| &ant) ry (_S2 r%I | |||
| @@ -5214,6 +5231,7 @@ | |||
| A) sh (A_ =S | |||
| &) ship (_S4 SIp | |||
| &) ships (_S5 SIps | |||
| &) shipe (_ SIp | |||
| &) shire (_S5 S3 | |||
| //?3 &) shire (_S5 Si@ | |||
| sia (_ =zi@ | |||
| @@ -5238,6 +5256,7 @@ | |||
| u) sin (_ z@n | |||
| A) s (itiv z | |||
| _) size (C@ saIz | |||
| s (mK z | |||
| a) s (m z | |||
| o) s (m z | |||
| L07) s (mAn_ z | |||
| @@ -5446,8 +5465,9 @@ | |||
| &s) tian (_ tS@n | |||
| _) tian tjan | |||
| &) tial S@L | |||
| &s) tial tj@L | |||
| s) tial tj@L | |||
| &) ti (ali SI | |||
| s) ti (ali tI | |||
| i) tia (liL06 S@ | |||
| &) tien S@n | |||
| &) tience S@ns | |||
| @@ -5691,6 +5711,7 @@ | |||
| _) un (A_ ju:n | |||
| _) unn %Vnn | |||
| @) un (al 'ju:n | |||
| un (A_ 'u:n | |||
| une (_ ju:n | |||
| ?3 d) une (_ u:n | |||
| j) un (A u:n | |||
| @@ -5711,7 +5732,7 @@ | |||
| _) uni ju:nI | |||
| _) un (ide ,Vn | |||
| _) un (inP2 ,Vn | |||
| _) un (il ,ju:n | |||
| _) uni (l ,ju:nI | |||
| _) un (io ju:n | |||
| _) un (iq %ju:n | |||
| unit (e ju:n'aIt | |||
| @@ -5803,6 +5824,7 @@ | |||
| _) vehem vi@m | |||
| _) vibra (t v%aIbreI | |||
| ?3 _) vibra (t v'aIbreI | |||
| video vIdI2oU | |||
| vivi (@ vIvI | |||
| viv (_ vaIv | |||
| @@ -6185,6 +6207,7 @@ | |||
| ä E | |||
| ë E | |||
| ï i: | |||
| ó (n '0 | |||
| ö 3: | |||
| ör 3: | |||
| ü u: | |||
| @@ -1,13 +1,13 @@ | |||
| // Irish Gaeilge dictionary | |||
| // written by Ronan McGuirk | |||
| // 2013 | |||
| // version 2.7 | |||
| // version 2.8.2 | |||
| // Please send comments and suggestions to [email protected] | |||
| // This file is UTF8 encoded | |||
| // 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 | |||
| _a eI | |||
| @@ -135,9 +135,25 @@ _dpt pO#nk | |||
| //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 | |||
| a @ | |||
| ab @b | |||
| abhaile @w'0l;E | |||
| ach 0x $u | |||
| ag Eg $verbf $u | |||
| @@ -146,15 +162,17 @@ anam '0n@m | |||
| aige @g'E | |||
| air Er | |||
| acu 0k'U | |||
| ar Er $u | |||
| ar Er | |||
| arsa @rs@ | |||
| agaibh 0g@Iv | |||
| agus 0g@s | |||
| agus 0g@s $u | |||
| aisfhilleadh ,aS'Il;@ | |||
| amach @m'0x | |||
| amárach @m'A:r@x | |||
| amuigh @mu1'I | |||
| amháin @w'A:in | |||
| hamháin h@w'A:in | |||
| am aUm | |||
| anaithnid '0nah@nIdZ | |||
| anonn @naUn | |||
| @@ -172,6 +190,8 @@ aschurtha '0sxUrh@ | |||
| atá @t['A: $u | |||
| baill bu1'i:l | |||
| bhaill vu1'i:l | |||
| beadh b;'@X | |||
| bheadh v;'@X | |||
| beidh bEg | |||
| bhfuil w'Il | |||
| bheas v'e:@s | |||
| @@ -201,6 +221,7 @@ faic f@ak | |||
| faigh faIg | |||
| feadh fag | |||
| fear f'ar | |||
| féin h'e:n | |||
| gcathair g0h@r | |||
| gan g0n $u | |||
| gheall jaUl | |||
| @@ -212,7 +233,9 @@ in In $u | |||
| ina In@ $u | |||
| ins Ins $u | |||
| inniu Inj'u:v | |||
| irish _^_EN | |||
| iontach 'i:nt[@x | |||
| hiontach h'i:nt[@x | |||
| irish _^_EN | |||
| is 'Is $u | |||
| (is ea) IS'a | |||
| isteach IstS'0x | |||
| @@ -227,12 +250,14 @@ mhuigh vu1'i: | |||
| mhama w'0m@ | |||
| maith m'0 | |||
| mhaith w'0 | |||
| mhaithe w'0h;E | |||
| mbeadh m;O#X | |||
| mo mO# $u | |||
| mura mUr@ $u | |||
| ná nA: $u | |||
| nigh ni: | |||
| níorbh ni:rv | |||
| níorbh ni:@r@vv $u | |||
| nó nu: $u | |||
| nollag n@l@g | |||
| nolaig nO#lig | |||
| @@ -247,7 +272,10 @@ rímhaith R'i:w0 | |||
| (s é) S'e: | |||
| (s í) S'i: | |||
| san s@n | |||
| seo S@_ | |||
| san s'an $capital | |||
| seo SU_ $u | |||
| (sinn féin) S'In||f'e:n | |||
| tabhair t'u:@r | |||
| (tiocfaidh ár lá) tSO#ki:|'A:r|l'A: | |||
| @@ -1,8 +1,7 @@ | |||
| // translation rules for Irish Gaeilge | |||
| f// translation rules for Irish Gaeilge | |||
| // This file is UTF-8 encoded | |||
| // written by Ronan McGuirk 2013 | |||
| // Version 2.7 | |||
| // Version 2.8.3 | |||
| // Please send comments and suggestions to [email protected] | |||
| @@ -23,7 +22,7 @@ | |||
| .L12 á é ó eo ua // when followed by i | |||
| .L13 oc omb | |||
| .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 | |||
| .L17 l le li niste nn | |||
| .L18 n nt nte neann neadh ntear nim nfear nfinn nfidh nfidis neamar | |||
| @@ -33,6 +32,20 @@ | |||
| .L22 eadh eag eaga eagán eagáinín eo io iu iú eall eabh ealtaine eann | |||
| .L23 ea eo i | |||
| .L24 b mb bh g gh p ph bp m mh | |||
| .replace | |||
| ḃ bh | |||
| ċ ch | |||
| ḋ dh | |||
| ḟ fh | |||
| ġ gh | |||
| ṁ mh | |||
| ṗ ph | |||
| ṫ th | |||
| ċ ch | |||
| .group a | |||
| a 0# | |||
| @@ -68,12 +81,14 @@ | |||
| _) ath 0h | |||
| a (rraige a | |||
| ai (m_ @ | |||
| aí i: | |||
| aí 'i: | |||
| aí (_ %i: | |||
| aoi @i: | |||
| _) aoi i: | |||
| ath) aoi (r 'i:@ | |||
| r) aoi (nín 'e:@ | |||
| aoicht (_ 'i:@xt[ | |||
| d) aoine (_ @i:n;%i: | |||
| C) ao (C @e:@ | |||
| _L24) ao (C w'e:@ | |||
| C) ao (th_ @e: | |||
| @@ -86,6 +101,7 @@ | |||
| arraing arIng | |||
| _) ath (@@P3 ,0_ | |||
| _) athr '0hr | |||
| _) ard (@P3 A:rd[ | |||
| .group á | |||
| á A: | |||
| @@ -118,9 +134,11 @@ | |||
| _L04) ai (L18_++ u1'I//words like bain | |||
| c) ai (t_ u1'I | |||
| s) ai (bh E | |||
| sh) ai (bh E | |||
| aighre aIr@ | |||
| X) aigh 'aI | |||
| aigh aI# L04) aill (_ wi:l | |||
| aigh aI# | |||
| _L04) aill (_ wi:l | |||
| aing (_ Ing | |||
| ailleach '0l;@x | |||
| ai (llimh++ '0 // words like Gaillimh | |||
| @@ -150,6 +168,9 @@ | |||
| _) beann (@ ba#n | |||
| _) bheann (@ va#n | |||
| _) bun (C@P3 b,Un | |||
| ?1 _m_) bun (C@P3 ,Un | |||
| _) bpríomh (@P7 bR,i:v | |||
| .group c | |||
| c k | |||
| @@ -164,12 +185,19 @@ | |||
| _) chabhr x'aUr | |||
| _) ceann (C@P5 k;,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 | |||
| d d[ // broad | |||
| L01) d dZ // slender | |||
| d (L22 dZ // slender | |||
| d (L01 d; // slender | |||
| d (CL01 dZ | |||
| i) d (i dZ | |||
| ?1 _n_) d (@ | |||
| dh Q // broad | |||
| @@ -186,6 +214,8 @@ | |||
| _) d (_'fh d | |||
| d'fh (L01 d | |||
| dhaoine Q@i:n;%i: | |||
| i) dh (_ g | |||
| a) dh (_ X | |||
| o) dh (_ X | |||
| @@ -195,6 +225,7 @@ | |||
| dheartháir gr@h'A:r | |||
| deirfiúr d;r@f'u:r | |||
| dheirfiúr g;r@f'u:r | |||
| domhan d[aU@n | |||
| _) do (Ch@@P2 d[,U_ | |||
| _) dí (C@@P2 d,i: | |||
| dícheall d;'i:Ca#l | |||
| @@ -220,6 +251,7 @@ | |||
| d) eo (ch O# | |||
| dh) eo (ch O# | |||
| _) eo (ch O# | |||
| _h) eo (ch O# | |||
| s) eo (_ @ | |||
| @@ -242,7 +274,7 @@ | |||
| ea (ltaine aU | |||
| g) ea (ll aU | |||
| l) eamh (n aU | |||
| dr) ea (m aU | |||
| Kdr) ea (m aU | |||
| X) ea (ch 0 | |||
| _L04) ea (g @ | |||
| _L04) ea (dh_ @ | |||
| @@ -250,6 +282,7 @@ | |||
| L04) eaga (_ @g@ | |||
| eaghl aIl | |||
| eabhra aUr@ // words like Feabhra | |||
| eabhs aUs | |||
| eanbhean 'an@v,an | |||
| eadhb aIb | |||
| @@ -262,6 +295,7 @@ | |||
| fh (L22 ; // slender | |||
| @) f (L06_ h | |||
| fios fIs | |||
| faoi fw'i: | |||
| fhios Is | |||
| _) fo (C@@P2 f,U | |||
| _) fogh f'aU | |||
| @@ -269,13 +303,14 @@ | |||
| _) foc (@++ fOk | |||
| ?1 _bh_) f (@ | |||
| ?1 _bh_) f (L22 ; | |||
| _) fíor (@P4 f,i:r | |||
| .group g | |||
| g g // broad | |||
| g (L01 g; // slender | |||
| ?1 _n_) g (@ | |||
| _) gh Q" | |||
| gh Q" | |||
| _) gh (L01 Q"j | |||
| _) gc g // urú broad | |||
| _) gc (L01 g; // urú slender | |||
| @@ -287,8 +322,11 @@ | |||
| gh (n X@ | |||
| gheobh j'o: | |||
| 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 | |||
| h h // silent | |||
| @@ -301,6 +339,8 @@ | |||
| iu U | |||
| ia (tha i: | |||
| io O# | |||
| iond O#n@d[ | |||
| ioml O#m@l | |||
| io (dá I | |||
| _) io (nadh u:// words like ionadh | |||
| s) io (mb I | |||
| @@ -315,6 +355,8 @@ | |||
| iú u: | |||
| m) i (d_ i: // verb ending | |||
| _) in (@@P2 ,In_ | |||
| _) inn In | |||
| _) in (tinn 'In | |||
| _) ionad (C@@P5 ,Ona#d[ | |||
| .group í | |||
| @@ -324,6 +366,7 @@ | |||
| í (_ i: | |||
| ín (_ i:n | |||
| ío i:@ | |||
| íle (_ 'i:lE | |||
| .group l | |||
| @@ -334,6 +377,7 @@ | |||
| ll (L23 l; | |||
| l (g l@ | |||
| l (b l@ | |||
| L01) l (b l;@ | |||
| ll (b l | |||
| _) lorg (@@P4 l,Or@g | |||
| _) lán (@@P3 l,A:n | |||
| @@ -352,7 +396,9 @@ | |||
| _) mh (n v@ | |||
| léir) mheas vas | |||
| r) m @m // words like gorm | |||
| r) m (L20 @m; | |||
| _) mear (@@P4 m,ar | |||
| _) mí (C@@P2 m,i: | |||
| .group n | |||
| n n // broad | |||
| @@ -360,8 +406,8 @@ | |||
| ?1 _) n (_L01 n; | |||
| _) nd n // urú | |||
| _) nd (L01 n; // urú slender | |||
| _) ng N | |||
| _) ng (L01 N; | |||
| ng N | |||
| ng (L01 N; | |||
| ?1 _) n (_d n // urú | |||
| ?1 _) n (_dL01 n; // urú slender | |||
| ?1 _) n (_g N | |||
| @@ -386,19 +432,22 @@ | |||
| _C) omh o: | |||
| _CC) omh o: | |||
| omha o:@ | |||
| omhai o:@ | |||
| o (ll_ aU | |||
| C) o (nn_ aU | |||
| r) o (nn_ O# | |||
| C) ogh aU | |||
| omhan (_ aU@n | |||
| omhain (_ aUIn | |||
| odha aU | |||
| opaic @pIk | |||
| C) odh (_ o: | |||
| odl (a O#l | |||
| oí i: | |||
| o (rd_ o: | |||
| o (ird_ o: | |||
| _) oll (@@P3 ,Ol | |||
| .group ó | |||
| ó 'o: | |||
| @@ -426,14 +475,16 @@ | |||
| oi (mis @ | |||
| ois (++ O#S | |||
| n) ois (_++ IS | |||
| oill w'i:l | |||
| oill (+ w'i:l | |||
| _) oi (leá 'I | |||
| oidh aI | |||
| oir (_ 'ERR | |||
| l) oic (_ Ek | |||
| _sc) oi (r O | |||
| oigh (ea aI | |||
| oighn aIXn | |||
| oinse (_ @i:nS@ | |||
| oi (nte @i: | |||
| .group p | |||
| p p // broad | |||
| @@ -441,12 +492,15 @@ | |||
| p (L22 p; // slender | |||
| ph (L20 f; // slender | |||
| ?1 _b_) p (@ | |||
| _) príomh (@P6 pR,i:v | |||
| _) phríomh (@P7 fR,i:v | |||
| .group r | |||
| r r // broad | |||
| L01) r R // slender | |||
| _) r (L01 R | |||
| r (L01 R | |||
| L12i) r (e_ Z | |||
| L12i) r (t_ Z | |||
| rr R | |||
| @@ -473,6 +527,8 @@ | |||
| s (lL01 S | |||
| _') s (_ s // 's in poems etc | |||
| _) sain (@P4 s,an | |||
| _) sean (@@P4 S,an | |||
| .group t | |||
| t t[ // broad | |||
| @@ -496,11 +552,14 @@ | |||
| ao) th (_ | |||
| thne (_ h@nE | |||
| A) th (_ // silent th at word end | |||
| c) th (e_ ih // guta cúnta | |||
| K) th (as_ @h // guta cúnta | |||
| .group u | |||
| u U# | |||
| ua u@ | |||
| ua (_ u:@ | |||
| uai u@ | |||
| uai (g ui | |||
| uai (d ui | |||
| @@ -520,8 +579,12 @@ | |||
| g) ui (gh_ @i: | |||
| gh) ui (gh_ @i: | |||
| uí i: | |||
| uíomh 'i:@vv | |||
| uachai 'ux@ | |||
| _) uimhir (C@P6 ,IvIR | |||
| uibhne (_ @'i:n;E | |||
| uibhneach (_ @'i:n@x | |||
| .group ú | |||
| @@ -531,6 +594,7 @@ | |||
| úi u: | |||
| úinn (_ u:IN | |||
| úibh (_ u:Iv | |||
| úi (g u:i | |||
| @@ -2,12 +2,12 @@ | |||
| ?1 _0lang _^_EN // speak numbers in English | |||
| // articles | |||
| hο $u // ὁ | |||
| ɦο $u // ὁ | |||
| τὼ $u // τώ | |||
| οhι $u // οἱ | |||
| hη $u // ἡ | |||
| οɦι $u // οἱ | |||
| ɦη $u // ἡ | |||
| τὰ $u // τά | |||
| αhι $u // αἱ | |||
| αɦι $u // αἱ | |||
| τὸ $u // τό | |||
| τοὺ $u // τοῦ | |||
| @@ -3,7 +3,7 @@ | |||
| // Preliminary character substitution: | |||
| // Convert tonos, oxia and perispomeni to varia | |||
| // 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 | |||
| // Replace Latin characters by same-shape Greek characters | |||
| @@ -61,32 +61,32 @@ w ω // (long o; not standard transliteration but may be easier to type | |||
| ᾷ ᾲ | |||
| ἀ α | |||
| ἁ hα | |||
| ἁ ɦα | |||
| ἂ ὰ | |||
| ἃ hὰ | |||
| ἃ ɦὰ | |||
| ἄ ὰ | |||
| ἅ hὰ | |||
| ἅ ɦὰ | |||
| ἆ ὰ | |||
| ἇ hὰ | |||
| ἇ ɦὰ | |||
| ᾀ ᾳ | |||
| ᾁ hᾳ | |||
| ᾁ ɦᾳ | |||
| ᾂ ᾲ | |||
| ᾃ hᾲ | |||
| ᾃ ɦᾲ | |||
| ᾄ ᾲ | |||
| ᾅ hᾲ | |||
| ᾅ ɦᾲ | |||
| ᾆ ᾲ | |||
| ᾇ hᾲ | |||
| ᾇ ɦᾲ | |||
| // epsilon | |||
| έ ὲ | |||
| έ ὲ | |||
| ἐ ε | |||
| ἑ hε | |||
| ἑ ɦε | |||
| ἒ ὲ | |||
| ἓ hὲ | |||
| ἓ ɦὲ | |||
| ἔ ὲ | |||
| ἕ hὲ | |||
| ἕ ɦὲ | |||
| // eta | |||
| ή ὴ | |||
| @@ -96,22 +96,22 @@ w ω // (long o; not standard transliteration but may be easier to type | |||
| ῇ ῂ | |||
| ἠ η | |||
| ἡ hη | |||
| ἡ ɦη | |||
| ἢ ὴ | |||
| ἣ hὴ | |||
| ἣ ɦὴ | |||
| ἤ ὴ | |||
| ἥ hὴ | |||
| ἥ ɦὴ | |||
| ἦ ὴ | |||
| ἧ hὴ | |||
| ἧ ɦὴ | |||
| ᾐ ῃ | |||
| ᾑ hῃ | |||
| ᾑ ɦῃ | |||
| ᾒ ῂ | |||
| ᾓ hῂ | |||
| ᾓ ɦῂ | |||
| ᾔ ῂ | |||
| ᾕ hῂ | |||
| ᾕ ɦῂ | |||
| ᾖ ῂ | |||
| ᾗ hῂ | |||
| ᾗ ɦῂ | |||
| //iota | |||
| ί ὶ | |||
| @@ -119,13 +119,13 @@ w ω // (long o; not standard transliteration but may be easier to type | |||
| ῖ ὶ | |||
| ἰ ι | |||
| ἱ hι | |||
| ἱ ɦι | |||
| ἲ ὶ | |||
| ἳ hὶ | |||
| ἳ ɦὶ | |||
| ἴ ὶ | |||
| ἵ hὶ | |||
| ἵ ɦὶ | |||
| ἶ ὶ | |||
| ἷ hὶ | |||
| ἷ ɦὶ | |||
| ΐ ῒ | |||
| ῗ ῒ | |||
| @@ -134,11 +134,11 @@ w ω // (long o; not standard transliteration but may be easier to type | |||
| ό ὸ | |||
| ό ὸ | |||
| ὀ ο | |||
| ὁ hο | |||
| ὁ ɦο | |||
| ὂ ὸ | |||
| ὃ hὸ | |||
| ὃ ɦὸ | |||
| ὄ ὸ | |||
| ὅ hὸ | |||
| ὅ ɦὸ | |||
| // upsilon | |||
| ύ ὺ | |||
| @@ -146,13 +146,13 @@ w ω // (long o; not standard transliteration but may be easier to type | |||
| ῦ ὺ | |||
| ὐ υ | |||
| ὑ hυ | |||
| ὑ ɦυ | |||
| ὒ ὺ | |||
| ὓ hὺ | |||
| ὓ ɦὺ | |||
| ὔ ὺ | |||
| ὕ hὺ | |||
| ὕ ɦὺ | |||
| ὖ ὺ | |||
| ὗ hὺ | |||
| ὗ ɦὺ | |||
| ΰ ῢ | |||
| ῧ ῢ | |||
| @@ -165,26 +165,26 @@ w ω // (long o; not standard transliteration but may be easier to type | |||
| ῷ ῲ | |||
| ὠ ω | |||
| ὡ hω | |||
| ὡ ɦω | |||
| ὢ ὼ | |||
| ὣ hὼ | |||
| ὣ ɦὼ | |||
| ὤ ὼ | |||
| ὥ hὼ | |||
| ὥ ɦὼ | |||
| ὦ ὼ | |||
| ὧ hὼ | |||
| ὧ ɦὼ | |||
| ᾠ ῳ | |||
| ᾡ hῳ | |||
| ᾡ ɦῳ | |||
| ᾢ ῲ | |||
| ᾣ hῲ | |||
| ᾣ ɦῲ | |||
| ᾤ ῲ | |||
| ᾥ hῲ | |||
| ᾥ ɦῲ | |||
| ᾦ ῲ | |||
| ᾧ hῲ | |||
| ᾧ ɦῲ | |||
| // rho | |||
| ῤ ρ | |||
| ῥ hρ | |||
| ῥ ɦρ | |||
| .group α | |||
| @@ -193,10 +193,10 @@ w ω // (long o; not standard transliteration but may be easier to type | |||
| αὶ 'aI | |||
| αυ aU | |||
| αὺ 'aU | |||
| αhι haI | |||
| αhὶ 'haI | |||
| αhυ haU | |||
| αhὺ 'haU | |||
| αɦι haI | |||
| αɦὶ 'haI | |||
| αɦυ haU | |||
| αɦὺ 'haU | |||
| .group β | |||
| β b | |||
| @@ -216,10 +216,10 @@ w ω // (long o; not standard transliteration but may be easier to type | |||
| εὶ 'e: | |||
| ευ eU | |||
| εὺ 'eU | |||
| εhι he: | |||
| εhὶ 'he: | |||
| εhυ heU | |||
| εhὺ 'heU | |||
| εɦι he: | |||
| εɦὶ 'he: | |||
| εɦυ heU | |||
| εɦὺ 'heU | |||
| .group ζ | |||
| ζ z | |||
| @@ -231,10 +231,10 @@ w ω // (long o; not standard transliteration but may be easier to type | |||
| ηὶ 'EI: | |||
| ηυ EU: | |||
| ηὺ 'EU: | |||
| ηhι hEI: | |||
| ηhὶ 'hEI: | |||
| ηhυ hEU: | |||
| ηhὺ 'hEU: | |||
| ηɦι hEI: | |||
| ηɦὶ 'hEI: | |||
| ηɦυ hEU: | |||
| ηɦὺ 'hEU: | |||
| .group θ | |||
| θ T | |||
| @@ -274,10 +274,10 @@ w ω // (long o; not standard transliteration but may be easier to type | |||
| οὶ 'oI | |||
| ου u: | |||
| οὺ 'u: | |||
| οhι hoI | |||
| οhὶ 'hoI | |||
| οhυ hu: | |||
| οhὺ 'hu: | |||
| οɦι hoI | |||
| οɦὶ 'hoI | |||
| οɦυ hu: | |||
| οɦὺ 'hu: | |||
| .group π | |||
| π p | |||
| @@ -303,15 +303,15 @@ w ω // (long o; not standard transliteration but may be easier to type | |||
| υ y | |||
| υι yI | |||
| υὶ 'yI | |||
| υhι hyI | |||
| υhὶ 'hyI | |||
| υɦι hyI | |||
| υɦὶ 'hyI | |||
| .group ϋ | |||
| ϋ y | |||
| ϋι yI | |||
| ϋὶ 'yI | |||
| ϋhι hyI | |||
| ϋhὶ 'hyI | |||
| ϋɦι hyI | |||
| ϋɦὶ 'hyI | |||
| .group φ | |||
| φ f | |||
| @@ -331,15 +331,15 @@ w ω // (long o; not standard transliteration but may be easier to type | |||
| ωὶ 'OI: | |||
| ωυ 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 = ω' | |||
| @@ -366,6 +366,9 @@ w ω // (long o; not standard transliteration but may be easier to type | |||
| g g | |||
| gg Ng | |||
| .group h | |||
| h h | |||
| .group i | |||
| i i | |||
| @@ -0,0 +1,167 @@ | |||
| // This file is written by Him Prasad Gautam (Nepal) | |||
| // This file is UTF8 encoded | |||
| // Numbers | |||
| // Gujarati numbers are changed to latin characters before translation | |||
| _0 S'u:nj@- | |||
| _1 'e:k | |||
| _2 b'e: | |||
| _3 tr'@n.V | |||
| _4 c'a:r | |||
| _5 p'a:n^c | |||
| _6 c#'@ | |||
| _7 s'a:t | |||
| _8 'a:,t.# | |||
| _9 n'aw | |||
| _10 d'@s: | |||
| _11 'ag'Ija:r | |||
| _12 b'a:r | |||
| _13 t'e:r | |||
| _14 c'O:d | |||
| _15 p'Vnd@r | |||
| _16 s'o:d. | |||
| _17 s'@t@r | |||
| _18 'Vd.#a:r | |||
| _19 ,o:gn.'i:s | |||
| _20 w'i:s | |||
| _21 ,e:kw'i:s | |||
| _22 baU'i:s | |||
| _23 tre:w'i:s | |||
| _24 co:w'i:s | |||
| _25 p,@c'i:s | |||
| _26 c#@3w'i:s | |||
| _27 s,@tjaU'i:s | |||
| _28 ,Vt.#jaU'i:s | |||
| _29 ,o:[email protected]'i:s | |||
| _30 tr'i:s | |||
| _31 ,e:k@tr'i:s | |||
| _32 b@tr'i:s | |||
| _33 te:tr'i:s | |||
| _34 co:tr'i:s | |||
| _35 pa:ntr'i:s | |||
| _36 c#@3tr'i:s | |||
| _37 s,a:d.tr'i:s | |||
| _38 ,a:d.tr'i:s | |||
| _39 ,o:[email protected]:l'i:s | |||
| _40 ca:l'i:s | |||
| _41 ,e:kta:l'i:s | |||
| _42 b,e:ta:l'i:s | |||
| _43 t,e:ta:l'Is | |||
| _44 c,Uma:l'i:s | |||
| _45 p,Ista:l'i:s | |||
| _46 c#,e:ta:l'i:s | |||
| _47 s,@d.ta:l'i:s | |||
| _48 ,Vd.ta:l'i:s | |||
| _49 o:g'Vn.,p@c'a:s | |||
| _50 p@c'a:s | |||
| _51 e:k'aUn | |||
| _52 b'aUn | |||
| _53 tre:p'Vn | |||
| _54 co:p'Vn | |||
| _55 p@n^c'aUn | |||
| _56 c#@3p:'Vn | |||
| _57 s@t'aUn | |||
| _58 Vt.#'aUn | |||
| _59 ,o:[email protected]:'It.# | |||
| _60 sa:'It.# | |||
| _61 ,e:k@s'Vt.# | |||
| _62 ba:s'Vt.# | |||
| _63 tre:s'Vt.# | |||
| _64 co:s'Vt.# | |||
| _65 pa:s'Vt.# | |||
| _66 c#a:s'Vt.# | |||
| _67 s,@d.@s'Vt.# | |||
| _68 ,Vd.@s'Vt.# | |||
| _69 ,o:[email protected]'i:te:r | |||
| _70 s'i:te:r | |||
| _71 e:k'o:te:r | |||
| _72 b'o:te:r | |||
| _73 t'o:te:r | |||
| _74 cUm'o:te:r | |||
| _75 p@n^c'o:te:r | |||
| _76 c#'o:te:r | |||
| _77 s@t'o:te:r | |||
| _78 Vt.#'o:te:r | |||
| _79 ,o:g@n.'e:si; | |||
| _80 'e:nsi; | |||
| _81 ,e:kj'a:si | |||
| _82 b'j'a:si | |||
| _83 tr@2j'a:si | |||
| _84 c,o:*j'a:si | |||
| _85 p,@cj'a:si | |||
| _86 c#@3j'a:si | |||
| _87 s,@tj'a:si; | |||
| _88 ,Vt.#j'a:si | |||
| _89 n,e:wj'a:si | |||
| _90 n'e:wU | |||
| _91 e:k'a:n.U | |||
| _92 b'a:n.U | |||
| _93 tr'a:n.U | |||
| _94 co:r'a:n.U | |||
| _95 p@n^c'a:n.U | |||
| _96 c#'VnnU | |||
| _97 s@t'a:n.U | |||
| _98 Vt.#'a:n.U | |||
| _99 n@w'a:n.U | |||
| _0C s'o: | |||
| _0M1 h'VJa:r | |||
| _0M2 l'a:k# | |||
| _0M3 k@r'o:r.V | |||
| _0M4 'VrVb | |||
| _0M5 k#'VrVb | |||
| _dpt p'u:r'n.'a:,Nk | |||
| // Single consonants | |||
| ક k@ | |||
| ક઼ q@ | |||
| ખ k#@ | |||
| ખ઼ x@ | |||
| ગ g@ | |||
| ગ઼ Q@ | |||
| ઘ g#@ | |||
| ઙ N@ | |||
| ચ c@ | |||
| છ c#@ | |||
| જ J@ | |||
| જ઼ z@ | |||
| ઝ J#@ | |||
| ઞ n^@ | |||
| ટ t.@ | |||
| ઠ t.#@ | |||
| ડ d.@ | |||
| ડ઼ r.@ | |||
| ઢ d.#@ | |||
| ણ n.@ // retroflex n.@ | |||
| ત t@ | |||
| થ t#@ | |||
| દ d@ | |||
| ધ d#@ | |||
| ન n@ | |||
| પ p@ | |||
| ફ p#@ | |||
| ફ઼ f@ | |||
| બ b@ | |||
| ભ b#@ | |||
| મ m@ | |||
| ય j@ | |||
| ર r@ | |||
| લ l@ | |||
| ળ l.@ | |||
| વ v@ | |||
| શ S@ | |||
| ષ s.@ // retroflex [S] | |||
| સ s@ | |||
| હ H@ | |||
| // Punctuation | |||
| । p'urn'a,b'ira:m | |||
| ૱ r'u:p'i:ja: | |||
| $ d@l@r | |||
| + plVs | |||
| = bVr'a:b@r | |||
| * ta:r'a:Nk@n | |||
| @@ -0,0 +1,468 @@ | |||
| // This file is developed by Him Prasad Gautam (Nepal) | |||
| // This file is UTF8 encoded | |||
| // letter groups: | |||
| // A vowel letters and vowel signs | |||
| // B vowel signs and virama ્ | |||
| // C consonants | |||
| // Y vowel letters and vowel signs | |||
| // conditional rules | |||
| // ?2 use diphthong for "ai" | |||
| // ?3 use diphthong for "au" | |||
| .replace | |||
| ૦ 0 | |||
| ૧ 1 | |||
| ૨ 2 | |||
| ૩ 3 | |||
| ૪ 4 | |||
| ૫ 5 | |||
| ૬ 6 | |||
| ૭ 7 | |||
| ૮ 8 | |||
| ૯ 9 | |||
| // Vowels | |||
| .group અ | |||
| અ V | |||
| અ (હ E // (h | |||
| અહ) અ E | |||
| .group આ | |||
| આ a: | |||
| .group ઇ | |||
| ઇ I | |||
| ઇઁ i~ | |||
| ઇં i~ | |||
| .group ઈ | |||
| ઈ i: | |||
| ઈ (_ i | |||
| .group ઉ | |||
| ઉ U | |||
| .group ઊ | |||
| ઊ u | |||
| ઊં (_ u~ // + anusvara | |||
| ઊઁ (_ u~ // + candrabinbu | |||
| .group ઋ | |||
| ઋ rI | |||
| .group ઌ | |||
| ઌ l-ri: // vocalic l | |||
| .group ઍ | |||
| ઍ E // candra e | |||
| .group એ | |||
| એ e: | |||
| એઁ e~: | |||
| એં (_ e~: | |||
| ા) એઁ (_ j | |||
| .group ઐ | |||
| ઐ E: // ?? [aI] [E:] [&:] | |||
| ઐં (_ E~ | |||
| ઐઁ (_ E~ | |||
| ?2 ઐ aI // ?? [aI] [E:] [&:] | |||
| .group ઑ | |||
| ઑ O // candra O | |||
| .group ઓ | |||
| ઓ o: | |||
| ઓં (_ o~ // +anusvara | |||
| ઓઁ (_ o~ // +candrabindu | |||
| ા) ઓં (_ w // +anusvara | |||
| ા) ઓઁ (_ w | |||
| .group ઔ | |||
| ઔ O: // ?? [aU] [O:] | |||
| ઔં (_ O~ // +anusvara | |||
| ઔઁ (_ O~ // +candrabindu | |||
| ?3 ઔ aU // ?? [aU] [O:] | |||
| // Vowel Signs | |||
| .group ા | |||
| ા k'a:n'o | |||
| C) ા a: | |||
| C) ા (ઁ a~ | |||
| C) ાઁ (_ a~ | |||
| C) ાં (_ a~ | |||
| .group િ | |||
| િ i,c'i:nh'a | |||
| C) િ i | |||
| C) િઁ i~ | |||
| C) િં i~ | |||
| .group ી | |||
| ી d'i:rg#@i:,c'i:n'h'a | |||
| C) ી i: | |||
| C) ી (_ i | |||
| C)ી (ઁ i~ | |||
| C) ીઁ (_ i~ | |||
| C) ીં (_ i~ | |||
| .group ુ | |||
| ુ u,c'i:n'h'a | |||
| C) ુ U | |||
| C) ુ (ઁ u~ | |||
| C) ું (_ u~ | |||
| C) ુઁ (_ u~ | |||
| .group ૂ | |||
| ૂ d'i:rg#@u:,c'i:n'h'a | |||
| C) ૂ u: | |||
| C) ૂ (ઁ u~ | |||
| C) ૂં (_ u~ // or O~ ?? | |||
| C) ૂઁ (_ u~ | |||
| .group ૃ | |||
| ૃ r'I,c'i:n'h'a | |||
| C) ૃ rI | |||
| .group ૄ | |||
| ૄ d'i:rg#@r'I,c'i:n'h'a | |||
| C) ૄ rI | |||
| .group ૅ | |||
| ૅ 'e,c'i:n'h'a | |||
| C) ૅ E | |||
| .group ે | |||
| ે 'e:,c'i:n'h'a | |||
| C) ે e: | |||
| C) ે (ઁ e~ | |||
| C) ેં (_ e~: | |||
| C) ેઁ (_ e~: | |||
| .group ૈ | |||
| ૈ E:,c'i:n'h'a | |||
| C) ૈ E: // ?? [aI] [E:] [&:] | |||
| C) ૈં E~ | |||
| C) ૈ (ઁ E~ | |||
| C) ૈં (_ E~ | |||
| C) ૈઁ (_ E~ | |||
| ?2 C) ૈ aI // ?? [aI] [E:] [&:] | |||
| .group ૉ | |||
| ૉ O,c'i:n'h'a | |||
| C) ૉ O | |||
| .group ો | |||
| ો o:,c'i:n'h'a | |||
| C) ો o: | |||
| C) ો (ઁ o~ | |||
| C) ોં (_ o~ | |||
| C) ોઁ (_ o~ | |||
| .group ૌ | |||
| ૌ aU,c'i:n'h'a // [O:] or [aU] ?? | |||
| C) ૌ O: | |||
| C) ૌ (ઁ O~ // [O:] or [aU] ?? | |||
| C) ૌં (_ O~ | |||
| C) ૌઁ (_ O~ | |||
| ?3 C) ૌ aU // [O:] or [aU] ?? | |||
| .group ૢ // vowel sign l | |||
| _) ૢ (_ l'ri:,c'i:n'h'a | |||
| ૢ l- | |||
| .group ૣ // vowel sign ll | |||
| _) ૣ (_ d'i:rg#,l'ri:,c'i:n'h'a | |||
| ૣ l-: | |||
| .group ૐ | |||
| ૐ o~m | |||
| // Consonants | |||
| .group ક | |||
| ક kV | |||
| ક (B k | |||
| ક (્ય k: | |||
| ક઼ qV | |||
| ક઼ (B q | |||
| ક્ક k:V // kk -> k: | |||
| ક્ક (B k: | |||
| ક્ષ kSV | |||
| ક્ષ (B kS | |||
| .group ખ | |||
| ખ k#V | |||
| ખ (B k# | |||
| ખ઼ xV | |||
| ખ઼ (B x | |||
| .group ગ | |||
| ગ gV | |||
| ગ (B g | |||
| ગ઼ QV | |||
| ગ઼ (B Q | |||
| .group ઘ | |||
| ઘ g#V | |||
| ઘ (B g# | |||
| .group ઙ | |||
| ઙ NV | |||
| ઙ (B N | |||
| ્) ઙ (_ N@ | |||
| .group ચ | |||
| ચ cV | |||
| ચ (B c | |||
| ચ (્ય c: | |||
| .group છ | |||
| છ c#V | |||
| છ (B c# | |||
| .group જ | |||
| જ JV | |||
| જ (B J | |||
| જ઼ zV | |||
| જ઼ (B z | |||
| જ્ઞ gjV | |||
| જ્ઞ (B gj | |||
| .group ઝ | |||
| ઝ J#V | |||
| ઝ (B J# | |||
| .group ઞ | |||
| ઞ n^V | |||
| ઞ (B n^ | |||
| ્) ઞ (_ n^@ | |||
| .group ટ | |||
| ટ t.V | |||
| ટ (B t. | |||
| ટ (્ય t.: | |||
| ટ્ટ t.:V // t.t. -> t.: | |||
| ટ્ટ (B t.: | |||
| ટ્ઠ t.#:V // t.t.# -> t.#: | |||
| ટ્ઠ (B t.#: | |||
| .group ઠ | |||
| ઠ t.#V | |||
| ઠ (B t.# | |||
| ઠ્ઠ t.#:V // t.#t.# -> t.#: | |||
| ઠ્ઠ (B t.#: | |||
| .group ડ | |||
| ડ d.V | |||
| ડ (B d. | |||
| ડ઼ r.V | |||
| ડ઼ (B r. | |||
| .group ઢ | |||
| ઢ d.#V | |||
| ઢ (B d.# | |||
| ઢ઼ r.hV // nukta (should retroflex flap) | |||
| ઢ઼ (B r.h // nukta | |||
| .group ણ | |||
| ણ n.V | |||
| ણ (B n. | |||
| ્) ણ (_ n.@ | |||
| .group ત | |||
| ત tV | |||
| ત (B t | |||
| ત (્ય t: | |||
| ત્ત t:V // tt -> t: | |||
| ત્ત (B t: | |||
| .group થ | |||
| થ t#V | |||
| થ (B t# | |||
| .group દ | |||
| દ dV | |||
| દ (B d | |||
| .group ધ | |||
| ધ d#V | |||
| ધ (B d# | |||
| .group ન | |||
| ન nV | |||
| ન (B n | |||
| ્) ન (_ n@ | |||
| ર્) ન (_ n // r +virama | |||
| .group પ | |||
| પ pV | |||
| પ (B p | |||
| પ (્ય p: | |||
| પ્પ p:V // pp -> p: | |||
| પ્પ (B p: | |||
| .group ફ | |||
| ફ p#V | |||
| ફ (B p# | |||
| ફ઼ fV | |||
| ફ઼ (B f | |||
| .group બ | |||
| બ bV | |||
| બ (B b | |||
| .group ભ | |||
| ભ b#V | |||
| ભ (B b# | |||
| .group મ | |||
| મ mV | |||
| મ (B m | |||
| ્) મ (_ m@ | |||
| ર્) મ (_ m // r +virama | |||
| ન્) મ (_ m // n +virama | |||
| .group ય | |||
| ય jV | |||
| ય (B j | |||
| C) ય (_ Ej // [Ej] not [@j] | |||
| ્) ય (_ j@ | |||
| .group ર | |||
| ર rV | |||
| ર (B r | |||
| ર (_ r | |||
| ્) ર (_ r@ | |||
| .group લ | |||
| લ lV | |||
| લ (B l | |||
| ્) લ (_ l@ | |||
| .group ળ | |||
| ળ l.V | |||
| ળ (B l. | |||
| ્) ળ (_ l.@ | |||
| .group વ | |||
| વ wV | |||
| વ (B w | |||
| _) વ wV | |||
| _) વ (B w | |||
| _) વ (્ w // +virma | |||
| વ (_ w | |||
| .group શ | |||
| શ SV | |||
| શ (B S | |||
| .group ષ | |||
| ષ s.V | |||
| ષ (B s. | |||
| .group સ | |||
| સ sV | |||
| સ (B s | |||
| .group હ | |||
| હ HV | |||
| હ (B H | |||
| .group ઼ | |||
| ઼ t.'Vp,k'u: | |||
| A) ઼ | |||
| C) ઼ | |||
| .group ઽ // avagraha, lengthens a vowel ?? | |||
| ઽ 'Vn'un'a:s'i:k | |||
| A) ઽ : | |||
| C) ઽ : | |||
| .group ઁ | |||
| ઁ 'ard.'a,c'Vndr'a // candrabindu | |||
| C) ઁ n | |||
| A) ઁ n | |||
| .group ં | |||
| ં 'Vn'Uswa:r | |||
| A) ં n | |||
| C) ં n | |||
| ં (પ m | |||
| ં (ફ m | |||
| ં (બ m | |||
| ં (ભ m | |||
| ં (મ m | |||
| ં (ટ n. | |||
| ં (ઠ n. | |||
| ં (ડ n. | |||
| ં (ઢ n. | |||
| ં (ણ n. | |||
| ં (ચ n^ | |||
| ં (છ n^ | |||
| ં (જ n^ | |||
| ં (ઝ n^ | |||
| ં (ઞ n^ | |||
| ં (ય n^ | |||
| ં (ક N | |||
| ં (ખ N | |||
| ં (ગ N | |||
| ં (ઘ N | |||
| ં (ઙ N | |||
| .group ઃ | |||
| ઃ g'ur'u,v'ir'a:m | |||
| A) ઃ H // visarga | |||
| C) ઃ H // visarga | |||
| ઁ) ઃ H | |||
| ં) ઃ H | |||
| .group ્ // virama | |||
| ્ k#'od.o | |||
| C) ્ | |||
| // Extra consonants | |||
| .group ૠ // rr | |||
| ૠ V-rr | |||
| .group ૡ // ll | |||
| ૡ l-: // long syllabic l | |||
| .group % | |||
| % p'Vrs'ent. | |||
| 0) % t.'Vkk'a: | |||
| 1) % t.'Vkk'a: | |||
| 2) % t.'Vkk'a: | |||
| 3) % t.'Vkk'a: | |||
| 4) % t.'Vkk'a: | |||
| 5) % t.'Vkk'a: | |||
| 6) % t.'Vkk'a: | |||
| 7) % t.'Vkk'a: | |||
| 8) % t.'Vkk'a: | |||
| 9) % t.'Vkk'a: | |||
| @@ -411,7 +411,7 @@ _tld tildE | |||
| _#9 tAb | |||
| _#32 s'o:kYz | |||
| _cap n'AJ_| | |||
| _?? kAR2AktEr // unknown characters (change this) | |||
| _?? kAR2AktER2 // unknown characters (change this) | |||
| // Abbreviations | |||
| @@ -4255,7 +4255,7 @@ belőniük $unstressend | |||
| árban $unstressend | |||
| (boltok ajánlatai) boltok_'||Aja:nlAtAi $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 | |||
| (is támogatja) iS_||ta:mogAc:A $unstressend | |||
| (lehet használni) lEhEt_||hAsna:lni $unstressend | |||
| @@ -175,10 +175,37 @@ udvaron) c (ser ts | |||
| licen) ccs ts|tS | |||
| nyol) c (csat 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 | |||
| anar) ch (i h | |||
| @@ -216,8 +243,36 @@ diszti) ch (on h | |||
| almana) ch h | |||
| kronoszti) 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 | |||
| d d | |||
| @@ -469,23 +524,31 @@ shetlan) d (szige d | |||
| své) d (zseb d | |||
| csalá) d (szer 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 | |||
| fogó) dz (kod ts | |||
| @@ -542,8 +605,8 @@ burkoló) dz z | |||
| 000_-) el (_ REl // double R for 1000-el | |||
| 000000_-) el (_ El // ... but not 1000000-el | |||
| _) ehhez EhEz | |||
| egyezség EJ:ESSe:g | |||
| egyezségg EJ:ESSe:g: | |||
| egyezség EJ:ESSe:g | |||
| egyezségg EJ:ESSe:g: | |||
| .group é | |||
| é e: | |||
| @@ -609,7 +672,7 @@ burkoló) dz z | |||
| fo) g (gyűrű g | |||
| fo) g (gyö g | |||
| kuplun) g (gyár g | |||
| bélye) g (gyűjt g | |||
| bélye) g (gy g | |||
| jo) g (gyakor g | |||
| dö) g (gyapjú g | |||
| fo) g (gyalu g | |||
| @@ -625,7 +688,6 @@ ritkasá) g (gyűjt g | |||
| é) gh (ajla kh | |||
| pro) g (gyak g | |||
| arcüre) g (gyulladás g | |||
| bete) g (gyógyász g | |||
| szöve) g (gyűjt g | |||
| ta) g (gyűl g | |||
| gu) gg (ol g | |||
| @@ -675,19 +737,72 @@ doppin) g (gy g | |||
| baromsá) g (gy g | |||
| tehetsé) 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 | |||
| gy J | |||
| @@ -813,8 +928,8 @@ _huszone) gy (e J: | |||
| száze) gy (edik J: | |||
| védje) gy (straté 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 | |||
| h h | |||
| @@ -870,8 +985,8 @@ progressz) í (ve i: | |||
| sz) í (verő i: | |||
| sz) í (vevő i: | |||
| expressz) í (v i: | |||
| recessz) í (ve i: | |||
| v) í (zener i: | |||
| recessz) í (ve i: | |||
| v) í (zener i: | |||
| .group j | |||
| j j | |||
| @@ -924,7 +1039,7 @@ v) í (zener i: | |||
| 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 | |||
| _játé) kk (liens k: //exceptiof for kk (L01 rule | |||
| községg kYS:e:g: | |||
| községg kYS:e:g: | |||
| .group l | |||
| @@ -976,6 +1091,9 @@ keresztü) l (j l | |||
| lly (-L01 j //if have consonants after - character, need spokening one j letter with first part | |||
| ll (-L01 l | |||
| bagate) ll (iz l | |||
| fü) l (lyuk l | |||
| levé) l (lyuk l | |||
| nyé) l (lyuk l | |||
| .group m | |||
| m m | |||
| @@ -1087,16 +1205,50 @@ teljesítmé) ny (j n^ | |||
| n'Em _!'Ellt,e:,ES | |||
| 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 | |||
| o o | |||
| @@ -1243,10 +1395,29 @@ feldolgozá) s S | |||
| _ki) s (szín S | |||
| kérdé) 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 | |||
| ssz ss2 | |||
| @@ -1766,7 +1937,7 @@ kattintá) ssz Ss | |||
| közlekedé) ssz Ss | |||
| laká) ssz Ss | |||
| légzé) ssz Ss | |||
| _le) ssz (ab Ss | |||
| le) ssz (ab Ss | |||
| meglepeté) ssz Ss | |||
| nyila) ssz Ss | |||
| pszichológu) ssz Ss | |||
| @@ -1806,43 +1977,317 @@ születé) ssz (ám S|s | |||
| zsarolá) ssz (er S|s | |||
| dőlé) ssz (ab S|s | |||
| 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 | |||
| sz s | |||
| @@ -1905,13 +2350,16 @@ ellenállá) sz (ón Sz | |||
| ré) sz (árás Sz | |||
| _te) szts (or st|S | |||
| 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 | |||
| t t | |||
| @@ -2060,26 +2508,34 @@ szögle) t (szob t | |||
| álla) t (cirk t | |||
| szen) t (szob 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 | |||
| C) tj c | |||
| @@ -2170,7 +2626,8 @@ közérze) tj (aví tj | |||
| ké) tj (átszm tj | |||
| szavaza) tj (og tj | |||
| szavaza) tj (eg tj | |||
| vona) tj (eggy tj | |||
| vona) tj (eggy tj | |||
| billentyűze) tj (áté tj | |||
| .group ts | |||
| ts (_S2 tS //general rule with word end of ts letters | |||
| @@ -2410,6 +2867,8 @@ keresz) tt (űz t: | |||
| bennszülö) tt (jelmez t | |||
| krike) tt (ját t | |||
| szé) tt (rancsír t: | |||
| elláto) tt (jog t | |||
| felnő) tt (játszó t | |||
| .group ty | |||
| mindszen) ty t|i | |||
| @@ -2513,7 +2972,7 @@ lefeje) z (ték s | |||
| _ré) zs (ó zS | |||
| ő) zs (uta zS | |||
| _vá) zs (or zS | |||
| szára) zs (ág SS | |||
| szára) zs (ág SS | |||
| _nehé) zs (ely zS | |||
| _) zürich tsyR2i C | |||
| tí) zsz (er s: | |||
| @@ -2657,12 +3116,34 @@ csatlako) z (tok s | |||
| _tí) z (shill z | |||
| topá) 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 | |||
| 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 | |||
| $ dolla:R2 | |||
| @@ -156,7 +156,7 @@ de d@ | |||
| het h@t $only | |||
| een @n $only | |||
| ən @-n // char.replacement for 'n | |||
| ət t // char.replacement for 't | |||
| ət @t // char.replacement for 't | |||
| een e:n $atend | |||
| (de een) d@||e:n | |||
| (het een) h@t||e:n | |||
| @@ -399,9 +399,15 @@ zegen $alt | |||
| trokken $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 | |||
| diller $alt // bediller | |||
| schepper $alt // opschepper | |||
| steller $alt // aansteller | |||
| @@ -875,7 +881,7 @@ waaier $alt | |||
| wakker $alt | |||
| wapper $alt | |||
| water $alt | |||
| wedijver $alt | |||
| wedijver v#Ed'EIv@r $alt | |||
| weelder $alt | |||
| wegwijzer $alt | |||
| weiger $alt | |||
| @@ -1622,6 +1628,7 @@ aldus Ald'8s | |||
| alles Al@s | |||
| amino $1 | |||
| amnestie $3 | |||
| antenne $2 $alt2 | |||
| april a:pr'Il | |||
| armand _^_FR | |||
| augustus VUQ'8st8s | |||
| @@ -1665,6 +1672,7 @@ crèches krES@s | |||
| damascering damA;s'e:rIN | |||
| december $2 | |||
| desillusie dEsIlyzi | |||
| desondanks dEsOnd'ANks | |||
| detail de:t'Aj | |||
| dieet $2 | |||
| diesel diz@l | |||
| @@ -1681,8 +1689,10 @@ embouchuur A~buS'yr // embouchure | |||
| enorm $2 | |||
| enquête A~k'Et@ $alt2 | |||
| erosie e:r'o:zi | |||
| evangelie e:vANQ'e:li | |||
| eucharistie $4 | |||
| explosie $2 | |||
| extern Ekst'Ern | |||
| februari fe:bry'a:ri | |||
| fiche fiS@ | |||
| franchise frA'Si:z@ | |||
| @@ -1692,6 +1702,9 @@ gelig Qe:l@Q | |||
| gouache Qu'AS | |||
| gefrituurd $3 | |||
| hysterie hIstI:r'i | |||
| ideaal ide:j'a:l | |||
| ideale ide:j'a:l@ | |||
| immens Im'Ens | |||
| impregnering Impr,EQn'e:IN | |||
| inductie $2 | |||
| informatieve InfOrma:t'iv@ | |||
| @@ -1702,11 +1715,13 @@ ingevolge $3 | |||
| ingrediënt $4 | |||
| ingenieur Inzj@nj'Y:r | |||
| informatie $3 | |||
| intern Int'Ern | |||
| invasie $2 | |||
| januari $3 | |||
| jury Zyri | |||
| kadaster $2 | |||
| kleinzerig klEInz'e:r@Q | |||
| kredietwaardig $3 | |||
| leesregel le:sre:Q@l | |||
| levendig le:v@nd@Q | |||
| lunch l8nS | |||
| @@ -1742,7 +1757,10 @@ miszit $1 | |||
| mysterie mIst'I:ri | |||
| nabij nab'EI | |||
| new nyU | |||
| noordelijk no:rd@l@k | |||
| november $2 | |||
| oceaan o:se:j'a:n | |||
| oceanen o:se:j'a:n@n | |||
| oktober $2 | |||
| oliesel o:lis@l | |||
| omver o:mv'Er | |||
| @@ -1753,10 +1771,12 @@ ongemakkelijk $3 | |||
| //ongelukkig $3 | |||
| ongerieflijk $3 | |||
| //ongrondwettig $3 | |||
| oostelijk o:st@l@k | |||
| partijvoorzitters $2 | |||
| periferie pI:rifI:r'i | |||
| perron $2 | |||
| pistache pist'AS | |||
| premie $1 | |||
| privilege privil'e:Z@ $alt2 | |||
| proces $2 | |||
| projectielen $3 | |||
| @@ -1777,6 +1797,7 @@ sms'jes EsEm'Es_j@s | |||
| spektakel $2 | |||
| sportief $2 | |||
| sportieve $2 | |||
| stream stri:m | |||
| tegennatuur $4 | |||
| tralie $1 | |||
| travestie $3 | |||
| @@ -1784,6 +1805,7 @@ verderop $3 | |||
| vergezicht vErQ@zIxt | |||
| verre vEr@ | |||
| verrekijker vEr@kEIk@r | |||
| versa vErs'a: | |||
| verste vErst@ | |||
| verte vErt@ | |||
| volledig $2 | |||
| @@ -1796,8 +1818,13 @@ wanluidend $2 | |||
| wanschapen $2 | |||
| wantrouwend $2 | |||
| weliswaar v#ElIsw'a:r | |||
| werelden v#I:r@ld@n | |||
| werktuigelijk $2 | |||
| westelijk v#Est@l@k | |||
| zeeën ze:@n | |||
| ziekenhuisbevalling zi:k@nhWysb@vAlIN | |||
| zuiden zWyd@n | |||
| zuidelijk zWyd@l@k | |||
| @@ -1834,6 +1861,7 @@ google gu:g@l | |||
| alexandrië $3 | |||
| Benin be:n'in | |||
| canada kAna:da: | |||
| Genua Qe:nyv#a: | |||
| Kinshasa kInS'a:sa: | |||
| Nairobi nAjr'o:bi | |||
| Napel $alt | |||
| @@ -40,6 +40,7 @@ | |||
| _) adres (@P5 a:dr'Es | |||
| _) af (C@P2 'Af | |||
| _) affich %AfiS | |||
| _) af (rika a:f | |||
| age (_ 'a:Z@ | |||
| ages (_S1 s | |||
| age (_$w_alt a:Q@ | |||
| @@ -55,6 +56,7 @@ | |||
| @) ant (e_ 'Ant | |||
| @) ant (en_ 'Ant | |||
| @) ant (er_ 'Ant | |||
| ao (_ 'VU // cacao | |||
| @) ares (_ a:r'Es | |||
| aris (_ 'a:rIs | |||
| arissen (_ 'a:rIs@n | |||
| @@ -211,6 +213,7 @@ | |||
| el) e (_+S1qd @ | |||
| er) e (_+S1qd @ | |||
| ig) e (_+S1qdm @ | |||
| lijk) e (_S1m @ | |||
| ea (_ 'e:a: | |||
| eau 'o: //words with French origin | |||
| @@ -218,6 +221,7 @@ | |||
| @) ee (_ 'e: | |||
| @) ee (X_ 'e: | |||
| @) ee (r_ 'I | |||
| h) ee (r_ I: | |||
| @) ee (rt_ 'I | |||
| @) ee (rd_ 'I | |||
| @) ee (rde_ 'I | |||
| @@ -244,8 +248,12 @@ | |||
| @) elen (_ 'e:l@n | |||
| @) el (en_$p_alt2 @L | |||
| @) elds (_ @lts | |||
| &) elijks @l@ks | |||
| &) em (_ @m | |||
| &) emen (_$w_alt @m@n | |||
| waarn) em e:m | |||
| &) e (ment @ | |||
| eden (_ e:d@n // ?? | |||
| @@ -285,7 +293,9 @@ | |||
| &) en (_S2qd @n | |||
| KAC) en (_S2e @n // flag 'e' means double the previous vowel | |||
| KAj) en (_S2 @n | |||
| KAx) en (_S2 @n | |||
| and) en (_S2 @n | |||
| ie) en (_S2 @n | |||
| el) en (_+S2qd @n | |||
| er) en (_+S2qd @n | |||
| @@ -313,7 +323,7 @@ | |||
| @) er (ingen_ 'I:r | |||
| &) er (_$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 (d_$p_alt =@r | |||
| &) er (de_$p_alt =@r | |||
| @@ -330,7 +340,6 @@ | |||
| _) er (@P2 Er | |||
| &) er (_ @r | |||
| &) ere (_ @r@ | |||
| &) er (en_$p_alt @r // where 'eren' is not a verb ending | |||
| eren (_ 'I:r@n | |||
| erend (_ 'I:r@nd | |||
| @) eres (_S4qd @r'Es | |||
| @@ -388,6 +397,8 @@ | |||
| gg Q | |||
| s) g x | |||
| _) gast (@ Q'Ast | |||
| _) gasten (@P6 Q'Ast@n | |||
| g (é Z | |||
| g (ee_ Z | |||
| _lo) g (eer Z | |||
| @@ -412,6 +423,7 @@ | |||
| gener (aal Q,e:n@r | |||
| _) gelijk Q@lEIk | |||
| _) gemeente (@P8 Q@m'e:nt@ | |||
| genre ZA~r@ | |||
| _) ge (lC QE | |||
| _) ge (rC QE | |||
| _) ge (lenL02 Qe: | |||
| @@ -430,9 +442,13 @@ | |||
| h h | |||
| C) h (K | |||
| C) hand (_S4 h'Ant | |||
| _) handicap hEndikEp | |||
| _) her (@P3 hEr | |||
| _) her (der hEr | |||
| _) her (ds hEr | |||
| _) her (en hI:r | |||
| _) herfst (@P6 h'Erfst | |||
| _) herinn h%ErIn // herinneren | |||
| _) hersen h'Ers@n | |||
| &) heid (_S4 hEIt | |||
| @@ -487,6 +503,7 @@ | |||
| CAss) ie (_ =i | |||
| @) ig (_S2dq =@Q | |||
| @) ige (_S1m @ | |||
| _) ige (_ @Q@ // when a prefix is removed, eg "herfstige" | |||
| @) igen (_ =@Q@n | |||
| @) iger (_ =@Q@r | |||
| @) igere (_ =@Q@r@ | |||
| @@ -501,12 +518,14 @@ | |||
| &) iko (_ =iko: | |||
| fam) i (lie 'i | |||
| _) in (C@P2 'In | |||
| _) ing (eC_ IN // bewerkingen | |||
| _) in (do In | |||
| _) in (forma In | |||
| ine (_ 'in@ | |||
| ines (_ 'in@s | |||
| _) informatie (@P10 InfOrm'a:tsi | |||
| _) inn (@P2 'I // ?? inneren | |||
| _) inn (er 'In // ?? inneren | |||
| _) inn (ig In | |||
| _) inter Int@r | |||
| io (nage iO | |||
| io (de_ i'o: | |||
| @@ -518,10 +537,12 @@ | |||
| @) isme (_ 'Ism@ | |||
| @) ist (_ 'Ist | |||
| @) isten (_ 'Ist@n | |||
| Ar) ia (_ =ia: | |||
| Ar) ium (_ =i8m | |||
| .group j | |||
| j j | |||
| _) jaar (@P4 j'a:r | |||
| jaar (lijk ja:r | |||
| jou (rna Zu | |||
| @@ -539,13 +560,13 @@ | |||
| kokkerel kOk@r'El | |||
| _) koning k'o:nIN // in compounds | |||
| _) koningin ko:nIQ'In | |||
| _) krediet (@P7 kr@d'it | |||
| .group l | |||
| l l | |||
| l) l | |||
| &) lijk (_S4 l@k | |||
| &) lijke (_S5 l@k@ | |||
| &) lijken (_S6 l@k@n | |||
| &) lijker (_S6 l@k@r | |||
| &) lijkere (_S7 l@k@r@ | |||
| @@ -557,6 +578,9 @@ | |||
| &) laan (_S4 la:n | |||
| _) lange (@P5 laN@ | |||
| _) land (@P4 l'And | |||
| _) land (e l'And | |||
| _) lente (@P5 l'Ent@ | |||
| _) liefdes (@P7 l'ifd@s | |||
| detai) ll | |||
| @) loog (_ lo:x | |||
| @@ -575,6 +599,7 @@ | |||
| _) mee (rC mI: | |||
| menu (_ m@ny | |||
| _) mi (cro mi | |||
| _) milieu mIlj'Y: | |||
| _) mi (s@ m%I | |||
| _) mis (anC miz | |||
| _) mis (commP3 m'Is | |||
| @@ -659,6 +684,7 @@ | |||
| _) op (enen+ 'o:p | |||
| _) openings (P8 'o:p@nINs | |||
| _) op (era 'o:p | |||
| _) opper Op@r | |||
| _) op (tion Op | |||
| os (_ Os | |||
| ou (che_ u | |||
| @@ -760,6 +786,7 @@ | |||
| sch sx | |||
| sch (_ s | |||
| sch (e_ s | |||
| sch (er_ s | |||
| _) sch (n S | |||
| _) sh S | |||
| sh (K S | |||
| @@ -825,6 +852,7 @@ | |||
| _) trans (@P5 tr,Ans | |||
| .group te | |||
| _) tege (lijk t@Q@ | |||
| _) tegen (P5 t'e:Q@n | |||
| _) terug (P5 t@r'8x | |||
| _) te (gelijkP2 t@ | |||
| @@ -871,6 +899,7 @@ | |||
| v v | |||
| s) v f | |||
| _) vakantie (@P8 va:k'Antsi | |||
| _) van (@P3 v%An | |||
| _) vanzelf (@P7 vAnz,Elf | |||
| _) vang vAN | |||
| @@ -905,9 +934,14 @@ | |||
| _) weg (@P3 v#'EQ | |||
| _) weg (en v#e:Q | |||
| _) weg (e_ v#e:Q // bewegelijk | |||
| _) weg (ing v#e:Q // bewegingen | |||
| _) wereld (@P6 v#'I:r@lt | |||
| _) werk (@P4 v#'Erk | |||
| _) werk (el v#'Erk | |||
| _) werk (ing v#'Erk | |||
| _) west (@P4 v#Est | |||
| _) wets (@P4 v#'Ets | |||
| _) winter (@P6 v#'Int@r | |||
| _) woon (@P4 v#'o:n | |||
| _) wr (@ vr | |||
| @@ -928,9 +962,12 @@ | |||
| z (z | |||
| s) z | |||
| _) zee (@P3 z'e: | |||
| _) zeeuw zeU | |||
| zele (_S4 ze:l@ // common suffix for cities. | |||
| @) zelf (_S4 s'Elf | |||
| _) zoge (@P4 z,o:Q@ | |||
| _) zomer (@P5 z'o:m@r | |||
| _) zuid (@P4 zWyt | |||
| @@ -91,7 +91,7 @@ _cyr tsiR'i:litSni | |||
| @ 'a:fna | |||
| # l'e:stvitsa | |||
| $ d'o:laR | |||
| % Otst'o:tOw | |||
| % Otst'o:tkOw | |||
| & 'i:n | |||
| * zv'e:ditsa | |||
| + plu:s | |||
| @@ -25,8 +25,6 @@ y jai | |||
| z zedi | |||
| // numbers | |||
| _0 sif'uRi | |||
| _1 m'oJa | |||
| @@ -150,7 +148,7 @@ kwao $pause // by means of which | |||
| kwavyo $pause // by means of which | |||
| kwaye $pause // by means of which | |||
| kwa $u $brk // with | |||
| kwa $u // with | |||
| mwenye $u $brk // with | |||
| wenye $u $brk // with | |||
| yenye $u $brk // with | |||
| @@ -158,6 +156,8 @@ yenye $u $brk // with | |||
| chenye $u $brk // with | |||
| vyenye $u $brk // with | |||
| zenye $u $brk // with | |||
| malipo $unstressend | |||
| // conjunctions | |||
| @@ -178,12 +178,12 @@ ijapokuwa $pause // although | |||
| ingawa $pause // although | |||
| iwapo $pause // when | |||
| japo $pause | |||
| (juu ya) J,u:ja/ $pause // as for | |||
| (juu ya) J,u:ja $pause // as for | |||
| kama $u+ $pause // if,like | |||
| kisha $pause // moreover | |||
| kusudi $pause // in order to | |||
| kuwa $u $pause // that | |||
| (kwa kuwa) kwa||k,uwa/ $pause // becuse | |||
| (kwa kuwa) kwa||k,uwa $pause // becuse | |||
| kwamba $u $pause // that | |||
| lakini $pause // however | |||
| walakini $pause // however | |||
| @@ -195,5 +195,10 @@ wala $pause // either,neither | |||
| yaani $pause // i.e. | |||
| // exceptions | |||
| mantiki ma_|nt'iki $u1+ | |||
| zanzibar $3 | |||
| @@ -5,8 +5,7 @@ | |||
| .group a | |||
| a a | |||
| aa a: | |||
| .group b | |||
| b b | |||
| @@ -20,8 +19,7 @@ | |||
| .group e | |||
| e e | |||
| ee e: | |||
| .group f | |||
| f f | |||
| @@ -35,18 +33,20 @@ | |||
| .group i | |||
| i i | |||
| ii i: | |||
| .group j | |||
| j J | |||
| j (w J | |||
| .group k | |||
| k k | |||
| K) k (@@ _|k | |||
| kh x | |||
| .group l | |||
| l l | |||
| .group m | |||
| m m | |||
| _) m m- | |||
| @@ -54,7 +54,7 @@ | |||
| K) m (@@ _|m | |||
| K) m (C m- | |||
| K) m (b@@ _|m | |||
| K) m (v@@ _|m | |||
| K) m (v@ _|m | |||
| K) m (w@@ _|m | |||
| .group n | |||
| @@ -63,19 +63,19 @@ | |||
| n (A n | |||
| n (@@ n | |||
| ny n^ | |||
| n (ch n^ | |||
| n (ch n- | |||
| n (j n^ | |||
| ng' N | |||
| ng (' N | |||
| n (k N | |||
| _) n (k N- | |||
| _) n (k@@ N- | |||
| n (g N | |||
| K) n (g N- | |||
| _) n (g@@ N- | |||
| .group o | |||
| o o | |||
| oo o: | |||
| .group p | |||
| p p | |||
| @@ -99,15 +99,16 @@ | |||
| .group u | |||
| u u | |||
| uu u: | |||
| .group v | |||
| v v | |||
| .group w | |||
| w w | |||
| j) w %u | |||
| ny) w %u | |||
| j) w %u | |||
| ny) w %u | |||
| .group x | |||
| x ks | |||
| @@ -85,8 +85,8 @@ _; a:raIb||pul.l.i // ஆரைப் புள்ளி | |||
| _: mukka:l||pul.l.i // முக்கால் புள்ளி | |||
| _( id.V||piRaI // இட பிறை | |||
| _) vVlV||piRaI // வல பிறை | |||
| _[ id.V||sadUrVm // இட சதுரம் | |||
| _] vVlV||sadUrVm // வல சதுரம் | |||
| _[ id.VppVgVrVm // இடப்பகரம் | |||
| _] vVlVppVgVrVm // வலப்பகரம். | |||
| _{ id.V||gVn.Vm // இட கணம் | |||
| _} vVlV||gVn.Vm // வல கணம் | |||
| < kuRaIvU // குறைவு | |||
| @@ -385,6 +385,8 @@ tamil தமிழ் $text | |||
| புசு $alt | |||
| புஸு $alt | |||
| பாதிக்காம $alt | |||
| பனியா $alt | |||
| பாம் $alt | |||
| // initial த as [d] | |||
| @@ -452,6 +454,7 @@ tamil தமிழ் $text | |||
| தாயம் $alt | |||
| திமு $alt | |||
| தாவா $alt | |||
| துருவா $alt | |||
| // initial ட | |||
| @@ -128,7 +128,7 @@ | |||
| .L30 மெடல பிஷ ஃபிஷ | |||
| // endings after போர்ட (board) | |||
| .L31 ் ிங் ின ை ுக்க ில ும | |||
| .L31 ்_ ிங் ின ை ுக்க ில ும | |||
| // consonants | |||
| @@ -157,9 +157,7 @@ | |||
| க் (_க k | |||
| //sort | |||
| _) க (ஃபார gV | |||
| _) க (ங்கபாடி gV | |||
| _) க (ங்கர gV | |||
| _) க (ங்கா gV | |||
| @@ -195,13 +193,16 @@ | |||
| _) க (தியை gV | |||
| _) க (ந்தக gV | |||
| _) க (ந்தகிரி kV | |||
| _) க (ந்தக்கோட்ட kV | |||
| _) க (ந்தர்வ gV | |||
| _) கனக (ச்சித gVnVkV | |||
| _) க (னக்க gV | |||
| _) க (னத் gV | |||
| _) க (னபாடி gV | |||
| _) க (னப்ப gV | |||
| _) க (னம gV | |||
| _) க (னரக gV | |||
| _) கப (ார gVf | |||
| _) கப் (L04ா gVp | |||
| _) கப்ச (ிப் gVptS | |||
| _) க (ப்புன gV | |||
| @@ -253,6 +254,7 @@ | |||
| _) க (ாந்தத் g | |||
| _) க (ாந்தப் g | |||
| _) க (ாந்தமா g | |||
| _) க (ாந்தர்வ g | |||
| _) க (ாந்தார g | |||
| _) க (ாந்தி g | |||
| _) க (ானங் g | |||
| @@ -265,6 +267,8 @@ | |||
| க (ாரன k | |||
| _) க (ார்டன g | |||
| _) க (ார்டியன g | |||
| _) க (ால்ஃப் g | |||
| _) கால்ப் ga:lf | |||
| _) க (ிஃப்ட g | |||
| _) கிட (ார git. | |||
| _) க (ிடுகிடு g | |||
| @@ -331,6 +335,7 @@ | |||
| _) கி (றித்த k | |||
| _) கி (றிஸ்டல k | |||
| _) கி (றிஸ்த k | |||
| _) கி (லேசியர g | |||
| _) க (ில்மா g | |||
| _) கி (ளப்_ k | |||
| _) கிளப்ப (ில kl.Vbb | |||
| @@ -342,6 +347,7 @@ | |||
| _) கி (ளாL04ு k | |||
| _) கி (ளாL04ை k | |||
| _) கி (ளாமர g | |||
| _) கிளார்க் kl.a:rk | |||
| _) கி (ளாஸ்_ g | |||
| _) கி (ளாஸ்_மேட k | |||
| _) கிளாஸ்க (ோ gl.a:sg | |||
| @@ -372,7 +378,9 @@ _மன்மதக்) க (ுகை g | |||
| _) க (ுஜால g | |||
| _) க (ுடியாத்த g | |||
| _) க (ுடுகுடு g | |||
| _) க (ுணக் g | |||
| _) க (ுணங் g | |||
| _) க (ுணசாலி g | |||
| _) குணச (ித்திர gun.VtS | |||
| _) க (ுணசீல g | |||
| _) க (ுணசேகர g | |||
| @@ -429,11 +437,10 @@ _மன்மதக்) க (ுகை g | |||
| _) க (ுருகுல g | |||
| _) க (ுருக்கள g | |||
| _) க (ுருக்குல g | |||
| _) க (ுருக்ஷேத்திர g | |||
| _) க (ுருசாமி g | |||
| _) குருச (ேத்திர gurUs. | |||
| _) க (ுருஜி g | |||
| _) க (ுருதேவ g | |||
| _) க (ுருத்வார g | |||
| _) க (ுருநா g | |||
| _) க (ுருபகவான g | |||
| _) குருப (த்தினி gurupV | |||
| @@ -442,13 +449,16 @@ _மன்மதக்) க (ுகை g | |||
| _) குருப (ீட gurup | |||
| _) குருப (ூ gurup | |||
| _) க (ுருபூஜை g | |||
| _) க (ுருபோத g | |||
| _) குருப்பி (ரசாத gurupp | |||
| _) க (ுருப்பெயர g | |||
| _) க (ுருப்யோ g | |||
| _) க (ுருமார g | |||
| _) க (ுருமூர்த்தி g | |||
| _) க (ுருரா g | |||
| _) க (ுருவடி g | |||
| _) க (ுருவம்ச g | |||
| _) க (ுருவம்மா g | |||
| _) க (ுருவருள g | |||
| _) க (ுருவா g | |||
| _) க (ுருவாய g | |||
| @@ -460,7 +470,6 @@ _மன்மதக்) க (ுகை g | |||
| _) க (ுருவை g | |||
| _) க (ுருவோ g | |||
| _) க (ுருவோட g | |||
| _) க (ுருஷேத்திர g | |||
| _) கு (ரூப் g | |||
| _) க (ுலாப g | |||
| _) க (ுலாம g | |||
| @@ -486,6 +495,7 @@ _மன்மதக்) க (ுகை g | |||
| _) க (ெட்டிக்கனும k | |||
| _) க (ெட்டிக்கி k | |||
| _) க (ெட்டிரு k | |||
| _) க (ெட்டில k | |||
| _) க (ெத் g | |||
| _) க (ெரில்லா g | |||
| _) கெள (தம gaU | |||
| @@ -504,6 +514,8 @@ _மன்மதக்) க (ுகை g | |||
| _) க (ேமை g | |||
| _) க (ேம்ஸ g | |||
| _) கேரண்ட ge:rVn.t.V# | |||
| _) கேலக (்சி ge:lVk | |||
| _) க (ேலக்ஸி g | |||
| _) க (ேலரி g | |||
| _) க (ேலி g | |||
| _) க (ேஸ்_L26 g | |||
| @@ -584,6 +596,7 @@ _மன்மதக்) க (ுகை g | |||
| _) க் (ரீன g | |||
| _) க் (ரூப g | |||
| _) க் (ரௌண்ட g | |||
| _) க் (லேசியர g | |||
| _) க் (ளாமர g | |||
| _) க் (ளாஸ்_ g | |||
| _) க்வ (A kw | |||
| @@ -630,6 +643,8 @@ _தலைக்) க (ன gV | |||
| _தர்ம) க (ர்த kV | |||
| _குல்) க (ர்னி kV | |||
| விஸ்வ) க (ர்மா kV | |||
| உரை) க (ற் kV | |||
| _மைல்) க (ற் kV | |||
| _விண்) க (ற் kV | |||
| _லோ) க (ல kV | |||
| _மெடி) க (ல kV | |||
| @@ -644,6 +659,8 @@ _சித்திர) க (லா kV | |||
| _சூரிய) க (லா kV | |||
| _யூ) க (லிப்டஸ kV | |||
| _ஜீவ) க (லை kV | |||
| உரை) க (ல் kV | |||
| _மைல்) க (ல் kV | |||
| _காய) கல்ப kVlpV# | |||
| பஞ்ச) க (ல்யாண kV | |||
| _ரண) க (ள kV | |||
| @@ -690,6 +707,7 @@ _ஹன்L04ி) க (ா k | |||
| _கண்) க (ாணா k | |||
| _கர்ம) க (ாண்ட g | |||
| உத்திரா) க (ாண்ட k | |||
| அ) காத (மி ka:d.V | |||
| _ராம) க (ாதை k | |||
| இராம) க (ாதை k | |||
| _ஸ்ரீ) காந்த ka:ntV# | |||
| @@ -793,10 +811,12 @@ _மன்னர்) க (ுல k | |||
| _கை) க (ுலு k | |||
| _) குல்க (ந்த gulkV | |||
| _மெரு) க (ூட்ட g | |||
| _லா) க (ூர H | |||
| _தயை) க (ூர k | |||
| _தயவு) க (ூர k | |||
| அருள்) க (ூர k | |||
| _நினைவு) க (ூர k | |||
| _மு) க (ூர்த H | |||
| _குறை) க (ூற k | |||
| அறை) க (ூவ k | |||
| _மார்) கெட் ket. | |||
| @@ -877,6 +897,7 @@ _தேவா) க்க (ினை gg | |||
| அயோ) க்க (ிய gg | |||
| ஆரோ) க்க (ிய gg | |||
| வைரா) க்க (ிய gg | |||
| _மூல) க்கி (ர gg | |||
| அநு) க்கி (ர gg | |||
| அனு) க்கி (ர gg | |||
| _கர்ப்ப) க்கி (ர gg | |||
| @@ -940,6 +961,7 @@ _துப்பாக்கி) க்க (ுண்ட gg | |||
| என்சை) க்லோப (ீடியா klo:p | |||
| _சு) க் (ள k | |||
| _ஷு) க் (ள k | |||
| _து) க்ளக் kl.Vk | |||
| க் (ஸ k | |||
| _எ) க் (ஸாம g | |||
| _மெ) க்ஸிக (ோ ksik | |||
| @@ -967,8 +989,8 @@ _துப்பாக்கி) க்க (ுண்ட gg | |||
| ஞ்) ச dZV | |||
| ஞ்) ச (B dZ | |||
| ச் (_N tS | |||
| ச்_) ச tSV // previous word ends in ச் | |||
| ச்_) ச (B tS | |||
| ச் (_ச tS | |||
| ச்_) ச (++ :V# // previous word ends in ச் | |||
| _) சாம்ப (ியன tSa:mp | |||
| //sort | |||
| @@ -998,6 +1020,7 @@ _துப்பாக்கி) க்க (ுண்ட gg | |||
| _) ச (த்ரபதி tSV | |||
| _) ச (த்ரு tSV | |||
| ச (ந்தர tSV | |||
| _வ) ச (ந்தர sV | |||
| _) ச (ந்தர்ப sV | |||
| அ) ச (ந்தர்ப sV | |||
| ச (ந்திர tSV | |||
| @@ -1018,6 +1041,7 @@ _மீனலோ) ச (னி tSV | |||
| _) ச (ப்பி tSV | |||
| _) ச (ப்பு tSV | |||
| _) ச (ப்பெ tSV | |||
| _) ச (ம்பல்பூர tSV | |||
| _) சம்ப (ாரன tSVmp | |||
| _நா) ச (ர zV | |||
| _ரே) ச (ர zV | |||
| @@ -1081,15 +1105,19 @@ _தணிகா) ச (ல tSV | |||
| விப) ச (ார tS | |||
| _கிரL06) ச (ார tS | |||
| _குணா) ச (ார tS | |||
| _பிரிவுப) ச (ார tS | |||
| _விருந்துப) ச (ார tS | |||
| ராஜோப) ச (ார tS | |||
| ஆ) ச (ார_ tS | |||
| ஆ) ச (ாரங்கள tS | |||
| _வி) ச (ாரங்கள tS | |||
| ஆ) ச (ாரத் tS | |||
| _வி) ச (ாரத்த tS | |||
| ஆ) ச (ாரப்பட tS | |||
| ஆ) ச (ாரம tS | |||
| _வி) ச (ாரம tS | |||
| _சிவா) ச (ாரி tS | |||
| _சுகா) ச (ாரி tS | |||
| _ரங்கா) ச (ாரி tS | |||
| _வரதா) ச (ாரி tS | |||
| _வேதா) ச (ாரி tS | |||
| @@ -1120,6 +1148,7 @@ _மத்வா) ச (ாரி tS | |||
| _) ச (ார்ஜை tS | |||
| _மொ) ச (ார்ட z | |||
| _) ச (ார்மினார tS | |||
| ஆ) ச (ார்ய tS | |||
| _) ச (ார்லஸ tS | |||
| _) ச (ார்லி tS | |||
| _) ச (ாலக்குடி tS | |||
| @@ -1172,6 +1201,7 @@ _மத்வா) ச (ாரி tS | |||
| _மலே) ச (ிய s. | |||
| இந்தோனே) ச (ிய s. | |||
| _) ச (ியர்ஸ tS | |||
| _) சி (யாம s. | |||
| _பக்தி_) சிரத் (தை srVd | |||
| _) சிரத்த (ைL27 srVdd | |||
| சி (ரம s | |||
| @@ -1220,6 +1250,7 @@ L28ரங்க) ச (ீப z | |||
| _கபாலீ) சு (வ s | |||
| _ஜலகண்டே) சு (வ s | |||
| அர்த்தனாரீ) சு (வ s | |||
| _) சு (வமேத s | |||
| _சனீ) சு (வர s | |||
| ராஜே) சு (வர s | |||
| _மங்களே) சு (வர s | |||
| @@ -1289,6 +1320,7 @@ _வெனி) ச (ுவேல z | |||
| _) ச (ேஞ்ச tS | |||
| _) ச (ேட்டன tS | |||
| _) ச (ேட்டர்ஜி tS | |||
| _குரு) ச (ேத்திர s. | |||
| _) ச (ேனல tS | |||
| _) ச (ேரி tS | |||
| _தல) ச (ேரி tS | |||
| @@ -1317,6 +1349,7 @@ _வெனி) ச (ுவேல z | |||
| _) சௌப (ாத்தி tSaUp | |||
| _) ச (ௌபே tS | |||
| _) ச (ௌஹான tS | |||
| _ந) ச் (னு tS | |||
| _கா) ச்மூச tSmu:tSV# | |||
| //endsort | |||
| @@ -1327,6 +1360,7 @@ _வெனி) ச (ுவேல z | |||
| ஜ (B dZ | |||
| //sort | |||
| _கெ) ஜ (ட் zV | |||
| _ட) ஜ (ன zV | |||
| _டின்) ஜ (ர tSV | |||
| _) ஜ (ர்தாரி zV | |||
| _க) ஜ (லா zV | |||
| @@ -1337,12 +1371,14 @@ _வெனி) ச (ுவேல z | |||
| _) ஜ (ாக்கீர z | |||
| _ரம்) ஜ (ான z | |||
| _நி) ஜ (ாம z | |||
| _) ஜ (ாம்பிய z | |||
| _ப) ஜ (ார z | |||
| அ) ஜ (ாருதீன z | |||
| _நா) ஜ (ி z | |||
| _) ஜிப்(_ zip | |||
| _) ஜ (ிப்ப z | |||
| _) ஜ (ிப்பா dZ | |||
| _) ஜ (ிம்பாப்வே z | |||
| _) ஜ (ியா_ z | |||
| _) ஜ (ியாவ z | |||
| _) ஜ (ீனத் z | |||
| @@ -1351,6 +1387,7 @@ _வெனி) ச (ுவேல z | |||
| _) ஜ (ுல்ஃபி z | |||
| _) ஜ (ுல்பி z | |||
| _) ஜு (வால dZ | |||
| _) ஜ (ூலு z | |||
| _) ஜ (ெனித் z | |||
| _) ஜ (ெராக்ஸ z | |||
| //endsort | |||
| @@ -1380,6 +1417,7 @@ _வெனி) ச (ுவேல z | |||
| //sort | |||
| _டே) ட t.V# | |||
| _மால்) ட t.V# | |||
| _பேண்) ட t.V# | |||
| _வால்) ட t.V# | |||
| _கமெண்) ட t.V# | |||
| @@ -1641,6 +1679,7 @@ _லான்_) ட (ென்னிஸ t. | |||
| _) டோர்னமெண்ட t.o:rnVmen.t.V# | |||
| _) ட (ோலிவுட் t. | |||
| _லே) ட் t. | |||
| _ஹி) ட் t. | |||
| @மெண்) ட் t. // -ment | |||
| _பேண்) ட் t. | |||
| _ஹெல்மெ) ட் t. | |||
| @@ -1653,9 +1692,13 @@ _டோலிவு) ட்ட 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. | |||
| அப்பாயிண்) ட்மெண்ட t.men.t.V# | |||
| _) ட் (யூசன t. | |||
| _) ட் (யூன t. | |||
| @@ -1696,6 +1739,7 @@ _ஹாலிவு) ட்ட d.d.V# | |||
| எண்) ட் (ரி t. | |||
| _) ட்ரிக (ர t.riggV | |||
| _) ட்ரிக் t.rik | |||
| _ஹா) ட்ரிக் t.rik | |||
| _) ட்ரிக்க (ர t.riggV | |||
| _) ட் (ரிங்_ t. | |||
| _நியூ) ட் (ரின t. | |||
| @@ -1778,6 +1822,8 @@ _நடுரோ) ட் (ல t. | |||
| _) த (கன dV | |||
| _) த (கி dV | |||
| _) த (க்க்ஷிண dV | |||
| _) த (க்ஷக dV | |||
| _) த (க்ஷசீல dV | |||
| _) த (க்ஷன dV | |||
| _) த (க்ஷிண dV | |||
| _) த (க்ஷிணா dV | |||
| @@ -1834,6 +1880,7 @@ _நடுரோ) ட் (ல t. | |||
| _) தத்த (ியா dVdd | |||
| _) த (னகோடி dV | |||
| _) த (னசேகரன dV | |||
| _) த (னத்த dV | |||
| _) த (னன்ஜெயன dV | |||
| _) த (னபால dV | |||
| _) த (னராச dV | |||
| @@ -1841,7 +1888,9 @@ _நடுரோ) ட் (ல t. | |||
| _) த (னலக்ஷ்மி dV | |||
| _) த (னலட்சுமி dV | |||
| _) த (னவந்த dV | |||
| _) த (னாதிகார dV | |||
| _) த (னுச dV | |||
| _) த (னுர dV | |||
| _) த (னுஷ dV | |||
| _) த (ன்மந்திரி dV | |||
| _) த (ன்ய dV | |||
| @@ -2216,6 +2265,7 @@ _ஸ்வர்ணல) த (ா t | |||
| _முல்) த (ான t | |||
| _சாந்) த (ானு tV# | |||
| _சி) த (ார t | |||
| _நயன்) த (ாரா t | |||
| _சரி) த (ாவ t | |||
| _ஹரி) த (ாஸ்_ d | |||
| _சும) த (ி t | |||
| @@ -2489,9 +2539,11 @@ _சி) த்ரலேக (ா trVle:k | |||
| _) ப (ட்டக்ஸ bV | |||
| _) ப (ட்டன bV | |||
| _) ப (ட்டன_ pV | |||
| _) ப (ட்டனப்பாக்க pV | |||
| _) ப (ட்டாசாரி bV | |||
| _) ப (தில bV | |||
| _) பத்த (ிரகாளி bVdd | |||
| _) பத்த (ிரபாகு bVdd | |||
| _) பத்திரப் (_ bVttirVp | |||
| _) பத்திரப் (_பதி pVttirVp | |||
| _) ப (த்திரப்பட bV | |||
| @@ -2499,6 +2551,7 @@ _சி) த்ரலேக (ா trVle:k | |||
| _) பத்த (ிரி_ bVdd | |||
| _) பத்த (ிரிக்கு bVdd | |||
| _) பத்த (ிரிய bVdd | |||
| _) ப (த்ரபாகு bV | |||
| _) ப (த்ரி bV | |||
| _) பத் (ரிக்க pVt | |||
| _சொந்த_) ப (ந்த bV | |||
| @@ -2520,6 +2573,8 @@ _சொந்த_) ப (ந்த bV | |||
| _) ப (னாரச bV | |||
| _) ப (னாரஸ bV | |||
| _) ப (னியன bV | |||
| _) ப (னியாக்கள bV | |||
| _) ப (னியாவ bV | |||
| _) ப (ன்சல bV | |||
| _) ப (ன்னாரி bV | |||
| _டீயும்_) ப (ன்னும்_ bV | |||
| @@ -2588,6 +2643,7 @@ _டீயும்_) ப (ன்னும்_ bV | |||
| _) ப (லத்தின bV | |||
| _) ப (லத்தினா bV | |||
| _) ப (லத்தினுட bV | |||
| _) ப (லத்திற்க bV | |||
| _) ப (லத்தில bV | |||
| _) ப (லத்துக் bV | |||
| _) ப (லத்துச் bV | |||
| @@ -2601,6 +2657,7 @@ _டீயும்_) ப (ன்னும்_ bV | |||
| _) ப (லப்பத்த bV | |||
| _) ப (லப்பம bV | |||
| _) ப (லப்பரீட்சை bV | |||
| _) பலப்பி (ரயோ bVlVpp | |||
| _) ப (லமணைத்த bV | |||
| _) ப (லமற்ற bV | |||
| _) ப (லமாகC் bV | |||
| @@ -2696,6 +2753,7 @@ _டீயும்_) ப (ன்னும்_ bV | |||
| _) ப (ாசு b | |||
| _) பாசுப (த pa:sUpV | |||
| _) ப (ாசுர p | |||
| _) பாட (னி ba:t.V | |||
| _டெட்_) ப (ாடி b | |||
| _) ப (ாடி_பில்டர b | |||
| _) ப (ாடி_பில்டிங் b | |||
| @@ -2711,6 +2769,7 @@ _டெட்_) ப (ாடி b | |||
| _) ப (ாட்டிலுடன b | |||
| _) ப (ாட்டிலை b | |||
| _) ப (ாட்டில்கள b | |||
| _) பாட்மிண்ட (ன ba:d.min.t.V | |||
| _) ப (ாணங் b | |||
| _) ப (ாணமு b | |||
| _) ப (ாணர b | |||
| @@ -2750,6 +2809,8 @@ _டெட்_) ப (ாடி b | |||
| _) ப (ாதிப்படையுமெ b | |||
| _) ப (ாதிப்படைவ b | |||
| _) ப (ாதிப்பதா b | |||
| _) ப (ாதிப்பதுண்ட b | |||
| _) ப (ாதிப்பதும b | |||
| _) ப (ாதிப்பதை b | |||
| _) ப (ாதிப்பவை b | |||
| _) ப (ாதிப்பாகி b | |||
| @@ -2765,12 +2826,15 @@ _டெட்_) ப (ாடி b | |||
| _) ப (ாதிப்புண்ட b | |||
| _) ப (ாதிப்பும b | |||
| _) ப (ாதிப்புள்ள b | |||
| _) ப (ாதிப்பென b | |||
| _) ப (ாதிப்பேர p | |||
| _) ப (ாதிப்பை b | |||
| _) ப (ாதிப்போ b | |||
| _) பாத (ிமா fa:t | |||
| _) ப (ாதுஷா b | |||
| _) ப (ாத்திமா f | |||
| _) பாத்த (ியதை ba:dd | |||
| _) பாத்த (ியப் ba:dd | |||
| _) பாத்த (ியம்_ ba:dd | |||
| _) ப (ாத்யதை b | |||
| _) ப (ாத்ரூம b | |||
| @@ -2791,7 +2855,11 @@ _டெட்_) ப (ாடி b | |||
| _டைம்_) ப (ாம b | |||
| _) ப (ாமாவ b | |||
| _) ப (ாமினி b | |||
| _) ப (ாமிரு b | |||
| _) ப (ாமிலி f | |||
| _) ப (ாமில்ல b | |||
| _) ப (ாமை b | |||
| _) ப (ாம்கள b | |||
| _) ப (ாம்பே b | |||
| _ஆடு_) ப (ாம்பே p | |||
| _விளையாடு_) ப (ாம்பே p | |||
| @@ -2838,6 +2906,9 @@ _விளையாடு_) ப (ாம்பே p | |||
| _) ப (ாலாம்பாள b | |||
| _) ப (ாலாம்பிக b | |||
| _) ப (ாலாவ b | |||
| _) ப (ாலாவி_ p | |||
| _) ப (ாலாவிய p | |||
| _) ப (ாலித்_தீவ b | |||
| _) ப (ாலின் p | |||
| _) ப (ாலியத்த b | |||
| _) ப (ாலிவுட் b | |||
| @@ -2868,6 +2939,7 @@ _விளையாடு_) ப (ாம்பே p | |||
| முகத்திலிருந்து_) ப (ாவ b | |||
| _) ப (ாவனா b | |||
| _) ப (ாவனை b | |||
| _) ப (ாவமும்_நானே b | |||
| _) ப (ாவிக்கப்பட b | |||
| _) ப (ாவிக்கல b | |||
| _) ப (ாவிக்கவில்ல b | |||
| @@ -2975,6 +3047,8 @@ _விளையாடு_) ப (ாம்பே p | |||
| _) பி (ரதேஷ p | |||
| _) பி (ரதோஷ p | |||
| _) பி (ரத்தியேக p | |||
| _) பிரத் (யக்ஷ prVt | |||
| _) பிரத் (யட்ச prVt | |||
| _) பிரத் (யேக prVt | |||
| _) பி (ரனாப p | |||
| _) பி (ரப p | |||
| @@ -3029,6 +3103,7 @@ _விளையாடு_) ப (ாம்பே p | |||
| _) பிராஞ்ச bra:n^tS | |||
| _) பி (ராடாக f | |||
| _) பி (ராட்_ f | |||
| _) பி (ராட்டஸ்ட p | |||
| _) பி (ராட்டிஸ்லாவ b | |||
| _) பி (ராட்வே b | |||
| _) பி (ராண_ p | |||
| @@ -3078,6 +3153,7 @@ _விளையாடு_) ப (ாம்பே p | |||
| _) பிரித (ிவ prit | |||
| _) ப (ிரித்தானி b | |||
| _) பி (ரித்தானி b | |||
| _) பி (ரின்L04ிபல p | |||
| _) பிரின்சிப (ால prinsip | |||
| _) பி (ரிமிய p | |||
| _) பி (ரியங்கள p | |||
| @@ -3118,6 +3194,7 @@ _விளையாடு_) ப (ாம்பே p | |||
| _) பி (ரே p | |||
| _) பி (ரேக்க b | |||
| _) பிரேச (ில bre:z | |||
| _) பி (ரேயில b | |||
| _) பி (ரைல b | |||
| _) பிரைவேட praIve:t.V# | |||
| _) பி (ரோகிதர p | |||
| @@ -3139,6 +3216,7 @@ _விளையாடு_) ப (ாம்பே p | |||
| _) ப (ில்லி b | |||
| _) ப (ில்லு b | |||
| _) ப (ில்லை b | |||
| _) பி (ளவர f | |||
| _) பி (ளவுஸ b | |||
| _) பி (ளஸ p | |||
| _) பி (ளஸ்_ p | |||
| @@ -3146,7 +3224,8 @@ _விளையாடு_) ப (ாம்பே p | |||
| _) பிளாக் bla:k | |||
| _) பி (ளாட்பார p | |||
| _) பிளாப் fl.a:p | |||
| _) பி (ளாஸ்க் f // flask | |||
| _) பி (ளாஷ f | |||
| _) பி (ளாஸ்க f // flask | |||
| _) பி (ளீஸ p | |||
| _) பிள (ைட் fl. | |||
| _) பி (ளௌஸ b | |||
| @@ -3222,6 +3301,7 @@ _பெனசீர்_) ப (ுட்டோ b | |||
| _) புத்த (ம்_புதிய puttV | |||
| _) புத்த (ம்_புது puttV | |||
| _) புத்த (ரிசி puttV | |||
| _) புத்த (ள puttV | |||
| _) புத்த (ழக puttV | |||
| _) ப (ுத்திக் b | |||
| _) ப (ுத்திசாலி b | |||
| @@ -3234,6 +3314,7 @@ _பெனசீர்_) ப (ுட்டோ b | |||
| _) பு (ருனாய b | |||
| _) புரூப pru:fV# | |||
| _) புரொப (சர profV | |||
| _) புரொப (ஸர profV | |||
| _) புரொபொ (சர profV | |||
| _) பு (ரோகித p | |||
| _) ப (ுரோக்கர b | |||
| @@ -3244,6 +3325,7 @@ _பெனசீர்_) ப (ுட்டோ b | |||
| _) பு (ரௌச b | |||
| _) ப (ுல்_L15 f | |||
| _) புல்க (ா fulk | |||
| _) புல்க (ான pulg | |||
| _) ப (ுல்டோசர b | |||
| _) ப (ுல்லட் b | |||
| _) ப (ுல்லா_ f | |||
| @@ -3336,6 +3418,7 @@ _பெனசீர்_) ப (ுட்டோ b | |||
| _) ப (ேகத் b | |||
| _) ப (ேகம b | |||
| _) ப (ேக்கரி b | |||
| _) ப (ேக்கிங்_சோடா b | |||
| _) ப (ேக்டர f | |||
| _) ப (ேங்க் b | |||
| _) ப (ேச்சலர b | |||
| @@ -3390,6 +3473,7 @@ _பெனசீர்_) ப (ுட்டோ b | |||
| _) ப (ொம்மனாட்டி p | |||
| _) ப (ொம்மல b | |||
| _) ப (ொம்மை b | |||
| _) ப (ொலிவிய b | |||
| _) ப (ோஃபர்ஸ b | |||
| _) ப (ோஃபோர் b | |||
| _) ப (ோக_L13 b | |||
| @@ -3510,8 +3594,11 @@ _பெனசீர்_) ப (ுட்டோ b | |||
| _) ப்ரோட (ான pro:t | |||
| _) ப் (ரௌச b | |||
| _) ப் (ரௌன b | |||
| _) ப் (ளவர f | |||
| _) ப் (ளவுஸ b | |||
| _) ப்ளாப் fl.a:p | |||
| _) ப் (ளாஷ f | |||
| _) ப் (ளாஸ்க f | |||
| _) ப் (ளூஸ b | |||
| _) ப் (ளோரிடா f | |||
| _) ப் (ளௌஸ b | |||
| @@ -3524,17 +3611,21 @@ _பெனசீர்_) ப (ுட்டோ b | |||
| நடை) ப pV# | |||
| _கேம்) ப pV# | |||
| _பிரதீ) ப pV# | |||
| அஷ்ர) ப fV# | |||
| ஒலிம்) ப pV# | |||
| சங்கல்) ப pV# | |||
| _சொல்) ப pV# | |||
| _நிலை) ப pV# | |||
| _பயன்) ப pV# | |||
| _விகல்) ப pV# | |||
| _ஸ்டம்) ப pV# | |||
| அடால்) ப fV# | |||
| அஷ்ரா) ப fV# | |||
| _ஒL10ி) ப pV# | |||
| _செயல்) ப pV# | |||
| _முஷார) ப fV# | |||
| _ருடால்) ப fV# | |||
| _ஸ்டாம்) ப pV# | |||
| _ஷரீ) ப (+ fV# | |||
| _ஷெரீ) ப (+ fV# | |||
| _ஸ்தா) ப (+ bV# | |||
| @@ -3561,6 +3652,7 @@ _விரகதா) ப (+ bV# | |||
| தென்) ப (குதி pV | |||
| அக்கம்) ப (க்க bV | |||
| ப (க்கK pV | |||
| _தா) ப (க்கணல bV | |||
| பரம) ப (க்த bV | |||
| ராம) ப (க்த bV | |||
| _தா) ப (ங்கள bV | |||
| @@ -3676,6 +3768,7 @@ _ஜெனி) ப (ர fV | |||
| _பக்கப்) ப (ல bV | |||
| ஆன்ம) ப (ல bV | |||
| படைப்) ப (ல bV | |||
| _பிரின்L04ி) ப (ல p | |||
| _முனிசி) ப (ல pV | |||
| ஆயுதப்) ப (ல bV | |||
| _சம) ப (லங்கள bV | |||
| @@ -3694,6 +3787,7 @@ _முனிசி) ப (ல pV | |||
| த) ப (ஸ bV | |||
| _வா) ப (ஸ pV | |||
| ஆக்டோ) ப (ஸ pV | |||
| _ப்ரொ) ப (ஸர fV | |||
| _தீ) ப (ா p | |||
| _கலி) ப (ா f | |||
| _கலீ) ப (ா f | |||
| @@ -3766,6 +3860,7 @@ _வெளிப்) ப (ாக b | |||
| _) பாபவிமோசன pa:bVvimo:tSV | |||
| _சாயி) பாப (ா ba:b | |||
| _சாய்) பாப (ா ba:b | |||
| அலி) பாப (ா ba:b | |||
| அலை) ப (ாய p | |||
| அ) பாயிண்ட்மெண்ட pa:jin.t.ment.V# | |||
| அல்) ப (ாயு p | |||
| @@ -3774,6 +3869,7 @@ _வெளிப்) ப (ாக b | |||
| எதிர்) ப (ார p | |||
| _பிளாட்) ப (ார f | |||
| _யுக) ப (ாரதி b | |||
| _டி) பார்ட்மெண்ட pa:rt.men.t.V# | |||
| இன்) ப (ார்ம f | |||
| _யூனி) ப (ார்ம f | |||
| அ) பார்மெண்ட pa:rment.V# | |||
| @@ -3859,6 +3955,7 @@ _கன்னா) ப (ின்னா p | |||
| _மா) ப (ியா f | |||
| _கன்) பி (யுச f | |||
| _பெர்) பி (யூம f | |||
| _கடற்) பி (ர p | |||
| _வரப்) பி (ரL04ாத p | |||
| _ஞான) பிரக (ா prVk | |||
| _ஞானப்) பிரக (ா prVk | |||
| @@ -3880,6 +3977,7 @@ _ஞானப்) பிரக (ா prVk | |||
| _சொற்) பி (ரயோக p | |||
| L03ந்தப்) பி (ரளய p | |||
| _சொற்) பி (ரவாக p | |||
| உட்) பி (ரவேச p | |||
| எக்ஸ்) பிர (ஸ pre | |||
| ஆ) பி (ரஹாம b | |||
| பயப்) பி (ராந்தி b | |||
| @@ -3915,6 +4013,7 @@ _ஷண்முக) பி (ரிய p | |||
| ஆண்) ப (ிள்ளை p | |||
| பெண்) ப (ிள்ளை p | |||
| அச்சா) ப (ீ f | |||
| _தபாலா) ப (ீ f | |||
| _ர) பீக் fi:k | |||
| உப) ப (ீட p | |||
| விக்கி) ப (ீடியா p | |||
| @@ -3940,6 +4039,7 @@ _ஷண்முக) பி (ரிய p | |||
| _மர) ப (ுரிமை b | |||
| இன்) ப (ுற b | |||
| _துன்) ப (ுற b | |||
| _நம்) ப (ுற b | |||
| ப (ுறK p | |||
| _பா) ப (ுலர p | |||
| _) பு (ளோரன்ஸ f | |||
| @@ -3961,6 +4061,7 @@ _கோலாலம்) ப (ூர p | |||
| _வட) ப (ெண்ணை p | |||
| _தென்) ப (ெண்ணை p | |||
| _கம்) ப (ெனி p | |||
| _மறு) ப (ெயர p | |||
| இடம்) ப (ெயர p | |||
| _புலம்) ப (ெயர p | |||
| மொழி) ப (ெயர் p | |||
| @@ -4088,9 +4189,11 @@ _மைக்ரோசா) ப் (ட f | |||
| _ச) ப்த (மிய ptV | |||
| _ச) ப் (தரிஷி p | |||
| _ச) ப் (தஸ்வர p | |||
| _லு) ப் (தான f | |||
| _ஹி) ப்னாட (ிச pna:t. | |||
| கர்) ப்ப bbV# | |||
| _நவா) ப்ப bbV# | |||
| _நகர்) ப்ப ppV# | |||
| _ராமசு) ப்ப bbV# | |||
| L03) ப்ப (ங்களா bbV | |||
| L03) ப்ப (தில bbV | |||
| @@ -4132,6 +4235,7 @@ _யாதவ) ப்பி (ரகாச pp | |||
| _வெளி) ப்பி (ரகார pp | |||
| அதிக) ப்பி (ரசங்க pp | |||
| L03) ப்பிரச (ார pprVtS | |||
| _மலை) ப்பி (ரதேச pp | |||
| _வன) ப்பி (ரதேச pp | |||
| _காட்டு) ப்பி (ரதேச pp | |||
| _நில) ப்பி (ரபு pp | |||
| @@ -4174,12 +4278,14 @@ _சந்தேக) ப்ப (ுத்தி bb | |||
| _யூ) ப்ரட (ீஸ frVt. | |||
| _சு) ப் (ரியா p | |||
| _ஸ்ரீ) ப் (ரியா p | |||
| அ) ப் (ரீதி f | |||
| _சு) ப் (ரீம p | |||
| _) ப் (ரீயா f | |||
| _கம்) ப் (ரெஸ p | |||
| இம்) ப் (ரெஸ p | |||
| _) ப் (லெட்சர f | |||
| _மா) ப் (ள p | |||
| _ம) ப் (ளர f | |||
| ஏரோ) ப் (ளேன p | |||
| _) ப் (ளோரன்ஸ f | |||
| ப் (ஸ p | |||
| @@ -4298,6 +4404,7 @@ _சந்தேக) ப்ப (ுத்தி bb | |||
| வ (B v | |||
| _) வி (யா v | |||
| வி (யூக v | |||
| இண்டர்) வி (யூ v | |||
| .group ஶ | |||
| @@ -4369,6 +4476,13 @@ _சந்தேக) ப்ப (ுத்தி bb | |||
| இ (ரவைகள | |||
| இ (ரவையை | |||
| இ (ராக | |||
| இ (ராக்_ i | |||
| இ (ராக்_கால | |||
| இ (ராக்கிட i | |||
| இ (ராக்கின i | |||
| இ (ராக்கில i | |||
| இ (ராக்கு i | |||
| இ (ராக்கை i | |||
| இ (ராச | |||
| இ (ராஜ | |||
| இராஞ்ச ra:n^tSV# | |||
| @@ -4407,6 +4521,7 @@ _சந்தேக) ப்ப (ுத்தி bb | |||
| இ (லவங்க | |||
| இ (லவங்காய i | |||
| இ (லாகவ | |||
| இலாக (ூர la:H | |||
| இ (லாப | |||
| இ (லாவண்ய | |||
| இலேக்க (ிய le:gg | |||
| @@ -0,0 +1,4 @@ | |||
| name assamese-test | |||
| language as | |||
| @@ -0,0 +1,3 @@ | |||
| name gujarati-test | |||
| language gu | |||
| @@ -16,8 +16,7 @@ special_voices = { | |||
| 'zh-yue': 'zhy', | |||
| } | |||
| # The 'om' voice file intimitently crashes when compiling on some platforms. | |||
| exclude_voices = ['om'] | |||
| exclude_voices = [] | |||
| def find_voices(path): | |||
| for filename in os.listdir(path): | |||
| @@ -0,0 +1,94 @@ | |||
| //==================================================== | |||
| // Bengali, inherits from Hindi | |||
| //==================================================== | |||
| phoneme V // inherent vowel, can be [O] or [o] | |||
| vowel flag1 starttype #o endtype #o | |||
| length 200 | |||
| IF thisPh(isWordEnd) AND prevPhW(isNotVowel) AND prev2PhW(isVowel) THEN | |||
| ChangePhoneme(NULL) | |||
| ENDIF | |||
| IF thisPh(isFirstVowel) THEN | |||
| IF nextVowel(i) OR nextVowel(u) THEN | |||
| ChangePhoneme(o) | |||
| ENDIF | |||
| IF prevPhW(r) THEN | |||
| ChangePhoneme(o) | |||
| ENDIF | |||
| ENDIF | |||
| ChangePhoneme(O) | |||
| endphoneme | |||
| phoneme a | |||
| vowel starttype #a endtype #a | |||
| length 225 | |||
| FMT(vowel/a_3) | |||
| endphoneme | |||
| phoneme i | |||
| vowel starttype #i endtype #i | |||
| length 210 | |||
| FMT(vowel/i_6) | |||
| endphoneme | |||
| phoneme u | |||
| vowel starttype #u endtype #u | |||
| length 210 | |||
| FMT(vowel/u) | |||
| endphoneme | |||
| phoneme e | |||
| vowel starttype #e endtype #e | |||
| length 210 | |||
| FMT(vowel/e) | |||
| endphoneme | |||
| phoneme & | |||
| vowel starttype #a endtype #a | |||
| length 210 | |||
| FMT(vowel/&_2) | |||
| endphoneme | |||
| phoneme o | |||
| vowel starttype #o endtype #o | |||
| length 210 | |||
| IF nextPhW(w) THEN | |||
| length 170 | |||
| ENDIF | |||
| FMT(vowel/o) | |||
| endphoneme | |||
| phoneme O | |||
| vowel starttype #o endtype #o | |||
| length 200 | |||
| FMT(vowel/oo_5) | |||
| endphoneme | |||
| phoneme tS | |||
| import_phoneme base/tS | |||
| endphoneme | |||
| phoneme tS# | |||
| import_phoneme base/tS | |||
| endphoneme | |||
| phoneme ~ | |||
| virtual | |||
| endphoneme | |||
| @@ -0,0 +1,4 @@ | |||
| // Phonemes for gujarati | |||
| // This inherits from ph_hindi | |||
| @@ -1,6 +1,6 @@ | |||
| // Irish Phonemes | |||
| //Please contact [email protected] | |||
| // Version 2.7 2013 | |||
| // Version 2.8 2013 | |||
| // short vowels | |||
| @@ -7,42 +7,34 @@ | |||
| phoneme i | |||
| vowel starttype #i endtype #i | |||
| length 165 | |||
| length 200 | |||
| FMT(vowel/i) | |||
| endphoneme | |||
| phoneme e | |||
| vowel starttype #e endtype #e | |||
| length 180 | |||
| length 210 | |||
| FMT(vowel/e_mid2) | |||
| endphoneme | |||
| phoneme a/ | |||
| vowel starttype #@ endtype #@ | |||
| length 180 | |||
| FMT(vowel/a#_2) | |||
| endphoneme | |||
| phoneme a | |||
| vowel starttype #a endtype #a | |||
| length 180 | |||
| ChangeIfUnstressed(a/) | |||
| length 210 | |||
| FMT(vowel/a_5) | |||
| endphoneme | |||
| phoneme o | |||
| vowel starttype #o endtype #o | |||
| length 180 | |||
| FMT(vowel/0_2) | |||
| length 210 | |||
| FMT(vowel/o_4) | |||
| endphoneme | |||
| phoneme u | |||
| vowel starttype #u endtype #u | |||
| length 170 | |||
| FMT(vowel/u_5) | |||
| length 200 | |||
| FMT(vowel/u_bck2) | |||
| endphoneme | |||
| @@ -57,5 +49,201 @@ phoneme d // dental variant of /d/ | |||
| import_phoneme base2/d | |||
| 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 | |||
| @@ -1928,6 +1928,15 @@ include ph_telugu | |||
| phonemetable si hi | |||
| include ph_sinhala | |||
| phonemetable gu hi | |||
| include ph_gujarati | |||
| phonemetable as bn | |||
| include ph_assamese | |||
| phonemetable tn base | |||
| include ph_setswana | |||
| @@ -1639,6 +1639,12 @@ int LoadSpect(const char *path, int control) | |||
| } | |||
| spectseq->Load(stream); | |||
| if(spectseq->frames == NULL) | |||
| { | |||
| error("Bad vowel file, no frames: '%s'",path); | |||
| return(0); | |||
| } | |||
| // do we need additional klatt data ? | |||
| for(frame=0; frame < spectseq->numframes; frame++) | |||
| { | |||
| @@ -3616,6 +3622,11 @@ make_envs(); | |||
| "# ------- ---------\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"); | |||
| f_phdata = fopen_log(f_errors,fname,"wb"); | |||
| @@ -919,8 +919,8 @@ int isHexDigit(int c) | |||
| } | |||
| 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 | |||
| static char *outbuf[5] = {rule_cond, rule_pre, rule_match, rule_post, rule_phonemes}; | |||
| static int next_state[5] = {2,2,4,4,4}; | |||
| @@ -934,6 +934,7 @@ static void copy_rule_string(char *string, int &state) | |||
| int value; | |||
| int literal; | |||
| int hexdigit_input = 0; | |||
| int state = *state_out; | |||
| MNEM_TAB *mr; | |||
| if(string[0] == 0) return; | |||
| @@ -1174,7 +1175,7 @@ static void copy_rule_string(char *string, int &state) | |||
| if(c == 0) break; | |||
| } | |||
| state = next_state[state]; | |||
| *state_out = next_state[state]; | |||
| } // end of copy_rule_string | |||
| @@ -1213,14 +1214,14 @@ static char *compile_rule(char *input) | |||
| case ')': // end of prefix section | |||
| *p = 0; | |||
| state = 1; | |||
| copy_rule_string(buf,state); | |||
| copy_rule_string(buf,&state); | |||
| p = buf; | |||
| break; | |||
| case '(': // start of suffix section | |||
| *p = 0; | |||
| state = 2; | |||
| copy_rule_string(buf,state); | |||
| copy_rule_string(buf,&state); | |||
| state = 3; | |||
| p = buf; | |||
| if(input[ix+1] == ' ') | |||
| @@ -1234,14 +1235,14 @@ static char *compile_rule(char *input) | |||
| case '\r': | |||
| case 0: // end of line | |||
| *p = 0; | |||
| copy_rule_string(buf,state); | |||
| copy_rule_string(buf,&state); | |||
| finish=1; | |||
| break; | |||
| case '\t': // end of section section | |||
| case ' ': | |||
| *p = 0; | |||
| copy_rule_string(buf,state); | |||
| copy_rule_string(buf,&state); | |||
| p = buf; | |||
| break; | |||
| @@ -531,7 +531,7 @@ unsigned short ipa1[96] = { | |||
| 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 int phon_out_size = 0; | |||
| @@ -974,7 +974,7 @@ int Unpronouncable(Translator *tr, char *word, int posn) | |||
| 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 | |||
| unsigned char phcode; | |||
| @@ -1001,7 +1001,7 @@ static int GetVowelStress(Translator *tr, unsigned char *phonemes, signed char * | |||
| { | |||
| /* primary stress on preceeding vowel */ | |||
| 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)) | |||
| { | |||
| @@ -1027,7 +1027,7 @@ static int GetVowelStress(Translator *tr, unsigned char *phonemes, signed char * | |||
| } | |||
| else | |||
| { | |||
| if((ph->std_length < 4) || (stressed_syllable == 0)) | |||
| if((ph->std_length < 4) || (*stressed_syllable == 0)) | |||
| { | |||
| stress = ph->std_length; | |||
| @@ -1067,14 +1067,14 @@ static int GetVowelStress(Translator *tr, unsigned char *phonemes, signed char * | |||
| *ph_out = 0; | |||
| /* 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; | |||
| primary_posn = stressed_syllable; | |||
| primary_posn = *stressed_syllable; | |||
| } | |||
| if(max_stress == 5) | |||
| @@ -1099,8 +1099,8 @@ static int GetVowelStress(Translator *tr, unsigned char *phonemes, signed char * | |||
| max_stress = 4; | |||
| } | |||
| stressed_syllable = primary_posn; | |||
| vowel_count = count; | |||
| *stressed_syllable = primary_posn; | |||
| *vowel_count = count; | |||
| return(max_stress); | |||
| } // end of GetVowelStress | |||
| @@ -1122,7 +1122,7 @@ void ChangeWordStress(Translator *tr, char *word, int new_stress) | |||
| signed char vowel_stress[N_WORD_PHONEMES/2]; | |||
| 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) | |||
| { | |||
| @@ -1249,7 +1249,7 @@ void SetWordStress(Translator *tr, char *output, unsigned int *dictionary_flags, | |||
| 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) | |||
| { | |||
| max_stress = 0; | |||
| @@ -1551,6 +1551,17 @@ void SetWordStress(Translator *tr, char *output, unsigned int *dictionary_flags, | |||
| vowel_stress[stressed_syllable] = 4; | |||
| max_stress = 4; | |||
| 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 */ | |||
| @@ -3049,7 +3060,7 @@ static const char *LookupDict2(Translator *tr, const char *word, const char *wor | |||
| if(tr->transpose_min > 0) | |||
| { | |||
| 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; | |||
| } | |||
| else | |||
| @@ -80,6 +80,7 @@ static const char *help_text = | |||
| "--split=\"<minutes>\"\n" | |||
| "\t Starts a new WAV file every <minutes>. Used with -w\n" | |||
| "--stdout Write speech output to stdout\n" | |||
| "--version Shows version number and date, and location of espeak-data\n" | |||
| "--voices=<language>\n" | |||
| "\t List the available voices for the specified language.\n" | |||
| "\t If <language> is omitted, then list all voices.\n"; | |||
| @@ -40,7 +40,7 @@ | |||
| //<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 sem_t my_sem_start_is_required; | |||
| static sem_t my_sem_stop_is_required; | |||
| @@ -53,7 +53,7 @@ static int my_event_is_running=0; | |||
| enum {MIN_TIMEOUT_IN_MS=10, | |||
| ACTIVITY_TIMEOUT=50, // in ms, check that the stream is active | |||
| MAX_ACTIVITY_CHECK=6 | |||
| MAX_ACTIVITY_CHECK=6 | |||
| }; | |||
| @@ -93,12 +93,12 @@ void event_init(void) | |||
| assert(-1 != sem_init(&my_sem_stop_is_required, 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) | |||
| || 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)) | |||
| { | |||
| assert(0); | |||
| @@ -126,7 +126,7 @@ ENTER("event_display"); | |||
| "MARK", | |||
| "PLAY", | |||
| "END", | |||
| "MSG_TERMINATED" | |||
| "MSG_TERMINATED" | |||
| }; | |||
| SHOW("event_display > event=0x%x\n",event); | |||
| @@ -146,17 +146,17 @@ ENTER("event_display"); | |||
| static espeak_EVENT* event_copy (espeak_EVENT* event) | |||
| { | |||
| ENTER("event_copy"); | |||
| if (event==NULL) | |||
| { | |||
| return NULL; | |||
| } | |||
| espeak_EVENT* a_event=(espeak_EVENT*)malloc(sizeof(espeak_EVENT)); | |||
| if (a_event) | |||
| { | |||
| memcpy(a_event, event, sizeof(espeak_EVENT)); | |||
| switch(event->type) | |||
| { | |||
| case espeakEVENT_MARK: | |||
| @@ -166,14 +166,14 @@ static espeak_EVENT* event_copy (espeak_EVENT* event) | |||
| a_event->id.name = strdup(event->id.name); | |||
| } | |||
| break; | |||
| default: | |||
| break; | |||
| } | |||
| } | |||
| event_display(a_event); | |||
| return a_event; | |||
| } | |||
| @@ -287,7 +287,7 @@ ENTER("event_declare"); | |||
| 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; | |||
| if (!a_status) | |||
| @@ -309,7 +309,7 @@ ENTER("event_declare"); | |||
| // | |||
| // 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) | |||
| SHOW_TIME("event_declare > post my_sem_start_is_required\n"); | |||
| sem_post(&my_sem_start_is_required); | |||
| @@ -399,18 +399,18 @@ ENTER("sleep_until_timeout_or_stop_request"); | |||
| 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, | |||
| 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) | |||
| { | |||
| continue; // Restart when interrupted by handler | |||
| } | |||
| 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); | |||
| if (err == 0) | |||
| @@ -424,7 +424,7 @@ ENTER("sleep_until_timeout_or_stop_request"); | |||
| //> | |||
| //<get_remaining_time | |||
| // 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. | |||
| static int get_remaining_time(uint32_t sample, uint32_t* time_in_ms, int* stop_is_required) | |||
| @@ -448,18 +448,18 @@ ENTER("get_remaining_time"); | |||
| // 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 | |||
| // | |||
| // * some samples have already been played, | |||
| // * some samples have already been played, | |||
| // ** the end of stream is reached | |||
| // ** or there is an underrun | |||
| // | |||
| // | |||
| // 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; | |||
| @@ -499,8 +499,8 @@ ENTER("polling_thread"); | |||
| SHOW_TIME("polling_thread > unlocked\n"); | |||
| 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__); | |||
| while(0 == sem_trywait(&my_sem_stop_is_required)) | |||
| @@ -513,27 +513,27 @@ ENTER("polling_thread"); | |||
| } | |||
| // 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"); | |||
| while(0 == sem_trywait(&my_sem_start_is_required)) | |||
| { | |||
| }; | |||
| espeak_EVENT* event = (espeak_EVENT*)(head->data); | |||
| assert(event); | |||
| 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); | |||
| if (a_stop_is_required) | |||
| if (a_stop_is_required > 0) | |||
| { | |||
| break; | |||
| } | |||
| else if (err != 0) | |||
| { | |||
| { | |||
| // No available time: the event is deleted. | |||
| SHOW("polling_thread > %s\n","audio device down"); | |||
| a_status = pthread_mutex_lock(&my_mutex); | |||
| @@ -547,22 +547,22 @@ ENTER("polling_thread"); | |||
| if (my_callback) | |||
| { | |||
| 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). | |||
| event->type=espeakEVENT_LIST_TERMINATED; | |||
| event->user_data=NULL; | |||
| } | |||
| a_status = pthread_mutex_lock(&my_mutex); | |||
| SHOW_TIME("polling_thread > locked\n"); | |||
| event_delete( (espeak_EVENT*)pop()); | |||
| a_status = pthread_mutex_unlock(&my_mutex); | |||
| SHOW_TIME("polling_thread > unlocked\n"); | |||
| 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) | |||
| if ((a_status==0) && (a_stop_is_required > 0)) | |||
| { | |||
| SHOW("polling_thread > stop required (%d)\n", __LINE__); | |||
| while(0 == sem_trywait(&my_sem_stop_is_required)) | |||
| @@ -579,17 +579,17 @@ ENTER("polling_thread"); | |||
| a_stop_is_required = sleep_until_timeout_or_stop_request(time_in_ms); | |||
| } | |||
| } | |||
| a_status = pthread_mutex_lock(&my_mutex); | |||
| SHOW_TIME("polling_thread > locked\n"); | |||
| SHOW_TIME("polling_thread > my_event_is_running = 0\n"); | |||
| 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); | |||
| 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__); | |||
| while(0 == sem_trywait(&my_sem_stop_is_required)) | |||
| @@ -605,8 +605,8 @@ ENTER("polling_thread"); | |||
| a_status = pthread_mutex_unlock(&my_mutex); | |||
| SHOW_TIME("polling_thread > unlocked\n"); | |||
| if (a_stop_is_required) | |||
| { | |||
| if (a_stop_is_required > 0) | |||
| { | |||
| SHOW("polling_thread > %s\n","stop required!"); | |||
| // no mutex required since the stop command is synchronous | |||
| // and waiting for my_sem_stop_is_acknowledged | |||
| @@ -642,13 +642,13 @@ static espeak_ERROR push(void* the_data) | |||
| SHOW("event > push > %s\n", "EE_BUFFER_FULL"); | |||
| return EE_BUFFER_FULL; | |||
| } | |||
| node *n = (node *)malloc(sizeof(node)); | |||
| if (n == NULL) | |||
| { | |||
| return EE_INTERNAL_ERROR; | |||
| } | |||
| if (head == NULL) | |||
| { | |||
| head = n; | |||
| @@ -659,13 +659,13 @@ static espeak_ERROR push(void* the_data) | |||
| tail->next = n; | |||
| tail = n; | |||
| } | |||
| tail->next = NULL; | |||
| tail->data = the_data; | |||
| node_counter++; | |||
| SHOW("event > push > counter=%d (uid=%d)\n",node_counter,((espeak_EVENT*)the_data)->unique_identifier); | |||
| return EE_OK; | |||
| } | |||
| @@ -673,9 +673,9 @@ static void* pop() | |||
| { | |||
| ENTER("event > pop"); | |||
| void* the_data = NULL; | |||
| assert((!head && !tail) || (head && tail)); | |||
| if (head != NULL) | |||
| { | |||
| node* n = head; | |||
| @@ -685,12 +685,12 @@ static void* pop() | |||
| node_counter--; | |||
| SHOW("event > pop > event=0x%x (counter=%d, uid=%d)\n",the_data, node_counter,((espeak_EVENT*)the_data)->unique_identifier); | |||
| } | |||
| if(head == NULL) | |||
| { | |||
| tail = NULL; | |||
| } | |||
| return the_data; | |||
| } | |||
| @@ -698,10 +698,10 @@ static void* pop() | |||
| static void init() | |||
| { | |||
| ENTER("event > init"); | |||
| while (event_delete( (espeak_EVENT*)pop() )) | |||
| {} | |||
| node_counter = 0; | |||
| } | |||
| @@ -710,7 +710,7 @@ static void init() | |||
| void event_terminate() | |||
| { | |||
| ENTER("event_terminate"); | |||
| if (my_thread) | |||
| { | |||
| pthread_cancel(my_thread); | |||
| @@ -42,7 +42,7 @@ | |||
| //> | |||
| //<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 | |||
| static pthread_mutex_t my_mutex; | |||
| static int my_command_is_running = 0; | |||
| @@ -50,7 +50,7 @@ static int my_stop_is_required = 0; | |||
| // + 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 sem_t my_sem_start_is_required; | |||
| static sem_t my_sem_stop_is_acknowledged; | |||
| @@ -79,12 +79,12 @@ void fifo_init() | |||
| assert(-1 != sem_init(&my_sem_start_is_required, 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) | |||
| || 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)) | |||
| { | |||
| assert(0); | |||
| @@ -106,8 +106,8 @@ void fifo_init() | |||
| espeak_ERROR fifo_add_command (t_espeak_command* the_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; | |||
| if (!a_status) | |||
| @@ -120,12 +120,12 @@ espeak_ERROR fifo_add_command (t_espeak_command* the_command) | |||
| 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) | |||
| SHOW_TIME("fifo_add_command > post my_sem_start_is_required\n"); | |||
| sem_post(&my_sem_start_is_required); | |||
| int val=1; | |||
| while (val) | |||
| while (val > 0) | |||
| { | |||
| usleep(50000); // TBD: event? | |||
| sem_getvalue(&my_sem_start_is_required, &val); | |||
| @@ -147,8 +147,8 @@ espeak_ERROR fifo_add_command (t_espeak_command* the_command) | |||
| espeak_ERROR fifo_add_commands (t_espeak_command* command1, t_espeak_command* command2) | |||
| { | |||
| 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; | |||
| if (!a_status) | |||
| @@ -171,12 +171,12 @@ espeak_ERROR fifo_add_commands (t_espeak_command* command1, t_espeak_command* co | |||
| 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) | |||
| SHOW_TIME("fifo_add_command > post my_sem_start_is_required\n"); | |||
| sem_post(&my_sem_start_is_required); | |||
| int val=1; | |||
| while (val) | |||
| while (val > 0) | |||
| { | |||
| usleep(50000); // TBD: event? | |||
| sem_getvalue(&my_sem_start_is_required, &val); | |||
| @@ -274,9 +274,9 @@ static int sleep_until_start_request_or_inactivity() | |||
| int a_start_is_required=0; | |||
| // 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. | |||
| // | |||
| int i=0; | |||
| @@ -305,18 +305,18 @@ static int sleep_until_start_request_or_inactivity() | |||
| 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, | |||
| 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) | |||
| { | |||
| continue; | |||
| } | |||
| 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); | |||
| if (err==0) | |||
| @@ -335,8 +335,8 @@ static void close_stream() | |||
| { | |||
| 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; | |||
| int a_status = pthread_mutex_lock(&my_mutex); | |||
| @@ -358,7 +358,7 @@ static void close_stream() | |||
| a_stop_is_required = my_stop_is_required; | |||
| a_status = pthread_mutex_unlock(&my_mutex); | |||
| if (a_stop_is_required) | |||
| { | |||
| // acknowledge the stop request | |||
| @@ -437,7 +437,7 @@ static void* say_thread(void*) | |||
| }; | |||
| if (my_stop_is_required) | |||
| { | |||
| { | |||
| SHOW_TIME("say_thread > my_command_is_running = 0\n"); | |||
| my_command_is_running = 0; | |||
| } | |||
| @@ -453,7 +453,7 @@ static void* say_thread(void*) | |||
| } | |||
| if (my_stop_is_required) | |||
| { | |||
| { | |||
| // no mutex required since the stop command is synchronous | |||
| // and waiting for my_sem_stop_is_acknowledged | |||
| init(1); | |||
| @@ -463,16 +463,16 @@ static void* say_thread(void*) | |||
| while(0==sem_trywait(&my_sem_start_is_required)) | |||
| { | |||
| }; | |||
| // acknowledge the stop request | |||
| SHOW_TIME("say_thread > post my_sem_stop_is_acknowledged\n"); | |||
| int a_status = sem_post(&my_sem_stop_is_acknowledged); | |||
| assert( a_status != -1); | |||
| } | |||
| // 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; | |||
| } | |||
| @@ -516,7 +516,7 @@ static espeak_ERROR push(t_espeak_command* the_command) | |||
| { | |||
| return EE_INTERNAL_ERROR; | |||
| } | |||
| if (head == NULL) | |||
| { | |||
| head = n; | |||
| @@ -527,7 +527,7 @@ static espeak_ERROR push(t_espeak_command* the_command) | |||
| tail->next = n; | |||
| tail = n; | |||
| } | |||
| tail->next = NULL; | |||
| tail->data = the_command; | |||
| @@ -563,7 +563,7 @@ static t_espeak_command* pop() | |||
| } | |||
| display_espeak_command(the_command); | |||
| return the_command; | |||
| } | |||
| @@ -338,7 +338,7 @@ static void count_pitch_vowels(int start, int end, int clause_end) | |||
| number_body = 0; | |||
| number_tail = 0; /* number between tonic syllable and next primary */ | |||
| last_primary = -1; | |||
| for(ix=start; ix<end; ix++) | |||
| { | |||
| stress = syllable_tab[ix].stress; /* marked stress level */ | |||
| @@ -527,7 +527,7 @@ int secondary=2; // 2 | |||
| n_steps = count_increments(syl_ix+1, head_final, 4); | |||
| pitch = tune->onset << 8; | |||
| used_onset = 1; | |||
| } | |||
| } | |||
| if(n_steps > tune->head_max_steps) | |||
| n_steps = tune->head_max_steps; | |||
| @@ -697,7 +697,7 @@ static int calc_pitch_segment(int ix, int end_ix, TONE_HEAD *th, TONE_NUCLEUS *t | |||
| n_primary--; | |||
| if((tn->backwards) && (n_primary < 2)) | |||
| { | |||
| pitch = tn->backwards[n_primary] << 8; | |||
| pitch = tn->backwards[n_primary] << 8; | |||
| } | |||
| } | |||
| @@ -745,7 +745,7 @@ static void SetPitchGradient(int start_ix, int end_ix, int start_pitch, int end_ | |||
| if(n_increments <= 0) | |||
| return; | |||
| if(n_increments > 1) | |||
| { | |||
| increment = increment / n_increments; | |||
| @@ -802,7 +802,7 @@ static int calc_pitches2(int start, int end, int tune_number) | |||
| 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); | |||
| @@ -811,7 +811,7 @@ static int calc_pitches2(int start, int end, int tune_number) | |||
| /* tonic syllable */ | |||
| /******************/ | |||
| // if(tn->flags & T_EMPH) | |||
| // { | |||
| // syllable_tab[ix].flags |= SYL_EMPHASIS; | |||
| @@ -836,7 +836,7 @@ static int calc_pitches2(int start, int end, int tune_number) | |||
| /* tail, after the tonic syllable */ | |||
| /**********************************/ | |||
| SetPitchGradient(ix, end, tune->tail_start, tune->tail_end); | |||
| return(tone_pitch_env); | |||
| @@ -877,7 +877,7 @@ static int calc_pitches(int control, int start, int end, int tune_number) | |||
| 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 = SetBodyIntonation(&tunes[0], ix, tone_posn, 0); | |||
| @@ -887,7 +887,7 @@ static int calc_pitches(int control, int start, int end, int tune_number) | |||
| /* tonic syllable */ | |||
| /******************/ | |||
| if(tn->flags & T_EMPH) | |||
| { | |||
| syllable_tab[ix].flags |= SYL_EMPHASIS; | |||
| @@ -912,7 +912,7 @@ static int calc_pitches(int control, int start, int end, int tune_number) | |||
| /* tail, after the tonic syllable */ | |||
| /**********************************/ | |||
| SetPitchGradient(ix, end, tn->tail_start, tn->tail_end); | |||
| return(tone_pitch_env); | |||
| @@ -1037,7 +1037,7 @@ static void CalcPitches_Tone(Translator *tr, int clause_tone) | |||
| if(tph->mnemonic == 0x343132) // [214] | |||
| prev_p->tone_ph = PhonemeCode2('3','5'); | |||
| 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] | |||
| { | |||
| @@ -1176,7 +1176,7 @@ void CalcPitches(Translator *tr, int clause_type) | |||
| } | |||
| 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_comma = tr->punct_to_tone[option][1]; // emphatic form of statement | |||
| } | |||
| @@ -1283,14 +1283,14 @@ void CalcPitches(Translator *tr, int clause_type) | |||
| calc_pitches(option, st_start, st_ix, group_tone); | |||
| } | |||
| // unpack pitch data | |||
| st_ix=0; | |||
| for(ix=ph_start; ix < ph_end; ix++) | |||
| { | |||
| p = &phoneme_list[ix]; | |||
| p->stresslevel = syllable_tab[st_ix].stress; | |||
| if(p->synthflags & SFLAG_SYLLABLE) | |||
| { | |||
| syl = &syllable_tab[st_ix]; | |||
| @@ -1327,11 +1327,11 @@ if(p->tone_ph) | |||
| { | |||
| p->stresslevel |= 8; // emphasized | |||
| } | |||
| st_ix++; | |||
| } | |||
| } | |||
| } // end of CalcPitches | |||
| @@ -851,47 +851,50 @@ int TranslateLetter(Translator *tr, char *word, char *phonemes, int control) | |||
| // speak in the language for this alphabet (or English) | |||
| 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; | |||
| } | |||
| } | |||
| } | |||
| } | |||
| @@ -1264,7 +1264,7 @@ static const char *VoiceFromStack() | |||
| static void ProcessParamStack(char *outbuf, int &outix) | |||
| static void ProcessParamStack(char *outbuf, int *outix) | |||
| {//==================================================== | |||
| // Set the speech parameters from the parameter stack | |||
| int param; | |||
| @@ -1313,8 +1313,8 @@ static void ProcessParamStack(char *outbuf, int &outix) | |||
| } | |||
| speech_parameters[param] = new_parameters[param]; | |||
| strcpy(&outbuf[outix],buf); | |||
| outix += strlen(buf); | |||
| strcpy(&outbuf[*outix],buf); | |||
| *outix += strlen(buf); | |||
| } | |||
| } | |||
| } // end of ProcessParamStack | |||
| @@ -1338,7 +1338,7 @@ static PARAM_STACK *PushParamStack(int tag_type) | |||
| } // 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 | |||
| int ix; | |||
| @@ -1508,10 +1508,14 @@ static int attr_prosody_value(int param_type, const wchar_t *pw, int *value_out) | |||
| if((tail[0]=='s') && (tail[1]=='t')) | |||
| { | |||
| #ifdef PLATFORM_RISCOS | |||
| *value_out = 100; | |||
| #else | |||
| double x; | |||
| // 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; | |||
| #endif | |||
| return(2); // percentage | |||
| } | |||
| @@ -1739,7 +1743,7 @@ static void SetProsodyParameter(int param_type, wchar_t *attr1, PARAM_STACK *sp) | |||
| } // 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 | |||
| static MNEM_TAB keynames[] = { | |||
| @@ -1758,14 +1762,14 @@ static int ReplaceKeyName(char *outbuf, int index, int &outix) | |||
| if((letter = LookupMnem(keynames, p)) != 0) | |||
| { | |||
| ix = utf8_out(letter, p); | |||
| outix = index + ix; | |||
| *outix = index + ix; | |||
| return(letter); | |||
| } | |||
| 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 '>' | |||
| // returns a clause terminator value. | |||
| @@ -1850,7 +1854,7 @@ static int ProcessSsmlTag(wchar_t *xml_buf, char *outbuf, int &outix, int n_outb | |||
| // closing tag | |||
| if((tag_type = LookupMnem(ssmltags,&tag_name[1])) != HTML_NOSPACE) | |||
| { | |||
| outbuf[outix++] = ' '; | |||
| outbuf[(*outix)++] = ' '; | |||
| } | |||
| tag_type += SSML_CLOSE; | |||
| } | |||
| @@ -1859,7 +1863,7 @@ static int ProcessSsmlTag(wchar_t *xml_buf, char *outbuf, int &outix, int n_outb | |||
| 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) | |||
| outbuf[outix++] = ' '; | |||
| outbuf[(*outix)++] = ' '; | |||
| } | |||
| if(self_closing && ignore_if_self_closing[tag_type]) | |||
| @@ -1959,22 +1963,22 @@ static int ProcessSsmlTag(wchar_t *xml_buf, char *outbuf, int &outix, int n_outb | |||
| } | |||
| 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 | |||
| break; | |||
| case SSML_SAYAS + SSML_CLOSE: | |||
| if(sayas_mode == SAYAS_KEY) | |||
| { | |||
| outbuf[outix] = 0; | |||
| outbuf[*outix] = 0; | |||
| ReplaceKeyName(outbuf, sayas_start, outix); | |||
| } | |||
| outbuf[outix++] = CTRL_EMBEDDED; | |||
| outbuf[outix++] = 'Y'; | |||
| outbuf[(*outix)++] = CTRL_EMBEDDED; | |||
| outbuf[(*outix)++] = 'Y'; | |||
| sayas_mode = 0; | |||
| break; | |||
| @@ -1983,7 +1987,7 @@ static int ProcessSsmlTag(wchar_t *xml_buf, char *outbuf, int &outix, int n_outb | |||
| { | |||
| // use the alias rather than the text | |||
| ignore_text = 1; | |||
| outix += attrcopy_utf8(&outbuf[outix],attr1,n_outbuf-outix); | |||
| *outix += attrcopy_utf8(&outbuf[*outix],attr1,n_outbuf-*outix); | |||
| } | |||
| break; | |||
| @@ -2013,8 +2017,8 @@ static int ProcessSsmlTag(wchar_t *xml_buf, char *outbuf, int &outix, int n_outb | |||
| if((index = AddNameData(buf,0)) >= 0) | |||
| { | |||
| sprintf(buf,"%c%dM",CTRL_EMBEDDED,index); | |||
| strcpy(&outbuf[outix],buf); | |||
| outix += strlen(buf); | |||
| strcpy(&outbuf[*outix],buf); | |||
| *outix += strlen(buf); | |||
| } | |||
| } | |||
| break; | |||
| @@ -2041,8 +2045,8 @@ static int ProcessSsmlTag(wchar_t *xml_buf, char *outbuf, int &outix, int n_outb | |||
| if(index >= 0) | |||
| { | |||
| 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; | |||
| } | |||
| } | |||
| @@ -2054,8 +2058,8 @@ static int ProcessSsmlTag(wchar_t *xml_buf, char *outbuf, int &outix, int n_outb | |||
| if(uri_callback(1,uri,xmlbase) == 0) | |||
| { | |||
| 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; | |||
| } | |||
| } | |||
| @@ -2085,8 +2089,8 @@ static int ProcessSsmlTag(wchar_t *xml_buf, char *outbuf, int &outix, int n_outb | |||
| if(value < 3) | |||
| { | |||
| // 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; | |||
| } | |||
| value = break_value[value]; | |||
| @@ -2433,7 +2437,7 @@ f_input = f_in; // for GetC etc | |||
| 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) | |||
| { | |||
| @@ -114,6 +114,7 @@ static const char *help_text = | |||
| "--split=\"<minutes>\"\n" | |||
| "\t Starts a new WAV file every <minutes>. Used with -w\n" | |||
| "--stdout Write speech output to stdout\n" | |||
| "--version Shows version number and date, and location of espeak-data\n" | |||
| "--voices=<language>\n" | |||
| "\t List the available voices for the specified language.\n" | |||
| "\t If <language> is omitted, then list all voices.\n"; | |||
| @@ -766,10 +766,11 @@ ENTER("espeak_Initialize"); | |||
| #ifdef PLATFORM_RISCOS | |||
| setlocale(LC_CTYPE,"ISO8859-1"); | |||
| #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) | |||
| setlocale(LC_CTYPE,""); | |||
| if(setlocale(LC_CTYPE,"en_US.UTF-8") == NULL) | |||
| setlocale(LC_CTYPE,""); | |||
| } | |||
| #endif | |||
| @@ -314,10 +314,13 @@ ESPEAK_API espeak_ERROR espeak_Synth(const void *text, | |||
| espeakENDPAUSE If set then a sentence pause is added at the end of the text. If not set then | |||
| 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 | |||
| EE_BUFFER_FULL: the command can not be buffered; | |||
| @@ -675,7 +675,7 @@ void SpectDisplay::OnKey(wxKeyEvent& event) | |||
| break; | |||
| case '[': // width-- | |||
| pk->pkright -= 1; | |||
| pk->pkright -= 10; | |||
| if(pk->pkright < 0) | |||
| pk->pkright = 0; | |||
| display = 1; | |||
| @@ -683,7 +683,21 @@ void SpectDisplay::OnKey(wxKeyEvent& event) | |||
| break; | |||
| 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; | |||
| field = 4; | |||
| break; | |||
| @@ -39,7 +39,7 @@ | |||
| //#define USE_PORTAUDIO | |||
| //#define USE_PULSEAUDIO | |||
| #define USE_NANOSLEEP | |||
| #define __cdecl | |||
| #define __cdecl | |||
| //#define ESPEAK_API extern "C" | |||
| #ifdef _ESPEAKEDIT | |||
| @@ -35,7 +35,7 @@ | |||
| #include "translate.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; | |||
| int option_device_number = -1; | |||
| @@ -67,7 +67,7 @@ int vowel_transition[4]; | |||
| int vowel_transition0; | |||
| 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); | |||
| @@ -277,7 +277,7 @@ frameref_t *LookupSpect(PHONEME_TAB *this_ph, int which, FMT_PARAMS *fmt_params, | |||
| // 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)) | |||
| { | |||
| 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; | |||
| @@ -336,7 +336,7 @@ static int DoSample2(int index, int which, int std_length, int control, int leng | |||
| q = wcmdq[wcmdq_tail]; | |||
| q[0] = WCMD_WAVE2; | |||
| 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); | |||
| WcmdqInc(); | |||
| return(length); | |||
| @@ -357,7 +357,7 @@ static int DoSample2(int index, int which, int std_length, int control, int leng | |||
| q = wcmdq[wcmdq_tail]; | |||
| q[0] = WCMD_WAVE; | |||
| q[1] = x; // length in samples | |||
| q[2] = long64(&wavefile_data[index]); | |||
| q[2] = (long64)(&wavefile_data[index]); | |||
| q[3] = wav_scale + (amp << 8); | |||
| WcmdqInc(); | |||
| @@ -372,7 +372,7 @@ static int DoSample2(int index, int which, int std_length, int control, int leng | |||
| q = wcmdq[wcmdq_tail]; | |||
| q[0] = WCMD_WAVE; | |||
| 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); | |||
| WcmdqInc(); | |||
| @@ -388,7 +388,7 @@ static int DoSample2(int index, int which, int std_length, int control, int leng | |||
| q = wcmdq[wcmdq_tail]; | |||
| q[0] = WCMD_WAVE; | |||
| 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); | |||
| WcmdqInc(); | |||
| } | |||
| @@ -613,7 +613,7 @@ static int VowelCloseness(frame_t *fr) | |||
| } | |||
| 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 formant; | |||
| @@ -639,7 +639,7 @@ static short vcolouring[N_VCOLOUR][5] = { | |||
| frame_t *fr = NULL; | |||
| if(n_frames < 2) | |||
| if(*n_frames < 2) | |||
| return(0); | |||
| len = (data1 & 0x3f) * 2; | |||
| @@ -714,8 +714,8 @@ if(voice->klattv[0]) | |||
| 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; | |||
| // degree of glottal-stop effect depends on closeness of vowel (indicated by f1 freq) | |||
| @@ -723,7 +723,7 @@ if(voice->klattv[0]) | |||
| } | |||
| else | |||
| { | |||
| fr = DuplicateLastFrame(seq,n_frames++,len); | |||
| fr = DuplicateLastFrame(seq,(*n_frames)++,len); | |||
| if(len > 36) | |||
| seq_len_adjust += (len - 36); | |||
| @@ -737,7 +737,7 @@ if(voice->klattv[0]) | |||
| 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); | |||
| seq[ix].frame = fr; | |||
| @@ -39,6 +39,7 @@ | |||
| #define L_qa 0x716100 | |||
| #define L_grc 0x677263 // grc Ancient Greek | |||
| #define L_jbo 0x6a626f // jbo Lojban | |||
| #define L_mni 0x6d6e69 // mni Manipuri | |||
| #define L_pap 0x706170 // pap Papiamento] | |||
| #define L_qvi 0x717669 // qvi Kichwa | |||
| #define L_shs 0x736873 // shs Shuswap / Secwepemctsin | |||
| @@ -81,7 +82,7 @@ ALPHABET alphabets [] = { | |||
| {"_hi", OFFSET_DEVANAGARI, 0x900, 0x97f,L('h','i'), AL_WORDS}, | |||
| {"_bn", OFFSET_BENGALI, 0x0980, 0x9ff, L('b','n'), 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}, | |||
| {"_ta", OFFSET_TAMIL, 0xb80, 0xbff, L('t','a'), AL_WORDS}, | |||
| {"_te", OFFSET_TELUGU, 0xc00, 0xc7f, L('t','e'), 0}, | |||
| @@ -460,7 +461,7 @@ Translator *SelectTranslator(const char *name) | |||
| Translator *tr; | |||
| 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 unsigned char stress_amps_fr[8] = {18,16, 18,18, 18,18, 18,18 }; | |||
| @@ -531,6 +532,8 @@ Translator *SelectTranslator(const char *name) | |||
| break; | |||
| 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 unsigned char stress_amps_bn[8] = {18,18, 18,18, 20,20, 22,22 }; | |||
| @@ -852,6 +855,7 @@ Translator *SelectTranslator(const char *name) | |||
| case L('h','i'): // Hindi | |||
| case L('n','e'): // Nepali | |||
| case L('o','r'): // Oriya | |||
| case L('p','a'): // Punjabi | |||
| case L('g','u'): // Gujarati | |||
| { | |||
| @@ -887,6 +891,11 @@ SetupTranslator(tr,stress_lengths_equal,stress_amps_equal); | |||
| tr->langopts.max_digits = 22; | |||
| tr->langopts.numbers2 |= NUM2_ENGLISH_NUMERALS; | |||
| } | |||
| else | |||
| if(name2 == L('o','r')) | |||
| { | |||
| tr->letter_bits_offset = OFFSET_ORIYA; | |||
| } | |||
| SetIndicLetters(tr); | |||
| } | |||
| break; | |||
| @@ -1455,8 +1464,8 @@ SetLengthMods(tr,3); // all equal | |||
| break; | |||
| case L('t','a'): // Tamil | |||
| case L('m','l'): // Malayalam | |||
| case L('k','n'): // Kannada | |||
| case L('m','l'): // Malayalam | |||
| case L('m','r'): // Marathi | |||
| case L('t','e'): // Telugu | |||
| { | |||
| @@ -1464,7 +1473,7 @@ SetLengthMods(tr,3); // all equal | |||
| 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_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.break_numbers = 0x14a8; // 1000, 100,000 10,000,000 | |||
| @@ -1483,9 +1492,12 @@ SetLengthMods(tr,3); // all equal | |||
| else | |||
| 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->langopts.numbers = NUM_OMIT_1_THOUSAND | NUM_OMIT_1_HUNDRED; | |||
| 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 | |||
| if(name2 == L('k','n')) | |||
| @@ -461,6 +461,8 @@ int IsSpace(unsigned int c) | |||
| return(0); | |||
| if((c >= 0x2500) && (c < 0x25a0)) | |||
| return(1); // box drawing characters | |||
| if((c >= 0xfff9) && (c <= 0xffff)) | |||
| return(1); // unicode specials | |||
| // if(wcschr(chars_space,c)) | |||
| // return(1); | |||
| return(iswspace(c)); | |||
| @@ -863,6 +865,7 @@ int TranslateWord(Translator *tr, char *word_start, int next_pause, WORD_TAB *wt | |||
| int wflags; | |||
| int wmark; | |||
| int was_unpronouncable = 0; | |||
| int loopcount; | |||
| WORD_TAB wtab_null[8]; | |||
| // translate these to get pronunciations of plural 's' suffix (different forms depending on | |||
| @@ -1198,7 +1201,7 @@ if(end_type & SUFX_UNPRON) | |||
| found = 0; | |||
| 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 | |||
| // loopcount guards against an endless loop | |||
| @@ -1730,7 +1733,7 @@ int SetTranslator2(const char *new_language) | |||
| translator2 = SelectTranslator(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 | |||
| new_phoneme_tab = -1; | |||
| @@ -2052,7 +2055,6 @@ static int TranslateWord2(Translator *tr, char *word, WORD_TAB *wtab, int pre_pa | |||
| pre_pause = 1; | |||
| } | |||
| plist2 = &ph_list2[n_ph_list2]; | |||
| stress = 0; | |||
| next_stress = 1; | |||
| srcix = 0; | |||
| @@ -2080,6 +2082,7 @@ static int TranslateWord2(Translator *tr, char *word, WORD_TAB *wtab, int pre_pa | |||
| tr->prev_dict_flags[0] = 0; | |||
| tr->prev_dict_flags[1] = 0; | |||
| } | |||
| plist2 = &ph_list2[n_ph_list2]; | |||
| if((option_capitals==1) && (word_flags & FLAG_FIRST_UPPER)) | |||
| { | |||
| @@ -2296,8 +2299,8 @@ static int TranslateWord2(Translator *tr, char *word, WORD_TAB *wtab, int pre_pa | |||
| static int EmbeddedCommand(unsigned int &source_index) | |||
| {//=================================================== | |||
| static int EmbeddedCommand(unsigned int *source_index_out) | |||
| {//======================================================= | |||
| // An embedded command to change the pitch, volume, etc. | |||
| // returns number of commands added to embedded_list | |||
| @@ -2308,6 +2311,7 @@ static int EmbeddedCommand(unsigned int &source_index) | |||
| unsigned char c; | |||
| char *p; | |||
| int cmd; | |||
| int source_index = *source_index_out; | |||
| c = source[source_index]; | |||
| if(c == '+') | |||
| @@ -2355,6 +2359,7 @@ static int EmbeddedCommand(unsigned int &source_index) | |||
| } | |||
| embedded_list[embedded_ix++] = cmd + sign + (value << 8); | |||
| *source_index_out = source_index; | |||
| return(1); | |||
| } // end of EmbeddedCommand | |||
| @@ -2762,7 +2767,7 @@ void *TranslateClause(Translator *tr, FILE *f_text, const void *vp_input, int *t | |||
| } | |||
| else | |||
| { | |||
| embedded_count += EmbeddedCommand(source_index); | |||
| embedded_count += EmbeddedCommand(&source_index); | |||
| prev_in_save = prev_in; | |||
| // replace the embedded command by spaces | |||
| memset(&source[srcix],' ',source_index-srcix); | |||
| @@ -2932,19 +2937,25 @@ if((c == '/') && (tr->langopts.testing & 2) && IsDigit09(next_in) && IsAlpha(pre | |||
| } | |||
| } | |||
| 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; | |||
| } | |||
| } | |||
| } | |||
| } | |||
| @@ -2983,6 +2994,12 @@ if((c == '/') && (tr->langopts.testing & 2) && IsDigit09(next_in) && IsAlpha(pre | |||
| { | |||
| int next2_in; | |||
| 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)) | |||
| { | |||
| // changing from upper to lower case, start new word at the last uppercase, if 3 or more letters | |||
| @@ -178,7 +178,7 @@ static MNEM_TAB keyword_tab[] = { | |||
| #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_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 *variant_lists[3] = {variants_either, variants_male, variants_female}; | |||
| @@ -249,11 +249,11 @@ static void SetToneAdjust(voice_t *voice, int *tone_pts) | |||
| height2 = tone_pts[pt+1]; | |||
| if((freq2 - freq1) > 0) | |||
| { | |||
| rate = double(height2-height1)/(freq2-freq1); | |||
| rate = (double)(height2-height1)/(freq2-freq1); | |||
| for(ix=freq1; ix<freq2; ix++) | |||
| { | |||
| y = height1 + int(rate * (ix-freq1)); | |||
| y = height1 + (int)(rate * (ix-freq1)); | |||
| if(y > 255) | |||
| y = 255; | |||
| voice->tone_adjust[ix] = y; | |||
| @@ -489,11 +489,11 @@ static void VoiceFormant(char *p) | |||
| return; | |||
| if(freq >= 0) | |||
| voice->freq[formant] = int(freq * 2.56001); | |||
| voice->freq[formant] = (int)(freq * 2.56001); | |||
| if(height >= 0) | |||
| voice->height[formant] = int(height * 2.56001); | |||
| voice->height[formant] = (int)(height * 2.56001); | |||
| if(width >= 0) | |||
| voice->width[formant] = int(width * 2.56001); | |||
| voice->width[formant] = (int)(width * 2.56001); | |||
| voice->freqadd[formant] = freqadd; | |||
| } | |||
| @@ -805,7 +805,7 @@ voice_t *LoadVoice(const char *vname, int control) | |||
| n = sscanf(p,"%d %d",&pitch1,&pitch2); | |||
| voice->pitch_base = (pitch1 - 9) << 12; | |||
| 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 | |||
| } | |||
| break; | |||
| @@ -1068,7 +1068,6 @@ voice_t *LoadVoice(const char *vname, int control) | |||
| if((ix = SelectPhonemeTableName(phonemes_name)) < 0) | |||
| { | |||
| fprintf(stderr,"Unknown phoneme table: '%s'\n",phonemes_name); | |||
| ix = 0; | |||
| } | |||
| voice->phoneme_tab_ix = ix; | |||
| new_translator->phoneme_tab_ix = ix; | |||
| @@ -1587,6 +1586,7 @@ char const *SelectVoice(espeak_VOICE *voice_select, int *found) | |||
| vp = voices[ix]; | |||
| // is the main voice the required gender? | |||
| skip=0; | |||
| if((gender != 0) && (vp->gender != gender)) | |||
| { | |||
| skip=1; | |||
| @@ -1595,6 +1595,7 @@ char const *SelectVoice(espeak_VOICE *voice_select, int *found) | |||
| { | |||
| skip=1; | |||
| } | |||
| if(skip==0) | |||
| { | |||
| voices2[ix2++] = vp; | |||
| @@ -1879,7 +1880,8 @@ espeak_ERROR SetVoiceByProperties(espeak_VOICE *voice_selector) | |||
| 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) | |||
| { | |||
| @@ -1016,16 +1016,16 @@ static void AdvanceParameters() | |||
| for(ix=0; ix <= wvoice->n_harmonic_peaks; ix++) | |||
| { | |||
| 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; | |||
| if((peaks[ix].height = int(peaks[ix].height1)) < 0) | |||
| if((peaks[ix].height = (int)peaks[ix].height1) < 0) | |||
| peaks[ix].height = 0; | |||
| peaks[ix].left1 += peaks[ix].left_inc; | |||
| peaks[ix].left = int(peaks[ix].left1); | |||
| peaks[ix].left = (int)peaks[ix].left1; | |||
| if(ix < 3) | |||
| { | |||
| peaks[ix].right1 += peaks[ix].right_inc; | |||
| peaks[ix].right = int(peaks[ix].right1); | |||
| peaks[ix].right = (int)peaks[ix].right1; | |||
| } | |||
| else | |||
| { | |||
| @@ -1038,10 +1038,10 @@ static void AdvanceParameters() | |||
| if(ix < 7) | |||
| { | |||
| 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; | |||
| if((peaks[ix].height = int(peaks[ix].height1)) < 0) | |||
| if((peaks[ix].height = (int)peaks[ix].height1) < 0) | |||
| peaks[ix].height = 0; | |||
| } | |||
| @@ -1157,7 +1157,7 @@ static int ApplyBreath(void) | |||
| if((amp = wvoice->breath[ix]) != 0) | |||
| { | |||
| amp *= (peaks[ix].height >> 14); | |||
| value += int(resonator(&rbreath[ix],noise) * amp); | |||
| value += (int)resonator(&rbreath[ix],noise) * amp; | |||
| } | |||
| } | |||
| #endif | |||
| @@ -1255,7 +1255,7 @@ int Wavegen() | |||
| for(pk=wvoice->n_harmonic_peaks+1; pk<N_PEAKS; pk++) | |||
| { | |||
| // 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 | |||
| @@ -1357,12 +1357,12 @@ int Wavegen() | |||
| 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; | |||
| } | |||
| while(h<=maxh) | |||
| { | |||
| total -= (int(sin_tab[theta >> 5]) * harmspect[h]); | |||
| total -= ((int)sin_tab[theta >> 5] * harmspect[h]); | |||
| theta += waveph; | |||
| h++; | |||
| } | |||
| @@ -1807,27 +1807,27 @@ if(option_log_frames) | |||
| if(ix < 7) | |||
| { | |||
| 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; | |||
| 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].height = int(peaks[ix].height1); | |||
| peaks[ix].height = (int)peaks[ix].height1; | |||
| next = (fr2->fheight[ix] * v->height[ix]) << 6; | |||
| peaks[ix].height_inc = ((next - peaks[ix].height1) * STEPSIZE) / length2; | |||
| if((ix <= 5) && (ix <= wvoice->n_harmonic_peaks)) | |||
| { | |||
| 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; | |||
| peaks[ix].left_inc = ((next - peaks[ix].left1) * STEPSIZE) / length2; | |||
| if(ix < 3) | |||
| { | |||
| 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; | |||
| peaks[ix].right_inc = ((next - peaks[ix].right1) * STEPSIZE) / length2; | |||
| } | |||