Conflicts: dictsource/dict_phonemes phsource/compile_reportmaster
| @@ -18,7 +18,7 @@ | |||
| // ?8 Use full vowel, not schwa in some word endings | |||
| // $alt1 use strong ending (-age, -an, -ance, -ative, -table, -ed, -eria, -et, -inal, -ier -mouth -on -or -ored, -ose, -s) | |||
| // $alt1 use strong ending (-age, -an, -ance, -ate, -ative, -table, -ed, -eria, -et, -inal, -ier -mouth -on -or -ored, -ose, -s) | |||
| // $alt2 use weak ending (ace, ain, an, ar*, ard, ate, ath, ell, ery, ess, et, ie, ile, ine, men, on, ot) | |||
| // $alt3 use weak first vowel, a->[a#], e->[@], o->[0#] | |||
| // $alt4 separate 'h', not 'th' 'ph' 'sh'; [t2] not [t] | |||
| @@ -570,6 +570,7 @@ asap $abbrev | |||
| ati $abbrev | |||
| atk $abbrev | |||
| atm $abbrev | |||
| atv $abbrev | |||
| avc $abbrev | |||
| avg $abbrev | |||
| awol eIw0l | |||
| @@ -894,6 +895,7 @@ anchovy antSoUvi | |||
| anemone a#nEm@ni | |||
| anemometer anIm'0mI2t3 | |||
| anesthetize $alt3 | |||
| antacid $2 | |||
| anew a#nju: | |||
| ?3 anew a#nu: | |||
| anime anImeI | |||
| @@ -1026,6 +1028,7 @@ axon aks0n | |||
| ayuh a#j'@ | |||
| ayup a#jVp | |||
| backdate $2 | |||
| backend bak'End | |||
| backstory baksto@ri | |||
| badmouth $alt1 | |||
| @@ -1065,6 +1068,7 @@ batman batman | |||
| battalion $alt3 | |||
| bazaar $alt3 | |||
| bazooka ba#zu:k@ | |||
| beating bi:tIN | |||
| bedouin bEdu:I#n | |||
| beige beIZ | |||
| belisha b@l'i:S@ | |||
| @@ -1085,6 +1089,7 @@ bias baI@s | |||
| biased baI@st | |||
| bible baIb@L | |||
| bidet bi:deI | |||
| bifurcate $1 | |||
| bigot bIg@t // -ed | |||
| bijou bi:Zu: | |||
| bikini bIk'i:ni | |||
| @@ -1196,6 +1201,7 @@ caldera k0ld'e@r@ | |||
| caliche ka#li:tSi | |||
| caliph $alt6 | |||
| calix $alt6 | |||
| callous kal@s // -ed | |||
| calv kA:v // for calved, calving | |||
| ?3 calv kav // for calved, calving | |||
| calve kA:v | |||
| @@ -1240,6 +1246,7 @@ cashmere kaSmi@3 | |||
| ?3 cashmere kaZmi@3 | |||
| casino $alt3 | |||
| cassette $alt3 | |||
| castrate $2 | |||
| catastrophe $alt3 | |||
| catastrophic kat@str'0fIk | |||
| catarrh k@tA@ | |||
| @@ -1264,7 +1271,7 @@ centurion sEntS'U@ri@n | |||
| ceres si@ri:z | |||
| cerise s@ri:z | |||
| ?3 certain s3:?n- | |||
| certificate s3tIfIk@t | |||
| certificate s3tIfIk@t $onlys | |||
| cerulean $alt3 | |||
| c'est seI $u | |||
| chagrin SagrIn | |||
| @@ -1436,6 +1443,7 @@ conker $1 | |||
| coquina koUk'i:n@ | |||
| conquistador k0nk'i:st@do@ | |||
| conscience k0nS@ns | |||
| console k@nsoUl $verb | |||
| consort $1 | |||
| consort $verb | |||
| construct $1 $onlys | |||
| @@ -1450,6 +1458,7 @@ contest $verb | |||
| context $1 | |||
| contract $1 $onlys | |||
| contract $verb | |||
| contrail k0ntreIl | |||
| contralto k@ntr'altoU | |||
| contraption k@ntr'apS@n | |||
| contrary k0ntr@ri | |||
| @@ -1552,6 +1561,7 @@ debut deIbju: | |||
| début debut $text | |||
| decade dEkeId | |||
| decaf di:kaf | |||
| decane dEkeIn | |||
| decedent dI#si:d@nt | |||
| decent di:s@nt | |||
| decibel dEsI#b@L | |||
| @@ -1571,6 +1581,7 @@ defens dI2fEns // for defensible | |||
| deficit dEfI2sIt | |||
| definitive dI2fInI2tIv | |||
| ?!3 defragment di:fragm'Ent | |||
| degas di:g'as | |||
| degenerate $alt2 $noun | |||
| dego deIgoU | |||
| deice di:'aIs | |||
| @@ -1602,9 +1613,9 @@ derogative $2 | |||
| descant dEskant | |||
| descry dI2skreI | |||
| desert dI2z3:t | |||
| desert dEs3t $only | |||
| desert dI2z3:t $verb | |||
| desolate dEs@l@t | |||
| desert dEs3t $only | |||
| desert dI2z3:t $verb | |||
| desolate dEs@l@t $only | |||
| desperate $alt2 | |||
| ?3 detail $2 | |||
| detante deIt'0nt | |||
| @@ -1660,6 +1671,7 @@ dishy dISi | |||
| dismal dIzm@l | |||
| disparate dIsp@r@t | |||
| disreputable $2 | |||
| dissipate $1 | |||
| distributor $2 | |||
| distro dIstroU | |||
| disuse dIs'ju:s | |||
| @@ -1691,6 +1703,8 @@ drier draI3 | |||
| driest draI|@st | |||
| duet dju:'Et | |||
| dugout dVgaUt | |||
| dumber dVm3 | |||
| dumbest dVm@st | |||
| dungaree dVNga#r'i: | |||
| ?!3 dupe dju:p | |||
| duress $2 | |||
| @@ -1724,13 +1738,10 @@ eh eI | |||
| eid i:d | |||
| eke i:k | |||
| el ,El $only | |||
| electricity I2lEktr'IsI2ti | |||
| electrode I2lEktroUd | |||
| electron I2lEktr0n | |||
| electrocute $2 | |||
| elicit I2lIsI2t | |||
| electrode I#lEktroUd | |||
| elicit I#lIsI#t | |||
| élite Il'i:t | |||
| elixir I2lIks3 | |||
| elixir I#lIks3 | |||
| embed Emb'Ed | |||
| ember Emb3 | |||
| embole $1 // embolism | |||
| @@ -1746,6 +1757,7 @@ enroute 0nr'u:t | |||
| ensemble 0ns'0mb@L | |||
| entendre 0nt'0ndr@- | |||
| entente 0nt'0nt | |||
| entirity Ent'aI3I#ti | |||
| entourage 0nt2UrA:Z | |||
| entrail $1 | |||
| entrance $1 $onlys | |||
| @@ -1763,6 +1775,7 @@ epitome I2pIt@mI | |||
| epub $alt6 | |||
| equal i:kw@L | |||
| equation I2kweIZ@n | |||
| equilibrate $2 | |||
| equipage EkwIpIdZ | |||
| equivocal I2kwIv@k@L | |||
| erase I2reIz // erasing erases | |||
| @@ -1793,7 +1806,7 @@ ethernet $alt1 | |||
| etiquette $1 | |||
| ?3 etiquette EtI#k@t | |||
| euclidean ju:kl'Idi:|@n | |||
| eunuch ju:m@k | |||
| eunuch ju:n@k | |||
| euphemism ju:f@mIz@m | |||
| eureka ju:'ri:ka# | |||
| europa jU@r'oUp@ | |||
| @@ -1807,6 +1820,7 @@ evenings i:vnINz | |||
| evit EvI2t // inevitable | |||
| exactement Egzakt@m'A~ | |||
| exalt Egz'0lt | |||
| exculpate $1 | |||
| excuses Ekskj'u:sI#z | |||
| execute EksI2kju:t // not $2 | |||
| executable $3 | |||
| @@ -1819,12 +1833,15 @@ expert Eksp3:t | |||
| expertise Eksp3t'i:z | |||
| expletive Ekspl'i:tIv | |||
| ?3 expletive EksplI#tIv | |||
| explicate $1 | |||
| exploit $1 $onlys | |||
| exploit $verb | |||
| expo $1 | |||
| exponential Eksp@n'EnS@L | |||
| export $1 $onlys | |||
| export $verb | |||
| expurgate $1 | |||
| extirpate $1 | |||
| extract $1 $onlys | |||
| extract $1 $only | |||
| extract $2 $verb | |||
| @@ -1858,6 +1875,7 @@ favourite feIv@-rI2t | |||
| favourites feIv@-rI2ts | |||
| fedora fI2d'o@r@ | |||
| feisty faIsti | |||
| fellate $2 | |||
| feline fi:laIn | |||
| felon $alt2 | |||
| feminine fEm@nIn | |||
| @@ -1872,6 +1890,7 @@ ficus faIk@s | |||
| fiery faI3ri | |||
| ?3 filet fI2leI | |||
| ?3 fillet fI2leI | |||
| filtrate $2 $verb | |||
| finale fI2nA:li | |||
| finance faInans $only | |||
| finance $verb | |||
| @@ -1894,6 +1913,7 @@ flyby flaIbaI | |||
| foothold fUthoUld | |||
| forage f0rI2dZ | |||
| force fo@s | |||
| forearmed $2 | |||
| foreknowledge $2 | |||
| forensic f@rEnsIk | |||
| foreshadow $2 | |||
| @@ -2018,6 +2038,7 @@ gucci gu:tSi | |||
| gui gu:i $onlys | |||
| guinea gIni | |||
| gurus gu:ru:z | |||
| ?!3 gyrate $2 | |||
| habitual $alt3 | |||
| hacienda hA:sI'End@ | |||
| @@ -2109,6 +2130,7 @@ huevo hweIvoU | |||
| hula hu:l@ | |||
| hullabaloo hVl@b@lu: | |||
| humane $2 | |||
| hundred hVndr@d | |||
| hunger hVNg3 | |||
| hungover $2 | |||
| hurrah h@rA: | |||
| @@ -2119,6 +2141,7 @@ hussar hVz'A@ | |||
| huzza h@z'A: | |||
| huzzah h@z'A: | |||
| hydrangea haIdr'eIndZ@ | |||
| hydrate $2 $verb | |||
| hyperbola haIp'3:b@l@ | |||
| hyperbole haIp'3:b@li | |||
| hypercube $1 | |||
| @@ -2142,6 +2165,7 @@ imagery ImIdZri | |||
| imagine I2madZI2n | |||
| imbecile ImbI2si:l | |||
| ?3 imbecile Imb@s@L | |||
| immolate $1 | |||
| impedance Imp'i:d@ns | |||
| imperative Imp'Er@tIv | |||
| imperfect Imp'3:fEkt | |||
| @@ -2180,6 +2204,7 @@ ingenuity IndZI2n'ju:I2ti | |||
| inherit Inh'ErIt // inherited | |||
| innard In3d | |||
| inner In3 | |||
| innervate In3:veIt | |||
| innovative In@veItIv | |||
| impetus Imp@t@s | |||
| ?3 inquiry Inkw@ri | |||
| @@ -2290,6 +2315,7 @@ laboratory la#b'0r@tri | |||
| laborious $alt3 | |||
| labyrinth lab3InT | |||
| labyrinthine lab3'InTi:n | |||
| lactate $2 $verb | |||
| lascivious $alt3 | |||
| lager lA:g3 | |||
| lagoon $alt3 | |||
| @@ -2304,6 +2330,7 @@ lasagne lasagna $text | |||
| laser $alt6 | |||
| lasso las'u: | |||
| ?3 lasso lasoU | |||
| latex $alt4 | |||
| latrine $alt3 | |||
| latte lA:t2eI | |||
| ?3 launch lA:ntS | |||
| @@ -2335,7 +2362,8 @@ lichen laIk@n | |||
| lidar laIdA@ | |||
| lien li:@n | |||
| lier laI3 // outlier | |||
| ligate li:geIt | |||
| ligate $2 | |||
| ?3 ligate laIgeIt | |||
| lightning laItnIN | |||
| lilac laIl@k | |||
| lily lIli | |||
| @@ -2672,6 +2700,7 @@ oppose @poUz | |||
| opposer @poUz3 | |||
| opus oUp@s | |||
| orange 0rI2ndZ | |||
| orate $2 | |||
| ordeal O@d'i@l | |||
| oregano 0rIg'A:noU | |||
| organelle O@g@n'El | |||
| @@ -2738,6 +2767,7 @@ panache $alt3 | |||
| panchakarma $alt3 $3 | |||
| panchayat pa#ntSaI@t | |||
| pancreas pankri@s | |||
| palpate $2 | |||
| papaya pa#paI;@ | |||
| papyrus pa#paIr@s | |||
| parabola p@rab@l@ | |||
| @@ -2843,7 +2873,8 @@ pizzeria $alt1 | |||
| plaid plad | |||
| ?3 plateau $2 | |||
| platoon $alt3 | |||
| playtest pleItEst | |||
| playa plaI@ | |||
| playtest $alt1 | |||
| plaza plA:z@ | |||
| plebeian pl@b'i:@n | |||
| plethora plET3r@ | |||
| @@ -2851,13 +2882,14 @@ plicate $2 | |||
| plumber plVm3 | |||
| plus plVs | |||
| pois pwA: $only | |||
| poly p0lI | |||
| poleaxe poUlaks | |||
| politer p@l'aIt3 | |||
| politic p0l@tIk $onlys | |||
| poll poUl | |||
| poly p0lI | |||
| polyamide p0lI'eImaId | |||
| polyester p0lI'Est3 | |||
| polygon $alt1 | |||
| ?3 polygon $alt1 | |||
| polythene $1 | |||
| porcelain $alt2 | |||
| populace $alt2 | |||
| @@ -2866,6 +2898,7 @@ portend po@t'End | |||
| poseidon p@saId@n | |||
| posse p0si | |||
| postage poUstI2dZ | |||
| postdate $2 | |||
| practise praktI2s | |||
| prayer pre@ | |||
| precedence prEsI2d@ns | |||
| @@ -2925,6 +2958,8 @@ project pr0dZEkt $onlys | |||
| project $verb | |||
| promenade pr0m@n'A:d | |||
| pronoun proUnaUn | |||
| propranolol proUpr'an@l0l | |||
| prostrate $2 $verb | |||
| protege pr0t@ZeI | |||
| ?3 protege proUt@ZeI | |||
| protegé protege $text | |||
| @@ -2955,6 +2990,7 @@ pythagoras paIT'ag@r@s | |||
| python paIT@n | |||
| pyramidal pI2r'amId@L | |||
| qua kwA: | |||
| qaeda kaId@ | |||
| quadrilateral $3 | |||
| quash kw0S | |||
| @@ -3186,6 +3222,7 @@ sciatica saI'atIk@ | |||
| sclera skli@r | |||
| scourge sk3:dZ | |||
| ?5 scourge skVRdZ | |||
| scrapheap $alt4 | |||
| scrotum skroUt@m | |||
| scuba sku:b@ | |||
| seabed si:bEd | |||
| @@ -3347,16 +3384,18 @@ stygian stIdZi@n | |||
| suave swA:v | |||
| subcategory $2 // U.S ? | |||
| subcontinent $2 | |||
| subject sVbdZ'Ekt $verb | |||
| // subject sVbdZ'Ekt $verb | |||
| sublevel sVblEv@L | |||
| sublime $2 | |||
| submenu s'Vbm,Enju: | |||
| subordinate $2 | |||
| subordinate $alt1 $verb | |||
| subpoena su:p'i:n@ | |||
| subsequent sVbsI2kw@nt | |||
| subside s@bsaId | |||
| subtly sVt@lI $verbf | |||
| subvocal sVbv'oUk@L | |||
| succinct s@ksINkt | |||
| succumb s@kVm | |||
| sucrose su:kroUs | |||
| suede sweId | |||
| suerte swe@rteI // -ed, -es | |||
| @@ -3371,6 +3410,7 @@ suntan sVntan | |||
| suite swi:t $onlys | |||
| superb su:p'3:b | |||
| superfluous su:p'3:flu:@s | |||
| superheat $3 | |||
| supernal su:p'3:n@L | |||
| superstructure $1 | |||
| supplier s@plaI3 | |||
| @@ -3414,6 +3454,7 @@ tangerine tandZ@r'i:n | |||
| taoiseach ti:S@x | |||
| tapestry tap@stri | |||
| tarantula t@rantS@l@ | |||
| tardis $alt1 | |||
| tariff tarIf | |||
| tase teIz | |||
| taskforce t'askf,o@s | |||
| @@ -3520,6 +3561,7 @@ tricycle traIsIk@L | |||
| trilogy trIl@dZi | |||
| trio tri:oU | |||
| triplicate $alt2 | |||
| triplicate $verb | |||
| trisquel trIsk'El | |||
| triumphant $2 | |||
| trois twA: | |||
| @@ -3597,6 +3639,7 @@ useful ju:sf@L | |||
| utan u:t'an | |||
| utensil ju:t'Ens@L | |||
| ?!3 vacate $2 | |||
| vaccine $2 | |||
| valet valeI | |||
| ?3 valet val'eI | |||
| @@ -3687,8 +3730,8 @@ whate're w02t'e@ | |||
| whatsoe're w02tsoU'e@ | |||
| wheelbarrow w'i:l_b,aroU | |||
| ?2 wheelbarrow w#'i:l_b,aroU | |||
| whereas we@'az | |||
| ?2 whereas w#e@'az | |||
| whereas we@az | |||
| ?2 whereas w#e@az | |||
| wherewithal we@wIDO:l | |||
| ?2 wherewithal w#e@wIDO:l | |||
| whew fju: | |||
| @@ -3976,6 +4019,7 @@ Eyjafjalla eIja#fjatla# | |||
| Faroe fe@roU | |||
| Faroes fe@roUz | |||
| Fermanagh f3:m'an@ | |||
| Flores flo@rIz | |||
| Folkestone foUkstoUn | |||
| Fuego fweIgoU | |||
| Gabon gab0n | |||
| @@ -4522,6 +4566,7 @@ Jesus dZi:z@s | |||
| Joachim dZoU@kIm | |||
| Johann joUhA#n | |||
| Jonah dZoUn@ | |||
| Jolene $alt3 | |||
| Jorge ho@heI | |||
| José hoUs'eI | |||
| Jose hoUs'eI | |||
| @@ -4735,7 +4780,6 @@ Zoë zoUi | |||
| Acura akjUr@ | |||
| Advil advIl | |||
| Allgemeine alg@maIm@ | |||
| Andagakavi anda#ga#kka#v%i // a Tamil keyboard | |||
| Andromeda andr'0mId@ | |||
| Aquino a#ki:noU | |||
| Asimov azI#m0f | |||
| @@ -4772,6 +4816,7 @@ Damocles dam@kli:z | |||
| (da vinci) da#vIntSi | |||
| Dante dA:nt2eI | |||
| ?3 Datsun dA:ts@n | |||
| Degas deIgA: $capital | |||
| Desiree dI2zi@reI | |||
| ?3 Desiree dEz@r'eI | |||
| Deslauriers dI2lo@rIeI | |||
| @@ -4807,6 +4852,8 @@ Ghandhi gA:ndi | |||
| Gibson gIbs@n | |||
| Godzilla g0dz'Il@ | |||
| Goliath $alt3 | |||
| Gogh g0x | |||
| ?3 Gogh goU | |||
| Grigio gri:Z'oU | |||
| Guinness gInIs | |||
| Gutierrez gu:tj'ErEz | |||
| @@ -4833,7 +4880,8 @@ Jimenez hIm'EnEz | |||
| Jonese dZoUnz // Joneses | |||
| Kapoor $2 | |||
| Kawasaki kaU|@s'A:ki | |||
| Kendell kEnd@L | |||
| Kendall $alt2 | |||
| Kendell $alt2 | |||
| Khrushchev kru:stSEf | |||
| Khruschev kru:stSEf | |||
| Kroger kroUg3 | |||
| @@ -4932,6 +4980,7 @@ Urquhart 3:kA@t | |||
| Versace v3sA:tSi | |||
| Vicodin vaIk@dI#n | |||
| Volkswagen v'oUlksv,A:g@n | |||
| Vries vri:s | |||
| Wegener veIg@n3 | |||
| Wii wi:: | |||
| Wiimote wi:moUt | |||
| @@ -5160,6 +5209,7 @@ haves havz | |||
| has %ha#z $pastf $only | |||
| has haz $only $atend | |||
| (has been) %ha#z%bIn $pastf | |||
| (has-been) hazbi:n | |||
| (has to) haztu: $atend | |||
| (has not) h@zn%0t $pastf | |||
| (has not) ha#zn0t $pastf $atend | |||
| @@ -5174,7 +5224,7 @@ had ,had $atend | |||
| (had it) h,adI2t | |||
| (had them) h,adDEm | |||
| (had one) hadwVn $atend | |||
| (had any) h,ad||Eni | |||
| (had any) h,ad||,Eni | |||
| (had some) h,ad||sVm | |||
| having ,havIN $strend2 $pastf $only | |||
| haven't hav@-nt $pastf | |||
| @@ -5276,6 +5326,7 @@ thee Di: $u+ | |||
| thou DaU | |||
| thy ,DaI | |||
| thine DaIn $u+ | |||
| thyself DaIs'Elf | |||
| (i had) aI||h'ad $atend | |||
| (he had) hi:||h'ad $atend | |||
| @@ -279,7 +279,7 @@ | |||
| v) ac (a eIk | |||
| ac (cent ak | |||
| ac (centu %ak | |||
| accessi aks'Es@ | |||
| accessib aks'Es@b | |||
| acci (_ 'A:tSi | |||
| ac (cid ak | |||
| acc (ol ak | |||
| @@ -332,6 +332,7 @@ | |||
| ach (rom ak | |||
| ac (id_ as | |||
| _) ac (i a#s | |||
| acial eIS@L | |||
| acious 'eIS@s | |||
| _) ack ak | |||
| _) ack (n a#k | |||
| @@ -417,6 +418,7 @@ | |||
| ad (vert_ ad | |||
| ad (vert a#d | |||
| _) advo adv@ | |||
| _gr) ad (a eId | |||
| hex) ad (e ad | |||
| torn) ad eId | |||
| _r) ad (L03 eId | |||
| @@ -555,6 +557,7 @@ | |||
| _) ai (z aI | |||
| .group al | |||
| &) al (X$w_alt2++ @L | |||
| _) ale (C_ alI2 | |||
| @ic) al (_S2 @L | |||
| _) al (@ a#l | |||
| @@ -622,6 +625,7 @@ | |||
| al (mig %0l | |||
| _) al (ms A: | |||
| &) alo (_ @loU | |||
| h) alo (gena a#l0 | |||
| &) al (ous_ @l | |||
| _) al (p al | |||
| alpha alf@ | |||
| @@ -993,6 +997,7 @@ propag) an (d 'an | |||
| _n) arr (at a#r | |||
| _) arr (o ar | |||
| _) arro (g ar@ | |||
| arr (o_ A@ | |||
| ar (i_ 'A@r | |||
| ?3 @) ar (io_ 'ar | |||
| _b) ar (L02t ar | |||
| @@ -1006,6 +1011,7 @@ calend) ar 3 | |||
| &l) ar (_ 3 | |||
| &l) ar (ist 3 | |||
| &m) ar (_ 3 | |||
| an) ar (_ 3 | |||
| lun) ar (_ =3 | |||
| _sep) ara (b 3r@ | |||
| _p) ara ar@ | |||
| @@ -1019,7 +1025,7 @@ calend) ar 3 | |||
| &) ar (diz 3 | |||
| %C) ar (d_ 3 | |||
| &d) ar (d_ 3 | |||
| &h) ar (d_ 3 | |||
| // &h) ar (d_ 3 | |||
| &ch) ar (d 3 | |||
| &k) ar (d_ 3 | |||
| ll) ar (d_ A@ | |||
| @@ -1104,6 +1110,7 @@ calend) ar 3 | |||
| _p) arlia A@l@ | |||
| @) ar (ol @r | |||
| arom (at a#roUm | |||
| &) ar (ous_ 3 | |||
| arre (_ A@ | |||
| arred (_ A@d | |||
| arring (_ A@I2N | |||
| @@ -1120,7 +1127,7 @@ calend) ar 3 | |||
| ?3 ion) ary (_ Er%i | |||
| XC) ary (_ e@r%i | |||
| w) ar O@ | |||
| wh) ar O@ | |||
| _wh) ar O@ | |||
| w) ar (r 0 | |||
| w) ar (i e@ | |||
| w) ar (y e@ | |||
| @@ -1228,8 +1235,10 @@ calend) ar 3 | |||
| w) atch 0tS | |||
| _s) ata (n eIt@ | |||
| _g) ator eIt3 | |||
| &) ate (_$w_alt2 @t | |||
| &) ate (_$w_alt1+ eIt | |||
| &) ate (_$w_alt2+ @t | |||
| der) ated (_ eItI#d | |||
| der) ating (_ eItIN | |||
| pal) ate (_ @t | |||
| consul) ate (_ @t | |||
| macul) ate (_ @t | |||
| @@ -1244,14 +1253,11 @@ consul) ate (_ @t | |||
| _it_separ) ate (_ @t | |||
| par) ates (_ eIt|s | |||
| ct) ate (_ =eIt | |||
| @) ated (++_ eItI#d | |||
| _s) ate (ll at@ | |||
| @) ati (_ 'A:ti | |||
| at (im_ 'eIt | |||
| @) ating (++_ eItIN | |||
| &) at (ive @t | |||
| &) at (ive_$w_alt1 eIt | |||
| // &) ately (_ @tli | |||
| ul) at (ory 'eIt | |||
| sen) at @t | |||
| pl) at (ea at | |||
| @@ -1325,6 +1331,7 @@ _it_separ) ate (_ @t | |||
| st) atus eIt@s | |||
| ?3 st) atus at@s | |||
| _) at (y eIt | |||
| &) at (y_ @t | |||
| .group au | |||
| au O: | |||
| @@ -1737,7 +1744,8 @@ _it_separ) ate (_ @t | |||
| co (mprehen k0 | |||
| co (mprom k0 | |||
| _) comp (tr k%0m | |||
| compu (t k%0#mpju: | |||
| co (mput k%0# | |||
| co (mputat k0 | |||
| _) co (mr k0 | |||
| _) con (@ k%0#n | |||
| _) conce (ntra k0ns@ | |||
| @@ -1778,6 +1786,7 @@ _it_separ) ate (_ @t | |||
| _) co (nstip k0 | |||
| _) co (nstitut k0 | |||
| _) co (nsole k0 | |||
| _) co (nstel k0 | |||
| _) co (nsul k0 | |||
| _) co (nsult k%0# | |||
| _) co (ntact k0 | |||
| @@ -1785,7 +1794,7 @@ _it_separ) ate (_ @t | |||
| co (ntine k0 | |||
| _) co (ntour k0 | |||
| _) co (ntrA k0# | |||
| _) contra (C@P6 k,0ntr@ | |||
| _) contra (@P6 k,0ntr@ | |||
| _) contrast k0#ntraast | |||
| contrac (t k%0#ntrak | |||
| contrar k%0#ntre@ | |||
| @@ -1870,15 +1879,16 @@ _it_separ) ate (_ @t | |||
| _) de (ba dI2 | |||
| _) de (bil dI# | |||
| _) de (c@ dI# | |||
| deca (den dEk@ | |||
| _) decaffei d%i:kafI | |||
| _) deca dEk@ | |||
| _) deca ((ff d%i:ka | |||
| _) deca (nt d%Ika | |||
| _) de (cL05 dE | |||
| de (cenc di: | |||
| de (cib dE | |||
| de (cil dE | |||
| de (cim dE | |||
| _) de (com d,i: | |||
| _) de (con d,i: | |||
| _) de (conP2 d,i: | |||
| de (cor dE | |||
| de (coru dI2 | |||
| de (creas di: | |||
| @@ -1886,6 +1896,8 @@ _it_separ) ate (_ @t | |||
| de (du dI2 | |||
| _) de (emp d%i: | |||
| _) de (f@ dI2 | |||
| _) de (falc di: | |||
| _) de (feca dE | |||
| de (finit dE | |||
| de (flat d%i: | |||
| de (feren dE | |||
| @@ -1895,6 +1907,8 @@ _it_separ) ate (_ @t | |||
| _) de (g@ dI2 | |||
| _) de (hAP2 d,i: | |||
| _) de (hyd ,di: | |||
| _) de (ifL02 deI | |||
| ?3 _) de (ifL02 di: | |||
| _) de (ist deI | |||
| _) de (j dI2 | |||
| _) de (l@ dI2 | |||
| @@ -1906,6 +1920,7 @@ _it_separ) ate (_ @t | |||
| de (lv+ dE | |||
| de (ma dI2 | |||
| de (magog dE | |||
| ?!3 _) de (marca di: | |||
| demea dI2m'i: | |||
| de (men dI2 | |||
| _) de (milit d%i: | |||
| @@ -1922,9 +1937,11 @@ _it_separ) ate (_ @t | |||
| deni (tri d%i:naI | |||
| _) de (no dI2 | |||
| _) de (nu dI2 | |||
| _) de (nuda d,i: | |||
| _) de (o d%i: | |||
| _) de (p@ dI2 | |||
| de (per d%i: | |||
| _) de (pila dE | |||
| de (pol d%i: | |||
| de (pop d%i: | |||
| depo (siti dEp@ | |||
| @@ -2022,7 +2039,7 @@ _it_separ) ate (_ @t | |||
| di (scov dI2 | |||
| _) dis (eP3 ,dIs | |||
| di (sh_ dI | |||
| di (shC dI | |||
| _) di (shC dI | |||
| _) di (shev+ dI2 | |||
| _) dis (hAP3 dI2s | |||
| _) dis (inP3 ,dIs | |||
| @@ -2037,7 +2054,7 @@ _it_separ) ate (_ @t | |||
| _) diss (@ dI2s | |||
| dis (sect daI | |||
| dis (sid dI | |||
| di (ssip dI | |||
| _) dis (sip dI | |||
| dis (solu dI | |||
| dis (son dI | |||
| di (stan dI | |||
| @@ -2295,6 +2312,7 @@ _it_separ) ate (_ @t | |||
| cl) ed (_S1v d | |||
| @p) ed (_S2vdei t | |||
| @@er) ed (_S2v d | |||
| our) ed (_S2v d | |||
| @ss) ed (_S2dv t | |||
| @t) ed (_S2vdei I#d | |||
| ?8 @t) ed (_S2vdei Ed | |||
| @@ -2374,11 +2392,12 @@ _it_separ) ate (_ @t | |||
| _w) eigh eI | |||
| .group el | |||
| _) el (A %Il | |||
| _) el (A I#l | |||
| _) electro %Il,EktroU | |||
| _) elect (rocu I2lEkt | |||
| _) elect (rol %ElEkt | |||
| _) elect (ron I2lE2kt | |||
| _) elect (rici I#lE2kt | |||
| _) elect (rocu I#lE2kt | |||
| _) elect (rol I#lE2kt | |||
| _) elect (ron I#lE2kt | |||
| _) ele (g ElI | |||
| _) elem ElIm | |||
| _) ele (p ElI | |||
| @@ -2440,6 +2459,7 @@ _it_separ) ate (_ @t | |||
| em (ana Em | |||
| emba (s Emb@ | |||
| em (blem Em | |||
| _) em (broc Em | |||
| em (bry Em | |||
| em (eral Em | |||
| _) em (e I2m | |||
| @@ -2505,6 +2525,7 @@ _it_separ) ate (_ @t | |||
| _) ener En3 | |||
| g) ener (i @nEr | |||
| @@th) enes (_ =@ni:z | |||
| _) en (gel En | |||
| g) en (etic I2n | |||
| &) en (ger In | |||
| eng (lA INg | |||
| @@ -2771,6 +2792,7 @@ _it_separ) ate (_ @t | |||
| .group es | |||
| ess (_$w_alt2 @s | |||
| &) es (X$w_alt1+ Es | |||
| &) es (_S1i z | |||
| &es) es (_ i:z | |||
| ese (_ i:z | |||
| @@ -2778,7 +2800,7 @@ _it_separ) ate (_ @t | |||
| &f) es (_S1 s | |||
| &k) es (_S1 s | |||
| &p) es (_S1 s | |||
| &t) es (_S1 s | |||
| &t) es (_S1 z# | |||
| &c) es (_S1 %Iz | |||
| &g) es (_S1 %Iz | |||
| &ch) es (_S1 %Iz | |||
| @@ -2851,9 +2873,10 @@ _it_separ) ate (_ @t | |||
| eth (ic ET | |||
| _) ethno (@ ETnoU# | |||
| eth (ra 'i:T | |||
| eth (yl i:T | |||
| eth (ylen ET | |||
| eth (ylK i:T | |||
| ?3 ethyl (K ET@L | |||
| @C) eth (_S3e @T | |||
| _) etio i:tI@ | |||
| etta (_ 'Et@ | |||
| ette (_ 'Et | |||
| pal) ett (e @t | |||
| @@ -2945,6 +2968,7 @@ _it_separ) ate (_ @t | |||
| excav Eksk@v | |||
| _) exc (e %Eks | |||
| exc (i %Eks | |||
| _) ex (ecra Eks | |||
| _) ex (crem Eks | |||
| exce (llen Eks@ | |||
| C) ex (e Eks | |||
| @@ -2962,6 +2986,7 @@ _it_separ) ate (_ @t | |||
| exped (it Eksp@d | |||
| ex (pert Eks | |||
| experim %EkspErIm | |||
| _) ex (piat Eks | |||
| @) ex (ia 'Eks | |||
| _) exi (gen EksI | |||
| ss) ex (_ Iks | |||
| @@ -3184,7 +3209,7 @@ _it_separ) ate (_ @t | |||
| scr) i (ber aI | |||
| i (ber_ aI | |||
| t) ibe (t Ib'E | |||
| i (bilit I | |||
| i (bilit @ | |||
| b) i (ble_ aI | |||
| @) ible (_S4ev @b@L | |||
| @) ibles (_S5ev @b@Lz | |||
| @@ -3248,7 +3273,7 @@ _it_separ) ate (_ @t | |||
| ifier (_ IfaI3 | |||
| r) i (fl aI | |||
| st) i (fl aI | |||
| &) ify (_ =I2faI | |||
| &) ify (_ =I#faI | |||
| i (genous 'I | |||
| n) ihi aI|@ | |||
| _) i (h aI | |||
| @@ -3300,8 +3325,8 @@ _it_separ) ate (_ @t | |||
| ?8 C) iar aIa# | |||
| iar (iC i@3 | |||
| iar (ity Iar | |||
| &) iary =j@r%I | |||
| &l) iary =i@r%I | |||
| &) iary =j@ri | |||
| &l) iary =i@ri | |||
| _) ian i@n | |||
| &) ia (_N =i|@ | |||
| &) ia (_ =i@ | |||
| @@ -3455,7 +3480,6 @@ _it_separ) ate (_ @t | |||
| igno (ran Ign3 | |||
| ig (na Ig | |||
| _m) ig (ra aIg | |||
| _m) ig (rati %aIg | |||
| igu (e 'i:g | |||
| igu (_ 'i:g | |||
| @@ -3643,7 +3667,9 @@ _it_separ) ate (_ @t | |||
| _) in (tegri %In | |||
| inte (llec Int@ | |||
| _) inter (@P5 ,Int3 // prefix | |||
| _) inter (- ,Int3 | |||
| _) inter (AP5 ,Int@r | |||
| _) inter (cal %Int3: | |||
| _) inter (est Intr | |||
| interfer Int@f'i@3 | |||
| _) int (erio+ %Int | |||
| @@ -3988,7 +4014,7 @@ _it_separ) ate (_ @t | |||
| _) jes (ui dZEz | |||
| _) jh (A@ dZ | |||
| _) jiha (d dZI2hA: | |||
| _) joa (n@ dZoU'a | |||
| _) joa (nn dZoU'a | |||
| n) j (a_ j | |||
| j (ü j | |||
| @@ -4063,12 +4089,11 @@ _it_separ) ate (_ @t | |||
| &t) ling (_ _lIN | |||
| &l) ling (_S4vd IN | |||
| linux lInVks | |||
| listen lIs@n | |||
| ?3 _) lo (gK lO | |||
| @) lo (gous =l@ | |||
| lu (na lu: | |||
| @) ly (_S2i l%i | |||
| @l) ly (_S2 i | |||
| &) ly (_S2i l%i | |||
| &l) ly (_S2 i | |||
| f) ly (_ laI | |||
| ief) ly (_S2 l%i | |||
| ff) ly (_S2 l%i | |||
| @@ -4079,7 +4104,7 @@ multip) ly laI | |||
| &p) ly (_S2 l%i | |||
| p) ly (_ laI | |||
| _) ly (d lI | |||
| @) lEss (_S4i l@s | |||
| &) lEss (_S4i l@s | |||
| @) lEssly (_S6i l@sl%i | |||
| .group le | |||
| @@ -4140,8 +4165,8 @@ multip) ly laI | |||
| mbly mbl%I | |||
| o) mb (e m | |||
| _bo) mb (K m | |||
| _du) mb m | |||
| _) mc (C@ m@k | |||
| _du) mb (K m | |||
| _) mc (C@P2 m@k | |||
| _) mc (_C m@k | |||
| _) mc (_L05 m@ // c,g,k | |||
| _) mc (L05@ m@ | |||
| @@ -4332,6 +4357,7 @@ multip) ly laI | |||
| @@C) o (_ =oU | |||
| oa oU | |||
| oa (_ 'oU@ | |||
| oa (b oUa | |||
| g) oa (n_ oU@ | |||
| z) oa (n_ 'oU@ | |||
| br) oa (d O: | |||
| @@ -4432,6 +4458,7 @@ multip) ly laI | |||
| @l) oge (_ 0g | |||
| &) o (gen_ @ | |||
| ogeni (c oUdZ'EnI | |||
| o (genat '0 | |||
| o (genous '0 | |||
| o (geny '0 | |||
| r) o (ger 0 | |||
| @@ -4468,7 +4495,7 @@ multip) ly laI | |||
| orp) oise @s | |||
| o (ism oU | |||
| @) o (ist oU | |||
| oix (_ wa | |||
| oix (_ wA: | |||
| tr) o (jan oU | |||
| o (ku oU | |||
| o (ky_ oU | |||
| @@ -4594,7 +4621,7 @@ multip) ly laI | |||
| &) om (ise_ =@m | |||
| &) om (ize_ =@m | |||
| @) om (ist_ =@m | |||
| _s) om (n %0m | |||
| _s) om (na %0m | |||
| _) omni (@@P4 ,0mnI2 | |||
| _) omni 0mnI | |||
| _) omnipo 0mn'Ip@ | |||
| @@ -4830,7 +4857,7 @@ multip) ly laI | |||
| _f) ore (tel %o@ | |||
| @) or (iti 0r | |||
| @) or (ity 0r | |||
| _fav) orit 3I#t | |||
| _fav) orit @-rI#t | |||
| _) or (iC 0r | |||
| @t) ore (_ 3 | |||
| st) ore (_ o@ | |||
| @@ -4932,11 +4959,11 @@ multip) ly laI | |||
| &g) ot (_ @t | |||
| &rr) ot (_ @t | |||
| &) ot (_$w_alt2 @t | |||
| n) ot (a oUt | |||
| r) ot (a oUt | |||
| t) ot (a oUt | |||
| c) ot (an oUt | |||
| ot (at oUt | |||
| nn) ot (at @t | |||
| h) ote (l %oUtE | |||
| p) ot (enti @t | |||
| b) oth oUT | |||
| @@ -5027,7 +5054,6 @@ multip) ly laI | |||
| c) ou (pl V | |||
| &) our (_ 3 | |||
| np) our (_ o@ | |||
| &) oured 3d | |||
| ev) our (ed aU@ | |||
| our (n 3: | |||
| ?5 our (n VR | |||
| @@ -5256,6 +5282,7 @@ multip) ly laI | |||
| _) peregrin pEr@grIn | |||
| per (fec p3 | |||
| _) per (iC@@ p,Er | |||
| _) per (igr pEr | |||
| _) perini pErIn'i: | |||
| _) per (iph p3r | |||
| _) per (isc pEr | |||
| @@ -5390,6 +5417,7 @@ multip) ly laI | |||
| _) pro (sa pr@ | |||
| _) pro (sc pr@ | |||
| pro (spectA pr@ | |||
| _) pro (stra pr0 | |||
| _) pro (sumer pr%oU | |||
| pro (tec pr@ | |||
| pro (test pr@ | |||
| @@ -5500,6 +5528,7 @@ multip) ly laI | |||
| _) re (arm %ri: | |||
| _) re (au@P2 ,ri: | |||
| re (ck rE | |||
| _) re (clina rE | |||
| reco (g rEk@ | |||
| _) re (comP2 r,i: | |||
| _) re (conP2 ,ri: | |||
| @@ -5562,6 +5591,7 @@ multip) ly laI | |||
| repe (titiv rI2pE | |||
| re (pli rE | |||
| re (prim rE | |||
| _) re (prob rE | |||
| re (pt rE | |||
| _) re (puta rE | |||
| re (quis rE | |||
| @@ -5749,6 +5779,7 @@ multip) ly laI | |||
| 1_) st (_ | |||
| _) st (_ s@nt | |||
| stein staIn | |||
| i) st (en_ s | |||
| _) s (u s | |||
| &) s (u_ =s | |||
| ssue Su: | |||
| @@ -5760,7 +5791,7 @@ multip) ly laI | |||
| Ai) s (y z | |||
| s (_N z | |||
| @) s (_NS1m z | |||
| @) s (_$w_alt1S1 s | |||
| @) s (_$w_alt1 s | |||
| _BA) s (_N s | |||
| &se) s (_S1 I#z | |||
| &sse) s (_S2 I#z | |||
| @@ -5806,8 +5837,8 @@ multip) ly laI | |||
| su (burba s@ | |||
| su (bv s@ | |||
| substa (nt s@bsta | |||
| su (ccA s@ | |||
| su (ccul sV | |||
| su (cce s@ | |||
| su (cci s@ | |||
| su (ffic s@ | |||
| sugar SUg3 | |||
| re) su (mA zju: | |||
| @@ -5856,6 +5887,7 @@ multip) ly laI | |||
| _) tz (ar ts | |||
| t (h$w_alt4 t | |||
| t (A$w_alt4 t2 | |||
| t (E$w_alt4 t2 | |||
| t (ap_ t2 | |||
| ie) t (ary_ t2 | |||
| @@ -5875,6 +5907,7 @@ multip) ly laI | |||
| t (op_ t2 | |||
| @) town (_S4 t2aUn | |||
| tow (er t2aU | |||
| _) trans (migP5 trans | |||
| _) trans (nP5 trans | |||
| _) tri (A traI | |||
| _) trie traI | |||
| @@ -5969,12 +6002,12 @@ multip) ly laI | |||
| theo (logy TI'0 | |||
| theo (logis TI'0 | |||
| _) th (eC% T | |||
| _) th (us D | |||
| .group ti | |||
| &) tia (_ S@ | |||
| &s) tia (_ tS@ | |||
| propi) ti (a tI | |||
| ti (ac tI | |||
| &) tian (_ =S@n | |||
| &s) ti (an_ tS | |||
| @@ -5998,6 +6031,7 @@ multip) ly laI | |||
| tion (ality S@n | |||
| &) tious S=@s | |||
| AC) tive (_ =tIv | |||
| _) ti (trat t%aI | |||
| .group tu | |||
| @@ -6116,7 +6150,7 @@ contin) u ju: | |||
| _) u (lA u: | |||
| &f) ul (_ @L | |||
| ?8 &f) ul (_ Vl | |||
| s) ul (_ @L | |||
| &s) ul (_ @L | |||
| @) u (la_ =jU | |||
| @) u (lar =jU | |||
| @) u (late =jU | |||
| @@ -6369,6 +6403,7 @@ contin) u ju: | |||
| v v | |||
| v (v | |||
| _) v (la v | |||
| _) vr (A vr | |||
| @) va (len veI | |||
| _) vehem vi@m | |||
| @@ -6444,8 +6479,7 @@ contin) u ju: | |||
| xis (_ =ksIs | |||
| xus (_ =ks@s | |||
| xu (a =kSu: | |||
| lu) x (ur gZ | |||
| ?3 lu) xu (r gZU@ | |||
| lu) xu (r gZU@ | |||
| xure (_ kS%U@ | |||
| .group y | |||
| @@ -1,132 +1,190 @@ | |||
| // This file is UTF8 encoded | |||
| // Spelling-to-phoneme words for Basque | |||
| b be | |||
| c ze | |||
| d de | |||
| f efe | |||
| g ge | |||
| h atSe | |||
| j xota | |||
| k ka | |||
| l ele | |||
| m eme | |||
| n ene | |||
| ñ en^e | |||
| p pe | |||
| q ku | |||
| r eR2e | |||
| s ese | |||
| t te | |||
| v uBe | |||
| w uBe||bikoitza | |||
| x iSa | |||
| y i||grekoa | |||
| z zeta | |||
| _a a | |||
| _e e | |||
| _i i | |||
| _o o | |||
| _u u | |||
| // numbers | |||
| _0 zer'o | |||
| _1 b'at | |||
| _2 b'i | |||
| _3 hir'u | |||
| _4 l'aU | |||
| _5 b'ost | |||
| _6 s'eI | |||
| _7 zazp'i | |||
| _8 zort'i | |||
| _9 beD'eratzi | |||
| _10 am'aR2 | |||
| _11 am'aIka | |||
| _12 amaB'i | |||
| _13 ama'ir,u | |||
| _14 amal'aU | |||
| _15 amaB'ost | |||
| _16 amas'eI | |||
| _17 amazazp'i | |||
| _18 emezort'i | |||
| _19 emeretz'i | |||
| _20 hoQ'eI | |||
| _2X hoQ'eIta | |||
| _40 b'eR2oQeI | |||
| _4X b'eR2oQeIta2 | |||
| _60 ir'uroQeI | |||
| _6X ir'uroQeIta2 | |||
| _80 l'aUroQeI | |||
| _8X l'aUroQeIta2 | |||
| _1C e'un | |||
| _2C b'eR2eun | |||
| _0C R2e,un | |||
| _0M1 mil'a | |||
| _0M2 mil^'i;oI | |||
| _0and eta | |||
| _dpt _koma | |||
| // names of punctuation and symbol characters | |||
| // functuion words | |||
| // conjunctions | |||
| eta $u+ $pause // and | |||
| bainan $pause | |||
| // pronouns | |||
| ni $u+ | |||
| zu $u+ | |||
| hura $u+ | |||
| gu $u+ | |||
| zuek $u+ | |||
| haiek $u+ | |||
| nire $u+ // possessive | |||
| zure $u+ | |||
| haren $u+ | |||
| bere $u+ | |||
| gure $u+ | |||
| zuen $u+ | |||
| haien $u+ | |||
| beren $u+ | |||
| hau $u+ // this | |||
| hori $u+ // that | |||
| hura $u+ // that (further) | |||
| // auxillary verbs | |||
| izan $u // to be | |||
| naiz $u | |||
| zara $u | |||
| da $u | |||
| gara $u | |||
| zarete $u | |||
| dira $u | |||
| egon $u // to be | |||
| nago $u | |||
| zaude $u | |||
| gaude $u | |||
| zaudete $u | |||
| daute $u | |||
| // gramatical suffixes which can appear as words appended to numbers etc. | |||
| // Should these be in eu_rules ?? | |||
| a $u | |||
| an $u | |||
| ean $u | |||
| eko $u | |||
| era $u | |||
| ko $u | |||
| etxe $1 $only | |||
| // This file is UTF8 encoded | |||
| // Spelling-to-phoneme words for Basque | |||
| b be | |||
| c ze | |||
| d de | |||
| f 'efe | |||
| g ge | |||
| h 'atSe | |||
| j J'ota | |||
| k ka | |||
| l 'ele | |||
| m 'eme | |||
| n 'ene | |||
| ñ 'en^e | |||
| p pe | |||
| q ku | |||
| r 'eR2e | |||
| s 'ese | |||
| t 'te | |||
| v 'uBe | |||
| w 'uBe||bikoitza | |||
| x 'iSa | |||
| y i||gr'ekoa | |||
| z 'z'eta | |||
| _a a | |||
| _e e | |||
| _i i | |||
| _o o | |||
| _u u | |||
| // numbers | |||
| _0 zer'o | |||
| _1 b'at | |||
| _2 b'i | |||
| _3 'iru | |||
| _4 l'aU | |||
| _5 b'ost | |||
| _6 s'eI | |||
| _7 z'azpi | |||
| _8 z'ortzi | |||
| _9 beD'eratzi | |||
| _10 am'aR2 | |||
| _11 am'aIka | |||
| _12 am'aBi | |||
| _13 am'aIru | |||
| _14 am'alaU | |||
| _15 am'aBost | |||
| _16 am'aseI | |||
| _17 am'azazpi | |||
| _18 em'ezortzi | |||
| _19 em'eretzi | |||
| _20 oQ'eI | |||
| _2X oQeIta | |||
| _40 beR2oQ'eI | |||
| _4X beR2oQeIta | |||
| _60 iruroQ'eI | |||
| _6X iruroQeIta | |||
| _80 laUroQ'eI | |||
| _8X laUroQeIta | |||
| _1C e'un | |||
| _2C beR2'eun | |||
| _3C ir'ureun | |||
| _4C laur'eun | |||
| _5C bost'eun | |||
| _6C sei'eun | |||
| _7C zazp'ieun | |||
| _8C zortz'ieun | |||
| _9c bederatz'ieun | |||
| _0C e,un | |||
| _0M1 m'il^a | |||
| _0M2 mil^'ioI | |||
| _1M2 mil^'ioI||bat | |||
| _0and eta | |||
| _dpt _koma | |||
| // names of punctuation and symbol characters | |||
| _. p'untu | |||
| _, k'oma | |||
| _- gid'oI | |||
| _! arr'idura | |||
| _? gald'era | |||
| _: b'i||p'untu | |||
| _; p'untu||eta||k'oma | |||
| // functuion words | |||
| // conjunctions | |||
| eta $u+ $pause // and | |||
| baina $u+ $pause | |||
| // pronouns | |||
| ni $1 | |||
| zu $1 | |||
| hura $1 | |||
| gu $1 | |||
| zuek $1 | |||
| haiek $1 | |||
| nire $u+ | |||
| zure $u+ | |||
| haren $u+ | |||
| bere $u+ | |||
| gure $u+ | |||
| zuen $u+ | |||
| haien $u+ | |||
| beren $u+ | |||
| hau $1 // this | |||
| honen $1 | |||
| hauen $1 | |||
| hori $1 // that | |||
| horren $1 // genitive | |||
| hura $1 // that (further) | |||
| haien $1 // genitive | |||
| // Some auxiliary verbs | |||
| gara $2 | |||
| zara $2 | |||
| dira $2 | |||
| // gramatical suffixes which can appear as words appended to numbers etc. | |||
| // Should these be in eu_rules ?? | |||
| a $u | |||
| ak $u | |||
| an $u | |||
| ean $u | |||
| etan $u | |||
| eko $u | |||
| etarako $u | |||
| ko $u | |||
| era $u | |||
| ra $u | |||
| etara $u | |||
| // Other words (mostly nouns) | |||
| // Bisillabic words which have the stres always in the first syllable | |||
| kaixo $1 | |||
| testu $1 | |||
| lehia $1 | |||
| patu $1 | |||
| // Bisillabic words whitch get misspronounced with the suffix list | |||
| etxe $1 $only | |||
| kale $1 $only | |||
| aste $1 $only | |||
| urte $1 $only | |||
| // j as [x] | |||
| jipoi x'ipoi | |||
| // other | |||
| aerobiko $3 | |||
| aerodinamiko $5 | |||
| aerodinamika $5 | |||
| aerodromo $3 | |||
| aerometro $3 | |||
| aeromodelismo $6 | |||
| aeronauta $4 | |||
| aeronautika $4 | |||
| aeronautiko9 $4 | |||
| aerosol $4 | |||
| aerostatika $4 | |||
| aerostato $4 | |||
| adrenalina adrenalin2a | |||
| aharraus $2 | |||
| aharrausika $2 | |||
| ahur aur $only | |||
| ahurr auR2 | |||
| // Abbreviations | |||
| adib ad'ibidez $hasdot | |||
| // proper names and surnames | |||
| juan xw'an | |||
| jorge x'orxe | |||
| jose x'ose | |||
| josé x'os'e | |||
| joaquín xoak'in | |||
| san $u | |||
| santo $u | |||
| aristoteles $3 | |||
| hume x'iUm | |||
| nietztsche n'itSe | |||
| abako $1 | |||
| @@ -1,147 +1,250 @@ | |||
| // This file is UTF8 encoded | |||
| // Spelling-to-phoneme rules for Basque | |||
| .group a | |||
| a a | |||
| ai aI | |||
| au aU | |||
| .group b | |||
| b b | |||
| .group c | |||
| c k | |||
| c (e s | |||
| c (i s | |||
| .group d | |||
| d d | |||
| Ki) d (A J | |||
| dd J | |||
| A) d (A D // ?? | |||
| .group e | |||
| e e | |||
| ei eI | |||
| eu eU | |||
| &) ek (_S2 ek | |||
| .group f | |||
| f f | |||
| .group g | |||
| g g | |||
| A) g (A Q // ?? | |||
| .group h | |||
| h // silent | |||
| .group i | |||
| i i | |||
| .group j | |||
| j J // try [x] [J] [j] [J^] [Z] [S] | |||
| .group k | |||
| k k | |||
| .group l | |||
| l l | |||
| ll l^ | |||
| Ki) l (A l^ | |||
| .group m | |||
| m m | |||
| .group n | |||
| n n | |||
| Ki) n (A n^ | |||
| .group ñ | |||
| ñ n^ | |||
| .group o | |||
| o o | |||
| oi oI | |||
| .group p | |||
| p p | |||
| .group q | |||
| q k | |||
| qu kw | |||
| que (_ k | |||
| .group r | |||
| r r | |||
| _) r R2 | |||
| r (_ R2 | |||
| rr R2 | |||
| .group s | |||
| s s | |||
| .group t | |||
| t t | |||
| Ki) t (A c | |||
| ts ts | |||
| tt c | |||
| tx tS | |||
| tz tz | |||
| .group u | |||
| u u | |||
| .group v | |||
| v v | |||
| .group w | |||
| w w | |||
| .group x | |||
| x S | |||
| .group y | |||
| y j | |||
| K) y (K i | |||
| .group z | |||
| z z | |||
| .group | |||
| ç s | |||
| ü Y | |||
| // This file is UTF8 encoded | |||
| // Spelling-to-phoneme rules for Basque | |||
| .L01 b d g | |||
| .L02 e i | |||
| .group a | |||
| a a | |||
| ai aI | |||
| ahi aI | |||
| au aU | |||
| ahu aU | |||
| a (_S1t a | |||
| ak (_S2t ak | |||
| ari (_S3t ari | |||
| aren (_S4t a**en | |||
| arekin (_S6t a**ekin | |||
| arentzat (_S8t a**entzat | |||
| arentzako (_S9t arentzako | |||
| an (_S2t an | |||
| atik (_S4t atik | |||
| ara (_S3t a**a | |||
| arat (_S4t arat | |||
| atatik (_S6t atatik | |||
| atara (_S5t ata**a | |||
| atarat (_S5t atarat | |||
| ako (_S3t ako | |||
| atako (_S5t atako | |||
| araino (_S6t a**ain^o | |||
| ataraino (_S8t ata**an^o | |||
| arantz (_S6t a**antz | |||
| atarantz (_S8t a**antz | |||
| agana (_S5t agana | |||
| arengana (_S8t a**engana | |||
| arenganaino (_s11 a**enganain^o | |||
| arengatik (_S9t a**engatik | |||
| atzat (_S5t atzat | |||
| .group b | |||
| b b | |||
| _ez_) b (A p' | |||
| .group c | |||
| c k | |||
| c (L02 T | |||
| .group d | |||
| d d | |||
| dd J | |||
| A) d (A D // ?? | |||
| _ez_) d (A t' | |||
| .group e | |||
| e e | |||
| ei eI | |||
| ehi eI | |||
| l) ehi (A eI | |||
| eu eU | |||
| ek (_S2t ek | |||
| ei (_S2t eI | |||
| en (_S2t en | |||
| ean (_S3t ean | |||
| etan (_S4t etan | |||
| etatik (_S6t etatik | |||
| etara (_S5t eta**a | |||
| erat (_S4t erat | |||
| etako (_S5t etako | |||
| eko (_S3t eko | |||
| etarako (_S7t etarako | |||
| etarantz (_S8t eta**antz | |||
| etaraino (_S8t eta**aino | |||
| engana (_S6t engana | |||
| entzat (_S6t entzat | |||
| entzako (_S7t entzako | |||
| engatik (S7 engatik | |||
| ekin (_S4t ekin | |||
| ekiko (_S5t ekiko | |||
| ez (_S2t ez | |||
| etaz (_S4t etaz | |||
| .group f | |||
| f f | |||
| .group g | |||
| g g | |||
| A) g (A Q // ?? | |||
| _ez_) g (A k' | |||
| gana (_S4t gana | |||
| go (_S2t go | |||
| .group h | |||
| h // silent | |||
| zi) h (o x | |||
| .group i | |||
| i i | |||
| K) i (_S1t i | |||
| ad) i (eraz j | |||
| le) i (h j | |||
| arraz) i (on j | |||
| .group j | |||
| j J // try [x] [J] [j] [J^] [Z] [S] | |||
| ad) j (udika x | |||
| .group k | |||
| k k | |||
| ko (_S2t ko | |||
| .group l | |||
| l l | |||
| ll l^ | |||
| _ez_) l (A l' | |||
| .group m | |||
| m m | |||
| .group n | |||
| n n | |||
| n (_S1t n | |||
| adrenali) n n2 | |||
| admi) n (istr n2 | |||
| .group o | |||
| o o | |||
| oi oI | |||
| .group p | |||
| p p | |||
| .group q | |||
| q k | |||
| .group r | |||
| r r | |||
| _) r R2 | |||
| rr R2 | |||
| A) ri (_S2t ri | |||
| ren (_S3t ren | |||
| ra (_S2t ra | |||
| rat (_S3 t rat | |||
| rantz (_S5t rantz | |||
| raino (_S5t raino | |||
| rako (_S4t rako | |||
| rentzat (_S7t rentzat | |||
| rentzako (_S8t rentzako | |||
| rekin (_S5t rekin | |||
| rengan (_S6t rengan | |||
| rengana (_S7t rengana | |||
| rengandik (_S9t rengandik | |||
| rengatik (_S8t rengatik | |||
| .group s | |||
| s s | |||
| .group t | |||
| t t | |||
| ts ts | |||
| tt c | |||
| tx tS | |||
| tz tz | |||
| tan (_S3t tan | |||
| tara (_S4 t tara | |||
| tarat (_S5t tarat | |||
| tik (_S3t tik | |||
| tatik (_S5t tatik | |||
| taz (_S3t taz | |||
| tu (_S2t tu | |||
| tuko (_S4t tuko | |||
| tzen (_S4t tzen | |||
| ten (_S3t ten | |||
| .group u | |||
| u u | |||
| .group v | |||
| v b | |||
| .group w | |||
| w u | |||
| .group x | |||
| x S | |||
| .group y | |||
| y jj | |||
| .group z | |||
| z z | |||
| _e) z (_L01 %z | |||
| _e) z (_l | |||
| z (_S1t z | |||
| .group | |||
| á ''a | |||
| é ''e | |||
| í ''i | |||
| ó ''o | |||
| ú ''u | |||
| ç s | |||
| ü Y | |||
| ñ n^ | |||
| @@ -81,7 +81,7 @@ | |||
| .group c | |||
| c ts | |||
| ch h | |||
| ch x | |||
| ch (i C | |||
| chi (A hj | |||
| psy) chi (a hi | |||
| @@ -120,6 +120,11 @@ _− m'enUs | |||
| ½ m'eIU | |||
| ¾ tRes#kw'a*@-tUs# | |||
| ® xeZistR'adU | |||
| ↑ s'Et&as'im& | |||
| ↓ s'Et&ab'aISU | |||
| ← s'Et&aes#k'e*@-d& | |||
| ?2 → s'Et&adZi*eIt& | |||
| ?1 ™ m'a*@-k&xeZiSt'ad& | |||
| ?2 ™ m'a*@-k&xeZistR'ad& | |||
| _, v'irgul& | |||
| @@ -694,14 +699,18 @@ ampola $alt2 | |||
| ampulheta $alt2 | |||
| anchova $alt2 | |||
| andorra $alt2 | |||
| andrea $alt | |||
| andreia $alt | |||
| antonieta $alt2 | |||
| apego $alt2 $noun | |||
| apelo $alt2 $noun | |||
| apelos $alt2 | |||
| aposto $alt $verb | |||
| aperto $alt2 $noun | |||
| apertos $alt2 | |||
| apneia $alt | |||
| apoio $alt $verb | |||
| aqueia $alt | |||
| arredores $alt | |||
| arremesso $alt2 $noun | |||
| arrocho $alt2 $noun | |||
| @@ -722,9 +731,12 @@ açores $alt2 | |||
| bairro b'aIxU | |||
| baitola $alt2 | |||
| balancete $alt2 | |||
| bangladesh $alt | |||
| banquete $alt2 | |||
| barreto $alt2 | |||
| basileia $alt | |||
| bastonete $alt2 | |||
| baviera $alt | |||
| beco $alt2 | |||
| besta $alt2 | |||
| beça $alt | |||
| @@ -753,14 +765,17 @@ broto $alt2 $noun | |||
| buceta $alt2 | |||
| cabresto $alt2 | |||
| cacete $alt2 | |||
| cacoete $alt2 | |||
| caderneta $alt2 | |||
| cadete $alt2 | |||
| caibro k'aIbRU | |||
| cãibra k'&~IbR& | |||
| caixeta $alt2 | |||
| caldeia $alt | |||
| camelha $alt | |||
| camiseta $alt2 | |||
| canaleta $alt2 | |||
| cananeia $alt | |||
| canhoto $alt2 | |||
| capacete $alt2 | |||
| caractere $alt | |||
| @@ -775,18 +790,16 @@ catequeses $alt | |||
| catorze $alt2 | |||
| cavalete $alt2 | |||
| cebola $alt2 | |||
| cedro $alt | |||
| cefaleia $alt | |||
| centopeia $alt | |||
| cerebelo $alt2 | |||
| cerca $alt $verb | |||
| cerco $alt $verb | |||
| cetro $alt | |||
| chamego $alt2 $verb | |||
| chamegos $alt2 | |||
| chamego $alt2 | |||
| chamego $alt $verb | |||
| chapeleta $alt2 | |||
| chaveta $alt2 | |||
| chefe $alt | |||
| choco $alt2 $noun | |||
| choça $alt | |||
| chofer $alt | |||
| @@ -823,7 +836,6 @@ controles $alt2 | |||
| controles $alt $verb | |||
| controlo $alt2 $noun | |||
| conveses $alt | |||
| copta $alt | |||
| coreia $alt | |||
| cores $alt2 | |||
| cores $alt $verb | |||
| @@ -835,8 +847,10 @@ coro $alt $verb | |||
| corpete $alt2 | |||
| corpos $alt | |||
| corto $alt | |||
| corveia $alt | |||
| corveta $alt2 | |||
| corvos $alt | |||
| cosme $alt | |||
| costeleta $alt2 | |||
| coto $alt2 | |||
| cotovelo $alt2 | |||
| @@ -844,11 +858,14 @@ cozem $alt | |||
| cratera $alt | |||
| crede $alt2 | |||
| credo $alt | |||
| crimeia $alt | |||
| decoreba $alt | |||
| decoro $alt2 $noun | |||
| degelo $alt2 | |||
| desaforo $alt2 | |||
| desamores $alt2 | |||
| desapego $alt2 $noun | |||
| desapego $alt2 | |||
| desapego $alt $verb | |||
| desassossego $alt2 $noun | |||
| desconfortos $alt2 | |||
| desconsolo $alt2 $noun | |||
| @@ -857,6 +874,7 @@ descordo $alt | |||
| descorno $alt | |||
| desemprego $alt2 | |||
| desemprego $alt $verb | |||
| desenvolto $alt2 | |||
| desespero $alt2 | |||
| desespero $alt $verb | |||
| desfecho $alt2 | |||
| @@ -869,6 +887,8 @@ desse $alt2 | |||
| desse $alt $verb | |||
| deste $alt2 | |||
| deste $alt $verb | |||
| destempero $alt2 $noun | |||
| destemperos $alt2 | |||
| desterro $alt2 | |||
| destroem $alt | |||
| deteriore $alt | |||
| @@ -892,7 +912,8 @@ doso $alt | |||
| doze $alt2 | |||
| dueto $alt2 | |||
| edson $alt | |||
| elixir eliSir | |||
| egeia $alt | |||
| eleia $alt | |||
| emborco $alt | |||
| emprego $alt2 | |||
| emprego $alt2 $noun | |||
| @@ -900,6 +921,7 @@ encasqueta $alt | |||
| encosto $alt $verb | |||
| endereço $alt $verb | |||
| endoide $alt2 | |||
| eneias $alt | |||
| enforco $alt | |||
| engodo $alt2 | |||
| engordo $alt | |||
| @@ -976,6 +998,7 @@ força $alt $verb | |||
| forço $alt | |||
| formos $alt2 | |||
| forro $alt $verb | |||
| fosso $alt2 | |||
| frescores $alt2 | |||
| frevo $alt2 | |||
| fulgores $alt2 | |||
| @@ -993,7 +1016,6 @@ gesso $alt2 | |||
| gloso $alt | |||
| gonorreia $alt | |||
| gol gow | |||
| golpe $alt | |||
| gorda $alt2 | |||
| gorjeta $alt2 | |||
| gororoba $alt | |||
| @@ -1003,6 +1025,7 @@ gota $alt2 | |||
| governo $alt2 | |||
| governo $alt $verb | |||
| gozo $alt2 $noun | |||
| gozos $alt2 | |||
| graveto $alt2 | |||
| groselha $alt | |||
| grosso $alt2 | |||
| @@ -1028,6 +1051,7 @@ jogo $alt $verb | |||
| jogos $alt | |||
| joguete $alt2 | |||
| judeia $alt | |||
| jurubeba $alt | |||
| lacerda $alt | |||
| lagosta $alt2 | |||
| lambreta $alt2 | |||
| @@ -1043,13 +1067,11 @@ lopes $alt | |||
| lutero $alt | |||
| macete $alt2 | |||
| maioneses $alt | |||
| manopla $alt | |||
| maniçoba $alt | |||
| marieta $alt2 | |||
| mariposa $alt2 | |||
| megera $alt | |||
| melhor $alt | |||
| menor $alt | |||
| meta $alt $noun | |||
| metro $alt | |||
| minueto $alt2 | |||
| @@ -1064,7 +1086,6 @@ moem $alt | |||
| mofo $alt $verb | |||
| mogno $alt | |||
| molho $alt2 $noun | |||
| monera $alt | |||
| montenegro $alt2 | |||
| mor $alt | |||
| morcego $alt2 | |||
| @@ -1077,6 +1098,7 @@ namoro $alt2 $noun | |||
| naquela $nounf | |||
| naquele $alt2 $nounf | |||
| nervo $alt2 | |||
| niceia $alt | |||
| ninfeta $alt2 | |||
| nitreto $alt2 | |||
| nojo $alt2 | |||
| @@ -1097,8 +1119,11 @@ pacheco $alt2 | |||
| paexa paeSa | |||
| paella pa'el^& | |||
| palacete $alt2 | |||
| palermo $alt | |||
| palimpsesto $alt2 | |||
| palheta $alt2 | |||
| palhoça $alt | |||
| panaceia $alt | |||
| pangeia $alt | |||
| pantera $alt | |||
| papoco $alt2 $noun | |||
| @@ -1106,7 +1131,7 @@ paradoxo $alt | |||
| parede $alt2 | |||
| pateta $alt | |||
| peba $alt | |||
| pedra $alt | |||
| pedro $alt2 | |||
| peixoto $alt2 | |||
| pela $alt2 | |||
| pelo $alt2 | |||
| @@ -1120,6 +1145,7 @@ pesadelo $alt2 | |||
| peses $alt | |||
| peseta $alt2 | |||
| peso $alt $verb | |||
| pigmeia $alt | |||
| piloto $alt2 $noun | |||
| pilotos $alt2 | |||
| pior $alt | |||
| @@ -1130,6 +1156,7 @@ plebeia $alt | |||
| poderem $alt2 | |||
| polca $alt | |||
| pompeia $alt | |||
| popa $alt2 | |||
| porcos $alt | |||
| porque $alt2 | |||
| porra $alt2 | |||
| @@ -1153,6 +1180,7 @@ quitinete $alt | |||
| quinteto $alt2 | |||
| ramalhete $alt2 | |||
| rancores $alt2 | |||
| ranheta $alt2 | |||
| raposa $alt2 | |||
| recomeço $alt $verb | |||
| reconstroem $alt | |||
| @@ -1228,10 +1256,10 @@ sulfureto $alt2 | |||
| super s'Uper | |||
| suporto $alt | |||
| suor suOr | |||
| tabefe $alt | |||
| tambores $alt2 | |||
| tapera $alt | |||
| tapete $alt2 | |||
| tebas $alt | |||
| temores $alt2 | |||
| tempero $alt2 $noun | |||
| tenores $alt2 | |||
| @@ -1249,6 +1277,7 @@ torno $alt $verb | |||
| tornozelo $alt2 | |||
| torre $alt2 $noun | |||
| torres $alt2 | |||
| torreta $alt2 | |||
| torro $alt | |||
| toso $alt | |||
| totens $alt | |||
| @@ -1264,6 +1293,7 @@ tropa $alt | |||
| tropeço $alt2 $noun | |||
| trombeta $alt2 | |||
| ureia $alt | |||
| uretra $alt | |||
| vanessa $alt2 | |||
| vareta $alt2 | |||
| vera $alt | |||
| @@ -1277,7 +1307,6 @@ voga $alt | |||
| voice $alt | |||
| xarope $alt | |||
| xereta $alt2 | |||
| xerox S'E*Oks | |||
| xeroxes $alt | |||
| zelo $alt2 $noun | |||
| zorra $alt2 | |||
| @@ -1314,7 +1343,7 @@ doc d'Ok | |||
| ?2 designer dez'aIner | |||
| ?2 designers dez'aIners | |||
| ?2 desktops deskt'Ops | |||
| dj d,i:dZ'eI | |||
| ?1 dj d,i:dZ'eI | |||
| ?2 diesel dZ'izEU | |||
| ?2 doha d'ox& | |||
| ?1 down d'a,wn | |||
| @@ -1349,6 +1378,7 @@ get gEt | |||
| ?1 hardware 'ard,w'Er- | |||
| ?2 hardware h'ardwe@- | |||
| happy x'Epy | |||
| ?2 haxixe xaS'iSy | |||
| ?1 home 'omy | |||
| ?2 home h'owmi | |||
| hot xOt | |||
| @@ -1424,9 +1454,10 @@ upgrade &pgR'eId | |||
| upload &pl'oud | |||
| ?2 web w'Eb | |||
| writer r'aIter | |||
| xerox S'E*Oks | |||
| ?1 yahoo 'i,ah'u | |||
| ?2 yahoo iah'u | |||
| ?1 yes j'Es | |||
| yes j'Es | |||
| // common person names | |||
| @@ -1470,7 +1501,6 @@ mac mEk | |||
| ?2 microsoft m'aIkRows'Oft | |||
| ?1 movie m'uvi | |||
| ?1 nero n'Eru | |||
| ?2 nero n'ErU | |||
| ?2 netbooks nEtbUks | |||
| ?2 notebook nowtbUk | |||
| ?2 notebooks nowtbUks | |||
| @@ -1,4 +1,4 @@ | |||
| // translation rules Brazilian | |||
| // translation rules Brazilian | |||
| // This file is UTF-8 encoded | |||
| // Options | |||
| @@ -22,6 +22,7 @@ | |||
| .L05 r ra ram re rem rde rmo | |||
| .L06 r ra ram ste sse ssem re rem rmo | |||
| .L07 sse ssem ste | |||
| .L08 a o | |||
| .group a | |||
| @@ -201,7 +202,7 @@ | |||
| e (dL02_ E | |||
| e (fa_ E | |||
| e (fL04_ E | |||
| e (gL04_ E | |||
| @@ -218,16 +219,16 @@ | |||
| ib) e (rL04_ E | |||
| d) e (rL04_ E | |||
| eb) e (L07_ e // recebeste, etc. | |||
| ed) e (rL04_ e | |||
| eg) e (L07_ e // elegeste, etc. | |||
| _@o) e (L07_ e // doeste, etc. | |||
| iv) e (rL04_ E | |||
| pod) e (rA_ e | |||
| @s) e (L05_ E | |||
| p) e (rL04_ E | |||
| f) e (rL04_ E | |||
| n) e (rL04_ E | |||
| p) e (rL04_ E | |||
| e (quL02_ E | |||
| e (rbL04_ E | |||
| e (rgL04_ E | |||
| @@ -241,19 +242,12 @@ | |||
| ?2 ee (C_ i | |||
| ?2 C) e (em_ e | |||
| e (stL04_ E | |||
| e (strL04_ E | |||
| e (rme_ E | |||
| e (rnL04_ E | |||
| e (rtL04_ E | |||
| e (rrL04_ E | |||
| e (rvL04_ E | |||
| e (tL04_ E | |||
| m) e (tL03_ e | |||
| An) e (tA_ e | |||
| @@ -345,6 +339,7 @@ | |||
| ef) e (tuL02_ e | |||
| t) e (tra E | |||
| e (drL04_ E | |||
| âC) e (C@ e | |||
| âCC) e (C@ e | |||
| @@ -357,6 +352,7 @@ | |||
| éCC) e (CA_ e | |||
| éCCC) e (C@ e | |||
| ?2 íC) el (_ eU | |||
| í) e (C@ e | |||
| íC) e (C@ e | |||
| íCC) e (C@ e | |||
| óC) e (C@ e | |||
| @@ -375,6 +371,8 @@ | |||
| _pud) e (L05_ E | |||
| _exag) e (L05_ E | |||
| _mulh) e (L05_ E | |||
| _chancel) e (L05_ E | |||
| vi) e (L05_ E | |||
| _talh) e (L05_ E | |||
| _troux) e (L05_ E | |||
| @m) e (L06_ e // temeram, etc. | |||
| @@ -384,19 +382,15 @@ _troux) e (L05_ E | |||
| diss) e (L06_ E // contra- | |||
| romp) e (L06_ e // cor- inter- | |||
| _houv) e (L06_ E | |||
| _escond) e (L06_ e | |||
| respond) e (L06_ e | |||
| sCond) e (L06_ e // esconderam, etc. | |||
| constrang) e (L07_ e | |||
| eb) e (L07_ e // recebeste, etc. | |||
| eg) e (L07_ e // elegeste, etc. | |||
| _@o) e (L07_ e // doeste, etc. | |||
| _cr) e (L07_ e | |||
| _dev) e (L07_ e | |||
| bat) e (L07_ e // re- com- | |||
| ced) e (L07_ e // pro- con- su- | |||
| met) e (L07_ e // meteste, cometeste, etc. | |||
| mex) e (L07_ e | |||
| _requer) e (L07_ e | |||
| _requer) e (L07_ e | |||
| prouv) e (L07_ e | |||
| mov) e (L07_ e // re- co- | |||
| olv) e (L07_ e // devolveste, etc. | |||
| @@ -408,8 +402,8 @@ precav) e (L07_ e | |||
| _coz) e (L07_ e | |||
| _val) e (L07_ e | |||
| colh) e (L07_ e // & es- | |||
| _lamb) e (L07_ e | |||
| _prov) e (L07_ e | |||
| _lamb) e (L07_ e | |||
| _prov) e (L07_ e | |||
| ench) e (L07_ e // pre- | |||
| vert) e (L07_ e // in- re- con- | |||
| ergu) e (L07_ e | |||
| @@ -427,11 +421,12 @@ _troux) e (L07_ E | |||
| _amanc) e (bL03_ E | |||
| qu) e (brL04_ E | |||
| _perp) e (trL04_ E | |||
| _assev) e (rL04_ E | |||
| sev) e (rL04_ E | |||
| _imp) e (trL04_ E | |||
| cel) e (brL04_ E | |||
| _sop) e (sL04_ E | |||
| _C) e (bre_ E | |||
| _barb) e (tA_ e | |||
| _boch) e (chL04_ e | |||
| _ex) e (crL04_ E | |||
| impr) e (gnL04_ E | |||
| @@ -440,56 +435,47 @@ _amanc) e (bL03_ E | |||
| _sob) e (rbL03_ e | |||
| _pr) e (dL03_ E | |||
| _arr) e (dL03_ E | |||
| _emp) e (drL03_ E | |||
| _enc) e (dL03_ E | |||
| _api) e (dL03_ E | |||
| _enc) e (dL03_ E | |||
| _api) e (dL03_ E | |||
| _depr) e (dL03_ E | |||
| _hosp) e (dL03_ E | |||
| _enver) e (dL03_ E | |||
| _) e (dnL03_ E | |||
| _gr) e (gL03_ e | |||
| _gal) e (gL03_ e | |||
| _alvin) e (grL03_ e | |||
| _) e (dnL08_ E | |||
| _gr) e (gL08_ e | |||
| _gal) e (gL08_ e | |||
| _lanc) e (tA_ e | |||
| menorr) ei (a_ EI | |||
| _pel) e (gL03_ e | |||
| _n) e (grL03_ e | |||
| _pel) e (gL08_ e | |||
| n) e (grL08_ e | |||
| estr) ei (L04_ EI | |||
| _confed) e (rL04_ E | |||
| _r) e (jL03_ E | |||
| _inv) e (jL04_ E | |||
| _panfl) e (tL04_ e | |||
| _v) e (lhL03_ E | |||
| _v) e (lhL08_ E | |||
| _gr) e (lhL04_ E | |||
| _tataran) e (tA_ E | |||
| _tetran) e (tA_ E | |||
| _trin) e (tA_ E | |||
| _tataran) e (tL08_ E | |||
| _tetran) e (tL08_ E | |||
| _trin) e (tL08_ E | |||
| _caC) e (lo_ e | |||
| _porr) e (tA_ e | |||
| _porr) e (tA_ e | |||
| _livr) e (tA_ e | |||
| ?2 el (ton_ 'EU | |||
| ad) e (quL04_ E | |||
| _ing) e (rL02_ E | |||
| _dig) e (rL02_ E | |||
| _m) e (rL03_ E | |||
| _sev) e (rL03_ E | |||
| _reit) e (rL04_ E | |||
| _sinc) e (rL03_ E | |||
| _sinc) e (rL08_ E | |||
| _g) e (rL04_ E | |||
| _z) e (rL04_ E | |||
| qu) e (rL04_ E // re- | |||
| _on) e (rL04_ E | |||
| gen) e (rL04_ E // de- re- | |||
| _alt) e (rL04_ E | |||
| _enc) e (rL04_ E | |||
| _esm) e (rL04_ E | |||
| _esm) e (rL04_ E | |||
| _min) e (rL04_ E | |||
| _sug) e (rL04_ E | |||
| _tol) e (rL04_ E | |||
| _ven) e (rL04_ E | |||
| acel) e (rL04_ E // des- | |||
| eson) e (rL04_ E | |||
| _apod) e (rL04_ E | |||
| _enum) e (rL04_ E | |||
| _exub) e (rL04_ E | |||
| @@ -497,23 +483,21 @@ _adult) e (rL04_ E | |||
| _aglom) e (rL04_ E | |||
| _dilac) e (rL04_ E | |||
| _encarc) e (rL04_ E | |||
| _incin) e (rL04_ E | |||
| _persev) e (rL04_ E | |||
| _refrig) e (rL04_ E | |||
| _c) e (rcL02_ E | |||
| _ex) e (rcL02_ E | |||
| _alic) e (rcL02_ E | |||
| _esqu) e (rdL03_ e | |||
| _esqu) e (rdL08_ e | |||
| _C) e (rdL04_ E | |||
| _des) e (rdL04_ E | |||
| _oblit) e (rL04_ E | |||
| _oblit) e (rL04_ E | |||
| s_colh) e (res_ E | |||
| _) e (rgL03_ e | |||
| _re) e (rgL03_ e | |||
| _so) e (rgL03_ e | |||
| sp) e (rma_ E | |||
| e (rquL02_ E | |||
| _bez) e (rrL03_ e | |||
| _beC) e (rrL08_ e | |||
| v) e (rtL03_ e // con- re- in- | |||
| _f) e (rvL03_ e | |||
| _alic) e (rçL03_ E | |||
| @@ -525,7 +509,7 @@ s_colh) e (res_ E | |||
| _p) e (scL03_ E | |||
| _m) e (sclL04 E | |||
| dioc) e (ses_ E | |||
| _aust) e (rA_ E | |||
| _aust) e (rL08_ E | |||
| _d) e (spL02_ E | |||
| proc) e (ssL02_ E | |||
| _p) e (squL02_ E | |||
| @@ -535,20 +519,20 @@ s_colh) e (res_ E | |||
| _ac) e (ssL02_ E | |||
| _esp) e (ssL03_ e | |||
| _c) e (stL03_ e | |||
| _pr) e (tL03_ e | |||
| _pr) e (tL08_ e | |||
| _rem) e (tL03_ e | |||
| _derr) e (tL03_ e | |||
| _obsol) e (tL03_ e | |||
| _obsol) e (tL08_ e | |||
| _bol) e (tL04_ e | |||
| _CaC) e (ta_ e | |||
| _minu) e (tA_ e | |||
| _terc) e (tA_ e | |||
| viol) e (ta_ e | |||
| _Carr) e (ta_ e | |||
| _Gur) e (ta_ e | |||
| _Gur) e (ta_ e | |||
| _pen) e (trL04_ E | |||
| _sol) e (trL04_ E | |||
| _n) eu (trL03_ 'eU | |||
| _n) eu (trL08_ 'eU | |||
| _d) e (vL03_ e | |||
| scr) e (vL03_ e // e- in- pre- ree- de- | |||
| _atr) e (vL03_ e | |||
| @@ -632,7 +616,7 @@ _redar) gu (A gw | |||
| san) gu (ín gw | |||
| san) gu (in gw | |||
| stin) gu (A gw | |||
| _un) gu (ento_ gw | |||
| _un) gu (ento_ gw | |||
| xtin) gu (A gw | |||
| ?1 n) gu (A gw // eg: língua, etc. | |||
| ?1 man) gu (ei g // mangueira | |||
| @@ -891,6 +875,7 @@ _redar) gu (A gw | |||
| b) o (rL04_ O | |||
| o (p_ O | |||
| C) o (pL04_ O | |||
| o (pCL04_ O | |||
| ?1 _) o (C O // eg: olá, orla, opção, etc... | |||
| ?1 _C) o (CACAC u // Documento, documentação, localizar, etc. | |||
| ?1 f) o (rmat u // formatar, formato. | |||
| @@ -920,16 +905,16 @@ _redar) gu (A gw | |||
| //sort | |||
| _f) o (L05_ o | |||
| _red) o (L05_ O | |||
| _pormen) o (L05_ O | |||
| men) o (L05_ O | |||
| _f) o (L07_ o | |||
| _s) o (bL02_ O | |||
| _af) o (bL04_ O | |||
| _esn) o (bL04_ O | |||
| _engl) o (bL04_ O | |||
| _sal) o (brL03_ o | |||
| _) o (cL03_ o | |||
| _barr) o (cL03_ o | |||
| _ch) o (chA_ o | |||
| _sal) o (brL08_ o | |||
| _) o (cL08_ o | |||
| _barr) o (cL08_ o | |||
| _ch) o (chL08_ o | |||
| _m) o (chA_ o | |||
| _f) o (dL01_s o | |||
| _ecl) o (dL03_ o | |||
| @@ -944,7 +929,7 @@ _pormen) o (L05_ O | |||
| _ap) oi (L02_ OI | |||
| _b) oi (L04_ OI | |||
| _C) oi (ce_ oI | |||
| _t) o (lL03_ o | |||
| _t) o (lL08_ o | |||
| _f) o (lgL04_ O | |||
| _emp) o (lgL04_ O | |||
| _arr) o (lhL03_ O | |||
| @@ -953,13 +938,10 @@ _pormen) o (L05_ O | |||
| _) o (bstL04_ O | |||
| m) o (lhL04_ O | |||
| emb) o (lsL04_ O | |||
| _env) o (ltL03_ o | |||
| _env) o (ltL08_ o | |||
| _esC) o (pA_ o | |||
| antr) o (pL03_ o | |||
| _s) o (prL04_ O | |||
| _al) o (prL04_ O | |||
| _ass) o (prL04_ O | |||
| _) o (ptL04_ O | |||
| g) ol (pe_ Ow | |||
| antr) o (pL08_ o | |||
| flex) o (rA_ | |||
| p) o (rL02_ o | |||
| _dev) o (rL02_ O | |||
| @@ -1004,13 +986,14 @@ _pormen) o (L05_ O | |||
| ?1 ovos (_G Ov=UZ novos, povos, etc. | |||
| ?2 ovos (_G Ov=Uz novos, povos, etc. | |||
| ortos (_ O*@-t=Us# // tortos, mortos, etc. | |||
| _Gar) o (tL03_ o | |||
| _escr) o (tL03_ o | |||
| _Gar) o (tL08_ o | |||
| _escr) o (tL08_ o | |||
| zig) o (to_ o | |||
| _ch) o (vL01_ o | |||
| pr) o (vL03_ O | |||
| _Com) o (do_ o | |||
| _ortod) o (xL03_ O | |||
| _ortod) o (xL08_ O | |||
| _arr) ox (A OS | |||
| _g) o (zL04_ O | |||
| _alm) o (çL01_ O | |||
| _esb) o (çL01_ O | |||
| @@ -1019,7 +1002,7 @@ _ortod) o (xL03_ O | |||
| _ad) o (çL03_ O | |||
| _emp) o (çL03_ O | |||
| _end) o (çL03_ O | |||
| _c) o (çL03_ O | |||
| _c) o (çL03_ O | |||
| //endsort | |||
| .group ô | |||
| @@ -1229,11 +1212,9 @@ _ortod) o (xL03_ O | |||
| .group x | |||
| x (A S | |||
| A) x (A ks | |||
| e) x (A ks | |||
| _e) x (A z | |||
| _ê) x (A z | |||
| _ine) x (A z | |||
| _ine) x (orAC ks | |||
| e) x (A ks | |||
| ?1 e) x (CA S | |||
| ai) x (A S | |||
| ei) x (A S | |||
| @@ -1254,7 +1235,6 @@ _ortod) o (xL03_ O | |||
| xA) x (A S | |||
| _abaca) x (i S | |||
| ale) x (a S | |||
| _arro) x (e S | |||
| _ave) x (A S | |||
| bau) x (A S | |||
| brA) x (A S | |||
| @@ -1263,6 +1243,7 @@ _abaca) x (i S | |||
| _ca) x (A S | |||
| _co) x (A S | |||
| _coe) x (A z | |||
| _eli) x (ir S | |||
| _esdrA) x (ul S | |||
| _e) x (u_ S | |||
| _fa) x (i S | |||
| @@ -1270,6 +1251,8 @@ _esdrA) x (ul S | |||
| gra) x (A S | |||
| _he) x (A z | |||
| ?2 _he) x (A ks | |||
| _ine) x (A z | |||
| _ine) x (orAC ks | |||
| _lagarti) x (A S | |||
| _li) x (A S | |||
| _lu) x (A S | |||
| @@ -304,6 +304,7 @@ _#-லும் ilUm | |||
| // English words | |||
| tamil தமிழ் $text | |||
| andagakavi அந்தகக்கவி $text | |||
| // exceptions | |||
| @@ -3966,7 +3966,6 @@ _பெனசீர்_) ப (ுட்டோ b | |||
| //sort | |||
| _மனோ) ப்ப (ல bbV | |||
| _குங்) ப fV# | |||
| _நீர்) ப pV# | |||
| _ப்ரூ) ப fV# | |||
| @@ -4677,6 +4676,7 @@ _மைக்ரோசா) ப் (ட f | |||
| _ஹ) ப்ப (ர்ட bbV | |||
| _துர்) ப்ப (ல bbV | |||
| _முழு) ப்ப (ல bbV | |||
| _மனோ) ப்ப (ல bbV | |||
| உ) ப்ப (லா bbV | |||
| உ) ப்ப (லாக bbV | |||
| உ) ப்ப (லான bbV | |||
| @@ -4719,6 +4719,7 @@ _வெளி) ப்பி (ரகார pp | |||
| _சுக) ப்பி (ரச pp | |||
| அதிக) ப்பி (ரசங்க pp | |||
| _மலை) ப்பி (ரசங்க pp | |||
| _மலை) ப்பி (ரசங்க pp | |||
| _சண்ட) ப்பி (ரசண்ட pp | |||
| L03) ப்பிரச (ார pprVtS | |||
| _கை) ப்பி (ரசுர pp | |||
| @@ -4746,6 +4747,7 @@ _சத்திய) ப்பி (ரமா pp | |||
| இரத்த) ப்பி (ரவாக pp | |||
| _ஒL10ி) ப்பி (ரவாக pp | |||
| _மணி) ப்பி (ரவாள pp | |||
| _மணி) ப்பி (ரவாள pp | |||
| தேச) ப்பி (ரஷ்ட pp | |||
| _ஜாதி) ப்பி (ரஷ்ட pp | |||
| _வான) ப்பி (ரஸ்த pp | |||
| @@ -4757,6 +4759,8 @@ _கூட்டு) ப்பி (ரார்த்தனை pp | |||
| _வடை) ப்பி (ரிய pp | |||
| _கஜ) ப்ப (ிருஷ்ட bb | |||
| L03) ப்பி (ரேத pp | |||
| L03) ப்பி (ரேத pp | |||
| L03) ப்பி (ரேத pp | |||
| L03) ப்பி (ரேரணை pp | |||
| _ஹ) ப்ப (ிள bb | |||
| _க்ள) ப்ப (ுகள bb | |||
| @@ -4771,6 +4775,7 @@ _சந்தேக) ப்ப (ுத்தி bb | |||
| _ல) ப்ப (ை bb | |||
| _தர்) ப்ப (ை bb | |||
| _மர) ப்ப (ொம்மை bb | |||
| ரா) ப்ப (ோஜன bb | |||
| _ரா) ப்ப (ோஜன bb | |||
| துர்) ப்ப (ோதனை bb | |||
| _கே) ப் (மாரி p | |||
| @@ -80,7 +80,7 @@ If neither -f nor --stdin is given, then the text input is taken from "text word | |||
| <dt> | |||
| <strong>-s <integer></strong><br> | |||
| <dd>Sets the speed in words-per-minute (approximate values for the default English voice, others may differ slightly). The default value is 175. I generally use a faster speed | |||
| of 200. Range 80 to 450. Larger value are rounded down to the maximum. | |||
| of 260. The lower limit is 80. There is no upper limit, but about 500 is probably a practical maximum. | |||
| <p> | |||
| <dt> | |||
| <strong>-b <integer></strong><br> | |||
| @@ -141,8 +141,9 @@ Some languages may need additional dictionary data, see <a href="languages.html" | |||
| <p> | |||
| <dt> | |||
| <strong>-x</strong><br> | |||
| <dd>The phoneme mnemonics, into which the input text is translated, are | |||
| written to stdout. | |||
| <dd>The phoneme mnemonics, into which the input text is translated, are written to stdout. | |||
| If a phoneme name contains more than one letter (eg. [tS]), the --sep or --tie option can be used to distinguish | |||
| this from separate phonemes. | |||
| <p> | |||
| <dt> | |||
| <strong>-X</strong><br> | |||
| @@ -167,12 +168,8 @@ The same as <strong>--compile</strong>, but source line numbers from the *_rules | |||
| <dt><strong>--ipa</strong><br> | |||
| <dd> | |||
| Writes phonemes to stdout, using the International Phonetic Alphabet (IPA).<br> | |||
| If a phoneme name contains more than one letter (eg. [tS]) an optional parameter can be used to distinguish | |||
| If a phoneme name contains more than one letter (eg. [tS]), the --sep or --tie option can be used to distinguish | |||
| this from separate phonemes. | |||
| <br> | |||
| <code>--pho=1 </code> Use a tie character (U+0361) before subsequence letters. | |||
| <br> | |||
| <code>--pho=2 </code> Use a zero-width-joiner (U+200D) before subsequent letters. | |||
| <p> | |||
| <dt><strong>--path [="<directory path>"]</strong><br> | |||
| <dd> | |||
| @@ -190,10 +187,18 @@ If specified, the output from -x, -X, --ipa, and --pho options is written to thi | |||
| <dd> | |||
| Speaks the names of punctuation characters when they are encountered in the text. If <characters> are given, then only those listed punctuation characters are spoken, eg. <code> --punct=".,;?"</code> | |||
| <p> | |||
| <dt><strong>--sep [=<character>]</strong><br> | |||
| <dd> | |||
| The character is used to separate individual phonemes in the output which is produced by the -x or --ipa options. The default is a space character. The character z means use a ZWNJ character (U+200c). | |||
| <p> | |||
| <dt><strong>--split [=<minutes>]</strong><br> | |||
| <dd> | |||
| Used with <strong>-w</strong>, it starts a new WAV file every <code><minutes></code> minutes, at the next sentence boundary. | |||
| <p> | |||
| <dt><strong>--tie [=<character>]</strong><br> | |||
| <dd> | |||
| The character is used within multi-letter phonemes in the output which is produced by the -x or --ipa options. The default is the tie character ͡ U+361. The character z means use a ZWJ character (U+200d). | |||
| <p> | |||
| <dt> | |||
| <strong>--voices [=<language code>]</strong><br> | |||
| <dd>Lists the available voices.<br> | |||
| @@ -0,0 +1,3 @@ | |||
| name basque-test | |||
| language eu | |||
| @@ -1,186 +1,167 @@ | |||
| //==================================================== | |||
| // Basque - based on Base2 | |||
| //==================================================== | |||
| phoneme a | |||
| vowel starttype #a endtype #a | |||
| length 200 | |||
| FMT(vowel/a_4) | |||
| endphoneme | |||
| phoneme a2 // delete if the next vowel is 'a'. Used for numbers. | |||
| vowel starttype #a endtype #a | |||
| length 200 | |||
| IF nextPh(#a) THEN | |||
| ChangePhoneme(NULL) // merge consecutive 'a' | |||
| ELSE | |||
| ChangePhoneme(a) | |||
| ENDIF | |||
| endphoneme | |||
| phoneme e | |||
| vowel starttype #e endtype #e | |||
| length 200 | |||
| FMT(vowel/e_mid2) | |||
| endphoneme | |||
| phoneme i | |||
| vowel starttype #i endtype #i | |||
| length 190 | |||
| IfNextVowelAppend(;) | |||
| FMT(vowel/i) | |||
| endphoneme | |||
| phoneme o | |||
| vowel starttype #o endtype #o | |||
| length 200 | |||
| FMT(vowel/oo) | |||
| endphoneme | |||
| phoneme u | |||
| vowel starttype #u endtype #u | |||
| length 200 | |||
| FMT(vowel/u_bck2) | |||
| endphoneme | |||
| phoneme Y | |||
| vowel starttype #@ endtype #@ | |||
| length 200 | |||
| FMT(vowel/y#) | |||
| endphoneme | |||
| // Note: I have made [s] and [z] the same, and similarly [ts] and [tz] | |||
| // These should be changed to the correct "s", "z", "ts" and "tz" sounds fo Basque. | |||
| phoneme s | |||
| vls alv frc sibilant | |||
| ipa ʂ | |||
| lengthmod 3 | |||
| Vowelin f1=0 f2=1700 -300 300 f3=-100 80 | |||
| Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 | |||
| IF nextPh(isPause) THEN | |||
| WAV(ufric/sh_rfx, 60) | |||
| ENDIF | |||
| WAV(ufric/sh_rfx, 90) // different from s but probably not correct | |||
| endphoneme | |||
| phoneme z | |||
| vls alv frc sibilant | |||
| ipa s | |||
| lengthmod 3 | |||
| Vowelin f1=0 f2=1700 -300 300 f3=-100 80 | |||
| Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 | |||
| // z+z=tz, z+g=zk, z+g=zt, z+b=zp | |||
| IF nextPh(z) THEN | |||
| ChangeNextPhoneme(tz) | |||
| ChangePhoneme(NULL) | |||
| ELSEIF nextPh(g) THEN | |||
| ChangeNextPhoneme(k) | |||
| ELSEIF nextPh(d) THEN | |||
| ChangeNextPhoneme(t) | |||
| ELSEIF nextPh(b) THEN | |||
| ChangeNextPhoneme(p) | |||
| ENDIF | |||
| IF nextPh(isPause) THEN | |||
| WAV(ufric/s_, 60) | |||
| ENDIF | |||
| WAV(ufric/s, 80) | |||
| endphoneme | |||
| phoneme ts | |||
| vls alv afr sibilant | |||
| ipa tʂ | |||
| lengthmod 2 | |||
| Vowelin f1=0 f2=1700 -300 300 f3=-100 80 | |||
| Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 | |||
| IF nextPh(isPause2) THEN | |||
| WAV(ustop/ts_) | |||
| ENDIF | |||
| WAV(ustop/ts) | |||
| endphoneme | |||
| phoneme tz | |||
| vls alv afr sibilant | |||
| ipa ts | |||
| lengthmod 2 | |||
| Vowelin f1=0 f2=1700 -300 300 f3=-100 80 | |||
| Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 | |||
| IF nextPh(isPause2) THEN | |||
| WAV(ustop/ts_) | |||
| ENDIF | |||
| WAV(ustop/ts) | |||
| endphoneme | |||
| phoneme t | |||
| vls dnt stop | |||
| lengthmod 2 | |||
| // t+g=k, t+d=t, t+z=tz | |||
| IF nextPh(g) THEN | |||
| ChangeNextPhoneme(k) | |||
| ChangePhoneme(NULL) | |||
| ELSEIF nextPh(d) THEN | |||
| ChangeNextPhoneme(t) | |||
| ChangePhoneme(NULL) | |||
| ELSEIF nextPh(z) THEN | |||
| ChangeNextPhoneme(tz) | |||
| ChangePhoneme(NULL) | |||
| ENDIF | |||
| CALL base2/t | |||
| endphoneme | |||
| phoneme r | |||
| vcd alv flp rhotic | |||
| brkafter | |||
| ipa ɾ | |||
| lengthmod 3 | |||
| IF nextPhW(isVowel) THEN | |||
| ChangePhoneme(**) | |||
| ENDIF | |||
| CALL base/* | |||
| endphoneme | |||
| phoneme b | |||
| import_phoneme es/b | |||
| endphoneme | |||
| phoneme d | |||
| import_phoneme es/d | |||
| endphoneme | |||
| phoneme g | |||
| import_phoneme es/g | |||
| endphoneme | |||
| phoneme n | |||
| vcd alv nasal | |||
| lengthmod 4 | |||
| IF prevPhW(i) AND nextPhW(isVowel) THEN | |||
| ChangePhoneme(n^) | |||
| ENDIF | |||
| CALL base/n | |||
| endphoneme | |||
| //==================================================== | |||
| // Basque - based on Base2 | |||
| //==================================================== | |||
| phoneme a | |||
| vowel starttype #a endtype #a | |||
| length 200 | |||
| FMT(vowel/a_4) | |||
| endphoneme | |||
| phoneme a2 // delete if the next vowel is 'a'. Used for numbers. | |||
| vowel starttype #a endtype #a | |||
| length 200 | |||
| IF nextPh(#a) THEN | |||
| ChangePhoneme(NULL) // merge consecutive 'a' | |||
| ENDIF | |||
| FMT(vowel/a_4) | |||
| endphoneme | |||
| phoneme e | |||
| vowel starttype #e endtype #e | |||
| length 200 | |||
| FMT(vowel/e_mid2) | |||
| endphoneme | |||
| phoneme i | |||
| vowel starttype #i endtype #i | |||
| length 190 | |||
| IfNextVowelAppend(;) | |||
| FMT(vowel/i) | |||
| endphoneme | |||
| phoneme o | |||
| vowel starttype #o endtype #o | |||
| length 200 | |||
| FMT(vowel/oo) | |||
| endphoneme | |||
| phoneme u | |||
| vowel starttype #u endtype #u | |||
| length 200 | |||
| FMT(vowel/u_bck2) | |||
| endphoneme | |||
| phoneme Y | |||
| vowel starttype #@ endtype #@ | |||
| length 200 | |||
| FMT(vowel/y#) | |||
| endphoneme | |||
| phoneme s | |||
| import_phoneme es/s | |||
| endphoneme | |||
| phoneme z | |||
| vls alv frc sibilant | |||
| ipa s | |||
| lengthmod 3 | |||
| Vowelin f1=0 f2=1700 -300 300 f3=-100 80 | |||
| Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 | |||
| IF nextPh(isPause) THEN | |||
| WAV(ufric/z_eu, 60) | |||
| ENDIF | |||
| WAV(ufric/z_eu, 90) | |||
| endphoneme | |||
| phoneme ts | |||
| vls alv afr sibilant | |||
| ipa t? | |||
| lengthmod 2 | |||
| Vowelin f1=0 f2=1700 -300 300 f3=-100 80 | |||
| Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 | |||
| IF nextPh(isPause2) THEN | |||
| WAV(ufric/ts_eu, 60) | |||
| ENDIF | |||
| WAV(ufric/ts_eu, 90) | |||
| endphoneme | |||
| phoneme tz | |||
| vls alv afr sibilant | |||
| ipa ts | |||
| lengthmod 2 | |||
| Vowelin f1=0 f2=1700 -300 300 f3=-100 80 | |||
| Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 | |||
| IF nextPh(isPause2) THEN | |||
| WAV(ufric/tz_eu, 90) | |||
| ENDIF | |||
| WAV(ufric/tz_eu, 60) | |||
| endphoneme | |||
| phoneme t | |||
| vls dnt stop | |||
| lengthmod 2 | |||
| CALL base2/t | |||
| endphoneme | |||
| phoneme r | |||
| vcd alv flp rhotic | |||
| brkafter | |||
| ipa ? | |||
| lengthmod 3 | |||
| IF nextPhW(isVowel) THEN | |||
| ChangePhoneme(**) | |||
| ENDIF | |||
| CALL base/* | |||
| endphoneme | |||
| phoneme b | |||
| import_phoneme es/b | |||
| endphoneme | |||
| phoneme d | |||
| import_phoneme es/d | |||
| endphoneme | |||
| phoneme g | |||
| import_phoneme es/g | |||
| endphoneme | |||
| phoneme n | |||
| vcd alv nasal | |||
| lengthmod 4 | |||
| IF prevPhW(#i) AND nextPhW(isVowel) THEN | |||
| ChangePhoneme(n^) | |||
| ENDIF | |||
| CALL base/n | |||
| endphoneme | |||
| phoneme n2 // doesn't palatalise, used for exceptions | |||
| vcd alv nasal | |||
| lengthmod 4 | |||
| CALL base/n | |||
| endphoneme | |||
| phoneme l | |||
| liquid | |||
| IF prevPhW(#i) AND nextPhW(isVowel) THEN | |||
| ChangePhoneme(l^) | |||
| ENDIF | |||
| CALL base/l | |||
| endphoneme | |||
| phoneme l2 // same as l2 | |||
| liquid | |||
| CALL base/l | |||
| endphoneme | |||
| @@ -279,13 +279,14 @@ endphoneme | |||
| phoneme i // optional variant of [I] for end of words | |||
| vowel starttype #i endtype #i | |||
| unstressed | |||
| ipa i | |||
| length 150 | |||
| IfNextVowelAppend(;) | |||
| IF NOT thisPh(isFinalVowel) THEN | |||
| ChangePhoneme(I) | |||
| ENDIF | |||
| // IF NOT thisPh(isFinalVowel) THEN | |||
| // ChangePhoneme(I) | |||
| // ENDIF | |||
| FMT(vowel/ii_7) | |||
| endphoneme | |||
| @@ -48,8 +48,8 @@ phoneme a | |||
| IF nextPh(isNasal) THEN | |||
| FMT(vnasal/ee_n2) | |||
| ELSEIF nextPh(r) THEN | |||
| length 230 | |||
| ELSEIF nextPh(r) AND thisPh(isStressed) THEN | |||
| length 190 | |||
| FMT(vwl_en_us/ar) | |||
| ENDIF | |||
| FMT(vwl_en_us/a) | |||
| @@ -168,4 +168,3 @@ phoneme r | |||
| import_phoneme base/r | |||
| endphoneme | |||
| @@ -1978,5 +1978,6 @@ phonemetable kl base | |||
| include ph_greenlandic | |||
| //phonemetable en2 en | |||
| //phonemetable en-test base | |||
| //include ph_english_test | |||
| @@ -637,8 +637,11 @@ const char *GetTranslatedPhonemeString(int phoneme_mode) | |||
| /* Called after a clause has been translated into phonemes, in order | |||
| to display the clause in phoneme mnemonic form. | |||
| phoneme_mode bits 0-3: 0=only phoneme names, 1=ties, 2=ZWJ, 3=underscore separator | |||
| bit 4: 0=eSpeak phoneme names, 1=IPA | |||
| phoneme_mode | |||
| bit 1: use IPA phoneme names | |||
| bit 7: use tie between letters in multi-character phoneme names | |||
| bits 8-23 tie or separator character | |||
| */ | |||
| int ix; | |||
| @@ -652,16 +655,12 @@ const char *GetTranslatedPhonemeString(int phoneme_mode) | |||
| int flags; | |||
| int use_ipa; | |||
| int use_tie; | |||
| int separate_phonemes = 0; | |||
| int separate_phonemes; | |||
| char phon_buf[30]; | |||
| char phon_buf2[30]; | |||
| PHONEME_LIST *plist; | |||
| static const char *stress_chars = "==,,''"; | |||
| static const int char_tie[] = {0x0361, 0x200d}; // combining-double-inverted-breve, zero-width-joiner | |||
| use_ipa = phoneme_mode & 0x10; | |||
| use_tie = phoneme_mode & 0x0f; | |||
| if(phon_out_buf == NULL) | |||
| { | |||
| @@ -673,10 +672,15 @@ const char *GetTranslatedPhonemeString(int phoneme_mode) | |||
| } | |||
| } | |||
| if(use_tie >= 3) | |||
| use_ipa = phoneme_mode & espeakPHONEMES_IPA; | |||
| if(phoneme_mode & espeakPHONEMES_TIE) | |||
| { | |||
| use_tie = phoneme_mode >> 8; | |||
| separate_phonemes = 0; | |||
| } | |||
| else | |||
| { | |||
| // separate individual phonemes with underscores | |||
| separate_phonemes = '_'; | |||
| separate_phonemes = phoneme_mode >> 8; | |||
| use_tie = 0; | |||
| } | |||
| @@ -690,14 +694,15 @@ const char *GetTranslatedPhonemeString(int phoneme_mode) | |||
| WritePhMnemonic(phon_buf2, plist->ph, plist, use_ipa, &flags); | |||
| if(plist->newword) | |||
| *buf++ = ' '; | |||
| else | |||
| if((!plist->newword) || (separate_phonemes == ' ')) | |||
| { | |||
| if((separate_phonemes != 0) && (ix > 1)) | |||
| { | |||
| utf8_in(&c, phon_buf2); | |||
| if((c < 0x2b0) || (c > 0x36f)) // not if the phoneme starts with a superscript letter | |||
| { | |||
| *buf++ = separate_phonemes; | |||
| buf += utf8_out(separate_phonemes, buf); | |||
| } | |||
| } | |||
| } | |||
| @@ -734,12 +739,12 @@ const char *GetTranslatedPhonemeString(int phoneme_mode) | |||
| for(p=phon_buf2; *p != 0;) | |||
| { | |||
| p += utf8_in(&c, p); | |||
| if(use_tie > 0) | |||
| if(use_tie != 0) | |||
| { | |||
| // look for non-inital alphabetic character, but not diacritic, superscript etc. | |||
| if((count>0) && !(flags & (1 << (count-1))) && ((c < 0x2b0) || (c > 0x36f)) && iswalpha2(c)) | |||
| { | |||
| buf += utf8_out(char_tie[use_tie-1], buf); | |||
| buf += utf8_out(use_tie, buf); | |||
| } | |||
| } | |||
| buf += utf8_out(c, buf); | |||
| @@ -1193,6 +1198,7 @@ void SetWordStress(Translator *tr, char *output, unsigned int *dictionary_flags, | |||
| PHONEME_TAB *ph; | |||
| int stress; | |||
| int max_stress; | |||
| int max_stress_input; // any stress specified in the input? | |||
| int vowel_count; // num of vowels + 1 | |||
| int ix; | |||
| int v; | |||
| @@ -1257,7 +1263,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 = max_stress_input = GetVowelStress(tr, phonetic, vowel_stress, &vowel_count, &stressed_syllable, 1); | |||
| if((max_stress < 0) && dictionary_flags) | |||
| { | |||
| max_stress = 0; | |||
| @@ -1338,40 +1344,33 @@ void SetWordStress(Translator *tr, char *output, unsigned int *dictionary_flags, | |||
| { | |||
| stressed_syllable = vowel_count - 2; | |||
| if(stressflags & (S_FINAL_SPANISH | S_FINAL_STRESS_C)) | |||
| if(stressflags & S_FINAL_SPANISH) | |||
| { | |||
| // LANG=Spanish, stress on last vowel if the word ends in a consonant other than 'n' or 's' | |||
| if(phoneme_tab[final_ph]->type != phVOWEL) | |||
| { | |||
| if(stressflags & S_FINAL_STRESS_C) | |||
| mnem = phoneme_tab[final_ph]->mnemonic; | |||
| if(tr->translator_name == L('a','n')) | |||
| { | |||
| stressed_syllable = vowel_count - 1; | |||
| if(((mnem != 's') && (mnem !='n')) || phoneme_tab[final_ph2]->type != phVOWEL) | |||
| stressed_syllable = vowel_count - 1; // stress on last syllable | |||
| } | |||
| else | |||
| if(tr->translator_name == L('i','a')) | |||
| { | |||
| mnem = phoneme_tab[final_ph]->mnemonic; | |||
| if(tr->translator_name == L('a','n')) | |||
| { | |||
| if(((mnem != 's') && (mnem !='n')) || phoneme_tab[final_ph2]->type != phVOWEL) | |||
| stressed_syllable = vowel_count - 1; // stress on last syllable | |||
| } | |||
| else | |||
| if(tr->translator_name == L('i','a')) | |||
| if((mnem != 's') || phoneme_tab[final_ph2]->type != phVOWEL) | |||
| stressed_syllable = vowel_count - 1; // stress on last syllable | |||
| } | |||
| else | |||
| { | |||
| if((mnem == 's') && (phoneme_tab[final_ph2]->type == phNASAL)) | |||
| { | |||
| if((mnem != 's') || phoneme_tab[final_ph2]->type != phVOWEL) | |||
| stressed_syllable = vowel_count - 1; // stress on last syllable | |||
| // -ns stress remains on penultimate syllable | |||
| } | |||
| else | |||
| else if(((phoneme_tab[final_ph]->type != phNASAL) && (mnem != 's')) || (phoneme_tab[final_ph2]->type != phVOWEL)) | |||
| { | |||
| if((mnem == 's') && (phoneme_tab[final_ph2]->type == phNASAL)) | |||
| { | |||
| // -ns stress remains on penultimate syllable | |||
| } | |||
| else if(((phoneme_tab[final_ph]->type != phNASAL) && (mnem != 's')) || (phoneme_tab[final_ph2]->type != phVOWEL)) | |||
| { | |||
| stressed_syllable = vowel_count - 1; | |||
| } | |||
| stressed_syllable = vowel_count - 1; | |||
| } | |||
| } | |||
| } | |||
| @@ -1578,6 +1577,16 @@ void SetWordStress(Translator *tr, char *output, unsigned int *dictionary_flags, | |||
| break; | |||
| } | |||
| if((stressflags & S_FINAL_VOWEL_UNSTRESSED) && (vowel_count > 2) && (max_stress_input < 3) && (vowel_stress[vowel_count - 1] == 4)) | |||
| { | |||
| if(phoneme_tab[final_ph]->type == phVOWEL) | |||
| { | |||
| // don't allow stress on a word-final vowel | |||
| vowel_stress[vowel_count - 1] = 1; | |||
| vowel_stress[vowel_count - 2] = 4; | |||
| } | |||
| } | |||
| /* now guess the complete stress pattern */ | |||
| if(max_stress < 4) | |||
| stress = 4; /* no primary stress marked, use for 1st syllable */ | |||
| @@ -2551,7 +2560,7 @@ static void MatchRule(Translator *tr, char *word[], char *word_start, int group_ | |||
| total_consumed = consumed; | |||
| } | |||
| if((option_phonemes == 2) && (match.points > 0) && ((word_flags & FLAG_NO_TRACE) == 0)) | |||
| if((option_phonemes & espeakPHONEMES_TRACE) && (match.points > 0) && ((word_flags & FLAG_NO_TRACE) == 0)) | |||
| { | |||
| // show each rule that matches, and it's points score | |||
| int pts; | |||
| @@ -2628,7 +2637,7 @@ int TranslateRules(Translator *tr, char *p_start, char *phonemes, int ph_size, c | |||
| word_copy[ix] = 0; | |||
| if((option_phonemes == 2) && ((word_flags & FLAG_NO_TRACE)==0)) | |||
| if((option_phonemes & espeakPHONEMES_TRACE) && ((word_flags & FLAG_NO_TRACE)==0)) | |||
| { | |||
| char wordbuf[120]; | |||
| unsigned int ix; | |||
| @@ -2866,7 +2875,7 @@ int TranslateRules(Translator *tr, char *p_start, char *phonemes, int ph_size, c | |||
| return(0); | |||
| } | |||
| if((option_phonemes == 2) && ((word_flags & FLAG_NO_TRACE)==0)) | |||
| if((option_phonemes & espeakPHONEMES_TRACE) && ((word_flags & FLAG_NO_TRACE)==0)) | |||
| { | |||
| fprintf(f_trans,"\n"); | |||
| } | |||
| @@ -3367,7 +3376,7 @@ static const char *LookupDict2(Translator *tr, const char *word, const char *wor | |||
| if(phoneme_len == 0) | |||
| { | |||
| if(option_phonemes == 2) | |||
| if(option_phonemes & espeakPHONEMES_TRACE) | |||
| { | |||
| print_dictionary_flags(flags, dict_flags_buf, sizeof(dict_flags_buf)); | |||
| fprintf(f_trans,"Flags: %s %s\n", word1, dict_flags_buf); | |||
| @@ -3378,7 +3387,7 @@ static const char *LookupDict2(Translator *tr, const char *word, const char *wor | |||
| if(flags != NULL) | |||
| flags[0] |= FLAG_FOUND; // this flag indicates word was found in dictionary | |||
| if(option_phonemes == 2) | |||
| if(option_phonemes & espeakPHONEMES_TRACE) | |||
| { | |||
| char ph_decoded[N_WORD_PHONEMES]; | |||
| int textmode; | |||
| @@ -3560,7 +3569,7 @@ int LookupDictList(Translator *tr, char **wordptr, char *ph_out, unsigned int *f | |||
| word1 = *wordptr; | |||
| *wordptr = &word_replacement[2]; | |||
| if(option_phonemes == 2) | |||
| if(option_phonemes & espeakPHONEMES_TRACE) | |||
| { | |||
| len = found - word1; | |||
| memcpy(word,word1,len); // include multiple matching words | |||
| @@ -3759,7 +3768,7 @@ int RemoveEnding(Translator *tr, char *word, int end_type, char *word_copy) | |||
| { | |||
| utf8_out(tr->langopts.suffix_add_e, &word_end[1]); | |||
| if(option_phonemes == 2) | |||
| if(option_phonemes & espeakPHONEMES_TRACE) | |||
| { | |||
| fprintf(f_trans,"add e\n"); | |||
| } | |||
| @@ -53,7 +53,7 @@ static const char *help_text = | |||
| "-p <integer>\n" | |||
| "\t Pitch adjustment, 0 to 99, default is 50\n" | |||
| "-s <integer>\n" | |||
| "\t Speed in words per minute, 80 to 450, default is 175\n" | |||
| "\t Speed in approximate words per minute. The default is 175\n" | |||
| "-v <voice name>\n" | |||
| "\t Use voice file of this name from espeak-data/voices\n" | |||
| "-w <wave file name>\n" | |||
| @@ -68,7 +68,6 @@ static const char *help_text = | |||
| "\t Compile pronunciation rules and dictionary from the current\n" | |||
| "\t directory. <voice name> specifies the language\n" | |||
| "--ipa Write phonemes to stdout using International Phonetic Alphabet\n" | |||
| "\t --ipa=1 Use ties, --ipa=2 Use ZWJ, --ipa=3 Separate with _\n" | |||
| "--path=\"<path>\"\n" | |||
| "\t Specifies the directory containing the espeak-data directory\n" | |||
| "--pho Write mbrola phoneme data (.pho) to stdout or to the file in --phonout\n" | |||
| @@ -77,9 +76,15 @@ static const char *help_text = | |||
| "--punct=\"<characters>\"\n" | |||
| "\t Speak the names of punctuation characters during speaking. If\n" | |||
| "\t =<characters> is omitted, all punctuation is spoken.\n" | |||
| "--split=\"<minutes>\"\n" | |||
| "--sep=<character>\n" | |||
| "\t Separate phonemes (from -x --ipa) with <character>.\n" | |||
| "\t Default is space, z means ZWJN character.\n" | |||
| "--split=<minutes>\n" | |||
| "\t Starts a new WAV file every <minutes>. Used with -w\n" | |||
| "--stdout Write speech output to stdout\n" | |||
| "--tie=<character>\n" | |||
| "\t Use a tie character within multi-letter phoneme names.\n" | |||
| "\t Default is U+361, z means ZWJ character.\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" | |||
| @@ -123,6 +128,37 @@ void strncpy0(char *dest, const char *source, int size) | |||
| } | |||
| } | |||
| int utf8_in(int *c, const char *buf) | |||
| {//================================= | |||
| // Read a unicode characater from a UTF8 string | |||
| // Returns the number of UTF8 bytes used. | |||
| // backwards: set if we are moving backwards through the UTF8 string | |||
| int c1; | |||
| int n_bytes; | |||
| int ix; | |||
| static const unsigned char mask[4] = {0xff,0x1f,0x0f,0x07}; | |||
| n_bytes = 0; | |||
| if((c1 = *buf++) & 0x80) | |||
| { | |||
| if((c1 & 0xe0) == 0xc0) | |||
| n_bytes = 1; | |||
| else if((c1 & 0xf0) == 0xe0) | |||
| n_bytes = 2; | |||
| else if((c1 & 0xf8) == 0xf0) | |||
| n_bytes = 3; | |||
| c1 &= mask[n_bytes]; | |||
| for(ix=0; ix<n_bytes; ix++) | |||
| { | |||
| c1 = (c1 << 6) + (*buf++ & 0x3f); | |||
| } | |||
| } | |||
| *c = c1; | |||
| return(n_bytes+1); | |||
| } | |||
| void DisplayVoices(FILE *f_out, char *language) | |||
| {//============================================ | |||
| @@ -381,6 +417,8 @@ int main (int argc, char **argv) | |||
| {"pho", no_argument, 0, 0x109}, | |||
| {"ipa", optional_argument, 0, 0x10a}, | |||
| {"version", no_argument, 0, 0x10b}, | |||
| {"sep", optional_argument, 0, 0x10c}, | |||
| {"tie", optional_argument, 0, 0x10d}, | |||
| {0, 0, 0, 0} | |||
| }; | |||
| @@ -408,8 +446,8 @@ int main (int argc, char **argv) | |||
| int wordgap = -1; | |||
| int option_capitals = -1; | |||
| int option_punctuation = -1; | |||
| int option_phonemes = 0; | |||
| int option_mbrola_phonemes = 0; | |||
| int phonemes_separator = 0; | |||
| int phoneme_options = 0; | |||
| int option_linelength = 0; | |||
| int option_waveout = 0; | |||
| @@ -513,11 +551,11 @@ int main (int argc, char **argv) | |||
| break; | |||
| case 'x': | |||
| option_phonemes = 1; | |||
| phoneme_options |= espeakPHONEMES_SHOW; | |||
| break; | |||
| case 'X': | |||
| option_phonemes = 2; | |||
| phoneme_options |= espeakPHONEMES_TRACE; | |||
| break; | |||
| case 'm': | |||
| @@ -616,27 +654,56 @@ int main (int argc, char **argv) | |||
| break; | |||
| case 0x109: // --pho | |||
| option_mbrola_phonemes = 16; | |||
| phoneme_options |= espeakPHONEMES_MBROLA; | |||
| break; | |||
| case 0x10a: // --ipa | |||
| option_phonemes = 3; | |||
| phoneme_options |= espeakPHONEMES_IPA; | |||
| if(optarg2 != NULL) | |||
| { | |||
| value = -1; | |||
| sscanf(optarg2,"%d",&value); | |||
| if((value<0) || (value>3)) | |||
| // deprecated and obsolete | |||
| switch(atoi(optarg2)) | |||
| { | |||
| fprintf(stderr,"Bad value for -ipa=\n"); | |||
| value = 0; | |||
| case 1: | |||
| phonemes_separator = '_'; | |||
| break; | |||
| case 2: | |||
| phonemes_separator = 0x0361; | |||
| phoneme_options |= espeakPHONEMES_TIE; | |||
| break; | |||
| case 3: | |||
| phonemes_separator = 0x200d; // ZWJ | |||
| phoneme_options |= espeakPHONEMES_TIE; | |||
| break; | |||
| } | |||
| option_phonemes += value; | |||
| } | |||
| break; | |||
| case 0x10b: // -version | |||
| case 0x10b: // --version | |||
| PrintVersion(); | |||
| exit(0); | |||
| case 0x10c: // --sep | |||
| phoneme_options |= espeakPHONEMES_SHOW; | |||
| if(optarg2 == 0) | |||
| phonemes_separator = ' '; | |||
| else | |||
| utf8_in(&phonemes_separator, optarg2); | |||
| if(phonemes_separator == 'z') | |||
| phonemes_separator = 0x200c; // ZWNJ | |||
| break; | |||
| case 0x10d: // --tie | |||
| phoneme_options |= (espeakPHONEMES_SHOW | espeakPHONEMES_TIE); | |||
| if(optarg2 == 0) | |||
| phonemes_separator = 0x0361; // default: combining-double-inverted-breve | |||
| else | |||
| utf8_in(&phonemes_separator, optarg2); | |||
| if(phonemes_separator == 'z') | |||
| phonemes_separator = 0x200d; // ZWJ | |||
| break; | |||
| default: | |||
| exit(0); | |||
| @@ -707,7 +774,9 @@ int main (int argc, char **argv) | |||
| espeak_SetParameter(espeakLINELENGTH,option_linelength,0); | |||
| if(option_punctuation == 2) | |||
| espeak_SetPunctuationList(option_punctlist); | |||
| espeak_SetPhonemeTrace(option_phonemes | option_mbrola_phonemes,f_phonemes_out); | |||
| espeak_SetPhonemeTrace(phoneme_options | (phonemes_separator << 8), f_phonemes_out); | |||
| if(filename[0]==0) | |||
| { | |||
| @@ -87,7 +87,7 @@ static const char *help_text = | |||
| "-p <integer>\n" | |||
| "\t Pitch adjustment, 0 to 99, default is 50\n" | |||
| "-s <integer>\n" | |||
| "\t Speed in words per minute, 80 to 450, default is 175\n" | |||
| "\t Speed in approximate words per minute. The default is 175\n" | |||
| "-v <voice name>\n" | |||
| "\t Use voice file of this name from espeak-data/voices\n" | |||
| "-w <wave file name>\n" | |||
| @@ -102,7 +102,6 @@ static const char *help_text = | |||
| "\t Compile pronunciation rules and dictionary from the current\n" | |||
| "\t directory. <voice name> specifies the language\n" | |||
| "--ipa Write phonemes to stdout using International Phonetic Alphabet\n" | |||
| "\t --ipa=1 Use ties, --ipa=2 Use ZWJ, --ipa=3 Separate with _\n" | |||
| "--path=\"<path>\"\n" | |||
| "\t Specifies the directory containing the espeak-data directory\n" | |||
| "--pho Write mbrola phoneme data (.pho) to stdout or to the file in --phonout\n" | |||
| @@ -111,9 +110,15 @@ static const char *help_text = | |||
| "--punct=\"<characters>\"\n" | |||
| "\t Speak the names of punctuation characters during speaking. If\n" | |||
| "\t =<characters> is omitted, all punctuation is spoken.\n" | |||
| "--split=\"<minutes>\"\n" | |||
| "--sep=<character>\n" | |||
| "\t Separate phonemes (from -x --ipa) with <character>.\n" | |||
| "\t Default is space, z means ZWJN character.\n" | |||
| "--split=<minutes>\n" | |||
| "\t Starts a new WAV file every <minutes>. Used with -w\n" | |||
| "--stdout Write speech output to stdout\n" | |||
| "--tie=<character>\n" | |||
| "\t Use a tie character within multi-letter phoneme names.\n" | |||
| "\t Default is U+361, z means ZWJ character.\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" | |||
| @@ -496,6 +501,8 @@ int main (int argc, char **argv) | |||
| {"pho", no_argument, 0, 0x109}, | |||
| {"ipa", optional_argument, 0, 0x10a}, | |||
| {"version", no_argument, 0, 0x10b}, | |||
| {"sep", optional_argument, 0, 0x10c}, | |||
| {"tie", optional_argument, 0, 0x10d}, | |||
| {0, 0, 0, 0} | |||
| }; | |||
| @@ -516,6 +523,8 @@ int main (int argc, char **argv) | |||
| int flag_stdin = 0; | |||
| int flag_compile = 0; | |||
| int pitch_adjustment = 50; | |||
| int phoneme_options = 0; | |||
| int phonemes_separator = 0; | |||
| espeak_VOICE voice_select; | |||
| char filename[200]; | |||
| char voicename[40]; | |||
| @@ -622,11 +631,11 @@ int main (int argc, char **argv) | |||
| break; | |||
| case 'x': | |||
| option_phonemes = 1; | |||
| phoneme_options |= espeakPHONEMES_SHOW; | |||
| break; | |||
| case 'X': | |||
| option_phonemes = 2; | |||
| phoneme_options |= espeakPHONEMES_TRACE; | |||
| break; | |||
| case 'm': | |||
| @@ -729,21 +738,29 @@ int main (int argc, char **argv) | |||
| break; | |||
| case 0x109: // --pho | |||
| option_mbrola_phonemes = 16; | |||
| phoneme_options |= espeakPHONEMES_MBROLA; | |||
| break; | |||
| case 0x10a: // --ipa | |||
| option_phonemes = 3; | |||
| phoneme_options |= espeakPHONEMES_IPA; | |||
| if(optarg2 != NULL) | |||
| { | |||
| value = -1; | |||
| sscanf(optarg2,"%d",&value); | |||
| if((value<0) || (value>3)) | |||
| // deprecated and obsolete | |||
| switch(atoi(optarg2)) | |||
| { | |||
| fprintf(stderr,"Bad value for -ipa=\n"); | |||
| value = 0; | |||
| case 1: | |||
| phonemes_separator = '_'; | |||
| break; | |||
| case 2: | |||
| phonemes_separator = 0x0361; | |||
| phoneme_options |= espeakPHONEMES_TIE; | |||
| break; | |||
| case 3: | |||
| phonemes_separator = 0x200d; // ZWJ | |||
| phoneme_options |= espeakPHONEMES_TIE; | |||
| break; | |||
| } | |||
| option_phonemes += value; | |||
| } | |||
| break; | |||
| @@ -751,6 +768,26 @@ int main (int argc, char **argv) | |||
| init_path(argv[0],data_path); | |||
| printf("speak text-to-speech: %s Data at: %s\n",version_string,path_home); | |||
| exit(0); | |||
| case 0x10c: // --sep | |||
| phoneme_options |= espeakPHONEMES_SHOW; | |||
| if(optarg2 == 0) | |||
| phonemes_separator = ' '; | |||
| else | |||
| utf8_in(&phonemes_separator, optarg2); | |||
| if(phonemes_separator == 'z') | |||
| phonemes_separator = 0x200c; // ZWNJ | |||
| break; | |||
| case 0x10d: // --tie | |||
| phoneme_options |= (espeakPHONEMES_SHOW | espeakPHONEMES_TIE); | |||
| if(optarg2 == 0) | |||
| phonemes_separator = 0x0361; // default: combining-double-inverted-breve | |||
| else | |||
| utf8_in(&phonemes_separator, optarg2); | |||
| if(phonemes_separator == 'z') | |||
| phonemes_separator = 0x200d; // ZWJ | |||
| break; | |||
| default: | |||
| exit(0); | |||
| @@ -803,6 +840,8 @@ int main (int argc, char **argv) | |||
| SetParameter(espeakPUNCTUATION,option_punctuation,0); | |||
| SetParameter(espeakWORDGAP,wordgap,0); | |||
| option_phonemes = phoneme_options | (phonemes_separator << 8); | |||
| if(pitch_adjustment != 50) | |||
| { | |||
| SetParameter(espeakPITCH,pitch_adjustment,0); | |||
| @@ -811,7 +811,6 @@ ENTER("espeak_Initialize"); | |||
| return(EE_INTERNAL_ERROR); | |||
| option_phonemes = 0; | |||
| option_mbrola_phonemes = 0; | |||
| option_phoneme_events = (options & (espeakINITIALIZE_PHONEME_EVENTS | espeakINITIALIZE_PHONEME_IPA)); | |||
| VoiceReset(0); | |||
| @@ -1159,19 +1158,22 @@ ESPEAK_API espeak_ERROR espeak_SetPunctuationList(const wchar_t *punctlist) | |||
| } // end of espeak_SetPunctuationList | |||
| ESPEAK_API void espeak_SetPhonemeTrace(int value, FILE *stream) | |||
| {//============================================================ | |||
| ESPEAK_API void espeak_SetPhonemeTrace(int phonememode, FILE *stream) | |||
| {//=================================================================== | |||
| ENTER("espeak_SetPhonemes"); | |||
| /* Controls the output of phoneme symbols for the text | |||
| bits 0-3: | |||
| value=0 No phoneme output (default) | |||
| value=1 Output the translated phoneme symbols for the text | |||
| value=2 as (1), but also output a trace of how the translation was done (matching rules and list entries) | |||
| value=3 as (1), but produces IPA phoneme names rather than ascii | |||
| bit 4: produce mbrola pho data | |||
| */ | |||
| option_phonemes = value & 7; | |||
| option_mbrola_phonemes = value & 16; | |||
| /* phonememode: Controls the output of phoneme symbols for the text | |||
| bits 0-2: | |||
| value=0 No phoneme output (default) | |||
| value=1 Output the translated phoneme symbols for the text | |||
| value=2 as (1), but produces IPA phoneme names rather than ascii | |||
| bit 3: output a trace of how the translation was done (showing the matching rules and list entries) | |||
| bit 4: produce pho data for mbrola | |||
| bit 7: use (bits 8-23) as a tie within multi-letter phonemes names | |||
| bits 8-23: separator character, between phoneme names | |||
| stream output stream for the phoneme symbols (and trace). If stream=NULL then it uses stdout. | |||
| */ | |||
| option_phonemes = phonememode; | |||
| f_trans = stream; | |||
| if(stream == NULL) | |||
| f_trans = stderr; | |||
| @@ -1181,8 +1183,10 @@ ESPEAK_API void espeak_SetPhonemeTrace(int value, FILE *stream) | |||
| ESPEAK_API const char *espeak_TextToPhonemes(const void **textptr, int textmode, int phonememode) | |||
| {//================================================================================================= | |||
| /* phoneme_mode bits 0-3: 0=only phoneme names, 1=ties, 2=ZWJ, 3=underscore separator | |||
| bits 4-7: 0=eSpeak phoneme names, 1=IPA | |||
| /* phoneme_mode | |||
| bit 1: 0=eSpeak's ascii phoneme names, 1= International Phonetic Alphabet (as UTF-8 characters). | |||
| bit 7: use (bits 8-23) as a tie within multi-letter phonemes names | |||
| bits 8-23: separator character, between phoneme names | |||
| */ | |||
| option_multibyte = textmode & 7; | |||
| @@ -34,7 +34,7 @@ | |||
| #define ESPEAK_API | |||
| #endif | |||
| #define ESPEAK_API_REVISION 9 | |||
| #define ESPEAK_API_REVISION 10 | |||
| /* | |||
| Revision 2 | |||
| Added parameter "options" to eSpeakInitialize() | |||
| @@ -61,6 +61,9 @@ Revision 8 26.Apr.2013 | |||
| Revision 9 30.May.2013 | |||
| Changed function espeak_TextToPhonemes(). | |||
| Revision 10 29.Aug.2014 | |||
| Changed phonememode parameter to espeak_TextToPhonemes() and espeak_SetPhonemeTrace | |||
| */ | |||
| /********************/ | |||
| /* Initialization */ | |||
| @@ -473,15 +476,25 @@ ESPEAK_API espeak_ERROR espeak_SetPunctuationList(const wchar_t *punctlist); | |||
| EE_INTERNAL_ERROR. | |||
| */ | |||
| #define espeakPHONEMES_SHOW 0x01 | |||
| #define espeakPHONEMES_IPA 0x02 | |||
| #define espeakPHONEMES_TRACE 0x08 | |||
| #define espeakPHONEMES_MBROLA 0x10 | |||
| #define espeakPHONEMES_TIE 0x80 | |||
| #ifdef __cplusplus | |||
| extern "C" | |||
| #endif | |||
| ESPEAK_API void espeak_SetPhonemeTrace(int value, FILE *stream); | |||
| /* Controls the output of phoneme symbols for the text | |||
| value=0 No phoneme output (default) | |||
| value=1 Output the translated phoneme symbols for the text | |||
| value=2 as (1), but also output a trace of how the translation was done (matching rules and list entries) | |||
| value=3 as (1), but produces IPA rather than ascii phoneme names | |||
| ESPEAK_API void espeak_SetPhonemeTrace(int phonememode, FILE *stream); | |||
| /* phonememode: Controls the output of phoneme symbols for the text | |||
| bits 0-2: | |||
| value=0 No phoneme output (default) | |||
| value=1 Output the translated phoneme symbols for the text | |||
| value=2 as (1), but produces IPA phoneme names rather than ascii | |||
| bit 3: output a trace of how the translation was done (showing the matching rules and list entries) | |||
| bit 4: produce pho data for mbrola | |||
| bit 7: use (bits 8-23) as a tie within multi-letter phonemes names | |||
| bits 8-23: separator character, between phoneme names | |||
| stream output stream for the phoneme symbols (and trace). If stream=NULL then it uses stdout. | |||
| */ | |||
| @@ -506,15 +519,11 @@ ESPEAK_API const char *espeak_TextToPhonemes(const void **textptr, int textmode, | |||
| espeakCHARS_WCHAR Wide characters (wchar_t) | |||
| espeakCHARS_16BIT 16 bit characters. | |||
| phonememode: bits0-3: | |||
| 0= just phonemes. | |||
| 1= include ties (U+361) for phoneme names of more than one letter. | |||
| 2= include zero-width-joiner for phoneme names of more than one letter. | |||
| 3= separate phonemes with underscore characters. | |||
| phoneme_mode | |||
| bit 1: 0=eSpeak's ascii phoneme names, 1= International Phonetic Alphabet (as UTF-8 characters). | |||
| bit 7: use (bits 8-23) as a tie within multi-letter phonemes names | |||
| bits 8-23: separator character, between phoneme names | |||
| bits 4-7: | |||
| 0= eSpeak's ascii phoneme names. | |||
| 1= International Phonetic Alphabet (as UTF-8 characters). | |||
| */ | |||
| #ifdef __cplusplus | |||
| @@ -35,7 +35,6 @@ | |||
| #include "translate.h" | |||
| #include "voice.h" | |||
| int option_mbrola_phonemes; | |||
| #ifdef INCLUDE_MBROLA | |||
| @@ -646,7 +645,7 @@ int MbrolaGenerate(PHONEME_LIST *phoneme_list, int *n_ph, int resume) | |||
| if(*n_ph == 0) | |||
| return(0); | |||
| if(option_mbrola_phonemes) | |||
| if(option_phonemes & espeakPHONEMES_MBROLA) | |||
| { | |||
| // send mbrola data to a file, not to the mbrola library | |||
| f_mbrola = f_trans; | |||
| @@ -35,7 +35,7 @@ | |||
| #include "translate.h" | |||
| #include "wave.h" | |||
| const char *version_string = "1.48.10 09.Aug.14"; | |||
| const char *version_string = "1.48.11 31.Aug.14"; | |||
| const int version_phdata = 0x014801; | |||
| int option_device_number = -1; | |||
| @@ -620,6 +620,7 @@ static bool InterpretCondition(Translator *tr, int control, PHONEME_LIST *plist, | |||
| int instn; | |||
| int instn2; | |||
| int count; | |||
| int check_endtype = 0; | |||
| PHONEME_TAB *ph; | |||
| PHONEME_LIST *plist_this; | |||
| @@ -672,6 +673,7 @@ static bool InterpretCondition(Translator *tr, int control, PHONEME_LIST *plist, | |||
| case 0: // prevPh | |||
| case 5: // prevPhW | |||
| plist--; | |||
| check_endtype = 1; | |||
| break; | |||
| case 1: // thisPh | |||
| @@ -705,6 +707,7 @@ static bool InterpretCondition(Translator *tr, int control, PHONEME_LIST *plist, | |||
| if((worddata==NULL) || (worddata->prev_vowel.ph == NULL)) | |||
| return(false); // no previous vowel | |||
| plist = &(worddata->prev_vowel); | |||
| check_endtype = 1; | |||
| break; | |||
| case 9: // next3PhW | |||
| @@ -720,6 +723,7 @@ static bool InterpretCondition(Translator *tr, int control, PHONEME_LIST *plist, | |||
| if((plist[0].sourceix) || (plist[-1].sourceix)) | |||
| return(false); | |||
| plist-=2; | |||
| check_endtype = 1; | |||
| break; | |||
| } | |||
| @@ -744,7 +748,9 @@ static bool InterpretCondition(Translator *tr, int control, PHONEME_LIST *plist, | |||
| // 'data' is a phoneme number | |||
| if((phoneme_tab[data]->mnemonic == ph->mnemonic) == true) | |||
| return(true); | |||
| if((which == 0) && (ph->type == phVOWEL)) | |||
| // not an exact match, check for a vowel type (eg. #i ) | |||
| if((check_endtype) && (ph->type == phVOWEL)) | |||
| return(data == ph->end_type); // prevPh() match on end_type | |||
| return(data == ph->start_type); // thisPh() or nextPh(), match on start_type | |||
| } | |||
| @@ -1980,14 +1980,10 @@ int SpeakNextClause(FILE *f_in, const void *text_in, int control) | |||
| CalcPitches(translator, clause_tone); | |||
| CalcLengths(translator); | |||
| if((option_phonemes > 0) || (phoneme_callback != NULL)) | |||
| if((option_phonemes & 0xf) || (phoneme_callback != NULL)) | |||
| { | |||
| int phoneme_mode = 0; | |||
| if(option_phonemes >= 3) | |||
| phoneme_mode = 0x10 + option_phonemes-3; // 0x10=ipa, 0x11=ipa with tie, 0x12=ipa with ZWJ, 0x13=ipa with separators | |||
| phon_out = GetTranslatedPhonemeString(phoneme_mode); | |||
| if(option_phonemes > 0) | |||
| phon_out = GetTranslatedPhonemeString(option_phonemes); | |||
| if(option_phonemes & 0xf) | |||
| { | |||
| fprintf(f_trans,"%s\n",phon_out); | |||
| } | |||
| @@ -779,7 +779,8 @@ Translator *SelectTranslator(const char *name) | |||
| if(name2 == L_pap) | |||
| { | |||
| // stress last syllable unless word ends with a vowel | |||
| tr->langopts.stress_flags = S_FINAL_STRESS_C | S_FINAL_DIM_ONLY | S_FINAL_NO_2 | S_NO_AUTO_2; | |||
| tr->langopts.stress_rule = STRESSPOSN_1R; | |||
| tr->langopts.stress_flags = S_FINAL_VOWEL_UNSTRESSED | S_FINAL_DIM_ONLY | S_FINAL_NO_2 | S_NO_AUTO_2; | |||
| } | |||
| else | |||
| { | |||
| @@ -793,7 +794,8 @@ Translator *SelectTranslator(const char *name) | |||
| static const short stress_lengths_eu[8] = {200, 200, 200, 200, 0, 0, 210, 230}; // very weak stress | |||
| static const unsigned char stress_amps_eu[8] = {16,16, 18,18, 18,18, 18,18 }; | |||
| SetupTranslator(tr,stress_lengths_eu,stress_amps_eu); | |||
| tr->langopts.stress_rule = STRESSPOSN_2L; // ?? second syllable ?? | |||
| tr->langopts.stress_rule = STRESSPOSN_2L; // ?? second syllable, but not on a word-final vowel | |||
| tr->langopts.stress_flags = S_FINAL_VOWEL_UNSTRESSED; | |||
| tr->langopts.param[LOPT_SUFFIX] = 1; | |||
| tr->langopts.numbers = NUM_SINGLE_STRESS | NUM_DECIMAL_COMMA | NUM_HUNDRED_AND | NUM_OMIT_1_HUNDRED | NUM_OMIT_1_THOUSAND | NUM_VIGESIMAL; | |||
| } | |||
| @@ -1345,8 +1347,8 @@ SetLengthMods(tr,3); // all equal | |||
| SetupTranslator(tr,stress_lengths_ro,stress_amps_ro); | |||
| tr->langopts.stress_rule = STRESSPOSN_2R; | |||
| tr->langopts.stress_flags = S_FINAL_STRESS_C + S_FINAL_DIM_ONLY; | |||
| tr->langopts.stress_rule = STRESSPOSN_1R; | |||
| tr->langopts.stress_flags = S_FINAL_VOWEL_UNSTRESSED | S_FINAL_DIM_ONLY; | |||
| tr->charset_a0 = charsets[2]; // ISO-8859-2 | |||
| tr->langopts.numbers = NUM_DECIMAL_COMMA | NUM_ALLOW_SPACE | NUM_DFRACTION_3 | NUM_AND_UNITS | NUM_ROMAN; | |||
| @@ -1449,8 +1451,8 @@ SetLengthMods(tr,3); // all equal | |||
| SetupTranslator(tr,stress_lengths_sq,stress_amps_sq); | |||
| tr->langopts.stress_rule = STRESSPOSN_2R; | |||
| tr->langopts.stress_flags = S_FINAL_DIM_ONLY | S_FINAL_NO_2 | S_FINAL_STRESS_C; | |||
| tr->langopts.stress_rule = STRESSPOSN_1R; | |||
| tr->langopts.stress_flags = S_FINAL_DIM_ONLY | S_FINAL_NO_2 | S_FINAL_VOWEL_UNSTRESSED; | |||
| SetLetterVowel(tr,'y'); | |||
| tr->langopts.numbers = NUM_DECIMAL_COMMA | NUM_HUNDRED_AND | NUM_AND_UNITS | NUM_DFRACTION_4; | |||
| tr->langopts.accents = 2; // "capital" after letter name | |||
| @@ -763,7 +763,7 @@ int ChangeEquivalentPhonemes(Translator *tr, int lang2, char *phonemes) | |||
| } | |||
| remove_stress = pb[1]; | |||
| if(option_phonemes == 2) | |||
| if(option_phonemes & espeakPHONEMES_TRACE) | |||
| { | |||
| DecodePhonemes(phonemes, phonbuf); | |||
| fprintf(f_trans,"(%s) %s -> (%s) ", phoneme_tab_list[lang2].name, phonbuf, phoneme_tab_list[tr->phoneme_tab_ix].name); | |||
| @@ -806,7 +806,7 @@ int ChangeEquivalentPhonemes(Translator *tr, int lang2, char *phonemes) | |||
| strcpy(phonemes, phonbuf); | |||
| if(option_phonemes == 2) | |||
| if(option_phonemes & espeakPHONEMES_TRACE) | |||
| { | |||
| SelectPhonemeTable(tr->phoneme_tab_ix); | |||
| DecodePhonemes(phonemes, phonbuf); | |||
| @@ -1220,7 +1220,7 @@ if(end_type & SUFX_UNPRON) | |||
| end_type = end2; | |||
| strcpy(phonemes,phonemes2); | |||
| strcpy(end_phonemes,end_phonemes2); | |||
| if(option_phonemes == 2) | |||
| if(option_phonemes & espeakPHONEMES_TRACE) | |||
| { | |||
| DecodePhonemes(end_phonemes,end_phonemes2); | |||
| fprintf(f_trans," suffix [%s]\n\n",end_phonemes2); | |||
| @@ -408,8 +408,8 @@ typedef struct { | |||
| #define S_FIRST_PRIMARY 0x80 | |||
| // bit7=if more than one primary stress, make the subsequent primaries to secondary stress | |||
| #define S_FINAL_STRESS_C 0x100 | |||
| // bit8=stress last syllable if it doesn't end in a vowel | |||
| #define S_FINAL_VOWEL_UNSTRESSED 0x100 | |||
| // bit8=don't apply default stress to a word-final vowel | |||
| #define S_FINAL_SPANISH 0x200 | |||
| // bit9=stress last syllable if it doesn't end in vowel or "s" or "n" LANG=Spanish | |||
| @@ -673,7 +673,6 @@ extern int option_tone_flags; | |||
| extern int option_waveout; | |||
| extern int option_quiet; | |||
| extern int option_phonemes; | |||
| extern int option_mbrola_phonemes; | |||
| extern int option_phoneme_events; | |||
| extern int option_linelength; // treat lines shorter than this as end-of-clause | |||
| extern int option_multibyte; | |||
| @@ -409,7 +409,6 @@ void TranslDlg::OnCommand(wxCommandEvent& event) | |||
| const char *phon_out2; | |||
| int clause_tone; | |||
| int clause_count; | |||
| int use_ipa = 0; | |||
| FILE *f; | |||
| int fd_temp; | |||
| char fname_temp[100]; | |||
| @@ -447,21 +446,20 @@ void TranslDlg::OnCommand(wxCommandEvent& event) | |||
| } | |||
| #endif | |||
| t_phonetic->SetDefaultStyle(style_phonetic); | |||
| translate_text = 2; | |||
| translate_text = espeakPHONEMES_TRACE; | |||
| break; | |||
| case T_TRANSLATE: | |||
| case MENU_SPEAK_TRANSLATE: | |||
| t_phonetic->SetDefaultStyle(style_phonetic); | |||
| translate_text = 1; | |||
| translate_text = espeakPHONEMES_SHOW; | |||
| break; | |||
| case T_TRANSLATE_IPA: | |||
| case MENU_SPEAK_IPA: | |||
| t_phonetic->SetDefaultStyle(style_phonetic_large); | |||
| translate_text = 3; | |||
| use_ipa = 0x10; | |||
| translate_text = espeakPHONEMES_IPA; | |||
| break; | |||
| case T_PROCESS: | |||
| @@ -496,7 +494,7 @@ void TranslDlg::OnCommand(wxCommandEvent& event) | |||
| CalcPitches(translator,clause_tone); | |||
| CalcLengths(translator); | |||
| phon_out2 = GetTranslatedPhonemeString(use_ipa); | |||
| phon_out2 = GetTranslatedPhonemeString(option_phonemes); | |||
| if(clause_count++ > 0) | |||
| strcat(phon_out," ||"); | |||
| strcat(phon_out, phon_out2); | |||
| @@ -514,7 +512,7 @@ void TranslDlg::OnCommand(wxCommandEvent& event) | |||
| ph_list[N_PH_LIST].ph = NULL; // to recognize overrun off list (in Generate() ) | |||
| t_phonetic->Clear(); | |||
| if(option_phonemes == 2) | |||
| if(option_phonemes & espeakPHONEMES_TRACE) | |||
| { | |||
| option_phonemes=0; | |||
| rewind(f_trans); | |||