diff --git a/dictsource/dict_phonemes b/dictsource/dict_phonemes index c0c16c0d..75db70fc 100644 --- a/dictsource/dict_phonemes +++ b/dictsource/dict_phonemes @@ -218,8 +218,8 @@ o~ U u uI u~ y * : ; b C d dZ f g h j k l l^ m n N n^ p Q r R s S -s; t tS ts v w x z -Z +s# s; t tS ts v w x +z Z Dictionary ro_dict diff --git a/dictsource/en_list b/dictsource/en_list index abeb93e5..89e34cd5 100644 --- a/dictsource/en_list +++ b/dictsource/en_list @@ -70,7 +70,7 @@ _* ast@rIsk: _+ plVs _, k0m@ _- h,aIf@n -_. st0p +_. d0t _/ stroUk _: koUl@n _; sEmIk'oUl0n @@ -962,6 +962,7 @@ hominem h0mInEm horizontal $3 hospitable h0sp'It@b@L hostage h0stIdZ +hostess hoUstEs hotel hoUt'El house haUz $verb however $2 @@ -1405,6 +1406,7 @@ pros proUz proceed proUsi:d $onlys proceed $verb proceed $only +progeny pr0dZ@nI2 progress proUgrEs $only progress $verb project pr0dZEkt $onlys @@ -1420,6 +1422,7 @@ psst psst psyche saIki: psyched saIkd psychiatrist saIk'aI@trIst +psychiatry saIk'aI@trI2 psychosis saIk'oUsIs psychotic saIk'0tIk pud pUd // and pudding @@ -1581,6 +1584,7 @@ sclera skli@r@ seabed si:bEd sealion si:laI@n seance seI0ns +seconded sEk'0ndId secrecy si:kr@sI2 secret si:kr@t secretive si:kr@tI2v @@ -1625,6 +1629,7 @@ site saIt // for sited ski ski: skies skaIz skied ski:d +skua sku:@ snooker snu:k3 society s@saI@tI2 sofa soUf@ @@ -2101,6 +2106,7 @@ Totonto t@r0ntoU Timor ti:mo@ Tokyo toUkIoU Toulouse tu:l'u:z +Tripoli trIp@lI2 Ukraine ju:kr'eIn Ural ju:@r@L Utah ju:tA: diff --git a/dictsource/en_rules b/dictsource/en_rules index 230b1cb3..76312fba 100644 --- a/dictsource/en_rules +++ b/dictsource/en_rules @@ -2069,6 +2069,7 @@ &) er 3 @@@) er (_$2de 3 // suffix %C) er (_$3 3 + ll) er (_$2 3 %C) ers (_$4 3z ss) er (_$2 3 all) er (_ 3 @@ -4556,7 +4557,6 @@ _sol) u (C ju: u (a ju: r) u (aC+ u: - ua (_ wA: @g) ua (ge wI uary (_ ju:@rI2 r) uary (_ u:rI2 diff --git a/dictsource/hu_rules b/dictsource/hu_rules index c44e953e..e2f0e081 100644 --- a/dictsource/hu_rules +++ b/dictsource/hu_rules @@ -18,6 +18,13 @@ cs tS ccs tS: + me) ch (a C + te) ch (n C + pszi) ch C + pszy) ch C + mün) ch (en C + + .group d d d dd d: @@ -61,8 +68,8 @@ gys tS A) gys (A tS: - gysz ts - A) gysz (A ts: + gysz Js + A) gysz (A Js: gyz dz A) gyz (A d:z C) gyzs dZ @@ -105,11 +112,12 @@ n (b m ny n^ nny n^n^ + nj n^ + nyj n^ + ny (k N ny (g N - nj n^ - nyj n^ .group o diff --git a/dictsource/pt_list b/dictsource/pt_list index c8f1df22..e455e310 100755 --- a/dictsource/pt_list +++ b/dictsource/pt_list @@ -14,40 +14,40 @@ // character names -_á ,a&g'udu -_à ,ag@-*'avi -_â ,asirkuNfl'Eksu +_á ,a&g'udU +_à ,agR'avi +_â ,asirkuNfl'EksU _ã ,atS'iU _ç s,esed'elj& -_é ,e&g'udu -_ê ,asirkuNfl'Eksu -_í ,i&g'udu -_ó ,o&g'udu -_ô ,osirkuNfl'Eksu +_é ,e&g'udU +_ê ,asirkuNfl'EksU +_í ,i&g'udU +_ó ,o&g'udU +_ô ,osirkuNfl'EksU _õ ,otS'iU -_ú ,u&g'udu -_ü ,ut@-*'em& +_ú ,u&g'udU +_ü ,utR'em& -_cap maI'uskulu -_?A l'et@-*& -_?? s'imbolu +_cap maI'uskulU +_?A l'etR& +_?? s'imbolU -_. p'oNtu +_. p'oNtU _! ,eskl&mas'&U~ -?1 _" 'asp&S -?2 _" 'asp&s +_" 'asp&s# + ?1 _# k,ardin'al ?2 _# k,ardZin'aU -_$ s,if@-*'&U~ -_% pors'eINtu +_$ s,ifR'&U~ +_% pors'eINtU _& 'e ?1 _' ap'Ost@-*,ofy -?2 _' ap'Ost@-*,ofu +?2 _' ap'Ost@-*,ofU _( ,ab@-*ipa*'eINtezi _) f,ES&pa*'eINtezi _* ,aste*'isku -?1 _+ m'aIS -?2 _+ m'aIs +_+ m'aIs# + _, v'irgul& _- 'ifeIN _/ b'aQ& @@ -59,13 +59,13 @@ _< men'Or _> maI'Or _? ,iNtex,ogas'&U~ _@ ax'ob& -_[ ,ab@-*ikowS'etSi +_[ ,abRikowS'etSi _\ b,ax&,iNvertS'id& _] f,ES&kowS'etSi _^ s,irkuNfl'Eksu __ s,ublin^'adu -_` g@-*'avi -_{ ,ab@-*iS'avi +_` gR'avi +_{ ,abRiS'avi ?1 _| b,ax&v,ertSik'al ?2 _| b,ax&v,ertSik'aU _} f,ES&S'avi @@ -73,45 +73,41 @@ _} f,ES&S'avi ?2 _~ tS'iU _¡ ,eskl&mas,&U~,iNvertS'id& _¿ ,iNtex,ogas,&U~,iNvertS'id& -?1 _" 'ab@-*i;'asp&||Sd'upl&S -?2 _" 'ab@-*i;'asp&||d'upl&s + +_" 'abRi;'asp&||d'upl&s# // numeric //******** ?1_0 z'Eru -?2_0 z'Exu +?2_0 z'E*u ?1_1 'um ?2_1 'uN -?1_2 d'oIS -?2_2 d'oIs -?1_3 tr'eS -?2_3 t@-*'es -?1_4 kw'atru -?2_4 kw'at@-*u +_2 d'oIs# +_3 tR'es# +_4 kw'atRu _5 s'iNku -?1_6 s'eIS -?2_6 s'eIs +_6 s'eIs# ?1_7 s'Ety ?2_7 s'EtSi _8 'oItu ?1_9 n'Ovy ?2_9 n'Ovi -?1_10 d'ES -?2_10 d'Ez +10 d'Es# + ?1_11 'oNzy ?2_11 'oNzi ?1_12 d'ozy ?2_12 d'ozi -?1_13 tr'ezy -?2_13 t@-*'ezi +?1_13 tR'ezy +?2_13 tR'ezi ?1_14 k&t'orzy ?2_14 kat'Orzi ?1_15 k'iNzy ?2_15 k'iNzi -?1_16 dyz&s'eiS -?2_16 d,ezes'eIs +?1_16 dyz&s'eis# +?2_16 d,ezes'eIs# ?1_17 dyz&s'Ety ?2_17 d,ezes'EtSi ?1_18 dyz'Oitu @@ -120,8 +116,8 @@ _8 'oItu ?2_19 dezen'Ovi ?1_2X v'iNty ?2_2X v'iNtSi -?1_3X tr'iNt& -?2_3X t@-*'iNt& +_3X tR'iNt& + ?1_4X kw&r'eNt& ?2_4X kwa*'eINt& _5X siNkw'eINt& @@ -133,27 +129,27 @@ _8X oIt'eINt& ?1 _9X nuv'eINt& ?2 _9X nov'eINt& _1C0 s'eIN -?1_0C s'eINtuS -?2_0C s'eINtuz +?1_0C s'eINtus# +?2_0C s'eINtUs# _1C s'eINtu -?1_2C duz'eINtuS -?2_2C duz'eINtuz -?1_3C t:ryz'eNtuS -?2_3C t@-*ez'eNtuz -?1_5C kin^'eINtuS -?2_5C kin^'eINtuz +?1_2C duz'eINtus# +?2_2C duz'eINtUs# +?1_3C tRyz'eNtus# +?2_3C tRez'eNtUs# +?1_5C kin^'eINtus# +?2_5C kin^'eINtUs# ?1_0M1 m'il_ ?2_0M1 m'iU_ ?1_1M1 m'il_ ?2_1M1 m'iU_ -?1_0M2 milj'o~jS +?1_0M2 milj'o~js# ?2_0M2 milj'o~jz _1M2 'u~milj'&U~ -?1_0M3 bilj'o~jS +?1_0M3 bilj'o~js# ?2_0M3 bilj'o~jz _1M3 'u~mbilj'&U~ -?1_0M4 trilj'o~jS +?1_0M4 trilj'o~js# ?2_0M4 trilj'o~jz _1M4 'u~ntrilj'&U~ _0and _i @@ -286,8 +282,7 @@ dumas $u em $u $brk // in,on,at no nu $u $brk na $u $brk -nos nus $u $brk -?1 nos nuS $u $brk +nos nus# $u $brk nas $u $brk num $u $brk numa $u $brk @@ -570,7 +565,7 @@ axé aSE elixir eliSir ?1 fixe f'iSy lixo l'iSu -roxo x'oSu +roxo x'oSU // foreign words ?1 alt 'alt @@ -597,10 +592,11 @@ roxo x'oSu ?1 gmail g,em'eIl ?1 google g'u:g&l ?1 hardware 'ard,w'E@ -?2 hardware h'ardwe@ +?2 hardware x'ardwe@- ?1 home 'omy ?1 hotmail 'Otm'eIl ?1 install ,inst'al +?2 internet iNtern'Et ?1 kernel k'Ern,El ?2 kernel k'ErnEU ?1 line l'ain @@ -622,17 +618,19 @@ layout l'eI,aUt ?1 scanner sk'En&r ?1 shift S'ift ?1 scroll sk:r'ol - site s'aIt - software s'Oftwe@ +?1 site s'aIt +?2 site s'aItSi + software s'Oftwe@- ?1 space sp'eIsy ?1 sporting sp'Ort,ing ?1 tab t'ab ?1 telemóvel t,El,Em'OvEl -?1 telemóveis t,El,Em'OveIS +?1 telemóveis t,El,Em'OveIs# ?1 up &p ?1 upload &pl'oud ?1 window w'iNd'ou ?1 yahoo 'i,a'u +?2 yahoo iax'u ?1 yes j'Es @@ -650,16 +648,17 @@ louis _^_FR espeak isp'i:k ?1 espeakedit isp'i:k,Ed,it ?1 fedora _^_EN - firefox f'ai@foks + firefox f'ai@fOks ?1 front f:r'ont ?1 jaws dZ'au:z ?1 linux l,in'uks -?2 linux l'inuks +?2 linux l'inUks ?1 live l'aiv ?1 maker m'eIk&@ ?1 media m'Ed,i& ?1 messenger m'Es&ndZ&@ ?1 microsoft m,ik:r'os,Oft +?2 microsoft m'aIkRows'Oft ?1 movie m'uvi ?1 nero n'E:ru ?1 office 'Of,is @@ -683,8 +682,10 @@ louis _^_FR ?1 time t'aImy // nero show time ubuntu ub'untu ?1 unix ,u:n'iks -?2 unix j'u:niks +?2 unix j'uniks ?1 windows w'iNd'ou:z +?2 windows w'iNdows +?2 window w'iNdow // historical/famous person names @@ -724,12 +725,13 @@ von f'On // foreign common names/surnames ?1 alison &l'is&N ?1 cleverson kl'Evyrs&N +?2 cleverson kl'EversoN ?1 elton 'Elt&N ?1 halison &l'is&N klein kl'aIn // Very common on southern Brazil. ?1 kleverson kl'Evers&N -krueger k@-*'iZer -krüger k@-*'iZer +krueger kR'iZer +krüger kR'iZer kühl k'il ?1 nelson n'Els&N mueler m'iler diff --git a/dictsource/pt_rules b/dictsource/pt_rules index d005b9ca..b1c81657 100755 --- a/dictsource/pt_rules +++ b/dictsource/pt_rules @@ -28,8 +28,8 @@ a (r_ 'a ?1 p) a (d_ =E a (CC_ & -?1 al (_ 'al // eg: Portugal, capital, etc. -?1 _) a (lC ,a // Algarve, alto, etc... +?1 al (_ 'Al // eg: Portugal, capital, etc. +?1 a (lK ,A // Algarve, alto, etc... ?2 al (K aU ?2 alh alj @@ -81,6 +81,7 @@ áy ''aI áu ''aU áu (s ''aU + ál ''Al á (uCK ''a @@ -130,14 +131,32 @@ ?1 e (e i //eg: candeeiro ?2 ee i - e (be_ E - e (bes_ E - e (ce_ E - e (ces_ E ?2 el (K EU ?2 elh elj -?1 e (rtA_ 'E // Eg: Alberto, aberta, etc... + e (be_ E + e (bem_ E + e (bes_ E + e (ce_ E + e (cem_ E + e (ces_ E + e (stA_ E + e (stAm_ E + e (stAs_ E + + e (rnA_ E + e (rnAm_ E + e (rnAs_ E + e (rtA_ E + e (rtAm_ E + e (rtAs_ E + + e (x_ E + e (xA_ E + e (xAm_ E + e (xAs_ E + + em (C eIm en (K eIN enh en^ @@ -339,10 +358,8 @@ .group o o o - @) o (_ =u - o (s_ =u -?1 @) o (_ =U -?1 o (s_ =U + @) o (_ =U + o (s_ =U ou ow oi oI oi (s oI @@ -363,10 +380,15 @@ on (K oN o (na_ o onh on^ - o (rmA_ O - o (rmAC O + o (rCA_ O + o (rCAm_ O + o (rCAs_ O + o (stA_ O + o (stAm_ O + o (stAs_ O -?1 oz (_ OS +?2 ox (_ Oks +?1 oz (_ Os# ?2 oz (_ Oz o (zes_ O o (ra_ O @@ -447,7 +469,7 @@ ?2 A) r (_A * rr x ?1 C) r (A r -?2 C) r (A R // was [@-*] +?2 C) r (A R _) r x l) r x n) r x @@ -463,9 +485,10 @@ ss s sc (Y s sç s + sh S A) s (A z -?1 @) s (_ S -?2 s (_ s +?1 @) s (_ s# +?2 s (_ s# @) s (_A z // next word starts with vowel @) s (_G z // next word starts with voiced consonant @@ -473,10 +496,10 @@ A) s (_AS1 z // next word starts with vowel A) s (_GS1 z // next word starts with voiced consonant -?1 A) s (C S +?1 A) s (C s# ?1 A) ss s ?1 A) s (G+ Z -?1 A) s (_KS1 S +?1 A) s (_KS1 s# ?1 A) s (_G+S1 Z @@ -535,12 +558,11 @@ .group x -?1 _) x (_ SiS -?2 _) x (_ Sis + _) x (_ Sis# x (A S A) x (A ks - e) x (A z - e) x (o_ ks + _e) x (A z + e) x (A ks ai) x (A S ei) x (A S au) x s diff --git a/phsource/compile_report b/phsource/compile_report index b836c7e7..40138c01 100644 --- a/phsource/compile_report +++ b/phsource/compile_report @@ -7,7 +7,7 @@ en_sc 39 143 en_rp 34 141 en_wm 30 141 - af 37 125 + af 38 125 cy 30 120 de 28 117 eo 13 106 @@ -24,8 +24,8 @@ ru 36 122 it 28 115 es 6 115 - pt 27 131 - pt_pt 17 131 + pt 28 132 + pt_pt 20 132 ro 36 139 el 8 115 sv 25 116 @@ -185,19 +185,19 @@ 1 r3/r_i base 5 r3/r_n base cy fr pl ru 1 r3/r_o base - 4 r3/r_trill base sk it + 8 r3/r_trill base af sk it pt 2 r3/r_trill2 base hr 2 r3/r_trill2.wav base hr - 1 r3/r_trill3.wav base - 3 r3/r_trill.wav base sk it + 4 r3/r_trill3.wav base af + 4 r3/r_trill.wav base sk it pt 1 r3/r_u base 26 r3/rx base af cy fr fr_ca pl ru pt_pt ro is 2 r3/rz_cs sk 2 r3/@tap base 2 r3/@tap_i base - 7 r/r base en_sc de fr hu it - 5 r/_r base en_sc fr hu it - 16 r/r_ base en_sc af cy de fi fr hu nl pl ru it ++ + 8 r/r base en_sc de fr hu it pt_pt + 6 r/_r base en_sc fr hu it pt_pt + 17 r/r_ base en_sc af cy de fi fr hu nl pl ru it ++ 1 r/r@ base 1 r/ra base 1 r/re base @@ -205,7 +205,7 @@ 1 r/ro base 26 r/rr base af cy de fi nl pl ru it ro no sw 1 r/ru base - 15 r/tr base en_sc fr hu it + 18 r/tr base en_sc fr hu it pt_pt 51 r/trr base af cy de fi nl pl ru it ro sv no ++ 11 r/xr base 1 ufric/ch base @@ -220,12 +220,12 @@ 3 ufric/hu base hi 2 ufric/hu_fi fi 2 ufric/ll base is - 2 ufric/s base es - 10 ufric/s_ base fi fr hu es ro - 12 ufric/s! base fi hu es + 3 ufric/s base es pt + 11 ufric/s_ base fi fr hu es pt ro + 15 ufric/s! base fi hu es pt 2 ufric/s_continue fi hu - 1 ufric/sh base - 1 ufric/sh_ base + 2 ufric/sh base pt_pt + 2 ufric/sh_ base pt_pt 2 ufric/sh_pzd base ro 3 ufric/sh_pzd_ base 2 ufric/sh_rfx base @@ -365,10 +365,11 @@ 1 vdiph/y#y_3 nl 1 vnasal/aa_n en 2 vnasal/aa_n3 af fr + 1 vnasal/a#_n pt + 2 vnasal/a#u_n pt pt_pt 2 vnasal/ee_n en fr_ca 3 vnasal/ee_n2 hi pl pt_pt 2 vnasal/e_n af pt - 1 vnasal/e#_n pt 1 vnasal/i_n pt 1 vnasal/m- sw 1 vnasal/n- sw @@ -379,7 +380,6 @@ 1 vnasal/o_n3 fr 1 vnasal/oo_n en 2 vnasal/oo_n2 hi pl - 1 vnasal/&u_n pt 1 vnasal/u_n pt 3 vnasal/W_n en fr 1 voc/bh base @@ -423,7 +423,7 @@ 5 vowel/a_2 eo it pt_pt ro vi 4 vowel/a#_2 hr sv is sw 6 vowel/a_3 en_sc cs is - 13 vowel/a#_3 en en_n en_us en_wm de hi ru pt pt_pt vi zh_yue + 12 vowel/a#_3 en en_n en_us en_wm de hi ru pt_pt vi zh_yue 4 vowel/a_4 en_wm el vi 2 vowel/a_5 sv sw 7 vowel/aa en_us fi fr_ca no zh_yue @@ -613,10 +613,10 @@ 14 x/d_ base fi fr hi pl hr ru it ro el is sw 23 x/d_dnt base fi fr hi hu pl ru it ro sw 6 x/d_pzd pl ru - 3 x/dzh base hi + 4 x/dzh base hi 5 x/dzh_ base hi ru 4 x/dz_pzd base hi ru - 2 x/dz_pzd_ base hi + 1 x/dz_pzd_ hi 4 x/g_ base cy es is 5 x/g2 base cy hi es is 3 x/g2_ base hi diff --git a/phsource/n^/n^a b/phsource/n^/n^a index 09f3d9cd..540a5700 100644 Binary files a/phsource/n^/n^a and b/phsource/n^/n^a differ diff --git a/phsource/ph_af b/phsource/ph_af index 715e198e..86a26eea 100644 --- a/phsource/ph_af +++ b/phsource/ph_af @@ -278,6 +278,16 @@ phoneme r/ // used for [r] when not preceding a vowel after t r/trr p r/trr k r/trr endphoneme +phoneme R + liquid + vowelin f1=2 f2=70 -300 300 f3=-300 80 dnt + vowelout f1=2 f2=70 -300 300 f3=-300 80 brk + formants r3/r_trill+r3/r_trill3.wav%55 + before _ r3/r_trill+r3/r_trill3.wav%50 + trill + lengthmod 6 +endphoneme + phoneme l liquid diff --git a/phsource/ph_hungarian b/phsource/ph_hungarian index 473a8a13..2240ea2c 100644 --- a/phsource/ph_hungarian +++ b/phsource/ph_hungarian @@ -32,14 +32,14 @@ phoneme e: endphoneme phoneme A - vowel starttype (a) endtype (a) + vowel starttype (o) endtype (o) length 140 formants vowel/0_3 endphoneme phoneme a: - vowel starttype (o) endtype (o) - length 240 + vowel starttype (a) endtype (a) + length 280 formants vowel/a endphoneme diff --git a/phsource/ph_pt_brazil b/phsource/ph_pt_brazil index b3798b50..ec96ee5e 100644 --- a/phsource/ph_pt_brazil +++ b/phsource/ph_pt_brazil @@ -30,14 +30,14 @@ endphoneme phoneme &~ vowel starttype (@) endtype (@) - length 240 - formants vnasal/e#_n + length 200 + formants vnasal/a#_n endphoneme phoneme &U~ - vowel starttype (a) endtype (@) + vowel starttype (@) endtype (u) length 240 - formants vnasal/&u_n + formants vnasal/a#u_n endphoneme phoneme oI~ @@ -62,17 +62,10 @@ phoneme &/ // Used for final "a" when next word starts with "a" formants vowel/a# endphoneme -phoneme &# - vowel starttype (@) endtype (@) - length 180 - formants vowel/a#_3 - unstressed -endphoneme - phoneme A // for "al" in European Portuguese vowel starttype (a) endtype (a) - length 180 + length 200 formants vowel/aa_7 // reduceto & 4 endphoneme @@ -186,8 +179,17 @@ phoneme l endphoneme +phoneme x // this is [R] from Slovak/Czech + liquid + vowelin f1=0 f2=1700 -300 300 f3=-300 80 + vowelout f1=2 f2=1700 -300 300 f3=-300 80 brk + formants r3/r_trill+r3/r_trill.wav%50 + trill + lengthmod 6 +endphoneme -phoneme x // for "r" + +phoneme x2 // for "r" vcd vel frc vowelin f1=0 f2=1500 0 400 f3=-500 100 vowelout f1=0 f2=1500 0 400 f3=-500 100 rms=20 @@ -198,3 +200,16 @@ phoneme x // for "r" endphoneme +phoneme s# // This is [s] for Brazi;, [S] for Portugal + vls alv frc sibilant + vowelin f1=0 f2=1700 -300 300 f3=-100 80 + vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 + lengthmod 3 + wave ufric/s + before _ ufric/s_ + before p ufric/s! + before t ufric/s! + before k ufric/s! + switchvoicing z +endphoneme + diff --git a/phsource/phonemes b/phsource/phonemes index 04679999..20c292b2 100644 --- a/phsource/phonemes +++ b/phsource/phonemes @@ -397,11 +397,12 @@ phoneme R2 // this is [R] from Slovak/Czech lengthmod 6 endphoneme -phoneme R3 +phoneme R3 // Afrikaans liquid vowelin f1=2 f2=70 -300 300 f3=-300 80 dnt vowelout f1=2 f2=70 -300 300 f3=-300 80 brk - formants r3/r_trill+r3/r_trill3.wav%60 + formants r3/r_trill+r3/r_trill3.wav%55 + before _ r3/r_trill+r3/r_trill3.wav%50 trill lengthmod 6 endphoneme @@ -709,7 +710,7 @@ phoneme J vowelin f1=2 f2=2700 400 600 f3=300 80 rate len=70 vowelout f1=2 f2=2700 400 600 f3=300 80 colr=1 formants dzh/dz_pzd+x/dzh%40 - before _ dzh/dz_pzd_+x/dz_pzd_%70 + before _ dzh/dz_pzd_+x/dzh%35 after _ NULL after @ dzh/xdz_pzd lengthmod 5 @@ -1192,7 +1193,7 @@ phonemetable pt it include ph_pt_brazil phonemetable pt_pt pt -include ph_portuguese +include ph_portugual phonemetable ro it include ph_romanian diff --git a/phsource/r3/r_trill3.wav b/phsource/r3/r_trill3.wav index 5c163fbf..f6b228b2 100644 Binary files a/phsource/r3/r_trill3.wav and b/phsource/r3/r_trill3.wav differ diff --git a/phsource/vnasal/a#_n b/phsource/vnasal/a#_n new file mode 100644 index 00000000..4c9c4870 Binary files /dev/null and b/phsource/vnasal/a#_n differ diff --git a/phsource/vnasal/a#u_n b/phsource/vnasal/a#u_n new file mode 100644 index 00000000..91254420 Binary files /dev/null and b/phsource/vnasal/a#u_n differ diff --git a/phsource/vowel/aa# b/phsource/vowel/aa# index bc4d3646..a3cfcd12 100644 Binary files a/phsource/vowel/aa# and b/phsource/vowel/aa# differ diff --git a/phsource/vowel/aa_7 b/phsource/vowel/aa_7 index dbd22415..504dc1d2 100644 Binary files a/phsource/vowel/aa_7 and b/phsource/vowel/aa_7 differ diff --git a/phsource/vowel/u_6 b/phsource/vowel/u_6 index 0dd7a2ff..b763f969 100644 Binary files a/phsource/vowel/u_6 and b/phsource/vowel/u_6 differ diff --git a/src/numbers.cpp b/src/numbers.cpp index df752f33..4acb8449 100644 --- a/src/numbers.cpp +++ b/src/numbers.cpp @@ -567,7 +567,7 @@ int Translator::TranslateNumber_1(char *word, char *ph_out, unsigned int *flags, suppress_null = 1; } - if(word[n_digits] == langopts.decimal_sep) + if((word[n_digits] == langopts.decimal_sep) && isdigit(word[n_digits+1])) { // this "word" ends with a decimal point Lookup("_dpt",ph_append); diff --git a/src/synthdata.cpp b/src/synthdata.cpp index e8bed451..78cdd7a7 100755 --- a/src/synthdata.cpp +++ b/src/synthdata.cpp @@ -35,7 +35,7 @@ #include "translate.h" #include "wave.h" -const char *version_string = "1.25.08 25.May.07"; +const char *version_string = "1.25.09 26.May.07"; const int version_phdata = 0x012501; int option_device_number = -1; diff --git a/src/tr_languages.cpp b/src/tr_languages.cpp index 4deeee54..23ac3d9b 100644 --- a/src/tr_languages.cpp +++ b/src/tr_languages.cpp @@ -312,8 +312,9 @@ Translator *SelectTranslator(const char *name) case L('h','u'): // Hungarian { - static int stress_amps_hu[8] = {17,16, 20,19, 20,24, 24,22 }; - static int stress_lengths_hu[8] = {180,160, 200,190, 0,0, 220,240}; + static int stress_amps_hu[8] = {17,17, 19,19, 20,24, 24,22 }; + static int stress_lengths_hu[8] = {190,190, 190,190, 0,0, 200,210}; +// static int stress_lengths_hu[8] = {180,180, 200,190, 0,0, 210,225}; static const wchar_t replace_chars_hu[] = {0xd4,0xf4,0xdb,0xfb,0}; static const unsigned int replacement_chars_hu[] = {0x150,0x151,0x170,0x171,0}; // allow o,u-circumflex for o,u-double-acute @@ -323,17 +324,18 @@ Translator *SelectTranslator(const char *name) tr->langopts.replace_chars = replace_chars_hu; tr->langopts.replacement_chars = replacement_chars_hu; - tr->langopts.vowel_pause = 0x10; + tr->langopts.vowel_pause = 0x20; tr->langopts.stress_rule = 0; tr->langopts.stress_flags = 0x36; tr->langopts.unstressed_wd1 = 2; - tr->langopts.param[LOPT_REGRESSIVE_VOICING] = 0x4; // don't propagate over word boundaries + tr->langopts.param[LOPT_REGRESSIVE_VOICING] = 0x2; // don't propagate over v tr->langopts.param[LOPT_IT_DOUBLING] = 1; tr->langopts.long_stop = 130; tr->langopts.numbers = 0x1809; SetLetterVowel(tr,'y'); tr->langopts.spelling_stress = 1; +//SetLengthMods(tr,3); // all equal } break; @@ -440,7 +442,7 @@ Translator *SelectTranslator(const char *name) case L('p','t'): // Portuguese { - static int stress_lengths_pt[8] = {170, 120, 210, 210, 0, 0, 270, 295}; + static int stress_lengths_pt[8] = {180, 125, 210, 210, 0, 0, 270, 295}; static int stress_amps_pt[8] = {16,13, 19,19, 20,24, 24,22 }; // 'diminished' is used to mark a quieter, final unstressed syllable tr = new Translator(); SetupTranslator(tr,stress_lengths_pt,stress_amps_pt); diff --git a/src/translate.cpp b/src/translate.cpp index 030ae748..25edc12c 100755 --- a/src/translate.cpp +++ b/src/translate.cpp @@ -314,16 +314,16 @@ static unsigned char length_mods_en0[100] = { static unsigned char length_mods_equal[100] = { /* a , t s n d z r N <- next */ - 100,100,100,100,100,100,100,100,100, 100, /* a <- next2 */ - 100,100,100,100,100,100,100,100,100, 100, /* , */ - 100,100,100,100,100,100,100,100,100, 100, /* t */ - 100,100,100,100,100,100,100,100,100, 100, /* s */ - 100,100,100,100,100,100,100,100,100, 100, /* n */ - 100,100,100,100,100,100,100,100,100, 100, /* d */ - 100,100,100,100,100,100,100,100,100, 100, /* z */ - 100,100,100,100,100,100,100,100,100, 100, /* r */ - 100,100,100,100,100,100,100,100,100, 100, /* N */ - 100,100,100,100,100,100,100,100,100, 100 }; // SPARE + 110,110,110,110,110,110,110,110,110, 110, /* a <- next2 */ + 110,110,110,110,110,110,110,110,110, 110, /* , */ + 110,110,110,110,110,110,110,110,110, 110, /* t */ + 110,110,110,110,110,110,110,110,110, 110, /* s */ + 110,110,110,110,110,110,110,110,110, 110, /* n */ + 110,110,110,110,110,110,110,110,110, 110, /* d */ + 110,110,110,110,110,110,110,110,110, 110, /* z */ + 110,110,110,110,110,110,110,110,110, 110, /* r */ + 110,110,110,110,110,110,110,110,110, 110, /* N */ + 110,110,110,110,110,110,110,110,110, 110 }; // SPARE unsigned char *length_mod_tabs[6] = {