diff --git a/dictsource/en_list b/dictsource/en_list index 8925a438..3d09e013 100644 --- a/dictsource/en_list +++ b/dictsource/en_list @@ -345,6 +345,7 @@ _90o n'aInti@ abc $abbrev ac $abbrev adf $abbrev +afk $abbrev (a . k . a .) aka#_! agpl $abbrev agm $abbrev @@ -405,6 +406,7 @@ nypd $abbrev nypsd $abbrev nyse $abbrev nyt $abbrev +ocr $abbrev oecd $abbrev oem $abbrev ok $abbrev @@ -510,6 +512,7 @@ adieus a#dju:z adieux a#dju:z adios aDj'o:s admirable adm@r@b@L +admirably adm@r@bli admonition adm@n'IS@n ado a#du: adobe a#doUbi @@ -585,6 +588,7 @@ amass a#mas ambassador a#mbas@d3 ambidextrous $3 amen ,A:m'En $onlys +?3 amen ,eIm'En amok a#m0k amoral eIm'0r@L amount a#maUnt @@ -612,6 +616,7 @@ anonymous a#n0n@m@s another a#nVD3 ante anti: antecedent antIs'i:d@nt +?3 anti antaI antibody $1 antichrist $1 anticline $1 @@ -720,7 +725,8 @@ ballot bal@t baloney b@loUni bagel beIg@L banal beIn@L -banana b@nA:n@ +banana $alt3 +?3 banana ba#nan@ banged baNgd banquet baNkwI2t barbeque bA@b@kju: @@ -748,6 +754,7 @@ basal beIs@L best bEst bestest bEst@st beta bi:t@ +?3 beta beIt@ betake bI2teIk beverage bEv@rI2dZ bias baI@s @@ -829,6 +836,7 @@ cadet $alt3 cadre kA:d3 caesar si:z3 cafe kafeI +?3 caffeine $2 cahoot $alt3 cajole $alt3 cajun keIdZ@n @@ -839,6 +847,7 @@ calv kA:v // for calved, calving ?3 calv kav // for calved, calving calve kA:v ?3 calve kav +camaraderie kam@r'A:d@ri cameo kamIoU camouflage kam@flA:Z campus kamp@s // campuses @@ -986,6 +995,8 @@ commence k@mEns commend k@mEnd comment k0mEnt commentary k0m@ntrI +?3 commentary k0m@ntEri +commi k0mI commie k0mI committee k@mIti communique k@mju:nI2keI @@ -996,6 +1007,7 @@ competing k@mp'i:tIN competition k0mp@t'IS@n compromise k0mpr@maIz compound $2 $verb +?3 comrade k0mrad con k0n concert $1 $onlys concert $verb @@ -1074,6 +1086,7 @@ crooked krUkId cuckoo kUku: cupboard kVb@d curate kjU@reIt +?3 current k'3:@nt curse k3:s ?5 curse kVRs customer k'Vst@m3 @@ -1125,6 +1138,7 @@ denier dI2naI3 denouement deIn'u:mO~ deny dI2naI depot dEpoU +?3 depot di:poU derange dI2reIndZ descry dI2skreI desert dI2z3:t @@ -1132,6 +1146,7 @@ desert dEs3t $only desert dI2z3:t $verb desolate dEs@l@t desperate dEsp@r@t +?3 detail $2 detente deIt'0nt détente deIt'0nt detritus dI2traIt@s @@ -1142,6 +1157,7 @@ devotee dEvoUt'i: di d,I $only diabetes daI@b'i:ti:z diagnose $3 +?3 dialog daI|@lO:g diameter daI'amI2t3 diaper daIp3 diaphanous daI'af@n@s @@ -1244,6 +1260,8 @@ entrance Entr'aans $verb entree 0ntreI envelope Env@loUp $only envelopes Env@loUps +?3 envelope A:nv@loUp +?3 envelopes A:nv@loUps envelope $verb epaulet Ep@l'Et epiphany I2pIf@nI @@ -1260,6 +1278,7 @@ eraser I2reIz3 ere e@ $only eros i@r0s err 3: +?3 err e@ errand Er@nd escallop Esk'A:l@p escapism Esk'eIpI2z@m @@ -1367,6 +1386,7 @@ formid fO@m'Id // formidable formica fO@m'aIk@ fortunate fO@tS@n@t fortune fO@tSu:n +?3 fortune fO@tS@n foyer fOIeI freelance fri:laans freon fri:0n @@ -1393,6 +1413,7 @@ gala gA:l@ galaxy gala#ksi galileo galI2l'eIoU galore $alt3 +?3 garage ga#rA:Z garish ge@rIS gases gasI#z gauche goUS @@ -1466,6 +1487,7 @@ helium hi:li@m helix hi:lIks hello h@loU henceforth hEnsfo@T +?3 herb 3:b hercules h3:kjUli:z heretical hI2rEtI2k@L hereto hi@3'tu: @@ -1509,6 +1531,7 @@ hunger hVNg3 hurrah h@r'A: hurrah hVr'eI hurricane hVrI2keIn +?3 hurricane h3:@keIn hussar hVz'A@ huzza h@z'A: huzzah h@z'A: @@ -1560,6 +1583,7 @@ inherit Inh'ErIt // inherited innard In3d inner In3 innovative In@veItIv +?3 inquiry Inkw@ri insect $1 insert Ins3:t $onlys insert Ins'3:t $verb @@ -1591,6 +1615,7 @@ interval Int3v@L interven Int3v'i:n // for intervening intray IntreI intro $1 +?3 investigative Inv,EstI2g'eItIv irate aIr'eIt iris aIrIs iron aI3n @@ -1632,6 +1657,7 @@ kowtow kaUt2aU la ,la $only laboratory la#b'0r@trI +?3 laboratory labr@tO:ri labor leIb3 labored leIb@d laborer leIb@r3 @@ -1649,6 +1675,7 @@ lasso las'u: ?3 lasso lasoU latrine $alt3 latte lA:t2eI +?3 launch lA:ntS lawyer lOI3 lava lA:v@ le l@_| $only @@ -1705,6 +1732,7 @@ looser lu:z3 lorenz l0r@nts los ,l0s $only losing lu:zIN // misspell +?3 lost lOst lukewarm lu:kwO@m lullaby lVl@baI lunatic lu:n@tIk @@ -1734,6 +1762,7 @@ mall mal ?3 mall mO:l mama mA:ma# mammoth mam@T +manageress manI2dZ@r'Es mandate $2 $verb manganese $1 manger meIndZ3 @@ -1843,6 +1872,7 @@ moustache m@st'aaS mouths maUDz $only movies mu:vIz mozilla m@zIl@ +?3 multi mVltaI multitude $1 multiplexer $1 mundane $2 @@ -2003,10 +2033,12 @@ parole $alt3 passenger pasI2ndZ3 passerby pas3b'aI passersby pas3zb'aI +?3 pasta pA:st@ pasted peIstI#d pasting peIstIN pastry peIstri pate pat2eI +?3 patent pat@nt pathetic $alt3 pathos peIT0s patio patIoU @@ -2115,6 +2147,8 @@ pretrial pri:tr'aI|@L pretty prIti pretzel prEts@L primeval praIm'i:v@L +pristine $2 +?3 privacy praIv@si privation praIv'eIS@n privilege prIvI2lI2dZ privy prIvi @@ -2159,6 +2193,7 @@ pythagoras paIT'ag@r@s python paIT@n pyramidal pI2r'amId@L +quadrilateral $3 quash kw0S quaternary kw@t3:n@rI qubit kju:bIt @@ -2263,6 +2298,7 @@ requiem rEkwI2Em reservation rEz3v'eIS@n reservoir rEz3vwA@ resin rEzIn +?3 respite rEspI2t restive rEstIv respiration rEspI#r'eIS@n respiratory rI2spIr@t@rI @@ -2293,6 +2329,7 @@ robust roUb'Vst romance roUm'ans rotate $2 rotund roUt'Vnd +roundtable $alt1 rouse raUz rout raUt // for routed routine $2 @@ -2360,6 +2397,7 @@ segue sEgweI separate sEp@-r@t separate sEp3reIt $verb semen si:m@n +?3 semi sEmaI semibreve $1 semicircle $1 semicolon sEmIk'oUl@n @@ -2548,6 +2586,7 @@ testes tEsti:z telephon tElI2foUn // for telephoning temperature tEmprI2tS3 ?!3 temporary tEmpr@rI +?3 template tEmpl@t thereof ,De@'0v thereon ,De@'0n thereto ,De@'tu: @@ -2572,6 +2611,7 @@ tis tIz $only toboggan t@b0g@n today t@deI todo t@du: +?3 tomato t@meItoU ton tVn $onlys tonage tVnIdZ tone toUn @@ -2595,7 +2635,7 @@ travesty trav@sti treatise tri:tIz triage tri:A:Z tribunal traIb'ju:n@L -triceratops $2 +triceratops traIs'Er@t0ps tricycle traIsIk@L trilogy trIl@dZi trio tri:oU @@ -2777,6 +2817,7 @@ yoghurt j0g3t yoyo joUjoU zavala $alt3 +?3 zebra zi:br@ zulus zu:lu:z @@ -2925,8 +2966,11 @@ Euphrates ju:fr'eIti:z Eyjafjalla eIja#fjatla# Folkestone foUkstoUn Fuego fweIgoU +Gabon gab0n +?3 Gabon ga#boUn Geneva dZ@ni:v@ Gdansk g@-dansk +Gibraltar $2 Gomera goUm'e@r@ Harare ha#rA:ri Hanoi han'OI @@ -2948,6 +2992,7 @@ Ipanema Ipa#n'i:m@ Israeli Izr'eIli Istanbul ,Ist,anb'Ul Italia It'alI2@ // Italian(s) +Ithaca IT@k@ Jakarta $alt3 Jerusalem dZ@ru:s@l@m Johannesburg $2 @@ -3018,6 +3063,7 @@ Noumea nu:m'eI@ Oahu oU'A:hu: Oklahoma oUkla#h'oUm@ Ohio oUh'aIoU +Omagh oUmA: Omaha oUma#hA: Oman oUm'an Oregon 0rI2g@n @@ -3074,7 +3120,6 @@ Tehran te@r'A:n (tel aviv) t,El||a#v'i:v Tenerife tEn3r'i:f Tennessee tEn@s'i: -Texas tEks@s Tijuana ti@w'A:n@ Tikal tI2kA:l Timor ti:mo@ @@ -3161,6 +3206,7 @@ Betsy bEtsi Betsey bEtsi Bjarne bjA@n@ Boris b0rIs +Bremen brEm@n Brianna brI'an@ Brien braI@n Caiseal kaS@L @@ -3448,6 +3494,7 @@ Dante dA:nt2eI Deslauriers dI2lo@rIeI Deveraux dEv3roU Disney dIzni +?3 Dolby doUlbi Dolce d0ltSeI Dvorak d@-vo@Zak Emory Em3ri @@ -3461,6 +3508,7 @@ Jacobi dZa#koUbi Kendell kEnd@L Kyocera kaI|@s'i@r@ Lamaze la#mA:z +Laurell $2 Mackenna m@kEn@ Mackenzie m@kEnzi Medusa m@du:s@ @@ -3476,6 +3524,7 @@ Rameses ram@si:z Ramirez ra#mi@3rEz Reagan reIg@n Reid ri:d +Remi r@ni: Reuter rOIt3 Rivera rI2ve@r@ Rizzoli rI2zoUli @@ -3537,8 +3586,8 @@ of 0v $u $only ?6 (of which) VvwItS $2 $pause for fO@ $u -(for a) f@@ $nounf -(for an) f@@n $nounf +(for a) f3@ $nounf +(for an) f3@n $nounf (for the) f3D@2 $nounf (for a while) f@@||w'aIl (for one) fO@w0n $2 $atend @@ -3818,8 +3867,8 @@ his hIz $u $nounf $only $strend2 her h3: $u $nounf $only hers h3:z $u $strend2 its Its $u $nounf -our aU@ $u $nounf $only -?3 our aU3 $u $nounf $only +our aU@ $u $nounf $onlys +?3 our aU3 $u $nounf $onlys your jO@ $u $nounf $only ?6 your jU@ $u $nounf $only their De@ $u $nounf $only @@ -3962,35 +4011,4 @@ like laIk $strend2 ?3 virile vIr@L ?3 volatile v0la#t@L -?3 amen ,eIm'En -?3 anti antaI -?3 banana ba#nan@ -?3 beta beIt@ -?3 caffeine $2 -?3 comrade k0mrad -?3 commentary k0m@ntEri -?3 current k'3@nt -?3 depot di:poU -?3 detail $2 -?3 dialog daI|@lO:g -?3 envelope A:nv@loUp -?3 err e@ -?3 fortune fO@tS@n -?3 garage ga#rA:Z -?3 herb 3:b -?3 hurricane h3:@keIn -?3 inquiry Inkw@ri -?3 investigative Inv,EstI2g'eItIv -?3 laboratory labr@tO:ri -?3 launch lA:ntS -?3 lost lOst -?3 multi mVltaI -?3 pasta pA:st@ -?3 patent pat@nt -?3 privacy praIv@si -?3 respite rEspI2t -?3 semi sEmaI -?3 template tEmpl@t -?3 tomato t@meItoU -?3 zebra zi:br@ diff --git a/dictsource/en_rules b/dictsource/en_rules index 38237195..fc0bc044 100644 --- a/dictsource/en_rules +++ b/dictsource/en_rules @@ -60,6 +60,7 @@ a (Cee+ a a (BeCo_ a a (BerA a + a (BeroA# eI a (BerC a a (Bet a @) a (Bia 'eI @@ -448,7 +449,7 @@ @) age (ment I2dZ g) age (ment 'eIdZ m) ag (enta @dZ - agh (_ @ + agh (_ A:g agio (_ 'A:dZIoU t) agi (o eIdZ _) ag (l@ a#g @@ -575,7 +576,6 @@ _) al (y al alz alt|s &) al (_ @L - &) ally (_ @li ?8 &) al (_ a#l @) ally (_S2 %i @@c) ally (_S4 l%i @@ -678,6 +678,7 @@ _n) ame eIm &) am (ent @m amer (ic a#mEr + c) am (ero am c) am (el am am (i_ 'A:m ami (g a#mi: @@ -1265,6 +1266,7 @@ _) be (f bI2 _) beg (AnK b%Ig _) be (gg bE + _) belarus bEl@r'u:s _) be (lC bE _) be (lli bI2 _) be (sC bI2 @@ -1914,6 +1916,7 @@ discr) e (tion E eu ju: ?3 n) eu u: +?3 n) eu (r U@ r) eu (d OI eu (m_ 'i:@ s) eu (m_ 'i@ @@ -2463,6 +2466,7 @@ er (ve 3: s) er (van 3: ery (_ @r%i +?3 @@AC) ery (_ e@ri ery (A 3j _v) ery ErI2 qu) ery i@rI @@ -2731,6 +2735,7 @@ @) guay (_ gwaI gue (_ g gu (e g + _) gu (i g _) g (yn g o) g (y_ g g (ynous_ =dZ @@ -2954,7 +2959,8 @@ &) iary =j@r%I &l) iary =i@r%I _) ian i@n - &) ia (_ =i|@ + &) ia (_N =i|@ + &) ia (_ =i@ @@) ia (_ =i@ @) ian (cy I|@n l) iais I|eIz @@ -3108,7 +3114,7 @@ l) im Im _pr) im (a aIm sh) im (a_ 'i:m - im (age Im + image ImI2dZ l) ime aIm d) ime (ns aImE im (ent+ Im @@ -3378,7 +3384,7 @@ ir (able 'aI3 m) ir (ac Ir sp) iral aI3r@L - @) ir (ation I#r + @) ir (ation @r ir (ate =i@r consp) ira (t Ir@ ire aI3 @@ -3423,6 +3429,8 @@ prAm) is Is b) is (_ Is c) is (_ Is + @@m) is (_ Is + am) is (_S1 z @Cs) is (_ =Is &) is (abl aIz isa (tion aIzeI @@ -3839,6 +3847,7 @@ .group o o 0 + _) o 0 X) o 0# X) o ($w_alt3 %0# _) o'(P2 %oU // prefix @@ -3881,18 +3890,18 @@ o (bic_ 'oU n) o (bil oU _m) o (bil oU - o (bje %0# + o (bje %0 _) o (bl %0# n) o (bl oU o (bliga 0 o (bligato %0# o (blo 0 _r) o (bo oU - _) o (bs %0# - _) obs (er %0#bz + _) o (bs %0 + _) obs (er %0bz obso (l 0bs@ o (bstin 0 - _) o (bt %0# + _) o (bt %0 o (by_ oU f) o (cA oU _l) o (cA oU @@ -3920,7 +3929,6 @@ k) o (dA oU meth) o (d_ @ peri) o (d_ @ - o (da_ oU d) o (dec %oU m) o (del 0 m) o (der 0 @@ -4128,6 +4136,7 @@ @) ome (tre '0mI @) ome (try '0m@ &) omer (_ @m3 + c) omer (_ Vm3 gl) om (er 0m _p) om (e 0m _s) ome Vm @@ -4463,7 +4472,7 @@ c) ou (pl V &) our (_ 3 np) our (_ o@ - &) oured @d + &) oured 3d ev) our (ed aU@ our (n 3: ?5 our (n VR @@ -4680,7 +4689,11 @@ per (cus p3 _) peregrin pEr@grIn per (fec p3 + _) per (iC@@ p,Er + _) perini pErIn'i: per (iph p3r + _) per (isc pEr + _) per (ish pEr perme (a p3:mI per (miss p3 per (mit p3 @@ -5096,7 +5109,6 @@ ?8 ssion (_ =SVn 1_) st (_ _) st (_ s@nt - _) state (@ steIt stein staIn ti) ssue Su: _) s (u s @@ -5253,9 +5265,9 @@ tu (ous tSu: @) tur (A tS@r @) tur (al_ tS=@r - @) tur (y tS@r - @) tur (_ tS3 - ture (_ tS3 + &) tur (y tS@r + &) tur (_ tS3 + &) ture (_ tS3 tz ts tze (_ tsi @@ -5368,7 +5380,7 @@ ?3 n) uclear u:kli@3 ucul VkjUl @) u (da_ 'ju: -?3 @) u (da_ 'u: +?3 @L08) u (da_ 'u: b) u (ddh U u (esq ju: u (ga_ 'u: @@ -5418,7 +5430,7 @@ u (ly u: d) u (ly ju: z) u (l_ 'u: - um (_ @m + &) um (_ @m vol) u (m ju: u (ma_ 'u: h) u (man ju: @@ -5604,7 +5616,7 @@ @) ur (ation jUr ure (_ jU@ ur (ed_ jU@ - g) ured (_ @d + g) ured (_ 3d b) ur (e jU@r g) ure (_ 3 ?3 g) ure (_ j3 @@ -5678,7 +5690,9 @@ _) x (Y z xio (n kS@ xious =kS@s + xas (_ =ks@s xis (_ =ksIs + xus (_ =ks@s xu (a =kSu: lu) x (ur gZ ?3 lu) xu (r gZU@ @@ -5880,6 +5894,7 @@ Eri (A 'i@rI2 Er (ie_ @r Er (ic_ Er + Er (ous_ @r Er (_ 3 ad) Er (_S1 3 ad) Ers (_S2 3z @@ -5987,8 +6002,11 @@ // non-ascii characters with specified pronunciations // List the accented characters in en_list with the $accent attribute + á (X 'A: à a é eI + é (X 'eI + é (CA_ 'eI _) é %I ée i: ê E: diff --git a/dictsource/pt_list b/dictsource/pt_list index 7f079d00..1f39dd99 100644 --- a/dictsource/pt_list +++ b/dictsource/pt_list @@ -493,10 +493,10 @@ era E*& $u1 // .. imperfect eram E*&U~ $u1 fui $u // .. preterite -foste $u +foste fostSy $u1 // & fostes foi $u fomos $u -fostes $u + fora $u // .. pluperfect fômamos $u @@ -723,17 +723,20 @@ cefaleia $alt cerca $alt $verb cerco $alt $verb cesta $alt2 +cesto $alt2 chamego $alt2 chefe $alt chinelo $alt choro $alt2 $noun chupeta $alt2 +clamores $alt2 coco $alt2 cofre $alt coice $alt2 colabore $alt colheste $alt2 colmeia $alt +colore $alt começo $alt2 $noun comodo $alt2 comera $alt2 @@ -784,7 +787,7 @@ discordo $alt dissermos $alt dobro $alt2 $noun doce $alt2 -doutoras $alt2 +doutora $alt2 droga $alt duelo $alt dueto $alt2 @@ -823,6 +826,7 @@ estiverdes $alt estiveres $alt estivermos $alt estrela $alt2 +estremeceste $alt2 estrofe $alt estorno $alt $verb estorvo $alt $verb @@ -854,7 +858,6 @@ fores $alt2 forro $alt $verb fosse $alt2 fossem $alt2 -foste $alt2 frevo $alt2 galera $alt gameta $alt2 @@ -867,6 +870,7 @@ gonorreia $alt gorda $alt2 gota $alt2 gozo $alt $verb +graveto $alt2 grego $alt2 grelha $alt grega $alt2 @@ -914,6 +918,7 @@ morcego $alt2 morda $alt2 moreia $alt mortos $alt +motora $alt2 ?2 mulher mulj'Er ?4 mulher mul^'Er mui mwi @@ -962,6 +967,7 @@ pesquem $alt peso $alt peso $alt2 $noun piloto $alt2 +pintora $alt2 pirueta $alt2 plateia $alt plebeia $alt @@ -1005,6 +1011,8 @@ rocha $alt rock $alt rogas $alt rolo $alt2 $noun +rosna $alt +rumores $alt2 saleta $alt2 sarjeta $alt severa $alt @@ -1016,7 +1024,7 @@ selo $alt $verb selvagem seUv'aZeIN sexteto $alt2 ?1 senhora $alt2 -sesta $alt2 +senhores $alt2 sincera $alt sincero $alt sinopse $alt @@ -1031,12 +1039,14 @@ sogra $alt sopre $alt soprem $alt sopro $alt $verb +soro $alt2 sorvete $alt2 sossego $alt2 $noun souberdes $alt soubermos $alt suborno $alt $verb sufoco $alt2 $noun +sufocos $alt2 sugere $alt sugerem $alt suporto $alt @@ -1059,6 +1069,7 @@ torres $alt2 tortos $alt traqueia $alt travesso $alt2 +tremores $alt2 trevo $alt2 troco $alt2 $noun tropa $alt diff --git a/dictsource/pt_rules b/dictsource/pt_rules index 77d410ca..6cece1b7 100644 --- a/dictsource/pt_rules +++ b/dictsource/pt_rules @@ -21,6 +21,7 @@ .L04 a am e em o ue uem .L05 r ra ram re rem rdes .L06 ra ram ste re rem +.L07 se sem te .group a @@ -366,7 +367,7 @@ _comprom) e (tL03_ e _sol) e (trL03_ E _atr) e (vL03_ e - _escr) e (vL03_ e + scr) e (vL03_ e // e- in- pre- ree- _descr) e (vL03_ e _embel) e (zL04_ E _pr) e (zL04_ E @@ -405,6 +406,26 @@ _reconh) e (çL03_ e _arref) e (çL01_ e _beb) e (ssL02_ e com) e (ssL02_ e + _corr) e (ssL02_ e + _morr) e (sL07_ e + _adoec) e (sL07_ e + _torc) e (sL07_ e + _viv) e (sL07_ e + _eleg) e (sL07_ e + respond) e (sL07_ e // & corres- + entend) e (sL07_ e +compreend) e (sL07_ e +interromp) e (sL07_ e +intromet) e (sL07_ e +_escond) e (sL07_ e + _bat) e (sL07_ e + _sofr) e (sL07_ e + l) e (que_ E + _p) e (quL02_ E + _s) e (quL02_ E + _) e (rguL02_ E + _enx) e (rguL02_ E + _alb) e (rguL02_ E //endsort _exag) e (L05_ E diff --git a/dictsource/vi_rules b/dictsource/vi_rules index bb58847a..6e8db88f 100644 --- a/dictsource/vi_rules +++ b/dictsource/vi_rules @@ -83,12 +83,12 @@ ỵ ỵ _) b _b .group c - c k + c g //k c (_ kh ch c // try [tS;] [tS] [c] .group d - d J // try [z] [J] [dZ] [dZ;] [J^] + d J^ // try [z] [J] [dZ] [dZ;] [J^] .group đ đ d @@ -101,13 +101,13 @@ ỵ ỵ .group g g Q // try [g] [Q] gh Q // or [g] [Q] - g (i D // try [D] [z] [j] [J^] [z;] [J] [dZ] - g (ì D - g (í D - g (ỉ D - g (ĩ D - g (ị D - gi D + g (i J^ // try [D] [z] [j] [J^] [z;] [J] [dZ] + g (ì J^ + g (í J^ + g (ỉ J^ + g (ĩ J^ + g (ị J^ + gi J^ .group h h h @@ -133,7 +133,7 @@ ỵ ỵ ng N ngh N nh n^ - + .group ñ ñ n^ @@ -144,7 +144,7 @@ ỵ ỵ .group q q k q (_ kh - qu kw + qu w //kw .group r r z. // try [z] [z.] [r] [z;] @@ -183,11 +183,11 @@ ỵ ỵ aĩ a:I5 aị a:I6 ay aI - aỳ aI2 + aỳ aI2 aý aI3 aỷ aI4 - aỹ aI5 - aỵ aI6 + aỹ aI5 + aỵ aI6 ao a:U aò a:U2 aó a:U3 @@ -402,64 +402,81 @@ ỵ ỵ //========================= .group o o O - o (A w + oa o@ // modify oa sound example: hoa,khoa // o (A w oi OI oì OI2 oí OI3 oỉ OI4 oĩ OI5 oị OI6 - + ong O# + oe o& // Adding oe sound example: lóe sáng,toét mắt .group ò ò O2 òi OI2 - ò (A w2 + òa o@2 //ò (A w2 + òng O#2 + òe o&2 .group ó ó O3 ói OI3 - ó (A w3 + óa o@3 //ó (A w3 + óng O#3 + óe o&3 .group ỏ ỏ O4 ỏi OI4 - ỏ (A w4 + ỏa o@4 //ỏ (A w4 + ỏng O#4 + ỏe o&4 .group õ õ O5 õi OI5 - õ (A w5 + õa o@5 //õ (A w5 + õng O#5 + õe o&5 .group ọ ọ O6 ọi OI6 - ọ (A w6 + ọa o@6 //ọ (A w6 + ọng O#6 + ọe o&6 //============================= .group ô ô o ôi oI + ông o# // ông sound .group ồ ồ o2 ồi oI2 + ồng o#2 .group ố ố o3 ối oI3 + ống o#3 .group ổ ổ o4 ổi oI4 + ổng o#4 .group ỗ ỗ o5 ỗi oI5 + ỗng o#5 .group ộ ộ o6 ội oI6 + ộng o#6 @@ -525,36 +542,41 @@ ỵ ỵ uổi u@j4 uỗi u@j5 uội u@j6 - + //ung u# .group ù ù u2 ù (A w2 ùi uI2 ùa u@2 + //ùng u#2 .group ú ú u3 ú (A w3 úi uI3 úa u@3 + //úng u#3 .group ủ ủ u4 ủ (A w4 ủi uI4 ủa u@4 + //ủng u#4 .group ũ ũ u5 ũ (A w5 ũi uI5 ũa u@5 + //ũng u#5 .group ụ ụ u6 ụ (A w6 ụi uI6 ụa u@6 + //ụng u#6 //============================= .group ư @@ -696,13 +718,13 @@ ỵ ỵ .group - % f'@2n||tS;'am + % f'@2n||cr'am ! _:c'@3m_|t'a:7n_: ! (\! // : koUl@n D_) h (_DD_ D'@:2 // omit colon in time, eg: 2:30 $ d'o||l'a - != x,o1N_|_b'a2N_ + != x'o#_|_b'a2N_ >= l'@:3n_|h'@:1n_|hw,a6kh_b'a2N <= n^'O4_|h'@:1n_|hw,a6kh_b'a2N diff --git a/phsource/envelopes.png b/phsource/envelopes.png index aa95e8da..b5bc5213 100644 Binary files a/phsource/envelopes.png and b/phsource/envelopes.png differ diff --git a/phsource/ph_english_us b/phsource/ph_english_us index 540afc0e..c15b7ddd 100644 --- a/phsource/ph_english_us +++ b/phsource/ph_english_us @@ -41,14 +41,6 @@ phoneme @2 // Schwa, changes to I before a vowel FMT(vowel/@_low2) endphoneme -phoneme @L - vowel starttype #@ endtype l - ipa əl - unstressed - length 160 - FMT(vwl_en/@L) -endphoneme - phoneme a vowel starttype #e endtype #@ @@ -176,6 +168,7 @@ phoneme 3: vowel starttype #@ endtype #@ length 240 IfNextVowelAppend(r-) + ChangeIfDiminished(3) FMT(vwl_en_us/3_us2) endphoneme @@ -265,7 +258,7 @@ endphoneme phoneme eI vowel starttype #e endtype #i length 230 - FMT(vdiph2/ei_4) + FMT(vdiph/eei_5) endphoneme diff --git a/phsource/ph_pt_brazil b/phsource/ph_pt_brazil index 432b6abe..a6bba543 100644 --- a/phsource/ph_pt_brazil +++ b/phsource/ph_pt_brazil @@ -39,7 +39,6 @@ phoneme &~ vowel starttype #@ endtype #@ ipa ɐU+0303 length 180 -// ChangeIfNotStressed(&) FMT(vnasal/a#_n) endphoneme @@ -225,3 +224,10 @@ phoneme * endphoneme +// TESTING +phoneme &2~ + vowel starttype #@ endtype #@ + ipa ɐU+0303 + length 200 + FMT(vnasal/W_n) +endphoneme diff --git a/phsource/ph_vietnam b/phsource/ph_vietnam new file mode 100644 index 00000000..eef7563f --- /dev/null +++ b/phsource/ph_vietnam @@ -0,0 +1,412 @@ + +//==================================================== +// Vietnamese Phonemes +//==================================================== + + +phoneme 1 // ngang tone: level + stress + Tone(28, 32, envelope/p_level, NULL) +endphoneme + + +phoneme 2 // huyền tone: low falling + stress + Tone(20, 8, envelope/p_fall, NULL) //20 +endphoneme + + +phoneme 3 // sắc Tone(rising + stress + Tone(25, 50, envelope/p_rise, NULL) // 25 +endphoneme + + +phoneme 4 // hỏi Tone(curve (dipping rising) + stress + Tone(30, 5, envelope/p_fallrise, NULL) +endphoneme + + +phoneme 5 // ngã tone: broken (creaking rising) + stress + Tone(28,58, envelope/p_214, envelope/vi_5amp) // 28,58 +endphoneme + + +phoneme 6 // nặng Tone(drop (constricted) + stress + //length 150 // ignore because it make too short sound 75 // reduce the length of the vowel + Tone(40, 20, envelope/p_512, envelope/vi_6amp) +endphoneme + + +phoneme 7 // Tone(1 (ngang) at end of clause + stress + Tone(40, 20, envelope/p_fall, NULL) +endphoneme + + + +// Vowels +//======= + + +phoneme a + vowel starttype #@ endtype #@ + length 120 + FMT(vowel/a_6) //a_4) +endphoneme + +phoneme a: + vowel starttype #a endtype #a + length 200 //280 + FMT(vietnam/a) //FMT(vowel/a_6) +endphoneme + + +phoneme E + vowel starttype #e endtype #e + length 200 + FMT(vowel/ee_3) +endphoneme + +phoneme e + vowel starttype #e endtype #e + length 200 + FMT(vowel/e) +endphoneme + + +phoneme i + vowel starttype #i endtype #i + length 190 + IfNextVowelAppend(;) + IF prevPhW(w) THEN + VowelStart(w/wi) + ENDIF + FMT(vowel/i_4) +endphoneme + + +phoneme O + vowel starttype #o endtype #o + IF nextPh(kh) THEN + length 95 + ELSE + length 200 + ENDIF + FMT(vowel/aa_4) +endphoneme + +phoneme o + vowel starttype #o endtype #o + IF nextPh(kh) THEN + length 95 + ELSE + length 200 + ENDIF + FMT(vowel/o_2) +endphoneme + + +phoneme u + vowel starttype #u endtype #u + IF nextPh(kh) OR nextPh(N) THEN // hear as ung sound + length 120 + ELSE + length 200 + ENDIF + FMT(vnasal/u_n) //vowel/u_7) +endphoneme + +phoneme y + vowel starttype #u endtype #u + IF nextPh(kh) OR nextPh(N) THEN + length 120 + ELSE + length 200 + ENDIF + FMT(vowel/u#_5) +endphoneme + + + +phoneme @ + vowel starttype #@ endtype #a + IF nextPh(kh) OR nextPh(N) THEN + length 120 + ELSE + length 170 + ENDIF + FMT(vowel/V) //vowel/@_2) +endphoneme + + +phoneme @: + vowel starttype #@ endtype #@ + length 280 + FMT(vowel/@_2) +endphoneme + + + +// Diphthongs +//=========== + +phoneme aI + vowel starttype #a endtype #i + length 200 //250 + FMT(vdiph/&y) +endphoneme + + +phoneme a:I + vowel starttype #a endtype #i + length 200 //250 + FMT(vdiph/ai) +endphoneme + + +phoneme @I + vowel starttype #@ endtype #i + length 200 //250 + FMT(vdiph/@i) +endphoneme + + +phoneme @:I + vowel starttype #@ endtype #i + length 200 //250 + FMT(vdiph/@i) +endphoneme + + +phoneme eI + vowel starttype #e endtype #i + length 200 + FMT(vdiph/ei) +endphoneme + + +phoneme EI + vowel starttype #e endtype #i + length 200 + FMT(vdiph/eei) +endphoneme + + +phoneme OI + vowel starttype #o endtype #i + length 200 + FMT(vdiph/0i) +endphoneme + + +phoneme oI + vowel starttype #o endtype #i + length 200 + FMT(vdiph/oi) +endphoneme + + +phoneme uI + vowel starttype #u endtype #i + length 200 + FMT(vdiph/ui) +endphoneme + +phoneme yI + vowel starttype #u endtype #i + length 200 + FMT(vdiph/u-i) +endphoneme + + + + +phoneme aU + vowel starttype #a endtype #u + length 210 + FMT(vdiph/aau_4) +endphoneme + + +phoneme a:U + vowel starttype #a endtype #u + length 230 //270 + FMT(vdiph/au) +endphoneme + + +phoneme eU + vowel starttype #e endtype #u + length 200 + FMT(vdiph/eu) +endphoneme + + +phoneme EU + vowel starttype #e endtype #u + length 200 + FMT(vdiph/eeu) +endphoneme + +phoneme iU + vowel starttype #i endtype #u + length 200 + FMT(vdiph2/iu) +endphoneme + +phoneme @U + vowel starttype #@ endtype #u + length 200 + FMT(vdiph/@u_3) +endphoneme + +phoneme @:U + vowel starttype #@ endtype #u + length 270 + FMT(vdiph/@u) +endphoneme + + + +phoneme i@ + vowel starttype #i endtype #@ + length 240 + FMT(vdiph2/ii@_3) +endphoneme + +phoneme y@ + vowel starttype #i endtype #@ + length 200 + FMT(vdiph2/y-y#) +endphoneme + +phoneme u@ + vowel starttype #u endtype #@ + length 200 + FMT(vdiph2/uu@) +endphoneme + +// Addition Dipthongs + +phoneme o# // ông + vowel starttype #o endtype #o + length 200 + FMT(vnasal/a#u_n) +endphoneme + +phoneme O# // ong + vowel starttype #o endtype #o + length 200 + FMT(vnasal/&u_n) +endphoneme + + +phoneme o@ + vowel starttype #o endtype #o + length 160 + FMT(vdiph2/oa) +endphoneme + +phoneme o& + vowel starttype #o endtype #o + length 160 + FMT(vietnam/oe) +endphoneme + +phoneme kh + vls vel frc + lengthmod 3 + Vowelin f1=0 f2=2300 200 400 f3=200 80 + Vowelout f1=0 f2=2300 300 400 f3=200 80 rms=20 + WAV(vietnam/_c,5) //ufric/x, 50) +endphoneme + + +phoneme l + liquid + lengthmod 7 + //IF nextPh(isNotVowel) THEN + // ChangePhoneme(l/2) + //ENDIF + + //CALL vowelstart_l + + FMT(l/l_vi) +endphoneme + +phoneme t + vls alv stop + //voicingswitch d + lengthmod 2 + Vowelin f1=0 f2=1700 -300 300 f3=-100 80 + Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 + + WAV(vietnam/th, 50) +endphoneme + +phoneme cr + vls pla afr sibilant + //voicingswitch dZ + lengthmod 2 + Vowelin f1=0 f2=2300 200 400 f3=-100 80 + + + WAV(vietnam/tr,10) +endphoneme + +phoneme d + vcd alv stop + lengthmod 5 + + Vowelin f1=1 f2=1700 -300 300 f3=-100 80 + Vowelout f1=2 f2=1700 -300 300 f3=-100 80 brk +WAV(vietnam/dd) + endphoneme + + phoneme c + vls pal stop palatal + //voicingswitch J + lengthmod 2 + length 75 + Vowelin f1=0 f2=2700 400 600 f3=300 80 rate len=70 + Vowelout f1=1 f2=2700 400 600 f3=200 70 len=50 colr=1 + + + WAV(vietnam/ch,5) +endphoneme + + +phoneme p + vls blb stop + lengthmod 2 + Vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11 + Vowelout f1=0 f2=1000 -500 -350 f3=-300 80 rms=22 + + WAV(ustop/p_unasp_,10) + +endphoneme + +phoneme n + vcd alv nasal + Vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11 + Vowelout f1=2 f2=1700 -300 250 f3=-100 80 rms=20 brk + lengthmod 4 +FMT(n/n#_) +endphoneme + +phoneme t[ // dental variant of /t/ + vls dnt stop + voicingswitch d[ + lengthmod 2 + Vowelin f1=1 f2=1500 -250 250 f3=-100 80 amp=16 + Vowelout f1=0 f2=1500 -300 250 f3=-100 80 rms=20 + + IF nextPh(isPause2) THEN + WAV(ustop/t_unasp2, 5) + ENDIF + WAV(ustop/t_hi, 70) +endphoneme diff --git a/phsource/phonemes b/phsource/phonemes index 10c1ae5c..b83cf47b 100644 --- a/phsource/phonemes +++ b/phsource/phonemes @@ -1812,7 +1812,7 @@ phonemetable is base include ph_icelandic phonemetable vi base -include ph_vi +include ph_vietnam phonemetable zhy base include ph_zh_yue diff --git a/phsource/vdiph/eei_5 b/phsource/vdiph/eei_5 new file mode 100644 index 00000000..50214664 Binary files /dev/null and b/phsource/vdiph/eei_5 differ diff --git a/phsource/vietnam/_c.wav b/phsource/vietnam/_c.wav new file mode 100644 index 00000000..a4c52741 Binary files /dev/null and b/phsource/vietnam/_c.wav differ diff --git a/phsource/vietnam/a b/phsource/vietnam/a new file mode 100644 index 00000000..4ddf8321 Binary files /dev/null and b/phsource/vietnam/a differ diff --git a/phsource/vietnam/ch.wav b/phsource/vietnam/ch.wav new file mode 100644 index 00000000..7349e1aa Binary files /dev/null and b/phsource/vietnam/ch.wav differ diff --git a/phsource/vietnam/dd.wav b/phsource/vietnam/dd.wav new file mode 100644 index 00000000..b139bce6 Binary files /dev/null and b/phsource/vietnam/dd.wav differ diff --git a/phsource/vietnam/kh.wav b/phsource/vietnam/kh.wav new file mode 100644 index 00000000..aa3b2b1d Binary files /dev/null and b/phsource/vietnam/kh.wav differ diff --git a/phsource/vietnam/n.wav b/phsource/vietnam/n.wav new file mode 100644 index 00000000..46aeaa1f Binary files /dev/null and b/phsource/vietnam/n.wav differ diff --git a/phsource/vietnam/nh.wav b/phsource/vietnam/nh.wav new file mode 100644 index 00000000..13f4f0d8 Binary files /dev/null and b/phsource/vietnam/nh.wav differ diff --git a/phsource/vietnam/nn b/phsource/vietnam/nn new file mode 100644 index 00000000..0e21b1f8 Binary files /dev/null and b/phsource/vietnam/nn differ diff --git a/phsource/vietnam/oe b/phsource/vietnam/oe new file mode 100644 index 00000000..887b009c Binary files /dev/null and b/phsource/vietnam/oe differ diff --git a/phsource/vietnam/oong b/phsource/vietnam/oong new file mode 100644 index 00000000..31d235db Binary files /dev/null and b/phsource/vietnam/oong differ diff --git a/phsource/vietnam/th.wav b/phsource/vietnam/th.wav new file mode 100644 index 00000000..95c89f5b Binary files /dev/null and b/phsource/vietnam/th.wav differ diff --git a/phsource/vietnam/tr.wav b/phsource/vietnam/tr.wav new file mode 100644 index 00000000..b52fc7c8 Binary files /dev/null and b/phsource/vietnam/tr.wav differ diff --git a/src/compiledata.cpp b/src/compiledata.cpp index b8d94e03..41340e88 100644 --- a/src/compiledata.cpp +++ b/src/compiledata.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005 to 2011 by Jonathan Duddington * + * Copyright (C) 2005 to 2013 by Jonathan Duddington * * email: jonsd@users.sourceforge.net * * * * This program is free software; you can redistribute it and/or modify * @@ -661,9 +661,9 @@ static REF_HASH_TAB *ref_hash_tab[256]; #define N_ENVELOPES 30 -static int n_envelopes = 0; -static char envelope_paths[N_ENVELOPES][80]; -static unsigned char envelope_dat[N_ENVELOPES][ENV_LEN]; +int n_envelopes = 0; +char envelope_paths[N_ENVELOPES][80]; +unsigned char envelope_dat[N_ENVELOPES][ENV_LEN]; typedef struct { @@ -3408,13 +3408,9 @@ static void CompilePhonemeData2(const char *source) wxString report; wxString report_dict; -#ifdef MAKE_ENVELOPES -make_envs(); -#endif - n_envelopes = 0; error_count = 0; -memset(markers_used,0,sizeof(markers_used)); + memset(markers_used,0,sizeof(markers_used)); f_errors = stderr; diff --git a/src/dictionary.cpp b/src/dictionary.cpp index be3b8c3b..8a525070 100644 --- a/src/dictionary.cpp +++ b/src/dictionary.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005 to 2011 by Jonathan Duddington * + * Copyright (C) 2005 to 2013 by Jonathan Duddington * * email: jonsd@users.sourceforge.net * * * * This program is free software; you can redistribute it and/or modify * @@ -296,10 +296,6 @@ int LoadDictionary(Translator *tr, const char *name, int no_error) // set up indices into data_dictrules InitGroups(tr); - if(tr->groups1[0] == NULL) - { - fprintf(stderr,"Error in %s_rules, no default rule group\n",name); - } // set up hash table for data_dictlist p = &(tr->data_dictlist[8]); diff --git a/src/synthdata.cpp b/src/synthdata.cpp index f3dd6871..39e6d67d 100644 --- a/src/synthdata.cpp +++ b/src/synthdata.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005 to 2011 by Jonathan Duddington * + * Copyright (C) 2005 to 2013 by Jonathan Duddington * * email: jonsd@users.sourceforge.net * * * * This program is free software; you can redistribute it and/or modify * @@ -35,7 +35,7 @@ #include "translate.h" #include "wave.h" -const char *version_string = "1.46.33 08.Feb.13"; +const char *version_string = "1.46.34 12.Feb.13"; const int version_phdata = 0x014631; int option_device_number = -1; diff --git a/src/vowelchart.cpp b/src/vowelchart.cpp index b555afb9..aab1f2ce 100644 --- a/src/vowelchart.cpp +++ b/src/vowelchart.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005 to 2007 by Jonathan Duddington * + * Copyright (C) 2005 to 2013 by Jonathan Duddington * * email: jonsd@users.sourceforge.net * * * * This program is free software; you can redistribute it and/or modify * @@ -670,9 +670,9 @@ void MakeVowelLists(void) #define N_ENVELOPES 30 -int n_envelopes = 0; -char envelope_paths[N_ENVELOPES][80]; -unsigned char envelope_dat[N_ENVELOPES][ENV_LEN]; +extern int n_envelopes; +extern char envelope_paths[N_ENVELOPES][80]; +extern unsigned char envelope_dat[N_ENVELOPES][ENV_LEN]; #define HT_ENV 140 #define WD_ENV 128*2