From 206026b498bd081b2b82008091e2cf19e598b045 Mon Sep 17 00:00:00 2001 From: jonsd Date: Mon, 6 Apr 2009 13:02:58 +0000 Subject: [PATCH] [1.40.13] lang=it, added dictsource/it_listx with corrections for stress position and open/close vowel type. Changes to allow compilation on WinCE (Windows Mobile), with notes in platforms/windowsMobile. git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@219 d46cf337-b52f-0410-862d-fd96e6ae7743 --- dictsource/de_list | 330 +-- dictsource/de_rules | 7 +- dictsource/dict_phonemes | 12 +- dictsource/en_list | 486 ++--- dictsource/en_rules | 24 +- dictsource/fr_list | 19 +- dictsource/fr_rules | 17 +- dictsource/it_list | 198 +- dictsource/it_listx | 4126 ++++++++++++++++++++++++++++++++++++++ dictsource/it_rules | 294 ++- phsource/compile_report | 16 +- phsource/mbrola/fr1 | 2 + phsource/ph_french | 106 +- phsource/ph_german | 2 +- src/dictionary.cpp | 59 +- src/espeak.cpp | 3 + src/espeakedit.cpp | 4 + src/extras.cpp | 315 +++ src/klatt.cpp | 6 +- src/main.h | 2 + src/menus.cpp | 2 + src/readclause.cpp | 3 + src/speak.cpp | 3 + src/synthdata.cpp | 2 +- src/synthesize.h | 15 +- src/tr_languages.cpp | 9 +- src/translate.cpp | 11 +- src/translate.h | 10 +- src/transldlg.cpp | 3 +- src/voice.h | 2 +- src/voices.cpp | 8 +- 31 files changed, 5392 insertions(+), 704 deletions(-) create mode 100644 dictsource/it_listx diff --git a/dictsource/de_list b/dictsource/de_list index 0bb0fc2d..44a45cba 100644 --- a/dictsource/de_list +++ b/dictsource/de_list @@ -180,209 +180,209 @@ demselb $2 denselb $2 // conjunctions -und Unt $pause $u+ -aber ,A:b3 $pause $strend -oder ,o:d3 $pause $strend -sondern $pause -denn dEn $pause $u+ -weil $pause $strend -als $pause $u+ -bevor be:f'o:* $pause -also $pause $strend -wenn ,vEn $pause $strend -sowie $2 $pause -obgleich $2 $pause -obwohl $2 $pause -deren ,dE*@n $brk +und Unt $u+ $pause +aber A:b3 $u+ $pause +oder o:d3 $u+ $pause +sondern $pause +denn dEn $u+ $pause +weil $pause +als $u+ $pause +bevor be:fo:* $2 $pause +also $pause +wenn ,vEn $pause $strend +sowie $2 $pause +obgleich $2 $pause +obwohl $2 $pause +deren dE*@n $u+ $brk // prepositions -ab ap $u+ $brk -an an $u+ $brk -am am $u+ $brk -auf aUf $u+ $pause -aus ,aUs $brk $strend -bei baI $u+ $pause $only -beim baIm $u+ $brk -bis bIs $u+ $pause -da $u+ -durch $u+ $pause -für fy:* $u+ $pause $only -gegen ge:g@n $u+ $pause -gegend ge:g@nt -hin hIn -in In $u+ $brk +ab ap $u+ $brk +an an $u+ $brk +am am $u+ $brk +auf aUf $u+ $pause +aus ,aUs $brk $strend +bei baI $u+ $pause $only +beim baIm $u+ $brk +bis bIs $u+ $pause +da $u+ +durch $u+ $pause +für fy:* $u+ $pause $only +gegen ge:g@n $u+ $pause +gegend ge:g@nt +hin hIn +in In $u+ $brk //(in die) %Ind%i: //(in den) %Ind%e:n //(in der) %Ind%E* -im Im $u+ $brk -ins Ins $u+ $brk -mit mIt $u+ $pause -nach nax $u+ $brk -ob ,Ob $pause $strend $only -pro ,p@-*o: $pause -von fOn $u+ $brk -//(von dem) %fOn%de:m $brk -vom fOm $u+ $brk -vor ,fO* $strend -zu tsu: $u+ $brk -zum tsUm $u+ $pause -zur tsu:* $u+ $pause -über ,yb3 $pause $strend -unter ,Unt3 $pause $strend -um Um $u+ $brk -//(um die) %Umd%i: $brk -//(um den) %Umd%e:m $brk -während $pause +im Im $u+ $brk +ins Ins $u+ $brk +mit mIt $u+ $pause +nach nax $u+ $brk +ob ,Ob $pause $strend $only +pro ,p@-*o: $pause +von fOn $u+ $brk +//(von dem) %fOn%de:m $brk +vom fOm $u+ $brk +vor ,fO* $strend +zu tsu: $u+ $brk +zum tsUm $u+ $pause +zur tsu:* $u+ $pause +über ,yb3 $pause $strend +unter ,Unt3 $pause $strend +um Um $u+ $brk +//(um die) %Umd%i: $brk +//(um den) %Umd%e:m $brk +während $pause // misc -so zo: $u+ -doch dOx $u+ -noch $pause -(noch nicht) n'Ox||n,ICt $brk -(nicht mehr) n'ICt||,me:* -(nicht mehr) n,ICt||m'e:* $atend -(nicht nur) n'ICt||n'u:* $pause -(gar nicht) g,A:*n'ICt +so zo: $u+ +doch dOx $u+ +noch $pause +(noch nicht) n'Ox||n,ICt $brk +(nicht mehr) n'ICt||,me:* +(nicht mehr) n,ICt||m'e:* $atend +(nicht nur) n'ICt||n'u:* $pause +(gar nicht) g,A:*n'ICt // should these be in the Rules because they can be a prefix in a // compound verb ? -daran dA:*'an -darauf $2 -daraus $2 -dabei $2 -dadurch dA:d'U*x -dafür $2 -dagegen $2 -daher dA:h'Er -dahin dA:h'In -damit dA:m'It -danach $2 -daneben $2 -darein $2 -darin dA:*'In -darüber $2 -darum $2 -darunter $2 -davon dA:f'On -dazu dA:ts'u: -umher Umh'E* -umhin Umh'In -woran vo:*'an -worauf $2 -woraus $2 -worin vo:*'In +daran dA:*'an +darauf $2 +daraus $2 +dabei $2 +dadurch dA:d'U*x +dafür $2 +dagegen $2 +daher dA:h'Er +dahin dA:h'In +damit dA:m'It +danach $2 +daneben $2 +darein $2 +darin dA:*'In +darüber $2 +darum $2 +darunter $2 +davon dA:f'On +dazu dA:ts'u: +umher Umh'E* +umhin Umh'In +woran vo:*'an +worauf $2 +woraus $2 +worin vo:*'In // pronouns -ich %IC $only -du %du: $only -er %Er $brk $only -es %Ez $only -sie %zi: $only -wir %vi:* $only -ihr %i:* -man %man $only -sich %zIC $only -(es ist) %Ez%Ist +ich IC $u $only +du du: $u $only +er Er $u $brk $only +es Ez $u $only +sie zi: $u $only +wir vi:* $u $only +ihr i:* $u +man man $u $only +sich zIC $u $only +(es ist) %Ez%Ist -daß das $u+ -dass das $u+ +daß das $u+ +dass das $u+ -ein aIn $u+ -eine ,aIn@ -einem ,aIn@m -einen ,aIn@n -einer ,aIn3 -eines ,aIn@s +ein aIn $u+ +eine aIn@ $u +einem aIn@m $u +einen aIn@n $u +einer aIn3 $u +eines aIn@s $u //kein $u+ //keine $u+ -mein $u+ -meine $u+ +mein $u+ +meine $u+ -dein $u+ -deine $u+ +dein $u+ +deine $u+ -sein $u // can also be verb "to be" -seine $u+ +sein $u // can also be verb "to be" +seine $u+ -unsre ,Unz*@ -unsere ,Unz*@ -unser ,Unz3 -unserm ,Uns3m -unserem ,Uns@*@m +unsre Unz*@ $u +unsere Unz*@ $u +unser Unz3 $u +unserm Uns3m $u +unserem Uns@*@m $u -ihre ,i:*@ -ihrem ,i:*@m -ihrer ,i:*3 +ihre i:*@ $u +ihrem i:*@m $u +ihrer i:*3 $u -dies ,di:z -diese ,di:z@ +dies di:z $u +diese di:z@ $u // -was vas -wie $u $pause +was vas +wie $u $pause // abverbs -auch ,aUx -dann $u -etwa $u -ganz g,ants $only -je $u -nur $brk +auch ,aUx +dann $u +etwa $u +ganz g,ants $only +je $u +nur $brk // verbs -bin %bIn -bist %bIst -ist %Ist -sind %zInt -seit %zaIt $only +bin bIn $u +bist bIst $u +ist Ist $u +sind zInt $u +seit zaIt $u $only -habe %hA:b@ $only -habst %habst $only -hast %hast $only -hat %hat $only -haben h,A:b@n $only -hatte h,at@ $only -hatten h,at@n $only -hätte h,Et@ $only -hättest h,EtEst $only -hättet h,Et@t $only -hätten h,Et@n $only +habe %hA:b@ $only +habst %habst $only +hast %hast $only +hat %hat $only +haben h,A:b@n $only +hatte h,at@ $only +hatten h,at@n $only +hätte h,Et@ $only +hättest h,EtEst $only +hättet h,Et@t $only +hätten h,Et@n $only -war %vA:* $only -warst %vA:*st $only -wart %vA:*t $only -waren 'vA:*@n +war %vA:* $only +warst %vA:*st $only +wart %vA:*t $only +waren 'vA:*@n -will %vIl $only -willst %vIlst $only -wollen %vOl@n $only -wolt %vOlt +will %vIl $only +willst %vIlst $only +wollen %vOl@n $only +wolt %vOlt -werden v,E*d@n -werde v,E*d@ -werdst v,E*dst -werdet v,E*d@t -wurden vU*d@n -wurde vU*d@ -wurdst vU*dst -wurdet vU*d@t +werden v,E*d@n +werde v,E*d@ +werdst v,E*dst +werdet v,E*d@t +wurden vU*d@n +wurde vU*d@ +wurdst vU*dst +wurdet vU*d@t -können ,kWn@n $only -kann ,kan $only -kannst ,kanst $only -könnt ,kWnt $only -konnt ,kOnt $only +können ,kWn@n $only +kann ,kan $only +kannst ,kanst $only +könnt ,kWnt $only +konnt ,kOnt $only -sollen ,zOl@n -soll ,zOl -sollst ,zOlst -sollte ,zOlt@ -sollten ,zOlt@n +sollen ,zOl@n +soll ,zOl +sollst ,zOlst +sollte ,zOlt@ +sollten ,zOlt@n diff --git a/dictsource/de_rules b/dictsource/de_rules index ae16129d..c2be479f 100644 --- a/dictsource/de_rules +++ b/dictsource/de_rules @@ -98,8 +98,10 @@ _) achs (el 'aks j) ag (d A:k _) air _^_EN + m) air (_ aI3 ai (sch A:I tr) ain En + air (_ E:r akqu %akv @A) al (_ 'A:l g) al (_ 'A:l @@ -131,7 +133,8 @@ _) aufent aUf@nt austra (l %aUst@-*A _) authen aUtEn - ay (_ EI + ay (_N EI + m) ayr (_ aI3 p) ay EI .group b @@ -356,6 +359,7 @@ ein (and _|%aIn _) eine (r@ aIn@ _) einig aInIg + m) eir (_ aI3 _) eisen (@P5 'aIz@n _) e (lek %e: _) elektro (@P7 e:l'Ekt@-*o: @@ -884,6 +888,7 @@ sound _^_EN speed _^_EN + @) straße (_S6 st*,A:s@ _) street _^_EN style _^_EN synthesi _^_EN diff --git a/dictsource/dict_phonemes b/dictsource/dict_phonemes index fbccd830..cae65b4b 100644 --- a/dictsource/dict_phonemes +++ b/dictsource/dict_phonemes @@ -157,10 +157,10 @@ S s2 t v Z Dictionary fr_dict -@ @- @2 a a2 A~ e E -E2 E~ i i: o O o2 O2 -O~ u u: W W2 w^i wA W~ -y Y +@ @- @2 @3 a a2 A~ e +E E2 E~ i i: o O o2 +O2 O~ u u: W W2 w^i wA +W~ y Y : b d dZ f g h j k l m n N n2 n^ p @@ -254,8 +254,8 @@ S s2 t T tl# v x z Dictionary it_dict -@- a a/ aI aU e E i -I o O oI u +@- a a/ aI aU e E eI +i I o O u * : ; b d dZ f g h j k l l^ m n N diff --git a/dictsource/en_list b/dictsource/en_list index 0f7ba8c3..e7b33223 100644 --- a/dictsource/en_list +++ b/dictsource/en_list @@ -132,7 +132,7 @@ _{ lEftbreIs _| vi:b'A@ _} raItbreIs ~ tIld@ $max3 -_¡ Inv,3:tI2dEkskl@m'eIS@n +_¡ %Inv,3:tI2dEkskl@m'eIS@n _¦ broUk@nb'A@ _¨ daIa2r'i:sIs _ª fEmI2nIn'O@dI2n@L @@ -146,7 +146,7 @@ _¸ sEd'Il@ _¹ su:p@skrIptw'0n _º maskjUlIn'O@dI2n@L _» raIt'gIl@mEt -_¿ Inv,3:tI2dkw'EstS@n +_¿ %Inv,3:tI2dkw'EstS@n _‐ haIf@n _‑ haIf@n @@ -668,7 +668,6 @@ blockade $2 blouse blaUz blurry bl3:rI ?5 blurry blVRrI -bogey boUgI boing bOIN bombard $2 bonbon b0nb0n @@ -1057,6 +1056,7 @@ extract $2 $verb extradite Ekstr@daIt // extradited extrem Ekstr'i:m // extremism extremist Ekstr'i:mIst +extricate $1 eyrie i@rI facade f@sA:d @@ -1092,6 +1092,7 @@ fiord fi:O@d fix fIks // for fixer fjord fIO@d flagellum fla2dZEl@m +flamenco fla2mENkoU flexible flEksIb@L flier flaI3 flourish flVrI2S @@ -1162,6 +1163,7 @@ grenade gr@neId griffon grIf@n grosvenor groUv@n3 groupie gru:pI +guacamole gwA:ka2m'oUli: gui gu:I guinea gInI gurus gu:ru:z @@ -1228,6 +1230,7 @@ hyperbole haIp'3:b@lI hypothesis haIp'0T@sIs hypotheses haIp'0T@si:z hypotenuse haIp'0t@nju:s +hypoxia haIp'0ksi@ icon aIk0n @@ -1776,6 +1779,7 @@ reference rEfr@ns referee rEf@r'i: referral rI2f3:r@L referring rI2f3:rI2N +refinery rI2faIn@rI refit ri:fIt reflex ri:flEks reflux ri:flVks @@ -1784,12 +1788,12 @@ regal ri:g@L regime reIZ'i:m region ri:dZ@n // & regional reign reIn +reiki reIki: rein reIn reined reInd reining reInI2N reindeer reIndi@3 reinvent ri:Inv'Ent -refinery rI2faIn@rI relative rEl@tIv relic rElIk relish rElI2S @@ -2672,121 +2676,121 @@ so ,soU $strend2 $verbf //prepositions // these should be stressed at the end of a sentence -of 0v $u $only -?6 of Vv $u $only -(of a) @v@ $nounf -(of an) @v@n $nounf -(of which) 0vw'ItS $pause -?6 (of the) %VD@2 $nounf -?6 (of which) Vvw'ItS $pause +of 0v $u $only +?6 of Vv $u $only +(of a) @v@ $nounf +(of an) @v@n $nounf +(of which) 0vwItS $2 $pause +?6 (of the) %VD@2 $nounf +?6 (of which) VvwItS $2 $pause -for fO@ $u -(for a) f@@ $nounf -(for an) f@@n $nounf -(for the) f3D@2 $nounf +for fO@ $u +(for a) f@@ $nounf +(for an) f@@n $nounf +(for the) f3D@2 $nounf (for a while) f@@||w'aIl -(for one) fO@w'0n $atend +(for one) fO@w0n $2 $atend -to t@5 $verbf // @ change to U before vowel -(to be) t@b%I $pastf -(to be) t@||'bi: $atend -(to to) %tU_t@5 $verbf +to t@5 $verbf // @ change to U before vowel +(to be) t@b%I $pastf +(to be) t@||'bi: $atend +(to to) %tU_t@5 $verbf (to and fro) tu:@ndfr'oU -to tu: $u $atend -to tu: $allcaps +to tu: $u $atend +to tu: $u $allcaps -at at $nounf $only $u -(at a) %at@ $nounf +at at $nounf $only $u +(at a) %at@ $nounf (at once) a2t_w0ns (at will) a2t_w'Il -with wID $u +with wID $u (with the) w%IDD@2 $nounf -in %In $strend $only $nounf +in %In $strend $only $nounf (in the) %InD@2 -(in which) In||w,ItS $pause +(in which) In||wItS $u2 $pause -on ,0n $strend2 +on ,0n $strend2 (on the) %0nD@2 (out of) ,aUt@v into ,IntU -onto ,0ntU $strend2 +onto ,0ntU $strend2 unto ,VntU ?3 into ,Int2U -?3 onto ,0nt2U $strend2 +?3 onto ,0nt2U $strend2 ?3 unto ,Vnt2U -upon @p,0n -from %fr0m -?3 from %frVm -(from where) %fr0m||w'e@ $pause -(from which) %fr0m||w'ItS $pause -up ,Vp $strend2 -down ,daUn $only $strend2 -by %baI -across @kr,0s $strend2 -per %p3: +upon @p0n $u2 +from fr0m $u +?3 from frVm $u +(from where) %fr0m||w'e@ $pause +(from which) %fr0m||w'ItS $pause +up ,Vp $strend2 +down ,daUn $only $strend2 +by baI $u +across @kr0s $u2 $strend2 +per p3: $u (per cent) p3||s'Ent (per se) p,3:||s'eI -through %Tru: $strend2 -toward %tUwO@d -over ,oUv3 $strend2 $only -under ,Vnd3 $strend2 $only -within %wID,In -without %wID,aUt $strend2 -above @b,Vv $strend2 -about a2b,aUt $strend2 +through Tru: $u $strend2 +toward tUwO@d $2 +over oUv3 $u $strend2 $only +under Vnd3 $u $strend2 $only +within wIDIn $u2 +without wIDaUt $u2 $strend2 +above @bVv $u2 $strend2 +about a2baUt $u2 $strend2 against a2gEnst ahead a2hEd -among a2m,VN $strend2 -amongst a2m,VNst $strend2 +among a2mVN $u2 $strend2 +amongst a2mVNst $u2 $strend2 around a2raUnd -before bIf,o@ $strend2 -behind bIh,aInd $strend2 -below bIl,oU $strend2 -beneath bI2n,i:T $strend2 -beyond bIj,0nd $strend2 -beside bIs,aId $strend2 -between bItw,i:n $strend2 -together t@g,ED3 $strend2 -near ,ni@3 $strend2 +before bIfo@ $u2 $strend2 +behind bIhaInd $u2 $strend2 +below bIloU $u2 $strend2 +beneath bI2ni:T $u2 $strend2 +beyond bIj0nd $u2 $strend2 +beside bIsaId $u2 $strend2 +between bItwi:n $u2 $strend2 +together t@gED3 $u2 $strend2 +near ,ni@3 $strend2 thence DEns //aux. verbs -be %bi: $pastf $only -been ,bi:n $pastf $only -?3 been ,bIn $pastf $only -being ,bi:IN $pastf $only $strend2 -is %Iz $pastf $only // use contraction for 'is a' +be %bi: $pastf $only +been ,bi:n $pastf $only +?3 been ,bIn $pastf $only +being ,bi:IN $pastf $only $strend2 +is %Iz $pastf $only // use contraction for 'is a' // am %am $nounf $only // now in en_rules -are %A@ $pastf $only -was %w0z $pastf $only -?3 was %wVz $pastf $only -?3 wasn't wVznt $pastf $only -wast %w0st $only $pastf $only -were %w3: $pastf $only -isn't ,Iz@nt $pastf $strend2 -aren't ,A@nt $pastf $strend2 -weren't ,w3:nt $pastf $strend2 +are %A@ $pastf $only +was %w0z $pastf $only +?3 was %wVz $pastf $only +?3 wasn't wVznt $pastf $only +wast %w0st $only $pastf $only +were %w3: $pastf $only +isn't ,Iz@nt $pastf $strend2 +aren't ,A@nt $pastf $strend2 +weren't ,w3:nt $pastf $strend2 -will $u+ $only $verbf $strend2 -will $noun +will $u+ $only $verbf $strend2 +//will $noun // but not "this/these/that/those will" (will to) wIlt@5 would $u+ $verbf $only $strend2 (would have) w%Udh%a2v $pastf (would have) wUdhav $pastf $atend -(would have to) wUd,havt@5 $verbf $strend2 -(wouldn't have) ,wUdnt@v $pastf $strend2 +(would have to) wUdhavt@5 $u2 $verbf $strend2 +(wouldn't have) wUdnt@v $u1 $pastf $strend2 (wouldn't have to) ,wUdntavt@5 $verbf $strend2 -won't woUnt $u+ $verbf $strend2 $only +won't woUnt $u+ $verbf $strend2 $only wouldst $u+ -(won't have) woUnta2v $pastf $u1 -(won't have) woUnthav $pastf $atend -(won't have to) w'oUntavt@5 $verbf $strend2 +(won't have) woUnta2v $pastf $u1 +(won't have) woUnthav $pastf $atend +(won't have to) w'oUntavt@5 $verbf $strend2 must $verbf (must have) mVsta2v $pastf $1 @@ -2800,81 +2804,81 @@ shall ,Sal $verbf $only $strend2 shalt ,Salt $verbf $only should ,SUd $verbf $only $strend2 (should have) SUd@v $pastf $u1+ -(should have to) SUd,havt@5 $verbf $strend2 -shouldn't ,SUdnt $verbf $strend2 $only -(shouldn't have) SUdnth@v $pastf $u1+ -(shouldn't have to) 'SUdntavt@5 $verbf $strend2 -shalln't ,SA:nt $verbf $strend2 -shan't ,SA:nt $verbf $strend2 +(should have to) SUdhavt@5 $u2 $verbf $strend2 +shouldn't ,SUdnt $verbf $strend2 $only +(shouldn't have) SUdnth@v $pastf $u1+ +(shouldn't have to) 'SUdntavt@5 $verbf $strend2 +shalln't ,SA:nt $verbf $strend2 +shan't ,SA:nt $verbf $strend2 -can %kan $verbf $only $strend2 -can't kA:nt $verbf $only $strend2 -?3 cannot $2 $verbf $only $strend2 -(can't have) kA:nta2v $pastf -(can't have to) ,kA:nt'avt@5 $verbf $atend -?3 can't kant $verbf $only $strend2 -?3 (can't have) kanta2v $pastf +can %kan $verbf $only $strend2 +can't kA:nt $verbf $only $strend2 +?3 cannot $2 $verbf $only $strend2 +(can't have) kA:nta2v $pastf +(can't have to) ,kA:nt'avt@5 $verbf $atend +?3 can't kant $verbf $only $strend2 +?3 (can't have) kanta2v $pastf ?3 (can't have to) ,kant'avt@5 $verbf $atend -could %kUd $verbf $strend2 $only -(could have) ,kUda2v $pastf -(could have) kUdhav $pastf $atend -(could have to) kUd,havt@5 $verbf $strend2 +could %kUd $verbf $strend2 $only +(could have) ,kUda2v $pastf +(could have) kUdhav $pastf $atend +(could have to) kUdhavt@5 $u2 $verbf $strend2 couldn't ,kUd@nt $verbf $strend2 (couldn't have) kUd@nt@v $pastf $u1+ (couldn't have to) 'kUd@ntavt@5 $verbf $strend2 -may meI $verbf $strend2 -(may have) meIha2v $pastf $u1+ -(may have to) ,meIh'avt@5 $verbf $atend -might ,maIt $verbf $strend2 $only -(might have) maItha2v $pastf $u1+ -(might have to) ,maIth'avt@5 $verbf $atend +may meI $verbf $strend2 +(may have) meIha2v $pastf $u1+ +(may have to) ,meIh'avt@5 $verbf $atend +might ,maIt $verbf $strend2 $only +(might have) maItha2v $pastf $u1+ +(might have to) ,maIth'avt@5 $verbf $atend -have %hav $pastf $only $strend2 +have %hav $pastf $only $strend2 haves havz -(have been) %hav%bIn $pastf -has %ha2z $pastf $only -has haz $only $atend -(has been) %haz%bIn $pastf -(has to) haztU $atend -has haz $allcaps -hath %haT $pastf $only -had %had $pastf $strend2 $only -(had been) %had%bIn $pastf -having ,havI2N $strend2 $pastf $only -haven't hav@nt $pastf -hadn't had@nt $pastf -hasn't haz@nt $pastf +(have been) %hav%bIn $pastf +has %ha2z $pastf $only +has haz $only $atend +(has been) %haz%bIn $pastf +(has to) haztU $atend +has haz $allcaps +hath %haT $pastf $only +had %had $pastf $strend2 $only +(had been) %had%bIn $pastf +having ,havI2N $strend2 $pastf $only +haven't hav@nt $pastf +hadn't had@nt $pastf +hasn't haz@nt $pastf -get %gEt $strend2 $pastf $only -getting ,gEtI2N $strend2 $pastf $only -got %g0t $strend2 $pastf $only +get %gEt $strend2 $pastf $only +getting ,gEtI2N $strend2 $pastf $only +got %g0t $strend2 $pastf $only -go ,goU $strend2 $only -goes %goUz $strend2 $only -going ,goUI2N $strend2 $only -gone %g0n $strend2 $only -?3 gone %gOn $strend2 $only -went %wEnt $strend2 $only +go ,goU $strend2 $only +goes %goUz $strend2 $only +going ,goUI2N $strend2 $only +gone %g0n $strend2 $only +?3 gone %gOn $strend2 $only +went %wEnt $strend2 $only -do du: $verbf -(do not) du:n0t $verbf $u2+ -does dVz $verbf -(does not) dVzn0t $verbf $u2+ -don't doUnt $verbf -doesn't dVz@nt $verbf -doesnt dVz@nt $verbf -doing ,du:I2N $strend2 $only -did dId $verbf -(did not) dIdn0t $verbf $u2+ -didn't dIdnt $verbf +do du: $verbf +(do not) du:n0t $verbf $u2+ +does dVz $verbf +(does not) dVzn0t $verbf $u2+ +don't doUnt $verbf +doesn't dVz@nt $verbf +doesnt dVz@nt $verbf +doing ,du:I2N $strend2 $only +did dId $verbf +(did not) dIdn0t $verbf $u2+ +didn't dIdnt $verbf done dVn putting pUtI2N -put ,pUt $onlys $strend2 +put ,pUt $onlys $strend2 -become bI,kVm $strend2 -became bI,keIm $strend2 +become bIkVm $u2 $strend2 +became bIkeIm $u2 $strend2 we're %wi@3 you're %jO@ @@ -2884,58 +2888,58 @@ it'd %It@d that'd %Dat@d there'd %De@d -I'll %aIl $verbf -you'll %ju:l $verbf -he'll %hi:l $verbf -she'll %Si:l $verbf -we'll %wi:l $verbf -they'll %DeIl $verbf -there'll %De@l $verbf +I'll aIl $u $verbf +you'll ju:l $u $verbf +he'll hi:l $u $verbf +she'll Si:l $u $verbf +we'll wi:l $u $verbf +they'll DeIl $u $verbf +there'll De@l $u $verbf -I've %aIv $pastf -you've %ju:v $pastf -he's %hi:z $pastf -she's %Si:z $pastf -we've %wi:v $pastf -they've %DeIv $pastf +I've aIv $u $pastf +you've ju:v $u $pastf +he's hi:z $u $pastf +she's Si:z $u $pastf +we've wi:v $u $pastf +they've DeIv $u $pastf -we'd %wi:d $pastf +we'd wi:d $u $pastf -I aI $u+ $verbf $only +I aI $u+ $verbf $only (I am) %aIa2m -(I am) %aIam $atend -he %hi: $verbsf -she %Si: $only $verbsf -it %It $verbsf -(it has) %It||haz $atend -(it is) %It||Iz $atend -(it was) %It||w0z $atend -it $allcaps $abbrev -we %wi: $verbf $only -you %ju: $verbf -they %DeI $verbf +(I am) %aIam $atend +he hi: $u $verbsf +she Si: $u $only $verbsf +it It $u $verbsf +(it has) %It||haz $atend +(it is) %It||Iz $atend +(it was) %It||w0z $atend +it $allcaps $abbrev +we wi: $u $verbf $only +you ju: $u $verbf +they DeI $u $verbf thee ,Di: thou DaU thy ,DaI thine ,DaIn -me ,mi: $only -him ,hIm $only -us ,Vz $only -us $abbrev $allcaps -them ,DEm $only +me ,mi: $only +him ,hIm $only +us ,Vz $only +us $abbrev $allcaps +them ,DEm $only -my %maI $nounf $strend2 -his h%Iz $nounf $only $strend2 -her %h3: $nounf $only -hers %h3:z $strend2 -its %Its $nounf -our %aU@ $nounf $only -?3 our %aU3 $nounf $only -your %jO@ $nounf $only -?6 your %jU@ $nounf $only -their %De@ $nounf $only +my maI $u $nounf $strend2 +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 +your jO@ $u $nounf $only +?6 your jU@ $u $nounf $only +their De@ $u $nounf $only theirs De@z none n0n @@ -2946,76 +2950,76 @@ someone sVmw0n //conjunctions -although OlD'oU $pause -and %and $pause $only -as ,az $pause $only -(as is) ,az,Iz $pause -(as it is) ,azIt,Iz $u+ -because bIk'Vz $pause -once $pause -or %O@ $pause $only -nor nO@ $pause $only -but ,bVt $pause $only -if ,If $pause $only -despite $pause -instead $pause -otherwise VD3waIz $pause -regardless $pause -since sIns $pause -thus DVs $pause +although OlD'oU $pause +and and $u $pause $only +as ,az $pause $only +(as is) ,az,Iz $pause +(as it is) ,azIt,Iz $u+ +because bIkVz $2 $pause +once $pause +or O@ $u $pause $only +nor nO@ $pause $only +but ,bVt $pause $only +if ,If $pause $only +despite $pause +instead $pause +otherwise VD3waIz $pause +regardless $pause +since sIns $pause +thus DVs $pause though ,DoU -whenever wEn,Ev3 $pause -within $pause -whoever hu:'Ev3 -whatever w0t'Ev3 $pause -?3 whatever wVt'Ev3 $pause -while $pause -whilst waIlst $pause -(rather than) r'A:D3||Da2n $pause +whenever wEnEv3 $u2 $pause +within $pause +whoever hu:Ev3 $2 +whatever w0tEv3 $2 $pause +?3 whatever wVtEv3 $2 $pause +while $pause +whilst waIlst $pause +(rather than) r'A:D3||Da2n $pause -//some adverbs (note -ly suffix already implies verb-follows) -just $verbf -never $verbf -now $verbf -now naU $verbf $allcaps -soon $verbf -still $verbf -already O:lr,EdI $verbf $strend2 +//some adverbs +just $verbf +never $verbf +now $verbf +now naU $verbf $allcaps +soon $verbf +still $verbf +already O:lrEdI $u2 $verbf $strend2 -not ,n0t $verbextend $only $strend -(not have) n0ta2v $pastf $u1 -(not have) n0thav $pastf $atend -(not have to) ,n0thavt@5 $pastf $strend -(not a) ,n0t@ $nounf -not n0t $allcaps $verbextend // don't spell "NOT"; speak it with stress -only oUnlI $verbextend +not ,n0t $verbextend $only $strend +(not have) n0ta2v $pastf $u1 +(not have) n0thav $pastf $atend +(not have to) ,n0thavt@5 $pastf $strend +(not a) ,n0t@ $nounf +not n0t $allcaps $verbextend // don't spell "NOT"; speak it with stress +only oUnlI $verbextend -any ,EnI $nounf $only -many mEnI $nounf +any ,EnI $nounf $only +many mEnI $nounf (many of) mEnI|@v -some ,sVm $nounf $unstressend $only +some ,sVm $nounf $unstressend $only (some one) sVmw0n -one w0n $nounf $onlys $unstressend -ones w0nz $only $unstressend +one w0n $nounf $onlys $unstressend +ones w0nz $only $unstressend -this %DIs $nounf $strend $verbsf -(this one) D'Isw,0n $verbsf -that %Dat $nounf $strend2 $verbsf -(that a) ,Dat@ $nounf -(that an) ,Dat@n $nounf -(that it) ,Da2tIt $verbsf +this DIs $u+ $nounf $verbsf +(this one) D'Isw,0n $verbsf +that Dat $u $nounf $strend2 $verbsf +(that a) ,Dat@ $nounf +(that an) ,Dat@n $nounf +(that it) ,Da2tIt $verbsf (that one) D'atw,0n (that the) %DatD@2 -these %Di:z $nounf $strend2 $only -those %DoUz $nounf $strend2 $only -there %De@ $strend2 $only +these Di:z $u $nounf $strend2 $only +those DoUz $u $nounf $strend2 $only +there De@ $u $strend2 $only (there be) De@b'i: -than %Dan $only -(than a) ,Dan@ $nounf -(than an) ,Dan@n $nounf -then DEn $verbf +than Dan $u $only +(than a) ,Dan@ $nounf +(than an) ,Dan@n $nounf +then DEn $verbf // these should be stressed at the start of a sentence which ,wItS $pause $strend2 $only $verbf @@ -3102,5 +3106,3 @@ like laIk $strend2 ?3 vitamin vaIt@mIn ?3 zebra zi:br@ - - diff --git a/dictsource/en_rules b/dictsource/en_rules index 6b9fbf81..ef9b7e66 100644 --- a/dictsource/en_rules +++ b/dictsource/en_rules @@ -625,6 +625,7 @@ amaz (o am@z ambi (d ambI ch) am (b eIm + fl) ame eIm As) ame (_ 'A:mE _) ame (l a2mi: &) am (ent @m @@ -1604,7 +1605,7 @@ di (scot dI di (scount dI di (scov dI2 - _) di (se ,dI + _) di (seP3 ,dIs di (sh_ dI di (shC dI _) di (shev+ dI2 @@ -1743,7 +1744,7 @@ r) eu (d OI eu (m_ i: s) eu (m_ 'i@ - eur 3: + l) eur 3: ?5 eur VR eur (_ '3: ?3 eur (_ 'U@ @@ -2001,7 +2002,7 @@ _) ena (m I2na &) en (Ance @n &) en (ch En - encha (n %EntSaa + _) encha (n %EntSaa enclav EnkleIv en (core 0n &) ency (_ @ns%I @@ -2442,6 +2443,7 @@ o) g (et dZ er) g (et dZ for) ge (t gE + bo) g (Ey g &) gia (_ dZ@ &) gia (C_ dZ@ &) giu (m dZ@ @@ -2455,6 +2457,7 @@ g (ird g g (irl g g (irt g + _) g (it g g (ive g @) guay (_ gwaI gue (_ g @@ -2491,6 +2494,9 @@ _) house (@ haUs house (_S5 haUs houses (_S6 haUzI2z + _) hypo (@P4 h,aIpoU + hypo (de h,aIp@ + hypo (thet h,aIp@ .group i i I @@ -2724,8 +2730,9 @@ iah (_ 'aI@ ia (m I2@ &) ia (n i@ - &) ia (nic I'a - &) ia (na I'a + @) ia (nic I'a + @) ia (nit I'a + @) ia (na I'a ia (ng_ ja _f) ia (nc I'0 _f) iance I'0nseI @@ -2778,6 +2785,7 @@ ie (ntal I'E g) ie (n i: sc) ie (nc aI@ + ie (ntiC aI@ _sc) ie (n aI@ ?8 _sc) ie (n aIa2 ie (nCiA I2'E @@ -3149,7 +3157,7 @@ it (um aIt .group iv - @) iva (_ 'aIv@ + @l) iva (_ 'aIv@ @) iv (e Iv iv (e# aIv h) iv (e_ aIv @@ -3760,6 +3768,7 @@ _h) on (ey Vn n) on (e 0n m) one (ta VnI + m) one (ti 0nI2 _) one (r oUn@ m) on (ey Vn und) one (_ Vn @@ -4348,6 +4357,7 @@ _) rho (t roU rhyth rID _) rm ,A@Em + rrhea r'i@ rrhoea r'i@ _) ru (bL01 ru: _) run (a rVn @@ -4403,8 +4413,8 @@ re (gist rE rehen rIh'En _) re (i@P2 r,i: - _) rei (l raI _) rei (c raI + _) rei (l raI _) rele (g rElI2 rele (nt rI2lE rele (v rElI diff --git a/dictsource/fr_list b/dictsource/fr_list index 4a637018..859307fa 100755 --- a/dictsource/fr_list +++ b/dictsource/fr_list @@ -24,7 +24,7 @@ // 2006-11-18 Gilles Casse // -// Updated 2009-03-12 Michel Such +// Updated 2009-04-04 Michel Such // // * Numbers, a few abbreviations and exceptions. // @@ -233,7 +233,7 @@ _dpt virgyl abc $abbrev ac $abbrev adsl $abbrev -alt $pause +alt _::alt amd $abbrev anpe $abbrev api $abbrev @@ -242,7 +242,7 @@ bd boulevard $text brltty $abbrev cci $abbrev cio $abbrev -ctrl control $text $pause +ctrl _::kO~tRol dept depart@-mA~ edf $abbrev etc etsetera @@ -253,16 +253,21 @@ ibm $abbrev ide $abbrev ip $abbrev jaws dZ'awz +kbit kilobit +kbits kilobit kde $abbrev kg kilogram khz kiloE2rts km kilomètre $text kw kilowat +kw kilowat m. m@sjY +mbit mega2bit +mbits mega2bit mbrola Embrola mhz megaE2rts -mlle mad@mwAzEl -mme madam +mlle mademoiselle $text +mme madame $text mr m@sjY nsi $abbrev nsis $abbrev @@ -576,7 +581,6 @@ bus bys bus by $verb campus kA~pys cancer kA~sEr -catcher catcheur $text (chef d'oeuvre) chédeuvre $text (chef d'oeuvres) chédeuvres $text choeur kWr @@ -594,6 +598,7 @@ hélas elas $u+ iris iris laser lazEr malus malys +mailto mEjltu_ mapper _^_en mars mars mieux mjY $u+ @@ -605,6 +610,7 @@ polder pOldEr premier pr@mjer2 program _^_en quit _^_en +recorder ricordeur $text scanner skaner2 scanner skanWr $noun sir _^_EN @@ -794,3 +800,4 @@ zimbabwe zimbabwe + diff --git a/dictsource/fr_rules b/dictsource/fr_rules index cfa02224..c42502a4 100755 --- a/dictsource/fr_rules +++ b/dictsource/fr_rules @@ -23,7 +23,7 @@ // 2006-11-18 Gilles Casse // -// Updated: 2009-03-12 Michel Such +// Updated: 2009-04-01 Michel Such // // Letter classes: @@ -126,6 +126,7 @@ e) ch (_ k // varech _A) ch (o_ k // écho mani) ch (é k // manichéisme + mito) ch (o k // mitochondrie _eu) ch (ari k // eucharistie or) ch (esC k // orchestre or) ch (iC k // orchidée @@ -213,17 +214,17 @@ _) ç' (P2v s // Define use of the final 'e' in french e (_ - rch) e (_ =@- - rch) e (s_ =@- - elqu) e =@- + rch) e (_ =@3 + rch) e (s_ =@3 + elqu) e =@3 uisqu) e =@ rsqu) e =@ _C) e (_ @2 // je te -c) e (_ @- -j) e (_ @- C) e (- @- - L02r) e (_ =@- - L02r) e (s_ =@- + L02r) e (_ =@3 + L02r) e (s_ =@3 e (Ce_ E eau o // bateau cheveaux @@ -246,6 +247,7 @@ _) ç' (P2v s gu) e (rA @ qu) e (rA @ v) e (lop @- + tch) e (rX W @) em (me a // patiemment em (b A~ // décembre em (mACC A~ // emmancher @@ -870,7 +872,8 @@ _) half _^_en om (_ Om // www.web.com on (K O~ // mon on (t_ O~t2 // mont vont sont - _m) ont (CAC O~ // montpellier + _m) ont (pAC O~ // Montpellier + _m) ont (rAal O~ // Montreal onsh (A O~z // bonshommes onh (A On // bonhomme _) on (z _!O~ // onze, onzi�me diff --git a/dictsource/it_list b/dictsource/it_list index 84104ae4..115df401 100644 --- a/dictsource/it_list +++ b/dictsource/it_list @@ -1,6 +1,9 @@ // This file is UTF-8 encoded -// Italian: any [E] or [O] phonemes in unstressed words must be listed explicitly + +// $alt change [e] or [o] in the stressed syllable to [E] or [O] +// $alt2 change [E] or [O] in the stressed syllable to [e] or [o] +// Any [E] or [O] phonemes in unstressed words must be listed explicitly // character names @@ -148,38 +151,38 @@ _0Z3 mill'ezimi // 1000ths (http ://) 'ak:at,i:t,i:p'i:_ // articles -i $u -il $u -la $u -le $u -lo $u -un $u -una $u +i $u $only +il $u $only +la $u $only +le $u $only +lo $u $only +un $u $only +una $u $only -gli l^i $u +gli l^i $only $u // pronouns -io $u+ -tu $u+ -lui $u+ -lei $u+ -noi $u+ -voi $u+ -loro $u+ +io $u+ $only +tu $u+ $only +lui $u+ $only +lei $u+ $only +noi $u+ $only +voi $u+ $only +loro $u+ $only -egli $u+ -ella $u+ -essa $u+ -esse $u+ -essi $u+ +egli el^i $u+ +ella ella $u+ +essa essa $u+ +esse esse $u+ +essi essi $u+ -mi $u+ -ti $u+ -si $u+ -ci $u+ -vi vi $u+ -li li $u+ +mi $u+ $only +ti $u+ $only +si $u+ $only +ci $u+ $only +vi vi $u+ $only +li li $u+ $only // words that double the following consonant @@ -216,7 +219,7 @@ queste $u // these quel $u // that quella $u // that -quei $u // those +quei kw2ej // those quegli $u // those quelle $u // those @@ -235,7 +238,7 @@ tuttavia $pause // however invece $pause // instead malevolenza $pause // despite pertanto $pause // therefore -né $pause // neither-nor +né $pause $only // neither-nor (in cui) in||kw2,i $pause // in which che $u $pause // which @@ -243,16 +246,16 @@ che $u $pause // which // prepositions a $u // $double -al $u +al $u $only allo $u alla $u ai $u -agli $u +agli $u $only alle $u ad $u $brk -da $u $brk // by +da $u $only $brk // by dal $u dallo $u dalla $u // by the @@ -260,25 +263,25 @@ dai $u dagli $u dalle $u -di $u $brk // of -del $u +di $u $only $brk // of +del $u $only dello $u della $u // of the dei $u degli $u delle $u -de $u +de $u $only -in $u $brk // in -nel $u $brk +in $u $brk $only // in +nel $u $brk $only nello $u $brk nella $u $brk // in the nei $u $brk negli $u $brk nelle $u $brk -ne $u $brk +ne $u $brk $only -su $u //$double // on +su $u $only //$double // on sul $u sullo $u sulla $u // on the @@ -287,15 +290,15 @@ sugli $u sulle $u con $u $pause $only // with -col $u -coi $u +col $u $only +coi $u $only -attraverso $u+ $brk // across, through +attraverso $brk $3 // across, through contro $u+ $brk // against accanto $u+ $brk // beside verso $u+ $brk // toward sopra $u+ $brk // above -sotto $u+ $brk // below +sotto $u+ $brk $alt2 // below per $u $pause $only // for eccetto $pause // except senza $pause // without @@ -315,9 +318,9 @@ fu $u //$double fummo $u foste $u furono $u -ero $u -eri $u -era $u +ero $u $only +eri $u $only +era $u $only eravamo $u eravate $u erano $u @@ -425,14 +428,7 @@ aces _^_EN // exceptions -aereo $2 -difficile $2 -pneumatici $3 - -nott nOt: $stem -tavol $1 $stem -vent vEnt $stem - +aereo a'EReo celsius tsElsj'us conoscerla $2 no nO @@ -441,38 +437,68 @@ principi $1 tesser tess'ER uomini $1 -// $alt = use ò or è in the stressed syllable +quia kw'ia + + // If the final vowel is omitted, then the rule applies to 'a' 'e' 'i' 'o' -$textmode - -abbandonatel $4 -abbazie abbazìe -abbinano $2 -abbinini $2 -abbisognino $3 -abituarcisi $2 -accalcano $2 -accalchino $2 -accantonal $3 -accatastano $3 -accatastino $3 -accavallio $4 -accenditi $2 -accertano $2 $alt -accertino $2 $alt -acclamano $2 -acclamino $2 -accolit $2 $alt -accomunano $3 -accomunino $3 -accorpano $2 $alt -accorpino $2 $alt -accostarcisi $3 -accovacciano $3 -accovaccino $3 -acefala $2 -acer accer // acer/i/o -acid accid // acida/e -acidul $1 + + +// fix errors in it_listx +accetto $alt +agosta $1 +allora $alt2 +anomalo $2 $alt +antera $2 +aton $1 +bagli $2 $only +barbera $2 +bocca $alt2 +borro $alt2 +capello $alt2 +ceca $alt +collodi $2 $alt $only +corsa $alt2 +doma $alt +ei eI +epa $alt +esper $1 $alt +est $only +fieri f'ieRi +forca $alt2 +fori $alt $only +gener $1 +genes $1 +gorga $alt2 +gotta $alt2 +ias iaz $1 +indolo $2 +leggi ledZ'i +lena $alt2 +nocciola $2 +olimpiade olimp'iade +orca $alt2 +ossa $alt2 +pena $alt2 +peoni $1 $only +pesce $alt2 +peste $alt +ponto $alt +protas $1 + +rene $alt +scopa $alt2 +sera $alt2 +teco $alt2 +vicari $1 $only +vicaria $3 +volto $alt2 +zone $alt2 + + + + + + + diff --git a/dictsource/it_listx b/dictsource/it_listx new file mode 100644 index 00000000..11c9bb56 --- /dev/null +++ b/dictsource/it_listx @@ -0,0 +1,4126 @@ +abazia $3 +abba $2 +abbadia $3 +abbaino ab:a'i:no +abbandon $alt2 +abbaye $3 +abbazia $3 +abdia $2 +abia $2 +abiotrofia $5 +abit $1 +abomas $2 +academia $3 $alt +acantodi $3 $alt +acar $1 +acari $1 +accademia $3 $alt +accadia $3 +accegli $alt +accenn $alt2 +accett $alt2 +accipiter $2 +accolit $2 +accredit $2 $alt2 +accumoli $2 +acer $1 +achei $2 +achemene $2 +acheni $alt +acin $1 +acquafredd $alt2 +acquedott $alt2 +acqueo $1 +acrobat $2 +aculeo $2 +adamas $3 +addebit $2 $alt2 +addi $2 +addome $alt +adeline $alt2 +adempiere $2 $alt +adenoipofisi $5 +adenomer $3 +aderbale $2 +adesmia $3 +admet $alt +adorn $alt2 +aed $alt +aerogel $3 +aerosol $3 +aerostat $2 +aerovia $3 +aet $alt +affett $alt +affori $1 +afragol $alt2 +agadez $3 +agamennone $3 $alt +agapit $2 +agat $1 +agave $1 +agenzia $3 +agerol $2 +agesilao $4 +agnati $1 +agonia $3 +agora $3 +agorafobia $5 +agord $1 +agost $alt2 +agrifogli $alt +agrosistem $alt +aho $2 +ailoche $alt +aime $2 $alt +airol $2 +airole $alt +alabastron $2 +albania $3 +albed $alt +alber $1 +albignaseg $3 +albireo $2 +albunea $2 +alcali $1 +alcam $1 +alcantar $2 +alchimia $2 +alcool $1 +alcor $2 +alcov $alt +aldebaran $4 +ale $2 +alea $1 +alen $alt2 +alenia $alt +aleria $2 $alt2 +ales $alt +alesia $2 $alt +alessia $3 +alessi $alt +alfabet $alt +algebric $alt +algenib $alt +algovia $alt +ali $2 +alibi $1 +alice $2 +alimen $alt2 +alinea $2 +aliquot $2 +alisei $3 +alit $1 +alleghe $1 +allegria $3 +allelia $3 +alleluia allEl'uia +allobrogi $2 +allodol $2 +alloggi $alt +alluce $1 +almen $alt2 +alo $2 $alt +aloe $alt +alope $1 +alopecia alopetS'i:a +altair $2 +altalen $alt2 +altimetr $2 +altoforn $alt2 +alveo $1 +amadeus $alt2 +amalgam $2 +amarcord $3 +amazzone $2 +amazzoni $2 +ambedue ambed'u:e +ambit $1 +ambliopia $4 +ambrogi $alt +ambrosia $2 $alt +ambrosi $alt +ameb $alt +ameglia $alt +amelia $3 +ametropia $4 +amidei $3 +amigdal $2 +amilcare $2 +amilosi $alt +amlet $alt +amniocentesi $4 $alt +amor $2 $alt2 +amorgos $3 +amori $alt2 +amorosi $alt2 +amorrei $3 +ampere $2 +ampoll $alt2 +amulet $alt +anabasi $2 +anaclasi $2 +anacond $alt +anagrafe $2 +analfabet $alt +analisi $2 +analog $2 +anamnesi $2 +anania $3 +anap $1 +anarchia $3 +anastasia $3 +anatem $alt +anatroccol $alt +ancor $alt2 +andre $2 +andreis $2 +androgin $2 +aneddot $2 $alt +anemone $alt +anetol $3 +anfiarao $3 +anfigonia $4 +anfiloc $2 +anfipoli $2 +anfor $1 +angel $1 +angeli $1 +angiogenesi $3 +anglosassone $3 +anglosassoni $3 +angol $2 +angor $1 +angoscia $alt +anicet $alt +anidr $1 +aniridia $4 +anisotropia $5 +anisotteri $alt +anit $1 +annibale $2 +anoa $alt +anofele $2 +anomalia $4 +anomei $3 +anoressia $4 +anosmia $3 +ansia $1 +antelao $3 +antemi $alt +antenn $alt2 +antenne $alt2 +anter $1 +anteros $1 +anthemis $1 +antiaerea $3 +antiaereo $3 +antic $2 +anticamer $3 +anticip $2 +anticresi $alt +antidot $2 +antidrog $alt +antieroe $alt +antif $1 +antifate $2 +antifon $2 +antigas $3 +antigone $2 +antiloc $2 +antilope $2 +antimafia $3 +antimateria $4 +antincendi $alt +antinoe $2 +antiope $2 +antipatr $2 +antipsichiatria $5 +antisepsi $alt +antisom $3 $alt +antitesi $2 +antivari $2 +antoni $alt +antonomasia $4 +antroposofia $5 +anuak $2 +aot $alt +apocatastasi $4 +apocope $2 +apocrif $2 +apocriti $2 +apofisi $2 +apollineo $3 +apoptygm $2 +aporia $3 +apostat $2 +apostrof $2 +apotem $alt +appen $alt2 +appendice $3 +appiomb $alt2 +appoggi $alt +apposit $2 +approcci $alt +approd $2 $alt +aprassia $3 +apricen $alt2 +aprile $2 +aquilegia $3 $alt +arab $1 +arabi $1 +aragon $3 +aragost $alt2 +aramei $3 +arbitr $1 +arbore $3 +arboreo $2 +arcade $1 +arcangel $2 +arcene $1 +arcevia $alt +arche $2 $alt +archelao $3 +archetip $2 +archiloc $2 +archimede $alt +arciconfraternit $5 +arcidiacon $3 +arcidiocesi $4 +arcipelag $3 +arciprete $alt +arcivescov $3 +arcobalen $alt2 +arcocosen $alt2 +arcore $1 +arcosen $alt2 +ardar $1 +ardea $1 +ardesia $2 $alt +area $1 +arenaceo $3 +aren $alt2 +arene $alt2 +areol $2 +argali $3 +argan $1 +argenteo $2 $alt +argostoli $3 +argovia $alt +ariete $alt +arist $1 +aristagor $3 +aristocrazia $5 +aristofane $3 +aristogitone $4 +aristossen $3 +aristotele $3 +aritmia $3 +armodi $alt +armonia $3 +aromaterapia $6 +arosi $alt +arpia $2 +arpocrate $2 +arred $alt +arroscia $alt +artefice $alt2 +artemi $alt +artemisia $3 +arteria $2 +arteriol $3 +arteterapia $5 +ascalaf $2 +ascari $1 +asce $2 +ascension $4 $alt2 +ascesi $alt +ascet $alt +asciugacapelli $alt2 +asclepi $alt +asclepiodot $4 +asepsi $alt +asfissia $3 +asil $2 +asin $1 +asincron $2 +asintot $2 +asmonei $3 +asol $1 +asparag $2 +aspett $alt +aspri $2 +assai $2 +assedi $alt +assemble $3 +assemini $2 +assenzi $alt +assett $alt +assieme $alt +assor $1 +assort $alt2 +astat $1 +astenia $3 +asteria $2 +asteroidei $5 +astragal $2 +asuncion $3 $alt2 +atalia $3 +atarassia $4 +atargatis $2 +atassia $3 +atele $1 +atelet $alt +atenolf $alt +ateo $1 +atlet $alt +atom $1 +aton $2 +atrofia $3 +attendol $alt +attimis $1 +attivita $4 +attorn $alt2 +audace $3 +augure $1 +aulos $3 +aureol $3 +ausoni $alt +austral $3 +australasia $4 +austrasia $3 +autari $1 +autentic $alt +autentiche $alt +autobus $1 +autocefalia $6 +autocton $3 $alt +autofocus $alt +autogru $4 +automezz $alt +autonoe $3 $alt +autopilot $alt +autostop $4 $alt +autoveicolo autovE'ikolo +avampost $alt2 +avari $1 +avaria $3 +aven $alt2 +avere $2 $alt2 +avvi $2 +ayame $3 +ayatollah $4 +azaria $3 +azegli $alt +azeotrop $3 +azimut $1 +azoospermia $5 +azot $alt +aztec $alt +aztechi $alt +baba $2 +baccara $3 +bacen $alt2 +bachec $alt +badia $2 +badile $2 +bage $2 +bagli bal^'i +bagnol $2 +bagnoli $2 +bagnoregi $alt +bajazet $3 $alt2 +baka $2 +balaam $1 +balen $alt2 +balenotter $alt +bali $2 +balia $2 +balneoterapia $6 +balsam $1 +balsami $1 +banari $1 +bancarott $alt2 +banconot $alt +baobab $3 +baratr $1 +barbabietol $3 $alt +barbaner $alt2 +barbar $1 +barber $1 +baricentr $alt +barile $2 +bariton $2 +baritonesi $alt +barnab $1 +barol $2 +baronia $3 +barumini $2 +baryton $1 +basileus $alt2 +basodin $2 +bastia $1 +bastian $2 +baticle $1 +batracomiomachia $7 +batteri $2 +battibalen $alt2 +batticuore $alt +battit $1 +baule $3 +baunei $3 +bavar $1 +baver $1 +bayamon $3 +bazar $2 +bearn $alt2 +beatrix $1 $alt2 +becc $alt2 +beccaria $3 +beg $alt +belial $3 +belloves $alt +belv $alt2 +belvedere $3 $alt2 +bemb $alt +benessere $alt +benevol $alt +benton $alt +beot $alt +berber $1 +berberi $1 +bere $alt2 +bergeggi $alt2 +bergere $2 +beroia $1 $alt2 +bertiol $2 +bertold $alt +besozz $alt2 +bestia $1 $alt2 +bet $alt +betel $alt +betil $alt2 +beton $2 $alt +bezzi $alt +biathlon $1 +bibit $1 +bibite $1 +bibliotec $alt +bienni $alt +bientin $1 $alt +biet $alt +bifor $1 +bigia $1 +bigne $2 $alt +bilateri $2 +biogas $3 +biond $alt2 +biosintesi $3 +biotop $2 +bioturbazione $alt +bipede $1 +bipol $2 +bipost $alt2 +birocci $alt +bisenzi $alt +bisestile $3 +bistecc $alt2 +bisturi $1 +blasfem $alt +blastopor $2 +blattoidei $4 +blevi $alt +boa $alt +boabdil $3 +bob $alt +bobbi $alt +boccaner $alt2 +boccett $alt2 +boccia $alt +boem $alt +boemia $2 $alt +bogue $2 +boheme $alt +bol $alt +bolgheri $1 +bolgia $1 $alt +boll $alt2 +bom $alt +bombe $2 +bonacolsi $alt +bon $alt +bonarcad $2 +bonassol $3 +bond $alt +bonden $alt2 +bongiorn $alt2 +bonnanar $2 +bonos $alt +bonta $2 +bontebok $1 $alt +bordo $2 $alt +borea $1 +bore $alt +borg $alt2 +borghi $alt2 +borgia $1 +borgorose $alt +borgosatoll $alt2 +borgosesia $3 $alt +born $alt2 +borneo $1 +bors $alt2 +bos $alt +bosc $alt +boscimani $2 +bosconer $alt2 +bosfor $1 $alt +bosi $alt +bosnia $alt +botol $1 +boucle $3 +bouleuterion $alt2 +bov $alt +bove $alt +bovegn $1 $alt +boves $alt +bozzol $alt +braccett $alt2 +brachiceri $2 +bradan $1 +bradicardia $4 +bradip $1 +bragadin $3 +bred $alt +bregan $1 $alt +bren $alt2 +brentonic $alt2 +bresaol $2 +breve $alt +brianzol $3 +brindisi $1 +brisgovia $alt +broccostell $alt2 +brod $alt +brogli $alt +broll $alt2 +bronchiol $2 +bronzeo $1 +brugol $1 +brusi $2 +bubu $2 +buccari $1 +buccin $1 +bucefal $2 $alt +bue b'u:e +bufal $1 +buffal $1 +buia b'uia +buio b'uio +bulgar $1 +bulgari $1 +bulgaria $3 +bultei $2 +buonarroti $alt +burber $1 +buro $2 $alt +burocrazia $4 +buscemi $alt +butanol $3 +cabal $1 +cabinovia $4 +cacao $2 +cacasenn $alt2 +caccam $1 +cachessia $3 +cado $2 $alt +cadoneghe $2 $alt +caffar $1 +caffe $2 $alt +cagno $2 $alt +calabr $1 +calamita $4 +calao $2 +calasett $alt +calcaree $2 +calcareo $2 +caldei $2 +calia $2 +calibr $1 +calliceb $alt +callicle $1 +calligraf $2 +calliope $2 +calliroe $2 +caloger $2 +calolziocorte $alt2 +caloria $3 +calorimetr $3 +calpesti $3 +calumet $3 $alt2 +camar $1 +cambodia $alt +cambogia $2 $alt +cambri $2 +camedri $alt +camefite $2 +camer $1 +cameri $1 +camerot $alt +camion $1 +camosci $alt +campagnol $3 +campanile $3 +campidogli $alt +campodarseg $3 +campor $1 +canaan $1 +canad $1 +canal $2 +canap $1 +canape $1 +canazei $3 +candel $alt2 +canfor $1 +canile $2 +cannalong $alt +cannibale $2 +cannobi $alt +canoa $alt +canone $1 +canop $alt +canov $1 +cantabri $1 +canter $1 +cantoria $3 +cantu $2 +caorle $1 +capace $2 +capannori $2 +capiner $alt2 +capitaneo $3 +capocchia $alt +capolavor $alt2 +capolinea $3 +capoliveri $3 +capoluog $alt +cappellania $4 +caprifogli $alt +capuleti $alt2 +caput $2 +caraco $3 $alt +caraibico kaRa'ibiko +carcan $1 +carcare $1 +carceri $1 +carcofor $2 +careggi $alt2 +cargeghe $alt +carinol $2 +cariotip $3 +carite $3 +carlin $2 +carne $2 $alt +carnefice $alt2 +carnivor $2 +carnivori $2 +caronia $3 +carot $alt +carpar $1 +carpin $1 +carpineti $alt2 +carpofor $2 +carre $2 +carrocci $alt +carrodan $2 +carsoli $2 +cartaceo $2 +cartam $1 +cartapest $alt2 +cartilagineo $4 +cartocci $alt +cartomanzia $4 +cartosi $alt +casalbore $2 +casanov $alt +casatenov $alt +casatiell $alt2 +casatorre $alt2 +cascin $1 +casino $3 $alt +casmene $1 +casoli $1 +casperia $2 +cassal $1 +cassar $1 +cassol $2 +castelcivit $3 +castellar $3 +castellon $3 +castelnuov $alt +castelsepri $alt +casteltermini $3 +castelverde $alt2 +castelvetere $alt +castig $2 +castin $1 +castore $1 +castroliber $3 +castrovillari $3 +catai $2 +catalett $alt +catalisi $2 +catalog $2 +cataplessia $4 +catari $1 +catastrofe $2 +catechesi $alt +catecol $3 $alt +caten $alt2 +catenanuov $alt +catet $alt +cattaneo $2 +cattar $1 +cattedr $1 +cattiveria $3 +caucas $1 +cavalcavia $4 +cavea $1 +cavedine $alt2 +cazzol $2 +ceb $alt +cecc $alt2 +cecita $3 +cecrope $1 $alt +cedol $1 $alt +ceduo $alt +cefal $1 $alt +cefalof $2 +celadon $1 $alt2 +celebre $1 +celibe $1 +celine $alt2 +cellole $alt2 +cembal $1 +cembr $alt +cen $alt2 +cene $alt2 +cened $1 $alt +cenerentol $alt +cenn $alt2 +cenobi $alt +cenomani $2 +centesim $alt +centimetr $2 +centin $1 $alt +centocchi $alt +centol $alt +centopiedi $alt +centr $alt +centri $alt +centric $alt +centrifug $2 +centromer $2 +centuripe $2 +cepp $alt2 +cer $alt2 +ceram $1 +ceranesi $2 +cerber $1 +cerc $alt2 +cerchia $alt2 +cerchi $alt2 +cercine $alt2 +cercoceb $alt +cercol $alt2 +cercopitec $alt +cernobbi $alt +cerveteri $2 $alt +ces $alt +cesar $1 +cesare $1 +cesaro $3 $alt +cesi $alt +cest $alt2 +cet $alt +cetnici $alt +cetr $alt2 +cezanne $1 $alt2 +chambery $alt2 +cheliceri $2 +chemioterapia $6 +cheope $1 +cheradi $1 +chiavari $1 +chichibi $3 +chies $alt +chiesanuov $alt +chiese $alt +chiliagon $3 +chine $2 +chio $2 $alt +chiod $2 $alt +chirogaleo $3 +chiromanzia $4 +chiropote $alt +chissa $2 +chiudiletter $alt +chiusavecchia $alt +choco $2 $alt +chorzow $2 +ciane tS'iane +ciano tS'iano +cicer $1 +cicladi $1 +ciclocross $3 +ciclope $alt +ciec $alt +ciliegia $3 $alt +ciliegi $alt +cimabue tSimab'u:e +cimeg $1 +cimolais $3 +cinebox $3 $alt +cineclub $3 +cinem $1 +cinesi $alt +cinetec $alt +cinir $1 +cinisi $1 +cinopitec $alt +cinquantenni $alt +cinquantesim $alt +cinquefoglie $alt +ciociaria $3 +cioe $2 $alt +ciondol $alt2 +ciotol $1 +cipoll $alt2 +cipress $alt +circocentr $alt +circuito tSi@-*k'uito +ciro $2 $alt +ciscaucasia $4 +cismon $2 +cistifellea $3 +citoscheletr $3 +cittanov $alt +civile $2 +civit $1 +civitavecchia $alt +clamidofor $3 +clausol $1 +clavicembal $3 +clazomene $2 +cleomene $2 +cleptomania $4 +cles $alt +clet $alt +cli $1 +climen $1 +climene $1 +clipeo $1 +clistene $1 +clodia $alt +cloe $alt +cloramfenicol $5 $alt +cob $alt +cobas $alt +cobh $alt2 +cocchia $alt +cocchi $alt +coccia $alt +coccidi $alt +coccige $alt +coclea $1 $alt +cocomer $2 $alt2 +codol $alt2 +coetaneo $3 +cofan $1 +coggiol $1 $alt +cogia $1 $alt +cogn $alt +cogorn $alt2 +cola $2 +colbricon $3 +colchide $alt +colei $2 +coleotter $alt +coleotteri $alt +colesterol $4 +collagene $2 +coll $alt2 +colleg $alt +collegi $alt +collelong $alt +collenchim $alt +coller $alt +collett $alt +collevecchi $alt +colli $alt +collodi $alt +colloqui $alt +colob $1 +cologn $alt +colon $2 +colonia $3 +colonn $alt2 +color $alt2 +colorn $alt2 +colosimi $2 +colui kol'u:i +comedia $alt +comeglians $3 +cominform $3 +comintern $3 +comis $1 +commedia $alt +commod $alt +comod $1 +compagnia $3 +compendi $alt +compiet $alt +compit $1 +complet $alt +complice $alt +composit $2 +composite $2 +compost $alt2 +composte $alt2 +compravendit $3 +compress $alt +comput $1 $alt +computazionale $5 $alt2 +comunita $4 +concav $1 $alt +concentric $alt +concesi $alt +concors $alt2 +concret $alt +conde $2 +condil $alt +condomin $2 +condon $alt2 +condor $alt +condott $alt2 +coner $1 +confett $alt +confine $2 +confraternit $3 +cong $alt +conged $alt +congenit $2 +congreg $alt +congrua $1 $alt +congruo $1 $alt +conifer $2 +coniuge $1 +conn $alt2 +cons $alt +consci $alt +conselice $alt2 +console $alt +conson $1 $alt +consuet $alt +contachilometri $4 $alt +contemp $alt +contemporaneo $4 +contorn $alt2 +contraereo $3 +contralber $2 +contropiede $alt +controsoggett $alt +controversia $3 +convogli $alt +copepodi $alt +copet $alt +copia $alt +copilot $alt +copolimer $3 +coppia $alt +coppol $alt +coprolalia $4 +copt $alt +copti $alt +corazzat $2 +cordenons $3 $alt +cordob $1 $alt2 +cordogli $alt +corea $1 +core $alt +cored $1 +corfu $2 +coriz $1 +cormons $2 $alt +cornea $1 +corneo $1 +cornice $2 +cornucopia $alt +corone $alt +corporeo $2 +corred $alt +correr $2 +corrett $alt +corrid $2 +corrott $alt2 +cort $alt2 +corte $alt2 +cortenuov $alt +cortes $2 +cortile $2 +cortisol $3 +cortocircuito kO@-*totSi@-*k'uito +cosa $2 +cosc $alt +coscia $alt +cosen $alt2 +cosi $2 +cosm $alt +cosmic $alt +cosmogonia $4 +cospett $alt +cosseria $2 +cossov $1 +costa $2 +costi $2 +cot $alt +cote $alt +coti $alt +cottim $alt +coupe $3 +coyote $alt +cratere $2 +cred $alt +credit $1 $alt2 +cremer $1 +cremia $1 +cremisi $1 +crep $alt +cres $alt +crescit $1 +cresol $2 +crest $alt2 +cretaceo $2 +cret $alt +crevalcore $alt +cricet $alt +criogenia $4 +crisaore $2 +crisop $alt +crisostom $2 +crissol $2 +cristalloterapia $6 +cristofor $2 +croce $2 +crocett $alt2 +crocevia $3 +crod $alt +crogiol $1 $alt +cromofor $2 +cromoterapia $5 +cronotop $2 +cros $alt +crostaceo $2 +crotal $1 +crov $alt +cubebe $alt +cubit $1 +cubottaedr $alt +cubulteria $3 +cuccu $2 +cucul $2 +cucurbit $2 +cuglieri $1 +cuneo $1 +cuoi $alt +cupol $1 +curazia $3 +curcum $1 +curvilineo $3 +cuscut $1 +custode $alt +custodia $alt +cutaneo $2 +dafni $2 +dagherrotip $3 +dagherrotipia $5 +dalmat $1 +damar $1 +damocle $1 +danae $1 +dare $2 $alt +darien $3 $alt2 +darsen $1 +dataria $3 +dauphine $4 +davver $2 $alt2 +debit $1 $alt2 +debole $1 +debor $1 $alt +decade $1 $alt +decalog $2 +dec $alt +decameron $2 +decapoli $2 +decebal $2 $alt +decenni $alt +deci $alt +decibel $3 +decret $alt +decubit $2 +dedit $1 +deficit $1 $alt +deg $alt +deiotar $2 +delebi $alt +deleg $1 +delianuov $alt +deliber $2 +demareteion $alt2 +democrazia $4 +democrit $2 +demone $alt +demoni $3 +dene $2 $alt +dentice $alt +deposit $2 +depost $alt2 +derog $1 +desdemon $alt +desi $alt +desman $alt +despot $1 $alt +desuet $alt +deuteronomi $alt +deuterostomi $alt +devot $alt +diabete $alt +diacon $2 +diaconia $4 +diadem $alt +diagnosi $2 +dialett $alt +dialisi $2 +dialog $2 +diametr $2 +diapason $2 +diarchia $3 +diaspor $2 +diatesi $2 +dibattit $2 +dicembre $alt +diciannove $alt +diciannovesim $alt +diciassette $alt +diciassettesim $alt +diciottesim $alt +dicotiledoni $4 $alt +didache $3 $alt +didascalia $4 +dieci $alt +diedr $alt +dielettric $alt +diencefal $2 $alt +dieresi $1 +diesis $alt +diet $alt +difett $alt +diglossia $3 +dimer $1 +dimetr $1 +dinam $1 +dinar $1 +dinitrofenol $5 +dinocefali $3 $alt +dinomene $2 +diocesi $2 +diocle $1 +diognet $alt +diomede $alt +dionis $2 +dioscuri $2 +diplomazia $4 +dipol $2 +dipylon $1 +dirett $alt +discapit $2 +discors $alt2 +discotec $alt +discredit $2 $alt2 +dislessia $3 +disonesta $4 +disordine $alt2 +dispareunia $5 +dispari $1 +dispendi $alt +dispett $alt +dispost $alt2 +disprezz $alt +disprosi $alt +disput $1 +distonia $3 +distrofia $3 +dittong $alt +diviet $alt +djembe $2 $alt +dobrugia $2 +doclea $1 $alt +dod $alt +dodecaedr $alt +dodecagon $3 +dodecanes $alt +dodicesim $alt +dodici $alt2 +dogali $1 +doge $alt +dogli $alt +dol $alt +dolcett $alt2 +dolfin $2 +dolianov $alt +dollar $1 $alt +dolman $alt +dolmen $alt +dolomia $2 $alt +domenic $alt2 +domin $1 +domusnovas $alt +dona $2 +don $alt2 +donnol $alt +donori $3 +dopolavor $alt2 +doppiopett $alt +dorifor $2 +dorotei $3 +dose $alt +dosimetr $2 +dote $alt +dovadol $2 +dovere $2 $alt2 +dox $alt +dozz $alt2 +dragamine $3 +dragut $2 +drengot $2 $alt +dresd $alt +driade $1 +driope $1 +drog $alt +dugong $alt +dulia $2 +duom $alt +dupondi $alt +eban $1 $alt +ebbr $alt +ebl $alt +eboli $1 $alt +ebrei $2 +ebridi $alt +ec $alt +ecate $1 $alt +eccentric $alt +ecceter $2 $alt +ecij $1 $alt2 +eclog $1 $alt +ecosistem $alt +ecub $1 $alt +eczem $alt +edea $alt2 +eden $alt +eder $1 +edile $2 +edip $1 +edit $1 +editoria $4 +edol $alt +edui $alt +efeb $alt +efes $1 $alt +effett $alt +efficace $3 +effimer $2 +eg $alt +egemone $alt +egemonia $4 +egeria $2 +egocentric $alt +egumen $2 +eh $alt2 +el $alt2 +elegiac $3 +elemosin $3 +elett $alt +elettr $alt +elettric $alt +elettrod $alt +elettrodott $alt2 +elettroforesi $alt +elettrolisi $3 +elettromagnete $alt +elettronvolt $4 +elettrotecnic $alt +eleusi $2 +elicotter $alt +elimi $1 +eliocentric $alt +eliofania $5 +elisir $3 +elite $1 $alt2 +elixir $3 +ellade $1 +elle $alt2 +elleniche $alt +eller $alt2 +ellespont $alt +elogi $alt +eloqui $alt +els $alt2 +em $alt +emblem $alt +embol $alt +embolia $3 +eme $alt +emerit $2 +emerotec $alt +emes $1 $alt +emicrania $4 +emicriptofit $4 +emmental $1 $alt +emodialisi $3 +emofilia $4 +emostasi $2 +emoticon $2 +empedocle $2 $alt +empireo $2 +emu $2 +enantiomer $4 +encefal $2 $alt +enciclopedia $5 +encolpi $alt +endecasillab $4 +endocrin $2 +endoscheletr $3 +eneg $1 $alt +enfasi $1 $alt +enfisem $alt +enfiteusi $3 +enfiteut $3 +engage $3 +eni $2 +enkidu $alt +ennagon $2 +enneadi $2 +ennesim $alt +ennupl $1 $alt +enoch $alt +enone $alt +enorme $alt2 +enotec $alt +enschede $3 +entalpia $3 +enteric $alt2 +entropia $3 +entusiasm $4 +entusiast $4 +epagneul $1 +eparchia $3 +epicentr $alt +epifania $4 +epiglottide $alt +epigrafe $2 +epilessia $4 +epilog $2 +epirot $alt +episodi $alt +epitet $2 +epitome $2 +epitrit $2 +epoc $1 $alt +epoche $3 $alt +epon $1 $alt +epos $alt +epsilon $1 $alt +eptarchia $3 +equanime $2 +equi $alt +equidi $alt +equilater $3 +equipe $1 +equivoc $2 +equo $alt +eraclit $2 +eratostene $3 +erbaceo $2 +erbe $2 +erbivor $2 +erd $alt2 +ereb $1 +erede $alt +erem $1 +ergosterol $4 +erigone $2 +eritem $alt +erizz $1 +ermeneutic $3 +ermete $alt +erodot $2 +eroe $alt +eroin $3 +erotomania $5 +erro $2 $alt +erzegovin $3 +esac $alt +esacisottaedr $alt +esaedr $alt +esagon $2 +esametr $2 +esantem $alt +eschil $alt +eschim $alt +eschine $alt +esedr $alt +esegesi $alt +esempi $alt +esequie $alt +esercit $2 +esit $1 +esod $alt +esofag $2 +esoner $2 +esop $alt +esoscheletr $3 +esotropia $4 +esperia $2 +esplicit $2 +esposimetr $3 +ess $alt2 +esserci $1 $alt +essere $alt +est $alt2 +estasi $1 +estensimetr $3 +ester $1 +estet $alt +estoni $1 +estraneo $2 +et $alt +etampes $1 +etanol $3 +eteocle $2 +eterocefal $4 $alt +eterogeneo $4 +eterotteri $alt +etiope $2 +etn $alt +etnia $2 +etnic $alt +etoile $1 +ettagon $2 +ettar $1 $alt +ettore $1 $alt +eudem $alt +eudocia $alt +eufemi $alt +euforia $4 +euganeo $3 +eugenia $alt +eugenol $4 +eumolp $alt +eun $1 +eurasia $3 +eurek $1 +euriloc $3 +eurit $1 +euritmia $4 +europ $alt +europi $alt +europol $4 +eutifrone $3 +ev $alt +eve $alt +evreux $1 +evros $alt +excentr $alt +exeresi $2 +exoforia $4 +extr $alt +ezechia $3 +fabiol $2 +faccett $alt2 +facet $alt +faedis $alt +faicchio fa'ik:io +faina fa'i:na +falascia $3 +falcon $2 +faleci $alt +falment $alt +famedi $alt +fane $2 +fantocci $alt +farmaceutic $3 +farmacia fa@-*matS'i:a +farnesol $3 +farsal $1 +fascett $alt2 +fascin $1 +fatic $2 +fattispecie $alt +fattoria $3 +fauglia $2 +feb $alt +febbre $alt +febbrile $2 +feccia $alt +fedele $alt2 +fedr $alt +fegat $1 +felce $alt2 +felice $2 +felicita $4 +felsin $1 +feltr $alt2 +feltre $alt2 +femin $1 $alt2 +femmin $1 +femminile $3 +femore $1 $alt +fenicotter $alt +fenis $alt2 +fennec $alt +fenocopia $alt +fenol $2 +fenomen $2 +feretr $1 +feria $1 +ferita $3 +feritoia $alt2 +fernet $2 +ferocia $alt +ferod $2 $alt +ferragost $alt2 +ferrovia $3 +fes $alt +festival $1 +fet $alt +feud $1 +ficarol $3 +fienile $2 +fiesole $1 $alt +figar $1 +filantrop $2 +filarete $alt +filatelia $4 +filemone $alt +filistei $3 +filobus $1 +filocrate $2 +filosof $2 +filosofia $4 +filossen $2 +filostrat $2 +filot $alt +filottete $alt +fimon $2 +finalborg $alt2 +finocchi $alt +finor $alt2 +fiocin $2 +fiond $alt2 +fischi $2 +fisioterapia $6 +fitocenosi $alt2 +fitofag $2 +fitofagi $2 +fitoterapia $5 +flamenc $alt2 +flegias $1 $alt +floem $alt +florin $1 $alt2 +fluido fl'uido +flumendos $alt +fobia $2 +foder $1 +foggia $alt +foglia $alt +fogli $alt +folag $1 +fol $alt +folgaria $3 +folgore $1 +follia $2 +fomori $1 +fon $alt +fonem $alt +fontanafredd $alt2 +fontanelice $alt2 +fontanigord $alt2 +foppol $alt +for $alt2 +foraminiferi $4 +foraneo $2 +forcol $alt2 +forfor $1 $alt2 +forgia $1 +fori $2 +formalita $4 +formic $2 +fornace $2 +forn $alt2 +forr $alt2 +forse $alt2 +fortuito fO@-*t'uito +foscari $1 +foschia $2 +fosdinov $alt +fosfor $1 $alt +fossacesia $3 $alt +fossanov $alt +fot $alt +fotoelettric $alt +fotogenia $4 +fotolisi $2 +fotoritocc $alt2 +fotosintesi $3 +fovea $1 $alt +fragol $1 +franchigia $2 +franciacort $alt2 +francoboll $alt2 +frassin $1 +fraternita $4 +frattemp $alt +freccette $alt2 +fredd $alt2 +fren $alt2 +frigia $1 +frod $alt +frode $alt +frumenzi $alt +fruscio f@-*uS'i:o +fruttosi $alt +fucile $2 +fucsia $1 +fugace $2 +fulgenzi $alt +funebre $1 +funivia $3 +fuorilegge $alt2 +furnari $1 +furtei $2 +gabali $1 +galati $1 +galatone $2 +galattosi $alt +galeria $2 +gamal $1 +gambacort $alt2 +gambar $1 +gamber $1 +gambusia $2 +gamete $alt +gandolfi $alt +garanzia $3 +gardenia $alt +garofan $2 +garzon $2 +gasdott $alt2 +gaudenzi $alt +ge $alt +gebel $alt +gec $alt +gematria $3 +gemin $1 +gemit $1 +generazione $alt +genesi $alt +geneve $alt +geni $alt +gentile $2 +geocentric $alt +geode $alt +geometr $2 $alt +geotermia $4 +geov $1 +gerarchia $3 +gergovia $alt +geroglifico dZERol^'ifiko +gerolam $2 +gerrei $2 +gessopalen $alt2 +gesturi $1 +gesu $2 +get $alt +getsemani $2 $alt +gett $alt +gettit $1 +gez $alt2 +ghedi $alt +ghiott $alt2 +giarabub $3 +giaven $alt2 +gijon $2 +gile $2 +ginocchi $alt +ginogenesi $3 +giog $alt2 +giolit $1 +gionat $1 +giorn $alt2 +giov $alt2 +giovane $1 $alt2 +giovine $alt2 +gipet $alt +gipsotec $alt +girostat $2 +giuggiol $1 +giulianov $alt +giuria $2 +gladiol $2 +glaucofane $3 +gleb $alt +glia l^'i:a +glicerol $3 +glicolisi $2 +gliptodontidi $alt +glob $alt +globicefal $3 $alt +glossolalia $4 +glottide $alt +glucosi $alt +gluteo $1 +gnom $alt +gnome $alt +gogo $2 $alt +gol $alt +golasecc $alt2 +goleador $4 +golem $alt +golgi $alt +golia $2 +goliardia $4 +gomit $1 $alt2 +gomm $alt2 +gonars $2 +goni $alt +gonn $alt2 +gonnes $alt +gorgia $1 +gorgonzol $3 +got $alt +goti $alt +gottasecc $alt2 +gozz $alt2 +gradoli $1 +grafem $alt +graminacee $3 +granollers $3 $alt2 +gratteri $2 +gratuita $3 +gratuito g@-*at'uito +gravimetr $2 +grec $alt +gres $alt +greve $alt +grom $alt2 +grosi $alt +grossomod $3 $alt +guaina gwa'i:na +guarani $3 +guardalinee $3 +guardarob $alt +guardiaregia $3 $alt +guer $alt2 +guerraiol $alt2 +guidizzol $3 +guspini $1 +gutei $2 +hellas $2 +heracleopolis $3 $alt2 +herve $2 +hieron $2 +honore $3 +huahine $3 +icar $1 +icet $1 +icon $alt +iconostasi $3 +icosaedr $alt +icosidodecaedr $alt +icositetraedr $alt +iddi $2 +identic $alt +identikit $4 +identita $4 +idolatria $4 +idoneo $2 $alt +idrocefal $3 $alt +idrocors $alt2 +idroelettric $alt +idrofob $2 +idrolisi $2 +idrope $1 +idroterapia $5 +idrovor $2 +iempsale $1 $alt +ifigenia $4 +ifit $1 +iglesias $2 $alt +ignitor $1 +ignot $alt +ileo $1 +ilheus $alt2 +iliade $2 +illecit $2 +illuminotecnic $alt +imbocc $alt2 +imbrogli $alt +imeni $alt +imenofor $3 +imenotteri $alt +imol $1 +impari $1 +imperfett $alt +impero $3 $alt +impet $1 +impieg $alt +implicit $2 +incendi $alt +incentr $alt +incognit $2 $alt +incolume $2 +incomplet $alt +inconsci $alt +inconsuet $alt +incub $1 +incursione $alt +indebit $2 $alt2 +indirett $alt +indomit $2 +inedia $alt +inedit $2 +inett $alt +infamia $2 +infantile $3 +infedele $alt2 +infelice $3 +infer $1 +inferi $1 +infett $alt +infinita $4 +infinitesim $alt +ingegnere $3 +ingenua $alt +ingenuo $alt +ingobbi $alt +ingorg $alt2 +ininterrott $alt2 +innocuo $alt +inquiet $alt +insett $alt +insetti $alt +insetticid $4 +insieme $alt +insit $1 +insolit $2 +insomm $alt2 +insonnia $alt +insubre $1 +insubri $1 +integr $1 +intellighenzia $alt +interim $1 +interior $alt2 +interlinea $3 +intermedi $alt +intermezz $alt +interpol $3 +interprete $2 +intersind $3 +intonarumori $alt2 +intorn $alt2 +intrig $2 +intrinsec $2 +introdott $alt2 +inver $alt2 +invi $2 +involucr $2 $alt +iolao $3 +ione $alt +ioni $alt +ipermetropia $5 +ipersonnia $4 +ipertermia $4 +ipertrofia $4 +ipocentr $alt +ipocloridria $5 +ipocondria $4 +ipofisi $2 +ipotalam $3 +ipotec $alt +ipotermia $4 +ipotesi $2 +ippolit $2 +ippomene $2 +ippopotam $3 +ipsilon $1 +ironia $3 +isaia iza'i:a +islam $2 +isobar $2 +isocrate $2 +isocron $2 +isol $1 +isolabon $alt +isomer $2 +isopsefia $4 +isopter $2 $alt +isoscele $2 $alt +isospin $3 +isotop $2 +isotopia $4 +isotrop $2 +isotropia $4 +isotteri $alt +istantanea $3 +istantaneo $3 +istrice $1 +ital $1 +ittiri $1 +iuger $1 +jesi $alt +jesol $alt +jole $alt +joppol $alt +juazeir $1 +kairos $2 +kampuchea $alt2 +kapo $2 $alt +kapok $2 $alt +karate $3 $alt +kayak $2 +kea $alt2 +kefir $alt +kenia $alt +kerkyr $1 $alt2 +khamsin $2 +kob $alt +kore $2 +krakow $2 +kurumb $1 +labar $1 +lacche $2 $alt +lachete $alt +laconi $1 +laigueglia $alt +lame $2 +lamia $1 +lamin $1 +lamon $2 +lampad $1 +lampred $alt +lancett $alt2 +lando $2 $alt +landolf $alt +langur $2 +lanusei $3 +lapideo $2 +lascit $1 +later $1 +lattosi $alt +laurasia $3 +laurea $1 +laurenzi $alt +lauria $3 +lazzar $1 +lecc $alt2 +lecit $1 $alt2 +legatoria $4 +legazia $3 +legge $alt2 +leggere $alt +lemn $alt +lemure $1 $alt +lemuri $1 $alt +leo $alt2 +leon $alt2 +leonzi $alt +leopold $alt +leostene $2 +lepant $1 $alt +lepidotteri $alt +lepilemure $3 $alt +lepore $1 $alt +lepospondili $alt +lepre $alt +lepri $alt +lequile $alt +leros $alt2 +lesb $alt +lesbic $alt +lesm $alt +lessic $alt +lestrigoni $2 +let $alt +lett $alt +letter $alt +lettig $2 +leuc $1 +leuci $1 +levant $1 $alt +levanz $1 $alt +leve $alt +levita $3 +liber $1 +liberi $1 +liberta $3 +licantrop $2 +licantropia $4 +licomede $alt +liet $alt +lieve $alt +lievit $2 +ligneo $1 +ligure $1 +lilla $2 +limassol $3 $alt2 +limen $1 +limin $1 +limite $1 +limitrof $2 +limon $2 +limone $alt +linea $1 +linfonod $3 $alt +linoleum $2 $alt +lipari $1 +lipsia $1 +liquigas $3 +liston $2 +litania $3 +litoraneo $3 +lob $alt +localita $4 +lod $alt +lode $2 $alt +lodol $1 +lodz $alt2 +log $alt +loggia $alt +logli $alt +lol $alt +lombardia $3 +long $alt +longhi $alt +lonicer $2 +lord $alt2 +loredan $3 +loreggia $alt +lorsic $alt2 +lot $alt +lotzorai $3 +lovere $alt2 +lucia lutS'i:a +lucifug $2 +lugubre $1 +lumac $2 +luog $alt +luteo $1 +maat $2 +macabr $1 +macac $2 +macadam $3 +macao $2 +maccabei $3 +macchin $1 +macedone $2 $alt +macer $1 +machin $1 +macin $1 +macomer $3 +macrocosm $alt +madonie $3 +madras $2 +maestria $3 +mafia $1 +maggior $alt2 +magnenzi $alt +magnesia $2 $alt +magnesi $alt +magnete $alt +magnetron $1 +magog $2 $alt +mahe $2 +mahon $2 +maieutic $2 +maiori $alt2 +malag $1 +malapen $alt2 +malavoglia $alt +malcesine $alt2 +male $2 $alt +malebolge $alt +malesia $2 $alt +malessere $alt +malevol $alt +malia $2 +malinconia $4 +malincuore $alt +mallare $1 +mallofagi $2 +malocchi $alt +malpel $alt2 +malpens $alt2 +maltemp $alt +mammiferi $2 +mammut $2 +mandei $2 +mandibol $2 +mandorl $1 +maneggi $3 +mangan $1 +mangiatoia $alt2 +mania $2 +manicomi $alt +mannosi $alt +manocchi $alt +manodoper $3 +mansuet $alt +manticor $2 +manul $2 +mara $2 +maracalagonis $alt +maramao $3 +marathon $3 +maratonet $alt +marciapiede $alt +marcon $2 +maremm $alt2 +maremot $alt +marettim $alt2 +maripos $alt +marmar $1 +marmirol $3 +marmor $1 +marmore $1 +marmoreo $2 +maro $2 $alt +maroboduo $alt +marron $2 +marsia $1 +marsicovetere $alt +martinitt $3 +martire $1 +martirologi $alt +martor $1 +mascali $1 +mascalucia maskalutS'i:a +mascar $1 +maschile $2 +maser $2 +masovia $alt +massaros $alt +massenzi $alt +massime $1 +matapan $3 +materia $2 +matron $alt +mazzaccher $2 +mazze $2 $alt +mazzin $2 +mazzol $2 +media $alt +medi $alt +mediceo $2 +mediterraneo $4 +medium $alt +medole $1 +medoll $alt2 +mefistofele $3 +megacle $1 $alt +megacolon $alt +megaesofag $4 +megafon $2 +megapodi $alt +megar $1 +megli $alt +meknes $2 $alt +melanconia $4 +melodia $3 +melomane $2 +melpomene $2 +membr $alt +mement $alt +memnone $1 $alt +memore $1 $alt +men $alt2 +mendelevi $alt +menecm $alt +menhir $2 +menn $alt2 +mensile $2 +mensol $alt +ment $alt2 +mente $alt2 +mercanzia $3 +merce $2 +meri $2 +meristem $alt +merit $1 +meritocrazia $5 +merope $1 +mes $alt +mescal $2 +mesencefal $3 $alt +mesenchim $alt +meser $1 +mesia $1 $alt +mesol $1 +mesopotamia $4 +messe $alt +messenia $alt +messere $2 +messia $2 +mestol $alt2 +metabolit $3 +metacentr $alt +metafonesi $alt +metafor $2 +metamer $2 +metamorfosi $3 +metanol $3 +metapont $alt +metastasi $2 +metatesi $2 +meteor $2 $alt2 +meteore $2 +metod $alt +metodi $alt +metr $alt2 +mettere $alt +mexic $alt2 +mezenzi $alt +mezzadria $3 +mezz $alt +mezzaneg $2 +mezzogiorn $alt2 +miastenia $4 +michiel $2 +microcefalia $5 +microcosm $alt +microfilm $3 +micronesia $3 $alt +microsporum $2 $alt +microtom $2 +midoll $alt2 +miglioria $3 +mignaneg $2 +mignol $1 +milite $1 +millefiori $alt2 +millefogli $alt +millenni $alt +millesim $alt +millimetr $2 +mimesi $alt +mimi $2 +mindaugas $1 +minigolf $3 +minimax $3 +minori $alt2 +minutoli $2 +miopia $3 +mirafiori $alt2 +miriade $2 +misantropia $4 +miscellanea $3 +miser $1 +miserere $3 +miseria $2 +misia $1 +misoginia $4 +mista $2 +mistra $2 +mistral $2 +mitocondri $alt +mixtechi $alt +moa $alt +moab $2 +mochi $alt +moconesi $2 +mod $alt +modem $alt +modestia $2 +modoc $alt +mogan $1 +moggi $alt +moglia $alt +mogol $2 +mogor $1 +moheli $alt2 +moire $3 +mok $alt +moken $alt +mol $alt +mole $alt +molecol $alt +mollic $2 +moloch $alt +molochi $alt +molotr $1 $alt +molten $alt2 +molv $alt +mombarocci $alt +momentaneo $3 +monade $1 +mon $alt +monarchia $3 +mondadori $alt2 +mondolf $alt +mondovi $3 +moneglia $alt +mongoli $alt +mongoz $alt +monit $1 +monoalber $3 +monocotiledoni $5 $alt +monodia $3 +monofor $2 +monolit $2 +monomer $2 +monomi $alt +monopack $3 +monopett $alt +monopost $alt2 +monotonia $4 +monrovia $alt +montecompatri $3 $alt +montecosar $3 +montedison $2 $alt +montefeltr $alt2 +montegiorgi $alt2 +montelepre $alt +montemesol $3 $alt +montesegale $3 +monteverde $alt2 +monteverdi $alt2 +montevergine $alt2 +montezemol $alt +montoggi $alt +montorfan $2 +montreal $alt2 +monzon $2 +mopsuestia $2 +mores $alt +morfem $alt +moria $2 +mori $alt2 +morini $1 +morol $2 +moscov $alt +moscovia $alt +mose $2 $alt +most $alt2 +mostr $alt2 +mot $alt +motel $2 +motmot $2 $alt +motocross $3 +mozz $alt2 +mufti $2 +muggio $2 $alt +multietnic $alt +multipl $1 +multiplexer $alt +muntaz $2 +musei $2 +musicoterapia $6 +muster $2 +mutagen $2 +mutagenesi $3 +nabatei $3 +nabucodonosor $4 $alt +nadir $2 +naftol $2 +naiade $1 +narcolessia $4 +nardo $2 $alt +nartece $alt +nascit $1 +nascost $alt2 +nati $2 +naufrag $1 +naumachia $4 +nausea $1 +neb $alt +nebul $alt2 +necchi $alt +necrologi $alt +necromanzia $4 +necton $alt +negrar $2 +negrita $3 +negus $alt +nel $alt2 +nematodi $3 $alt +nembr $alt +nemi $alt +nemic $2 +nemmen $alt2 +nenni $alt +neogrec $alt +nepi $alt +ner $alt2 +nerol $1 +nespol $alt +nestle $2 +nestore $1 +nettare $1 $alt +neum $1 +neuropsichiatria $6 +neurotteri $alt +neustria $1 +neutr $1 +nicaraguense $alt2 +nicerat $2 +nicodem $alt +nicolao $3 +nicomedia $alt +nicoter $2 +nievole $alt +nigeria $2 +nimeg $alt +nimrod $2 $alt +ninfomania $4 +ninive $1 +niobe $1 +nippur $2 +niscemi $alt +niteroi $alt2 +nocciol $alt +nod $alt +noe $2 $alt +noem $alt +noemi $alt +noicattar $3 +nol $alt +nomade $1 +nomi $alt +nomin $1 +non $alt +nonche $2 +none $alt +normandia $3 +norvegia $2 $alt +nosocomi $alt +nostoi $1 $alt2 +not $alt +notes $alt +nottetemp $alt +noumea $alt2 +noumen $2 +nous $2 +nov $alt +nove $alt +novembre $alt +nover $1 +novi $alt +nucleo $1 +nucleosintesi $4 +numer $1 +numeri $1 +nunatak $3 +nuot $alt +nuov $alt +nuraminis $2 +nuvolone $alt +oasi $1 $alt +ob $alt +obblig $alt +obes $alt +obidos $alt2 +obit $1 +obli $2 +oboe $1 $alt +obsolet $alt +occhi $alt +ocean $2 +od $alt +ode $alt +odi $alt +odontoiatria $6 +odontotecnic $alt +ofant $1 $alt +offid $alt +oggebbi $alt +oggett $alt +oggigiorn $alt2 +ogli $alt +ognitemp $alt +oh $alt +ohi $alt +ohmic $alt +oidi $2 +ola $2 +ole $2 +oleacee $3 +oleodott $alt2 +olg $alt +oligarchia $4 +oligodendroglioma Oligodend@-*ol^'iOma +ollolai $3 +olmi $alt +oltremod $3 $alt +oltreocean $4 +olympos $1 +olynthos $1 +om $alt +omayyadi $2 +ombelic $3 +omeg $alt +omelia $3 +omer $1 +omicid $3 +omicron $1 $alt +omnibus $1 $alt +omnitel $3 +omnium $alt +omogeneo $3 +omotopia $4 +omotteri $alt +omozigote $alt +oncogene $3 +oncogeni $3 +oneg $alt +onesta $3 +ongar $1 +onicofori $3 +ontogenesi $3 +opac $2 +oper $alt2 +opistodom $3 +oppi $alt +oppost $alt2 +opprimente $alt +oraf $1 +oramai $3 +orbit $1 +orchidacee $3 +orcia $alt2 +ordine $alt2 +orefice $alt2 +orfan $1 +orfanotrofi $alt +orfei $2 +organ $1 +organon $1 $alt2 +orgia $1 +origan $2 +oritterop $3 +orl $alt2 +orleans $alt2 +orogenesi $3 +orologi $alt +orop $alt +oroscop $2 $alt +orosei $3 +ors $alt2 +orsol $alt2 +ortensia $2 $alt +ortensi $alt +ortic $2 +ortigia $2 +ortocentr $alt +ortodossia $4 +ortonov $alt +ortopedia $4 +ortotteri $alt +ortottic $alt +orviet $alt +orzinuovi $alt +orzivecchi $alt +osc $alt +oscar $alt +osmi $alt +ospite $alt +osroe $1 +osseo $1 +ossequi $alt +osset $alt +ossia $2 +ossidoreduttasi $1 +osteogenesi $4 +ostia $1 +ostile $2 +ostrogot $alt +ostrogoti $alt +ot $alt +otrant $1 +otre $alt2 +ottaedr $alt +ottagon $2 +ottenere $3 $alt2 +ottic $alt +ottim $alt +ottoboni $alt +ottobre $alt2 +ottotip $2 +ottotipi $2 +ovest $alt +ovideposizione $alt +ovile $2 +ovovia $3 +ovver $2 $alt2 +ovvi $alt +ozia $2 +pabillonis $alt +pacec $alt +padron $2 +pagin $1 +pagod $alt +pahlavi $1 +palagonia $4 +palamede $alt +palemone $alt +palen $alt2 +palingenesi $3 +pallanuot $alt +pallare $1 +pallavol $3 +palmanov $alt +palmares $3 $alt +palpebr $1 +pamir $2 +panam $1 +pancett $alt2 +pancreas $1 +pandar $1 +pandosia $2 $alt +pannocchia $alt +panspermia $3 +pantalon $3 +paol $1 +papaver $2 +paper $1 +parabit $2 +parabol $2 +parabord $alt2 +paracetamol $5 +paradisea $3 +parafrasi $2 +paragraf $2 +paralisi $2 +parallelepiped $5 +parametr $2 +parapendi $4 +parapett $alt +paratoia $alt2 +paraurti $3 +paravia $3 +pare $2 +parenchim $alt +parentesi $2 $alt +parere $2 $alt2 +parestesie $4 +parghelia $3 +paria $2 +parnassos $3 +parodi $2 $alt +parodia $3 +parop $alt +parricid $3 +parroc $1 +parrocchia $alt +partecipe $2 $alt2 +partenogenesi $4 +partenope $2 $alt +passatemp $alt +pasten $1 +pastor $alt2 +pater $1 +patin $1 +patogenesi $3 +pattin $1 +patu $2 +paulilatin $4 +paur $2 +pave $2 +pazzia $2 +pecari $1 $alt +peccioli $alt +peceneghi $alt +pecor $1 $alt +pedagog $alt +ped $alt +pedaven $alt2 +pediatria $3 +pedofilia $4 +pedogenesi $3 +peggi $alt +pelag $1 +pel $alt2 +pelaverg $alt2 +pell $alt2 +pelle $alt2 +pelope $1 +peloponnes $alt +pelosi $alt2 +pelot $alt +pemfig $alt +pend $alt2 +pendi $2 +pendol $alt +pendul $alt +penelope $2 +penisol $2 +penn $alt2 +penne $alt2 +pensile $alt +pentagon $2 +pentametr $2 +pentapoli $2 +pentateuc $3 +pentatl $1 +pentatl $alt +pentatlet $alt +pentod $alt +pepi $alt +pepoli $1 $alt +peptidi $alt +perche $2 +percors $alt2 +perdasdefogu $alt +perdit $1 +perdon $alt2 +pereg $1 +peretol $2 +perez $alt2 +perfett $alt +perfugas $1 +pergam $1 +pericle $1 +perieget $alt +perier $1 $alt2 +perifrasi $2 +perim $2 +perimetr $2 +period $2 +peripl $1 +peristasi $2 +perle $2 +perlomen $alt2 +permafrost $1 +permut $1 +pernice $2 +pero $2 $alt +peronospor $3 $alt +perpetua $alt +perpetuo $alt +perregaux $2 +perrer $2 +persefone $2 $alt +persia $1 +persian $3 +peru $2 +perun $2 +pesc $alt +pescasseroli $3 +pesche $alt +peschici $alt +pesi $alt +pessim $alt +pest $alt2 +petal $1 $alt +pett $alt +pettineo $2 +pezz $alt +phon $alt +piacere $3 $alt2 +piaden $2 +pianterren $alt2 +piastrinopenia $6 +piazzatorre $alt2 +piazzol $3 +piccardia $3 +picche $2 $alt +piccolomini $3 +picnic $2 +pidocchi $alt +pie $alt +piece $alt +piede $alt +piedr $alt +pieg $alt +piet $alt +pietraperzia $4 +pietraroj $alt +pieve $alt +pievepelag $3 +piezoelettric $alt +pilade $1 +pileo $1 +pilot $alt +pimentel $3 +pinacotec $alt +pince $2 +pinerol $3 +pinnipedi $2 +pinocchi $alt +pinzol $2 +piobbic $alt2 +piover $2 +pipi $2 +piram $1 +pirenei $3 +piritoo $2 +pirolisi $2 +piromania $4 +pirop $alt +piroscaf $2 $alt +pirossen $2 +pirotecnic $alt +pirovan $2 +pisistrat $2 +pitecia $alt +pitegli $alt +pittoni $1 +piuccheperfett $alt +placche $2 $alt +placeb $alt +placit $1 +planargia $2 +planimetr $2 +plantagenet $alt +plasmodesm $alt +plasmodi $alt +platan $1 +platani $1 +platania $3 +platin $1 +plebe $alt +plecotteri $alt +plesi $alt +plestia $1 +plettr $alt +pleur $1 +pleuric $1 +plexiglas $1 $alt +plezz $alt +pocol $2 +podere $2 $alt2 +podesta $3 +podi $alt +poe $alt +poem $alt +poet $alt +poggi $alt +poh $alt +pol $alt +polarimetr $3 +polc $alt +polcever $2 +polder $alt +polesia $2 $alt +polesine $alt2 +polia $2 +policrate $2 +policrom $2 +poliedr $alt +poliedric $alt +polifem $alt +poligal $2 +poligon $2 +polimer $2 +polimestore $3 +polinesia $3 $alt +polinomi $alt +polip $1 +polis $alt2 +polisten $2 +polistirol $4 +politecnic $alt +polizia $3 +polizz $1 +poll $alt2 +polli $alt +pollic $alt +pollice $alt +pollin $1 $alt +polline $alt +pomice $alt2 +pompei $2 +ponce $alt +pontassieve $alt +pontefice $alt2 +pontelandolf $alt +pontremoli $2 +pop $alt +pope $alt +popp $alt2 +poppi $alt2 +porcile $2 +porfiria $3 +poriferi $2 +poros $alt2 +porpor $1 $alt2 +portaelicotteri $alt +portafogli $alt +portalber $2 +porticciol $3 +portorose $alt +portovenere $alt +pos $alt +posamine $3 +posillip $2 +possibilita $5 +post $alt2 +posteri $1 +posteriori $alt2 +postum $1 +potal $1 +potamogale $3 +potere $2 $alt2 +pover $1 +pozz $alt2 +pozzangher $2 +pozzol $2 +pranoterapia $5 +prassea $1 +prassede $alt +prassitele $2 +pratovecchi $alt +precamer $2 +preci $alt +precoce $alt +pred $alt +predilett $alt +prefett $alt +pregadi $3 +preg $alt +preganziol $4 +pregi $alt +premia $1 +premilcuore $alt +prensile $alt +prepost $alt2 +presbite $1 $alt +presbiter $2 +presepi $alt +press $alt +prestit $1 +presuppost $alt2 +pret $alt +prete $alt +preterit $2 +prett $alt +previ $alt +prezz $alt +priam $1 +prieg $alt +prigionia $3 +primogenit $3 +principi $2 +prior $alt2 +privilegi $alt +prob $alt +problem $alt +proboscide $alt +procediment $alt +proci $alt +procne $alt +proconsole $alt +prodott $alt2 +proemi $alt +profet $alt +profezia $3 +profil $2 +profondimetr $3 +progenie $alt +progett $alt +prognosi $1 $alt +proiett $alt +pronao $alt +propanol $3 +propedeutic $3 +proposit $2 +propost $alt2 +proprieta $4 +prorog $1 +pros $alt +prosceni $alt +prosecc $alt2 +proselit $2 +proserpin $2 +prosieguo $alt +prosodia $3 +prospett $alt +prostaferesi $3 +prostat $1 +prot $alt +proteo $1 $alt +protesi $1 +protett $alt +proteus $1 $alt +protir $1 +protocerebr $3 +protomartire $3 +protostell $alt2 +prototip $2 +prov $alt +prove $alt +prozi $2 +prua p@-*'u:a +psichiatria $3 +psicoanalisi $4 +psicocinesi $alt +psicosintesi $3 +psicoterapeut $5 +psicoterapia $5 +pulcheria $2 +pulizia $3 +pulpit $1 +puntasecc $alt2 +pure $2 $alt +puri $2 +purpureo $2 +quadrifogli $alt +quadrig $2 +quadrilater $3 +quadripol $3 +quadrupl $1 +quadrupol $3 +qualcos $alt +qualita $3 +qualor $alt2 +qualsivoglia $alt +quantomen $alt2 +quaresim $alt2 +quartirol $3 +quattordicesim $alt +quattordici $alt2 +quattroruote $alt +quiet $alt +quiete $alt +quindicesim $alt +quot $alt +raab $2 +rabarbar $2 +rabbi $2 +rabdomanzia $4 +racale $1 +racem $alt +radice $2 +radicofani $3 +radioterapia $6 +raglan $2 +ragnatel $alt2 +ramadan $3 +ramesse $alt +rampoll $alt2 +ranocchia $alt +ranocchi $alt +rapace $2 +rape $2 $alt +rapsod $2 +rapsod $alt +rapsodia $3 +rate $2 +rateo $1 +razzia $2 +realta $3 +rebbi $alt2 +recapit $2 +recared $alt +recc $alt2 +reciproc $2 +recit $1 +reclut $1 +reddit $1 +redini $1 +redox $2 $alt +reduce $1 +referendum $alt +regalia $3 +reggisen $alt2 +regn $alt2 +regol $1 +reimpieg $alt +relativita $5 +religios $alt2 +remor $1 +remot $alt +ren $alt2 +rendin $1 +rendit $1 +reni $alt2 +reostat $2 +res $alt2 +resed $alt +resia $1 +resin $1 +respons $alt +resume $3 +rete $alt2 +retin $1 +retinol $3 +retorbid $alt2 +retore $1 +retrofit $1 +retrograd $2 +rett $alt +rettifil $3 +rettilineo $3 +revere $alt2 +revoc $1 +revolver $alt +rhea $alt2 +riassett $alt +ribec $alt +ribosi $alt +riccoboni $alt +ricerc $alt2 +ricin $1 +ricors $alt2 +ricover $2 +ridolfi $alt +ridott $alt2 +riesi $alt +rifredd $alt2 +rigett $alt +rimbors $alt2 +rimedi $alt +rimprover $2 +rinascit $2 +rincors $alt2 +rincoti $alt +rinnov $alt +rinopitec $alt +rinvi $2 +ripei $2 +ripoli $1 +ripos $alt +ripost $alt2 +ripristin $2 +riprov $alt +risan $1 +risolt $alt +risors $alt2 +risort $alt2 +rispett $alt +rispost $alt2 +ritocc $alt2 +ritorn $alt2 +ritrov $alt +riverber $2 +rivincit $2 +rizziconi $2 +rizzoli $2 +rob $alt +robbia $alt +robbi $alt +robot $2 $alt +roburent $3 $alt +robustezz $alt +roccagiovine $alt2 +roccaglorios $alt2 +roccarainola @-*ok:aRa'inOla +roccasecc $alt2 +roccia $alt +roccol $alt +rodi $alt +roditori $alt2 +rog $alt +rogit $1 +rolle $2 $alt +rolli $2 +romagnol $3 +romandia $3 +romania $3 +rombicosidodecaedr $alt +rombicubottaedr $alt +romboedr $alt +rompiscatole $3 +rondo $2 $alt +ronzi $2 +ropaloceri $3 +rore $alt +rosalia $3 +ros $alt +rose $2 +roseo $1 $alt +rosolia $3 +rosp $alt +rospigliosi $alt2 +ross $alt2 +rossi $alt2 +rot $alt +rotari $1 +rotor $alt +rott $alt2 +rotuleo $2 +rotz $alt +rovere $alt2 +rovescia $alt +rovesci $alt +rozz $alt2 +rua $2 +rubel $2 +rubric $2 +rucellai $3 +ruffia $2 +rufin $1 +ruot $alt +ruoti $alt +rutenia $alt +ruteni $alt +sabat $1 +sabei $2 +sabir $2 +saccarosi $alt +sacerdote $alt +sacha $2 +sacrilegi $alt +sagam $1 +sagom $1 +sake $2 $alt +salam $2 +sale $2 +salemi $alt +saliscendi $alt2 +salmi $2 +salmodia $3 +salo $2 $alt +salome $3 $alt +saludeci $alt +salvacondott $alt2 +salvadoregn $alt +samar $1 +samaria $3 +samoa $alt +samoggia $alt +samosat $2 +samovar $3 +sampeyre $2 +sampierdaren $alt2 +samurai $3 +sandal $1 +sande $2 +sandia $2 +sanfront $2 +sanscrit $1 +santabarbar $3 +sante $2 +santen $1 +sapere $2 $alt2 +sarag $1 +sarcofag $2 +sardanapal $3 +sarmati $1 +sarrabus $1 +sarracenia $alt +sarroch $2 +sarsin $1 +sartoria $3 +sassone $1 +sassoni $1 +satan $1 +satellite $2 +satir $1 +satrap $1 +satrapia $3 +satur $1 +savoc $1 +savorgnan $3 +sbocc $alt2 +scaliger $2 +scandal $1 +scapit $1 +scapol $1 +scapoli $1 +scarpant $1 +scatol $1 +scegliere $1 +sceicco SE'ik:o +scelt $alt2 +scepsi $alt +scettr $alt +sched $alt +scheletr $1 +schem $alt +scherm $alt2 +schern $alt2 +scherz $alt2 +schettin $1 $alt2 +schiavitu $3 +schivenoglia $alt +schizofrenia $4 +sciabol $1 +sciliar $3 +scioper $1 +sciovia $2 +sclerodermia $4 +scogli $alt +scol $alt2 +scorci $alt2 +scorciatoia $alt2 +scordia $2 +scorpor $1 +scorrett $alt +scors $alt2 +scorze $2 $alt +scot $alt +scrivania $3 +scrof $alt +scrofol $1 +scrot $alt +scuolabus $3 +seb $alt +seborg $alt2 +secc $alt2 +secol $alt +secondogenit $4 +sedan $1 $alt +sede $alt +sedecia sedetS'i:a +sedere $2 $alt2 +sedia $alt +sedicesim $alt +sedici $alt2 +sedile $2 +seggi $alt +seggiovia $3 +segnapost $alt2 +segnavia $3 +seguace $2 +seguit $1 +selce $alt2 +selci $alt2 +seleni $alt +seleucia $2 +seleucide $2 +seleucidi $2 +selon $2 $alt +selv $alt2 +semafor $2 +semel $alt +semestene $2 +semibreve $alt +semicerchi $alt2 +semidi $3 +semin $1 $alt2 +semirett $alt +semmai $2 +semol $1 +sempre $alt +sempreverde $alt2 +sen $alt2 +seneghe $1 $alt +seni $alt +senile $2 +senior $1 $alt +seniore $alt +sennacherib $4 +senno $2 $alt +sennori $1 $alt +senoni $1 $alt +sepri $alt +sepsi $alt +sequals $2 +sequani $1 $alt +seren $alt2 +seriol $2 +serval $2 +servile $2 +servofren $alt2 +sesam $1 $alt +sesia $1 $alt +sess $alt +sessantesim $alt +sesser $alt +sessile $alt +sessuofobia $4 +sett $alt +sette $alt +settembre $alt +settime $1 +seul $2 +seves $1 $alt +sevres $alt +sezze $2 $alt +sfacteria $2 +sfarfalli $3 +sfintere $2 +sfoggi $alt +sfoglia $alt +sfregi $alt +sgomber $1 +shanghai $2 +sibari $1 +sidereo $2 +siepe $alt +sieve $alt +sigar $1 +signor $alt2 +signoria $3 +signorile $3 +silenzi $alt +silesia $2 $alt +sillab $1 +siluri $1 +simbionte $alt2 +simet $alt +simia $1 +simonia $3 +simposi $alt +simultaneo $3 +simun $2 +sinagog $alt +sinalefe $alt +sincope $1 +sincron $1 +sincronia $3 +sindia $2 +sindone $1 +sindrome $1 +sinedri $alt +sinfisi $1 +sinforos $alt +singhiozz $alt2 +sinope $alt +sinopia $alt +sinor $alt2 +sintesi $1 +sintom $1 +sintonia $3 +sinuess $alt +sio $2 +sion $2 +sipont $alt +sirtori $1 +sisar $1 +sistem $alt +sitar $2 +skopelos $1 $alt2 +slesia $1 $alt +slogan $alt +slovenia $alt +smegm $alt +snob $alt +snod $alt +sobborg $alt2 +socci $alt +soccors $alt2 +socialdemocrazia $6 +soci $alt +societa $3 +sod $alt +sodi $alt +soffice $alt +sofocle $1 $alt +soggiorn $alt2 +soggol $2 $alt2 +soglia $alt +sogli $alt +sogliol $1 $alt +solarol $3 +sold $alt +soleo $1 $alt +solit $1 +solletic $alt2 +solopac $3 +somal $1 +somali $1 +som $alt +somm $alt2 +sonar $alt +sonia $2 +sonn $alt2 +soppress $alt +soprabit $2 +sorbitol $3 +sorci $alt2 +sord $alt2 +sorg $alt2 +sorgere $alt2 +sorgon $1 +sorisole $2 +sors $alt2 +sorvol $2 $alt2 +sosia $1 $alt +sosi $alt +sospett $alt +soter $2 $alt2 +sotterraneo $3 +sottile $2 +sottobosc $alt +sottocutaneo $4 +sottoinsieme $alt +sottomultipl $3 +sottopost $alt2 +sottoprodott $alt2 +sottordine $alt2 +sottospecie $alt +sottozon $alt +soverzene $2 +soviet $2 +sovr $alt2 +spaccaforn $alt2 +spaccanapoli $3 +spagnol $2 +spalat $1 +spatol $1 +specchia $alt +specchi $alt +specie $alt +specol $alt +speculum $1 +speot $alt +spermicid $3 +spessimetr $2 +spettr $alt +spettri $alt +spianatoia $alt2 +spied $alt +spigol $1 +spinazzol $3 +spinetoli $2 +spinol $1 +spirit $1 +splancnopleur $3 +splendid $alt +spleni $alt +splenomegalia $5 +spoglia $alt +spogli $alt +spontaneo $2 +sporofit $2 +spos $alt +spotorn $alt2 +sprec $alt +staffor $1 +stambecc $alt2 +stanislao $3 +starost $1 +staser $alt2 +statere $2 +statolder $alt +stecc $alt2 +stefani $1 +stell $alt2 +stepp $alt2 +stereo $1 +stereotip $3 +stesicor $2 +stigmate $1 +stile $2 $alt +stilobate $2 +stilopoidei $5 +stipendi $alt +stobi $alt +stom $alt +stop $alt +stopp $alt2 +storm $alt2 +storn $alt2 +stranguria $3 +strapiomb $alt2 +strapotere $3 $alt2 +strenuo $alt +stres $alt +strettoia $alt2 +strof $alt +strolag $1 +stronzi $alt +style $2 +subacqueo $2 +subconsci $alt +suddiacon $2 +suddit $1 +sudest $2 +sudovest $alt +suffett $alt +sugher $1 +suicid $2 +suocer $1 +superfluo $2 +superior $alt2 +superstite $2 +suppost $alt2 +supremazia $4 +surrene $alt2 +svevia $alt +tabi $2 +tabu $2 +tachicardia $4 +tachimetr $2 +tacit $1 +taddei $2 +talam $1 +talia $2 +talled $2 +tallofite $2 +talor $alt2 +tamar $1 +tamerice $3 +tamigi $2 +tammar $1 +tanagr $1 +tanar $1 +tane $2 $alt +tanganic $3 +tantal $1 +tapir $1 +tarant $1 +tarantasia $3 +tardigradi $2 +tari $2 +tarpan $2 +tartar $1 +tartari $1 +tassametr $2 +tassi $2 +tata $2 +tatar $1 +tatari $1 +taurianov $alt +te $alt +tec $alt +technicolor $alt +teck $alt +tecl $alt +tecnic $alt +tecnocrazia $4 +tedofor $2 +teetet $alt +tegol $1 +tegu $2 +teista tE'ista +tel $alt2 +telecamer $3 +telef $1 +telefilm $3 +telefon $2 $alt +telegon $2 $alt +telegraf $2 $alt +telelavor $alt2 +telemac $alt +telemetr $2 $alt +telencefal $3 $alt +teletext $3 $alt +televideo $3 +temen $1 $alt +temi $alt +temistocle $2 +temnospondili $alt +temp $alt +tempe $alt +temper $1 $alt +tempi $alt +templ $alt +tempor $1 $alt +temporaneo $3 +tempr $alt +temu $2 +tenace $2 +tenebr $1 $alt +tened $1 $alt +tener $1 $alt +tenere $2 $alt2 +tenia $alt +tenue $alt +teocrazia $4 +teocrit $2 +teodosian $5 +teodot $2 +teofane $2 +teognide $alt +teogonia $4 +teol $2 +teoria $3 +teosofia $4 +tepanechi $alt +terapeut $3 +terapeuti $3 +terapeutic $3 +terapia $3 +terebr $1 +teres $alt +termocoppia $alt +termoelettric $alt +termogenesi $3 +termostat $2 +teroldeg $2 $alt +terranov $alt +terremot $alt +terren $alt2 +tertenia $3 +terzogenit $3 +teschi $alt +teser $1 +tesi $alt +tespi $alt +tesser $1 +tessere $alt +tessile $alt +testimone $alt +tetan $1 $alt +tetraedr $alt +tetrametr $2 +tetrapode $2 +tetrarchia $3 +tetti $alt +tettoia $alt2 +teucr $1 +teut $1 +teutoni $1 +thet $alt +thiesi $alt +tholos $alt2 +tiberiade $3 +tiburon $3 +tiepol $alt +tiglatpileser $alt +tigre $2 $alt +timpan $1 +tindari $1 +tinea $1 +tinian $2 +tintoria $3 +tirannia $3 +tirapiedi $alt +tiresia $2 $alt +tirol $2 +tisanotteri $alt +tisifone $2 +tobia $2 +tocc $alt2 +tocoferol $4 +tod $alt +todar $1 +tof $alt +tog $alt +told $alt +tolf $alt +tolmezz $alt +toltechi $alt +tolve $alt +tome $2 +tomi $alt +ton $alt +toni $alt +tonn $alt2 +top $alt +tora $2 +torace $2 +torb $alt2 +torbid $alt2 +torbole $alt2 +torchiarol $3 +tord $alt2 +tornabuoni $alt +torn $alt2 +tornarecci $alt +torni $alt2 +tornol $alt2 +torped $alt +tors $alt2 +tortor $1 $alt2 +tosse $alt2 +tot $alt +totan $1 +totem $alt +toto $2 $alt +totogol $3 +tournee $alt2 +trabea $1 +trabia $2 +tradott $alt2 +trafil $2 +trafor $alt2 +tragedia $alt +tragicommedia $alt +tramezz $alt +tramite $1 +tramoggia $alt +transcaucasia $4 +transett $alt +transit $1 +tranvia $2 +trapan $1 +trapezoedr $alt +trasbord $alt2 +trascors $alt2 +tratalias $3 +trattoria $3 +travesi $alt +trebaseleghe $3 $alt2 +tredicesim $alt +tredici $alt2 +tremezz $alt +tremil $2 +trentaduesim $alt +trentenni $alt +trentesim $alt +treppiede $alt +tres $alt +tresette $alt +tressette $alt +treveri $1 $alt +treves $alt +treviri $1 +trevisan $3 +triac $1 +triade $1 +triathlon $1 +tribu $2 +tricesim $alt +trichec $alt +triedr $alt +trienni $alt +trifogli $alt +trifor $1 +trigemin $2 +triglif $1 +trimer $1 +trimetr $1 +trinita $3 +trinitapoli $3 +triod $1 +trionf $alt2 +trior $alt2 +tripode $1 +tripoli $1 +tripost $alt2 +triscele $1 +trissin $1 +triton $1 +triumvir $2 +trivenet $2 $alt +troade $1 $alt +trombocitopenia $6 +trot $alt +trov $alt +trovarobe $alt +tuber $1 +tunisi $1 +turan $2 +turboalber $3 +turbofan $3 +turbogett $alt +turboventol $alt +turchia $2 +turgovia $alt +turold $alt +turpiloqui $alt +tuttavia $3 +tuttor $alt2 +tuttosport $3 +tutu $2 +uberta $3 +ubold $alt +ubriac $3 +ucronia $3 +ulcer $1 +ultra $2 +ultraterren $alt2 +unanime $2 +undicesim $alt +unison $2 +unita $3 +universita $5 +univoc $2 +uom $alt +uop $alt +uov $alt +upup $1 +uretere $3 +urzulei $3 +usbec $alt +usbechi $alt +usignol $3 +usini $1 +ussan $1 +ussegli $alt +ustascia $1 +utensile $3 +uter $1 +utopia $3 +vacuolo vak'uOlo +valbrevenn $alt2 +valdisott $alt2 +valdobbiadene $3 +valeria $2 +valgogli $alt +valigia $2 +vallecors $alt2 +vallecrosia $3 $alt +vallelong $alt +valleve $alt +valpanten $alt2 +valsassin $2 +valsecc $alt2 +valsesia $2 $alt +vandal $1 +vandali $1 +varen $alt2 +varenn $alt2 +varieta $4 +vate $2 +vazzol $2 +vecchia $alt +vedere $2 $alt2 +vedov $1 +vegli $alt +veicolo vE'ikolo +vel $alt2 +velen $alt2 +velletri $alt2 +velocipede $3 +velocita $4 +ven $alt2 +venaria $3 +venceslao $3 +vendit $1 +venerdi $3 +venere $alt +venet $1 $alt +veneti $1 $alt +ventenni $alt +ventesim $alt +venti $alt2 +ventiquattresim $alt +ventisette $alt +ventol $alt +ventre $alt +ventriloqui $alt +ventriloquo $2 +venusta $3 +vepre $alt +verace $2 +ver $alt2 +verde $alt2 +verg $alt2 +vergine $alt2 +verne $2 +vernice $2 +verolanuov $alt +veroli $1 +vertebr $1 +vertebre $1 +vertov $1 +verz $alt2 +verzegnis $alt +vescic $2 +vescov $1 +vescovile $3 +vesp $alt +vespasian $4 +vespr $alt +vestenanov $alt +veszprem $2 $alt2 +vet $alt +vetr $alt2 +vezzen $1 +viadott $alt2 +vibrafon $2 +video $1 +videoclip $4 +videotec $alt +vidigraf $2 +vigano $3 $alt +vignol $2 +vigonov $alt +villamassargia $4 +villaros $alt +villasimius $4 +villasor $3 +villaspecios $alt2 +villavallelong $alt +vinavil $3 +vincit $1 +vinea $1 +vinile $2 +vinov $alt +violacee $3 +violaceo $3 +viper $1 +virile $2 +visigoti $alt +visir $2 +visit $1 +vitoria $alt2 +vitreo $1 +vivace $2 +viveri $1 +vo $alt +vobbia $alt +vodk $alt +voglia $alt +voivod $alt +volere $2 $alt2 +volg $alt +voll $alt2 +volsci $alt +voltametr $2 +voltmetr $1 +voltri $alt2 +volv $alt +vomer $1 +vomit $1 +vosgi $alt +vot $alt +voti $alt +vudu $2 +vulture $1 +vuot $alt +wattor $alt2 +wilanow $3 +wuchereria $3 +xenia $3 +xenofobia $4 +xenoglossia $4 +xilem $alt +yahweh $2 +yaounde $4 +yod $alt +yog $alt +yogurt $alt +zagar $1 +zagarol $3 +zaira dza'i:Ra +zambesi $alt +zandobbi $alt +zane $2 $alt +zanobi $alt +zapotechi $alt +zarevic $alt +zebr $alt +zecc $alt2 +zeffir $1 $alt +zefir $1 +zelot $alt +zeng $alt +zenit $alt +zenobia $alt +zenzer $1 +zeppelin $1 $alt +zerfaliu $3 +zet $alt +zeugm $1 +zevi $alt +ziggurat $1 +zigote $alt +zigotteri $alt +zingar $1 +zingari $1 +zoccol $alt +zoe $alt +zon $alt +zoofilia $4 +zoppia $2 +zoppol $alt +zuccari $1 +zuccher $1 +zuccheri $1 +zulu $2 diff --git a/dictsource/it_rules b/dictsource/it_rules index 12ee599e..a5dc6c06 100644 --- a/dictsource/it_rules +++ b/dictsource/it_rules @@ -7,14 +7,17 @@ // K not a vowel (i.e. consonant or end-of-word) // Y front vowels: e i (& accents) .L01 a à o ò ó u ù +.L02 e é è + .group a - a a: - a (CK a - ai aI (K + a a + ai (K aI ao (_ aU + au a%u - &) a (_S1q a // lookup it_list without suffix + @C) a (_S1q a // lookup it_list without suffix + @i) a (_S1q a // lookup it_list without suffix @) a (cA_ =a @) a (che_ =a @@ -23,16 +26,20 @@ @) a (bile_ 'a @) a (ggine_ 'a - _) ae (ro aI + _) ae (r aI @) avano (_S5 'avano a (tterA_ 'a +.group à + à ''a + ài (K ''aI + ào (_ ''aU + àu ''a%u + .group b b b bb b: - li) be =be - .group c c k cc k: @@ -51,38 +58,63 @@ n) dere =deRe .group e - e e: - e (CK e - e (T E: // The word has $alt in it_list - e (CKT E // $alt - ei ej (K + e e + ei Ej (K + @C) e (_S1q e // lookup it_list without suffix + @Ar) e (_ e - e (r E: // ?? [E] before 'r' - e (rK E - e (rsi_N e + e (C_ E + e (A E + e (C%A_ E // doubled consonant + e (CiCA_ E + e (CulA_ E + e (llu E + e (st E + e (ttA_ e + c) e (ttA_ E + e (tti@ E + e (zzA_ e + + e (r E + e (rsi_N e + A) e (r_ 'E + + _r) e E - &) e (_S1q e // lookup it_list without suffix // @) e (ce_ =e @) e (ci_ =e - C) e (re_ =e - @) e (nte_ E - @m) e (nte_ e - @) e (nza_ E - @) e (volA_ 'e + e (l E + r) e (m E + e (monA_ 'e + e (nA_ E + g) e (ne E + e (ngA_ e + e (nCA_ E + @m) e (ntA_ e + %C) e (rA_ =E + C) e (re_ =E + gg) e (ro_ E + f) e (rm e @) e (rrimo_ 'E @) e (simo_ 'e + h) e (ss e + m) e (ss e + _sC) e (ss e + e (ssa_ e + e (tr E + e (ti E - @) evano(_S5 'evano + e (vi_ E + e (vo_ E + @) e (volA_ 'e + e (zA E - .group f f f - @A) f (ico_ =f - @A) f (ichA_ =f @A) f (ilo_ =f - @A) f (ero_ =f + A) f (ero_ =f .group g g g @@ -90,6 +122,8 @@ gh g g (Y dZ gi (L01 dZj + gi (a_ dZ'i + n) gi (a_ dZj gg (Y dZ: ggi (L01 dZ: @) gger (lo_ =dZ:eR @@ -100,55 +134,74 @@ gn n^ gu (A gw - @) g (ero_ =g - @) gno (lA_ n^'o - .group h h - ha h'a + _) ha h'a + _) hà h'a .group i - i i: - i (CK i + i i i (A j l) i (A %i r) i (A %i _C) i (a i + _C) i (à i i (o i i (ò i i (ó i @) ia (_ =i%a - @) io (_ =i%o + @) ià (_ i'a + X) ia (_ 'ia + af) ia (_ 'ia + fon) ia (_ 'ia + scop) ia (_ 'ia + er) ia (_ 'ia + gor) ia (_ 'ia + metr) ia (_ 'ia + t) ia (_ 'ia + @) io (_S1q =i%o a) i (+ j - e) i (+ j + à) i (+ j + L02) i (+ j o) i (+ j - &) i (_S1q i // lookup it_list without suffix + @C) i (_S1q i // lookup it_list without suffix - @) i (co_ =i - @) i (ci_ =i - @) i (dA_ =i - @) i (dere_ 'i - @) i (le_ =i - @) i (li_ =i - @) i (ma_ =i - r) i (ma_ i - laCr) i (ma_ =i - st) i (ma_ i - enz) i (ma_ i - @) i (mo_ =i - @) iera (_ i'E:Ra - @) iere (_ i'E:Re - @) i (ente_ i - @) i (ante_ i + @) i (Ante_ i + i (acA_ 'i + i (asi_ 'i @) i (bile_ 'i + @) i (cA_ =i + tr) i (ce_ i + @) i (chA_ =i + @) i (dA_ =i + @) i (dere_ 'i + @) ie (rA_ i'E + @) ié (rA_ i'E + @) iè (rA_ i'E + @) i (gA_ =i + i (genA_ 'i + c) i (lA_ =i + g) i (lA_ =i + ss) i (lA_ =i + b) i (le_ =i + m) i (le_ =i + i (lA_ =i + @) i (ma_ =i + r) i (ma_ i + laCr) i (ma_ =i + st) i (ma_ i + enz) i (ma_ i + @) i (mo_ =i + inas (_ 'inas + i (ne_ =i @) issima(_S6 'issima @) issime(_S6 'issime @) issimi(_S6 'issimi @) issimo(_S6 'issimo @) issero(_S6 'issero - @) i (sti 'i + p) i (te_ =i .group j @@ -165,43 +218,83 @@ .group m m m - A) mi (a m'i: - @) mi (co_ m'i: + A) mi (a_ m'i + .group n n n n (g N - n (ge n - n (gé n - n (gè n - n (gi n + n (gY n n (k N .group o - o o: - o (CK o - o (T O: // $alt - o (CKT O // $alt - oi oI (K + o o + oi O%I + oi (o_ o%I + oi (sCA_ o'i - o (r O: // ?? [O] before 'r' - o (rK O - o (re_ o + o (C%A_ O // doubled consonant + o (CACA_ O + o (Cr O + o (CC_ O - &) o (_S1q o // lookup it_list without suffix - @) o (ista_ o - @) o (ismo_ o - @) o (gnolo_ 'o - @) o (nzolo_ 'o - @) o (grafo_ 'O - @) o (fono_ 'O - @) o (metro_ 'O - @) o (logo_ 'O - o (str 'O + @C) o (_S1q o // lookup it_list without suffix + @i) o (_S1q o // lookup it_list without suffix + + i) o O + i) o (ne o + i) o (so_ o + + m) o (bile O + o (ca_ O + o (co_ O @) o (di_ =o @) o (do_ =o - @) o (lo_ =o + @) o (fono_ 'O + o (genA_ 'O + l) o (gico_ 'O + @) o (gnolo_ 'o + @) o (grafo_ 'O + o (lX O + nd) o (lA_ =O + ns) o (lA_ =O + CC) o (lA_ =O + u) o (lA_ O + v) o (lA_ =o + @) o (la_ O + gn) o (la_ O + o (li O + @) o (liA_ O + @) o (lo_ =O + i) o (lA_ O + ci) o (lA_ =O + @) o (logo_ 'O + c) o (ltA_ O + sc) o (ltA_ o + v) o (lt O + @) o (metro_ 'O + @) o (ma_ O + @) o (mo_ O + dr) o (mo_ =o + o (ni O + o (ni_ o + o (no_ O + @) o (nomo_ 'O + @) o (nzolo_ 'o + o (o O + o (polA_ 'O + sc) o (p O + o (r O + o (re_ o + f) o (rmA_ o + o (si_ O + o (ss O + Ar) o (ssA_ o + o (st O + o (stracA_ 'O + o (ttol O + o (zA O .group p @@ -239,11 +332,15 @@ s (t s s (x s sc (Y S - sci (L01 S + sci (A S + sci (i S%i + sci (ì S%i sch (Y sk sh (K S // foreign words K) sh S // foreign words - @) sia s'ia + @) sia z'ia + @C) sia s'ia + @) sià zi'a @) s (_S1 s .group t @@ -251,14 +348,15 @@ tt t: .group u - u u: - u (CK u + u u u (A w2 Kr) u (A u Kl) u (A u @) u (dine_ 'u @) u (colo_ 'u + u (ito_ 'u + @) u (lA_ =u .group v v v @@ -279,24 +377,26 @@ A) zz ts: _) z (i dz + _) z (ì dz + z (L01A dz .group - à 'a: - à (CK 'a - é 'e: - é (CK 'e - è 'E: - è (CK 'E - ì 'i: - ì (CK 'i - ó 'o: - ó (CK 'o - ò 'O: - ò (CK 'O - ù 'u: - ù (CK 'u + è ''E + èi (K ''Ej - $ dolla:ro + é ''e + éi (K ''eI + + ì ''i + ó ''o + ói ''o|I + + ò ''O + òi ''OI + + ù ''u + + $ dollaro , (D v'irgola ! _p'untoesklamat'ivo_ !) ! @@ -307,4 +407,4 @@ A_) - (_D _ C_) - (_D _ - § setsi'o:ne + § setsi'one diff --git a/phsource/compile_report b/phsource/compile_report index 04b98f34..4b2f2542 100644 --- a/phsource/compile_report +++ b/phsource/compile_report @@ -15,8 +15,8 @@ eo 13 115 jbo 4 116 fi 40 134 - fr 54 140 - fr_ca 11 140 + fr 55 141 + fr_ca 11 141 hi 60 149 ta 17 152 hu 23 119 @@ -71,31 +71,25 @@ b/b_ [b] base [b] hi [b] bn b/b@ [b] base - [b] fr [b] hi [b] bn b/b@2 [b] base [b] hi [b] bn b/ba [b] base - [b] fr [b] hi [b] bn b/be [b] base - [b] fr [b] hi [b] bn b/bi [b] base - [b] fr [b] hi [b;] ro [b] bn b/bo [b] base - [b] fr [b] hi [b] bn b/bu [b] base - [b] fr [b] hi [b] bn b/xb [b] base @@ -476,6 +470,7 @@ l/lo [(o)] base [wA] fr l/l_o [(o)] base [O] fr + [o] fr [O2] fr [o2] fr l^/l_rfx [l.] hi @@ -727,6 +722,7 @@ ufric/ll [L] base [l#] is ufric/s [s] base [s] fr + [z] fr [z2] fr [s] es [s#] pt @@ -1481,6 +1477,7 @@ vowel/@ [@] base [@] kn [@4] bn vowel/@- [@-] base + [@3] fr [r*] hr vowel/& [a] en_rp [&] fi @@ -2228,8 +2225,7 @@ vwl_fr/@R2 [R] fr_ca vwl_fr/@R3 [R] fr [r] fr [Q2] hy -vwl_fr/@R4 [R] fr - [r2] fr +vwl_fr/@R4 [r2] fr [Q2] hy vwl_fr/@R5 [r] fr [Q2] hy diff --git a/phsource/mbrola/fr1 b/phsource/mbrola/fr1 index 2456857c..9f702bc4 100644 --- a/phsource/mbrola/fr1 +++ b/phsource/mbrola/fr1 @@ -10,6 +10,7 @@ volume 15 0 ; NULL 0 NULL 0 g- NULL 0 NULL 0 @- NULL 0 NULL +0 @3 NULL 0 NULL 0 * NULL 0 R 0 : NULL 0 NULL @@ -83,3 +84,4 @@ volume 15 + diff --git a/phsource/ph_french b/phsource/ph_french index 04e0a340..cb24050f 100644 --- a/phsource/ph_french +++ b/phsource/ph_french @@ -10,7 +10,7 @@ endphoneme phoneme @ vowel starttype (@) endtype (@) - length 180 + length 190 formants vowel/@_hgh before l/ DFT+l/l_@ before (r) DFT+r/xr @@ -19,15 +19,24 @@ endphoneme phoneme @2 vowel starttype (@) endtype (@) - length 160 + length 170 formants vowel/@_fr before (r) DFT+r3/r_@ endphoneme +phoneme @3 // Mute at end of word + vowel nonsyllabic + starttype (@) endtype _ + formants vowel/@- + unstressed + length 40 +endphoneme + + phoneme a vowel starttype (a) endtype (a) - length 180 + length 200 formants vowel/a_6 after l l/la-15 before l/ DFT+l/l_a @@ -38,7 +47,7 @@ endphoneme phoneme a2 vowel starttype (a) endtype (a) - length 165 + length 190 formants vowel/a_6 after l l/la-15 before l/ DFT+l/l_a @@ -49,7 +58,7 @@ endphoneme phoneme e vowel starttype (e) endtype (e) - length 175 + length 190 formants vowel/e after l l/le-15 before l/ DFT-20+l/xl @@ -59,7 +68,7 @@ endphoneme phoneme E vowel starttype (e) endtype (e) - length 175 + length 190 formants vowel/e_mid after l l/le-15 before l/ DFT+l/l_e @@ -70,7 +79,7 @@ endphoneme phoneme E2 vowel starttype (e) endtype (e) - length 175 + length 190 formants vowel/e_mid after l l/le-15 before l/ DFT+l/l_e @@ -80,7 +89,7 @@ endphoneme phoneme i vowel starttype (i) endtype (i) - length 160 + length 170 formants vowel/i_3 linkout ; after l l/li-15 @@ -92,7 +101,7 @@ endphoneme phoneme i: // longer than i vowel starttype (i) endtype (i) - length 240 + length 250 formants vowel/i_3 linkout ; after l l/li-15 @@ -103,9 +112,10 @@ endphoneme phoneme o vowel starttype (o) endtype (o) - length 180 + length 190 formants vowel/o_3 after l l/lo-10 + before l/ DFT+l/l_o before (r) DFT+r/xr reduceto o2 1 endphoneme @@ -113,7 +123,7 @@ endphoneme phoneme o2 vowel starttype (o) endtype (o) - length 180 + length 190 formants vowel/o_2 after l l/lo-10 before l/ DFT+l/l_o @@ -123,7 +133,7 @@ endphoneme phoneme O vowel starttype (o) endtype (o) - length 170 + length 190 formants vowel/o_mid after l l/lo-10 before l/ DFT+l/l_o @@ -134,7 +144,7 @@ endphoneme phoneme O2 // Like O but no reduceto vowel starttype (o) endtype (o) - length 170 + length 190 formants vowel/o_mid after l l/lo-10 before l/ DFT+l/l_o @@ -144,7 +154,7 @@ endphoneme phoneme u vowel starttype (u) endtype (u) - length 175 + length 190 formants vowel/u_3 after l l/lu-20 before l/ DFT-20+l/l_u @@ -166,7 +176,7 @@ endphoneme phoneme y vowel starttype (u) endtype (u) - length 180 + length 190 formants vowel/y_2 after l l/lu-20 before l/ DFT-30+l/l_y @@ -177,7 +187,7 @@ endphoneme phoneme Y vowel starttype (@) endtype (@) - length 180 + length 190 formants vowel/y# after l l/l@-20 before l/ DFT-20+l/l_@ @@ -188,7 +198,7 @@ endphoneme phoneme W vowel starttype (@) endtype (@) - length 180 + length 200 formants vowel/@_5 after l l/l@-20 before l/ DFT-20+l/l_@ @@ -199,7 +209,7 @@ endphoneme phoneme W2 // same as W but don't reduce vowel starttype (@) endtype (@) - length 180 + length 200 formants vowel/@_3 after l l/l@-20 before l/ DFT-20+l/l_@ @@ -209,7 +219,7 @@ endphoneme phoneme wA vowel starttype (o) endtype (a) - length 220 + length 240 formants vwl_fr/w_a after l l/lo-10 before l/ DFT-10+l/l_a @@ -220,7 +230,7 @@ endphoneme phoneme w^i vowel starttype (u) endtype (i) - length 220 + length 240 formants vdiph/yi_fr after l l/lu-20 before l/ DFT+l/l_i @@ -230,7 +240,7 @@ endphoneme phoneme A~ vowel starttype (a) endtype (a) - length 190 + length 210 formants vnasal/aa_n2 before r/2 DFT+r/xr-40 before l/ DFT+l/l_a @@ -239,7 +249,7 @@ endphoneme phoneme E~ // same as W~ for fr-fr vowel starttype (e) endtype (e) - length 200 + length 210 formants vnasal/W_n before n2 DFT-100 endphoneme @@ -247,7 +257,7 @@ endphoneme phoneme O~ vowel starttype (o) endtype (o) - length 200 + length 210 formants vnasal/o_n3 // before n2 vowel/o_mid endphoneme @@ -255,7 +265,7 @@ endphoneme phoneme W~ vowel starttype (@) endtype (@) - length 204 + length 210 formants vnasal/W_n endphoneme @@ -302,17 +312,12 @@ endphoneme // uses the consonants in file "phonemes", unless overridden here phoneme b - vcd blb stop - vowelout f1=0 f2=1000 -500 -300 f3=-300 80 brk - formants b/b+x/b%80 + vcd blb frc + vowelin f1=2 f2=1000 -300 -200 f3=-100 100 + vowelout f1=0 f2=1000 -500 -300 f3=-100 60 len=50 + formants b/b+x/b%70 before _ b/b_+x/b_ - before (a) b/ba+x/b%30 - before (@) b/b@+x/b%50 - before (e) b/be+x/b%50 - before (i) b/bi+x/b%50 before l/ b/b_+x/b_ - before (o) b/bo+x/b%50 - before (u) b/bu+x/b%70 before R b/b_+x/b_ after _ NULL after @ b/xb%50 @@ -427,22 +432,22 @@ endphoneme phoneme r liquid rfx starttype (r) endtype (r) - vowelin f1=0 f2=1600 -300 300 f3=100 80 - vowelout f1=1 f2=1600 -300 300 f3=100 80 brk + vowelin f1=0 f2=1800 -200 200 f3=-200 80 + vowelout f1=1 f2=1800 -200 200 f3=-200 80 brk length 100 lengthmod 7 beforenotvowel r/2 formants vwl_fr/@R3+r3/rx%30 after @2 vwl_fr/@R5+r3/rx%40 - after (u) vwl_fr/@R5+r3/rx%30 after (e) vwl_fr/@R5+r3/rx%25 + after (u) vwl_fr/@R5+r3/rx%30 endphoneme phoneme r2 // silent unless followed by vowel liquid rfx starttype (r) endtype (r) - vowelin f1=0 f2=1000 -200 200 f3=-100 100 len=40 - vowelout f1=0 f2=1200 -200 200 f3=-100 100 len=20 + vowelin f1=0 f2=1000 -200 200 f3=-200 80 len=40 + vowelout f1=0 f2=1200 -200 200 f3=-200 80 len=20 length 100 lengthmod 7 beforenotvowel NULL @@ -451,19 +456,21 @@ endphoneme phoneme R // After consonnants - vcd frc - vowelin f1=0 f2=1600 -300 300 f3=100 80 + liquid starttype (r) endtype (r) + vowelin f1=0 f2=1800 -200 200 f3=-200 80 length 100 lengthmod 7 beforenotvowel r/2 - formants vwl_fr/@R3+r3/rx%20 - after t vwl_fr/@R4 + formants vwl_fr/@R3+r3/rx%30 + after b vwl_fr/@R3+r3/rx%60 + after p vwl_fr/@R3+r3/rx%60 + after t vwl_fr/@R3+r3/rx%60 endphoneme phoneme r/2 // variant of [r] when not preceding a vowel liquid - vowelout f1=2 f2=1600 -300 300 f3=100 80 brk + vowelout f1=2 f2=1800 -200 200 f3=-200 80 brk length 100 lengthmod 2 formants r3/r_2+r3/rx%20 @@ -488,8 +495,8 @@ endphoneme phoneme S vls pla frc sibilant - vowelin f1=0 f2=2100 100 300 f3=-100 80 - vowelout f1=0 f2=2100 100 300 f3=-100 80 + vowelin f1=0 f2=1900 100 300 f3=-100 80 + vowelout f1=0 f2=1900 100 300 f3=-100 80 length 100 lengthmod 3 wave ufric/sh%45 @@ -500,10 +507,10 @@ endphoneme phoneme t vls alv stop - vowelin f1=0 f2=1700 -100 100 f3=-100 80 - vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 + vowelin f1=0 f2=1600 -300 300 f3=-100 80 + vowelout f1=0 f2=1600 -300 250 f3=-100 80 brk lengthmod 2 - wave ustop/t_short%50 + wave ustop/t_short%40 before _ ustop/t_%40 before R ustop/t_short%50 before r/2 ustop/t_short%50 @@ -549,7 +556,7 @@ endphoneme phoneme z vcd alv frc sibilant vowelout f1=0 f2=1700 -300 300 f3=-100 60 len=50 - formants voc/z+ufric/s_%45 + formants voc/z+ufric/s%30 before _ voc/z_+ufric/s_%45 lengthmod 6 switchvoicing s @@ -579,3 +586,4 @@ endphoneme + diff --git a/phsource/ph_german b/phsource/ph_german index 0d1f3843..29e9ab50 100755 --- a/phsource/ph_german +++ b/phsource/ph_german @@ -85,7 +85,7 @@ endphoneme phoneme A: vowel starttype (a) endtype (a) - length 240 + length 250 formants vowel/aa_6 endphoneme diff --git a/src/dictionary.cpp b/src/dictionary.cpp index 0baeb246..a69d4d2e 100755 --- a/src/dictionary.cpp +++ b/src/dictionary.cpp @@ -696,7 +696,7 @@ static int Unpronouncable_en(Translator *tr, char *word) 0x00, 0x88, 0x22, 0x04, 0x00, 0x02, 0x00, 0x04, // 32 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x8a, 0x03, 0x00, 0x00, 0x40, 0x00, // 48 - 0x02, 0x00, 0x41, 0xca, 0x9b, 0x06, 0x20, 0x80, + 0x02, 0x00, 0x41, 0xca, 0xbb, 0x06, 0x20, 0x80, 0x91, 0x00, 0x00, 0x00, 0x00, 0x20, 0x08, 0x00, // 64 0x08, 0x20, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x22, 0x00, 0x01, 0x00, }; @@ -1408,7 +1408,7 @@ void SetWordStress(Translator *tr, char *output, unsigned int &dictionary_flags, stress = 3; /* use secondary stress for remaining syllables */ } else - if((vowel_stress[v-1] <= 1) && (vowel_stress[v+1] <= 1)) + if((vowel_stress[v-1] <= 1) && ((vowel_stress[v+1] <= 1) || ((stress == 4) && (vowel_stress[v+1] <= 2)))) { /* trochaic: give stress to vowel surrounded by unstressed vowels */ @@ -1558,7 +1558,7 @@ void SetWordStress(Translator *tr, char *output, unsigned int &dictionary_flags, max_stress = vowel_stress[v]; } - if((*p == phonLENGTHEN) && ((opt_length = tr->langopts.param[LOPT_IT_LENGTHEN]) != 0)) + if((*p == phonLENGTHEN) && ((opt_length = tr->langopts.param[LOPT_IT_LENGTHEN]) & 1)) { // remove lengthen indicator from non-stressed syllables int shorten=0; @@ -1576,13 +1576,20 @@ void SetWordStress(Translator *tr, char *output, unsigned int &dictionary_flags, shorten = 1; } - if(((opt_length & 0xf)==2) && (v != (vowel_count - 2))) - shorten = 1; // LANG=Italian, remove lengthen indicator from non-penultimate syllables - if(shorten) p++; } + if((v_stress >= 4) && (tr->langopts.param[LOPT_IT_LENGTHEN] == 2)) + { + // LANG=Italian, lengthen penultimate stressed vowels, unless followed by 2 consonants + if((v == (vowel_count - 2)) && (syllable_weight[v] == 0)) + { + *output++ = phcode; + phcode = phonLENGTHEN; + } + } + v++; } @@ -2193,7 +2200,7 @@ static void MatchRule(Translator *tr, char *word[], const char *group, char *rul case RULE_LETTERGP2: // match against a list of utf-8 strings letter_group = *rule++ - 'A'; - if((n_bytes = IsLetterGroup(tr, pre_ptr-letter_xbytes,letter_group,1)) >0) + if((n_bytes = IsLetterGroup(tr, pre_ptr,letter_group,1)) >0) { add_points = (20-distance_right); pre_ptr -= (n_bytes-1); @@ -2683,6 +2690,44 @@ int TranslateRules(Translator *tr, char *p_start, char *phonemes, int ph_size, c } /* end of TranslateRules */ +void ApplySpecialAttribute2(Translator *tr, char *phonemes, int dict_flags) +{//======================================================================== + // apply after the translation is complete + int ix; + int len; + char *p; + + len = strlen(phonemes); + + switch(tr->translator_name) + { + case L('i','t'): + for(ix=0; ix<(len-1); ix++) + { + if(phonemes[ix] == phonSTRESS_P) + { + p = &phonemes[ix+1]; + if((dict_flags & FLAG_ALT2_TRANS) != 0) + { + if(*p == PhonemeCode('E')) + *p = PhonemeCode('e'); + if(*p == PhonemeCode('O')) + *p = PhonemeCode('o'); + } + else + { + if(*p == PhonemeCode('e')) + *p = PhonemeCode('E'); + if(*p == PhonemeCode('o')) + *p = PhonemeCode('O'); + } + break; + } + } + break; + } +} // end of ApplySpecialAttribute2 + void ApplySpecialAttribute(Translator *tr, char *phonemes, int dict_flags) {//======================================================================= diff --git a/src/espeak.cpp b/src/espeak.cpp index 24884b5c..5bb4429e 100644 --- a/src/espeak.cpp +++ b/src/espeak.cpp @@ -658,5 +658,8 @@ int main (int argc, char **argv) } espeak_Synchronize(); + + if(f_phonemes_out != stdout) + fclose(f_phonemes_out); // needed for WinCE return(0); } diff --git a/src/espeakedit.cpp b/src/espeakedit.cpp index bbd907f0..e9f43eeb 100755 --- a/src/espeakedit.cpp +++ b/src/espeakedit.cpp @@ -204,6 +204,8 @@ BEGIN_EVENT_TABLE(MyFrame, wxMDIParentFrame) EVT_MENU(MENU_VOWELCHART3, MyFrame::OnTools) EVT_MENU(MENU_LEXICON_RU, MyFrame::OnTools) EVT_MENU(MENU_LEXICON_DE, MyFrame::OnTools) + EVT_MENU(MENU_LEXICON_IT, MyFrame::OnTools) + EVT_MENU(MENU_LEXICON_IT2, MyFrame::OnTools) EVT_MENU(MENU_TO_UTF8, MyFrame::OnTools) EVT_MENU(MENU_COUNT_WORDS, MyFrame::OnTools) EVT_MENU(MENU_TEST, MyFrame::OnTools) @@ -457,6 +459,8 @@ void MyFrame::OnTools(wxCommandEvent& event) case MENU_LEXICON_RU: case MENU_LEXICON_DE: + case MENU_LEXICON_IT: + case MENU_LEXICON_IT2: CompareLexicon(event.GetId()); // Compare a lexicon with _rules translation break; diff --git a/src/extras.cpp b/src/extras.cpp index 484b998b..2d7ad6f2 100644 --- a/src/extras.cpp +++ b/src/extras.cpp @@ -288,6 +288,315 @@ static void DecodePhonemes2(const char *inptr, char *outptr) } // end of DecodePhonemes2 +void Lexicon_It(int pass) +{//====================== + int count=0; + int matched=0; + int ix; + int c; + char *p; + int len; + int vowel_ix; + int stress_posn1; + int stress_posn2; + int stress_vowel1; + int stress_vowel2; + int use_phonemes; + FILE *f_in; + FILE *f_out; + FILE *f_listx; + FILE *f_list_in; + long int displ; + const char *alt_string; + char buf[200]; + char word[80]; + char word1[80]; + char word2[80]; + char word_stem[80]; + char temp[80]; + char phonemes[80]; + char phonemes2[80]; + char buf_out[120]; + WORD_TAB winfo; + static const char *vowels1 = "aeiou"; + static const char *vowels2 = "aeou"; + + static const char ex1[] = {'a',0xc3,0xac,0}; // aì + static const char ex2[] = {'e',0xc3,0xac,0}; // eì + static const char ex3[] = {0xc3,0xb9,'a',0}; // ùa + static const char ex4[] = {0xc3,0xb9,'e',0}; // ùe + static const char ex5[] = {0xc3,0xb9,'i',0}; // ùi + static const char ex6[] = {0xc3,0xb9,'o',0}; // ùo + static const char ex7[] = {'c',0xc3,0xac,'a',0}; // cìa + static const char ex8[] = {'c',0xc3,0xac,'o',0}; // cìo + static const char ex9[] = {'c',0xc3,0xac,'u',0}; // cìu + static const char ex10[] = {'g','l',0xc3,0xac,0}; // glì + + + static const char *exceptions[] = {ex1, ex2, ex3, ex4, ex5, ex6, ex7, ex8, ex9, ex10, NULL}; + + wxString fname = wxFileSelector(_T("Italian Lexicon"),path_dir1,_T(""),_T(""),_T("*"),wxOPEN); + + strcpy(buf,fname.mb_str(wxConvLocal)); + if((f_in = fopen(buf,"r")) == NULL) + { + wxLogError(_T("Can't read file ")+fname); + return; + } + path_dir1 = wxFileName(fname).GetPath(); + + if((f_out = fopen("compare_it","w")) == NULL) + { + wxLogError(_T("Can't write file: compare_it ")); + return; + } + + if(pass == 1) + { + sprintf(buf,"%s/it_listx",path_dsource); + remove(buf); + CompileDictionary(path_dsource,"it",NULL,NULL,0); + f_listx = fopen(buf,"w"); + } + else + { + sprintf(buf,"%s/it_listx2",path_dsource); + f_listx = fopen(buf,"w"); + sprintf(buf,"%s/it_listx",path_dsource); + if((f_list_in = fopen(buf,"r")) == NULL) + { + wxLogError(_T("Can't read file: it_listx")); + return; + } + } + if(f_listx == NULL) + { + wxLogError(_T("Can't write file: it_listx")); + return; + } + + + LoadVoice("it",0); + + while(!feof(f_in)) + { + count++; + + if(fgets(buf,sizeof(buf),f_in) == NULL) + break; + + if((p = strstr(buf,"//")) != NULL) + *p = 0; + + if((sscanf(buf,"%s %s",word,temp)) < 2) + continue; + + if(strlen(word) < 8) + sprintf(buf_out,"%s\t\t%s\t",word,temp); + else + sprintf(buf_out,"%s\t%s",word,temp); + + sprintf(word1," %s ",word); + + // should we remove a vowel ending to produce a stem ? + strcpy(word_stem, word); + len = strlen(word) - 1; + utf8_in(&c, temp); +// if(iswlower(c)) + { + if((word[len] == 'a') && (strchr(vowels1, word[len-1]) == NULL)) + word_stem[len] = 0; + else + if((word[len] == 'o') && (strchr(vowels2, word[len-1]) == NULL)) + word_stem[len] = 0; + } + + // convert word to lower-case + word2[0] = ' '; + for(ix=0, p=&word2[1];;) + { + ix += utf8_in(&c,&temp[ix]); + c = towlower(c); + p += utf8_out(c,p); + if(c == 0) + break; + } + strcat(word2," "); + + use_phonemes = 0; + for(ix=0; ; ix++) + { + if(exceptions[ix] == NULL) + break; + + if(strstr(word2, exceptions[ix]) != NULL) + { + // the word contains a string for which we must do a complete phoneme translation + use_phonemes = 1; + strcpy(word_stem, word); + break; + } + } + // translate + memset(&winfo,0,sizeof(winfo)); + TranslateWord(translator,&word1[1],0,&winfo); + DecodePhonemes(word_phonemes,phonemes); + + stress_posn1 = 0; + stress_posn2 = 0; + stress_vowel1 = 0; + stress_vowel2 = 0; + + vowel_ix = 1; + for(ix=0; ;ix++) + { + if((c = word_phonemes[ix]) == 0) + break; + if(c == phonSTRESS_P) + { + stress_posn1 = vowel_ix; + stress_vowel1 = word_phonemes[ix+1]; + } + + if((c != phonSCHWA_SHORT) && (phoneme_tab[c]->type == phVOWEL)) + vowel_ix++; + } + + memset(&winfo,0,sizeof(winfo)); + TranslateWord(translator,&word2[1],0,&winfo); + DecodePhonemes(word_phonemes,phonemes2); + + vowel_ix = 1; + for(ix=0; ;ix++) + { + if((c = word_phonemes[ix]) == 0) + break; + if(c == phonSTRESS_P) + { + stress_posn2 = vowel_ix; + stress_vowel2 = word_phonemes[ix+1]; + } + + if((c != phonSCHWA_SHORT) && (phoneme_tab[c]->type == phVOWEL)) + vowel_ix++; + } + + if(stress_posn2 == (vowel_ix-1)) + { + // stress is on the final vowel, don't renove it + strcpy(word_stem, word); + } + + if(pass == 1) + { + if(use_phonemes) + { + fprintf(f_listx,"%s ", word_stem); + for(p = phonemes2; *p != 0; p++) + { + if(*p != ',') + fputc(*p, f_listx); // omit secondary stress marks + } + fputc('\n',f_listx); + + } + else + if((stress_posn1 != stress_posn2) && (stress_posn1 > 0) && (stress_posn2 > 0)) + { + fprintf(f_listx,"%s $%d\n", word_stem, stress_posn2); + } + } + + // reduce [E] and [O] to [e] and [o] if not stressed + for(ix=0; phonemes[ix] != 0; ix++) + { + if((phonemes[ix] == 'E') || (phonemes[ix] == 'O')) + { + if((pass == 2) || (ix==0) || (phonemes[ix-1] != '\'')) + phonemes[ix] = tolower(phonemes[ix]); + } + } + + for(ix=0; phonemes2[ix] != 0; ix++) + { + if((phonemes2[ix] == 'E') || (phonemes2[ix] == 'O')) + { + if((pass == 2) || (ix==0) || (phonemes2[ix-1] != '\'')) + phonemes2[ix] = tolower(phonemes2[ix]); + } + } + + if(strcmp(phonemes,phonemes2) == 0) + { + alt_string = NULL; + if((pass == 2) && (stress_posn1 > 0) && (stress_posn2 > 0)) + { + if(((stress_vowel1 == PhonemeCode('E')) && (stress_vowel2 == PhonemeCode('e'))) || + ((stress_vowel1 == PhonemeCode('O')) && (stress_vowel2 == PhonemeCode('o')))) + { + alt_string = " $alt2"; + } + else + if(((stress_vowel1 == PhonemeCode('e')) && (stress_vowel2 == PhonemeCode('E'))) || + ((stress_vowel1 == PhonemeCode('o')) && (stress_vowel2 == PhonemeCode('O')))) + { + alt_string = " $alt"; + } + + if(alt_string != NULL) + { + while(!feof(f_list_in)) + { + displ = ftell(f_list_in); + if(fgets(buf, sizeof(buf), f_list_in) == NULL) + break; + + sscanf(buf, "%s", word1); + if(strcmp(word1, word_stem) < 0) + { + fprintf(f_listx,"%s",buf); // copy it_listx from pass 1 until we reach the matching word + } + else + if(strcmp(word1, word_stem) == 0) + { + p = buf; + while((*p != '\n') && (*p != 0)) *p++; + *p = 0; + fprintf(f_listx,"%s %s\n",buf,alt_string); // add $alt or $alt2 to the entry + break; + } + else + { + fprintf(f_listx,"%s %s\n", word_stem, alt_string); // add a new word with $alt or $alt2 + fseek(f_list_in, displ, SEEK_SET); + break; + } + } + } + } + matched++; + } + else + { + fprintf(f_out,"%s\t%s\t%s\n",buf_out,phonemes,phonemes2); + } + } + + if(pass == 2) + { + while(fgets(buf, sizeof(buf), f_list_in) != NULL) + { + fprintf(f_listx, "%s", buf); // copy the remaining entries from pass 1 + } + fclose(f_list_in); + } + fclose(f_in); + fclose(f_out); + fclose(f_listx); + wxLogStatus(_T("Completed, equal=%d different=%d"),matched,count-matched); +} + + void Lexicon_De() {//============== // Compare eSpeak's translation of German words with a pronunciation lexicon @@ -766,6 +1075,12 @@ void CompareLexicon(int id) case MENU_LEXICON_DE: Lexicon_De(); break; + case MENU_LEXICON_IT: + Lexicon_It(1); + break; + case MENU_LEXICON_IT2: + Lexicon_It(2); + break; } } // end of CompareLexicon diff --git a/src/klatt.cpp b/src/klatt.cpp index da0baaa0..9f73a8f0 100644 --- a/src/klatt.cpp +++ b/src/klatt.cpp @@ -1087,9 +1087,9 @@ void SetSynth_Klatt(int length, int modn, frame_t *fr1, frame_t *fr2, voice_t *v if(wvoice != NULL) { - if((wvoice->klatt[0] > 0) && (wvoice->klatt[0] <=3 )) + if((wvoice->klattv[0] > 0) && (wvoice->klattv[0] <=3 )) { - kt_globals.glsource = wvoice->klatt[0]; + kt_globals.glsource = wvoice->klattv[0]; kt_globals.scale_wav = scale_wav_tab[kt_globals.glsource]; } kt_globals.f0_flutter = wvoice->flutter/32; @@ -1167,7 +1167,7 @@ void SetSynth_Klatt(int length, int modn, frame_t *fr1, frame_t *fr2, voice_t *v klattp_inc[ix] = double((fr2->klattp[ix] - klattp[ix]) * STEPSIZE)/length; if((ix>0) && (ix < KLATT_AVp)) - klattp1[ix] = klattp[ix] = (klattp[ix] + wvoice->klatt[ix]); + klattp1[ix] = klattp[ix] = (klattp[ix] + wvoice->klattv[ix]); } nsamples = length; diff --git a/src/main.h b/src/main.h index 74a76cfe..d2308bf8 100755 --- a/src/main.h +++ b/src/main.h @@ -153,6 +153,8 @@ enum { MENU_LEXICON, MENU_LEXICON_RU, MENU_LEXICON_DE, + MENU_LEXICON_IT, + MENU_LEXICON_IT2, MENU_TO_UTF8, MENU_COUNT_WORDS, MENU_TEST, diff --git a/src/menus.cpp b/src/menus.cpp index b3e954fb..68d7fe48 100755 --- a/src/menus.cpp +++ b/src/menus.cpp @@ -111,6 +111,8 @@ wxMenuBar *MakeMenu(int type) lexicon_menu = new wxMenu; lexicon_menu->Append(MENU_LEXICON_RU, _("Russian (lexicon.dict)")); lexicon_menu->Append(MENU_LEXICON_DE, _("German")); + lexicon_menu->Append(MENU_LEXICON_IT, _("Italian")); + lexicon_menu->Append(MENU_LEXICON_IT2, _("Italian, pass 2")); tools_menu = new wxMenu; tools_menu->Append(MENU_VOWELCHART, _("Make &Vowels Chart"), vowelchart_menu); diff --git a/src/readclause.cpp b/src/readclause.cpp index 2370ca77..8765d724 100644 --- a/src/readclause.cpp +++ b/src/readclause.cpp @@ -306,6 +306,8 @@ const wchar_t *wcschr(const wchar_t *str, int c) return(NULL); } +#ifndef WINCE +// wcslen() is provided by WINCE, but not the other wchar functions const int wcslen(const wchar_t *str) { int ix=0; @@ -316,6 +318,7 @@ const int wcslen(const wchar_t *str) } return(ix); } +#endif float wcstod(const wchar_t *str, wchar_t **tailptr) { diff --git a/src/speak.cpp b/src/speak.cpp index ef91f1fb..0b908864 100755 --- a/src/speak.cpp +++ b/src/speak.cpp @@ -883,5 +883,8 @@ int main (int argc, char **argv) fprintf(stderr,"-w option must be used because the program was built without a sound interface\n"); #endif // USE_PORTAUDIO } + + if((f_trans != stdout) && (f_trans != stderr)) + fclose(f_trans); // needed for WinCe return(0); } diff --git a/src/synthdata.cpp b/src/synthdata.cpp index d4a7e830..fa835268 100755 --- a/src/synthdata.cpp +++ b/src/synthdata.cpp @@ -35,7 +35,7 @@ #include "translate.h" #include "wave.h" -const char *version_string = "1.40.11 13.Mar.09"; +const char *version_string = "1.40.13 5.Apr.09"; const int version_phdata = 0x014000; int option_device_number = -1; diff --git a/src/synthesize.h b/src/synthesize.h index 79de3a91..d13466b7 100755 --- a/src/synthesize.h +++ b/src/synthesize.h @@ -101,7 +101,7 @@ typedef struct { unsigned char klattp[N_KLATTP]; } frame_t; -typedef struct { +typedef struct { // 43 bytes short frflags; unsigned char length; unsigned char rms; @@ -112,6 +112,19 @@ typedef struct { } frame_t2; // the original, without Klatt additions, used for file "phondata" +typedef struct { // 44 bytes + short frflags; + short ffreq[7]; + unsigned char length; + unsigned char rms; + unsigned char fheight[8]; + unsigned char fwidth[6]; // width/4 f0-5 + unsigned char fright[3]; // width/4 f0-2 + unsigned char bw[4]; // Klatt bandwidth BNZ, f1,f2,f3 + unsigned char klattp[5]; // AV, FNZ, Tilt, spare, spare (Aspr, Skew ?) +} frame_t3; // TESTING + + // formant data used by wavegen typedef struct { diff --git a/src/tr_languages.cpp b/src/tr_languages.cpp index 5feefe4c..f254d26b 100644 --- a/src/tr_languages.cpp +++ b/src/tr_languages.cpp @@ -325,7 +325,7 @@ Translator *SelectTranslator(const char *name) case L('d','e'): { - static const short stress_lengths_de[8] = {150,130, 190,190, 0, 0, 260,275}; + static const short stress_lengths_de[8] = {150,130, 200,200, 0, 0, 260,275}; tr->langopts.stress_rule = 0; tr->langopts.word_gap = 0x8; // don't use linking phonemes tr->langopts.vowel_pause = 0x30; @@ -636,6 +636,7 @@ SetLengthMods(tr,3); // all equal tr->langopts.length_mods0 = tr->langopts.length_mods; // don't lengthen vowels in the last syllable tr->langopts.stress_rule = 2; + tr->langopts.stress_flags = 0x10 | 0x20000; tr->langopts.vowel_pause = 1; tr->langopts.unstressed_wd1 = 2; tr->langopts.unstressed_wd2 = 2; @@ -643,22 +644,24 @@ SetLengthMods(tr,3); // all equal tr->langopts.param[LOPT_IT_DOUBLING] = 2; // double the first consonant if the previous word ends in a stressed vowel tr->langopts.param[LOPT_SONORANT_MIN] = 130; // limit the shortening of sonorants before short vowels tr->langopts.param[LOPT_REDUCE] = 1; // reduce vowels even if phonemes are specified in it_list + tr->langopts.param[LOPT_ALT] = 2; // call ApplySpecialAttributes2() if a word has $alt or $alt2 tr->langopts.numbers = 0x2709 + NUM_ROMAN; tr->langopts.accents = 2; // Say "Capital" after the letter. + SetLetterVowel(tr,'y'); } break; case L_jbo: // Lojban { static const short stress_lengths_jbo[8] = {145,145, 170,160, 0,0, 330,350}; - static const wchar_t jbo_punct_within_word[] = {'.',',','\'',0x2c8,0}; // allow period and comma within a word, also stress marker (from LOPT_SYLLABLE_CAPS) + static const wchar_t jbo_punct_within_word[] = {'.',',','\'',0x2c8,0}; // allow period and comma within a word, also stress marker (from LOPT_CAPS_IN_WORD) SetupTranslator(tr,stress_lengths_jbo,NULL); tr->langopts.stress_rule = 2; tr->langopts.vowel_pause = 0x20c; // pause before a word which starts with a vowel, or after a word which ends in a consonant // tr->langopts.word_gap = 1; tr->punct_within_word = jbo_punct_within_word; - tr->langopts.param[LOPT_SYLLABLE_CAPS] = 1; // capitals indicate stressed syllables + tr->langopts.param[LOPT_CAPS_IN_WORD] = 2; // capitals indicate stressed syllables SetLetterVowel(tr,'y'); } break; diff --git a/src/translate.cpp b/src/translate.cpp index 0f8d42b3..2b7c1a1e 100755 --- a/src/translate.cpp +++ b/src/translate.cpp @@ -1203,6 +1203,11 @@ strcpy(phonemes2,phonemes); dictionary_flags[0] |= FLAG_DOT; } + if((tr->langopts.param[LOPT_ALT] & 2) && ((dictionary_flags[0] & (FLAG_ALT_TRANS | FLAG_ALT2_TRANS)) != 0)) + { + ApplySpecialAttribute2(tr,word_phonemes,dictionary_flags[0]); + } + return(dictionary_flags[0]); } // end of TranslateWord @@ -1508,7 +1513,7 @@ static int TranslateWord2(Translator *tr, char *word, WORD_TAB *wtab, int pre_pa if(pre_pause < 1) pre_pause = 1; } - if((flags & FLAG_PREPAUSE) && (tr->prepause_timeout == 0)) + if((flags & FLAG_PREPAUSE) && ((word_flags && FLAG_LAST_WORD) == 0) && (tr->prepause_timeout == 0)) { // the word is marked in the dictionary list with $pause if(pre_pause < 4) pre_pause = 4; @@ -2296,9 +2301,9 @@ if((c == '/') && (tr->langopts.testing & 2) && IsDigit09(next_in) && IsAlpha(pre { c = towlower2(c); - if(tr->langopts.param[LOPT_SYLLABLE_CAPS]) + if((j = tr->langopts.param[LOPT_CAPS_IN_WORD]) > 0) { - if(syllable_marked == 0) + if((j == 2) && (syllable_marked == 0)) { char_inserted = c; c = 0x2c8; // stress marker diff --git a/src/translate.h b/src/translate.h index 2ae58d8a..fb048844 100755 --- a/src/translate.h +++ b/src/translate.h @@ -240,7 +240,7 @@ extern const int param_defaults[N_SPEECH_PARAM]; -#define N_LOPTS 15 +#define N_LOPTS 16 #define LOPT_DIERESES 1 // 1=remove [:] from unstressed syllables, 2= remove from unstressed or non-penultimate syllables // bit 4=0, if stress < 4, bit 4=1, if not the highest stress in the word @@ -283,13 +283,16 @@ extern const int param_defaults[N_SPEECH_PARAM]; // change [t] when followed by unstressed vowel #define LOPT_REDUCE_T 12 - // stressed syllable is indicated by capitals -#define LOPT_SYLLABLE_CAPS 13 + // 1 = allow capitals inside a word + // 2 = stressed syllable is indicated by capitals +#define LOPT_CAPS_IN_WORD 13 // bit 0=Italian "syntactic doubling" of consoants in the word after a word marked with $double attribute // bit 1=also after a word which ends with a stressed vowel #define LOPT_IT_DOUBLING 14 + // Call ApplySpecialAttributes() if $alt or $alt2 is set for a word +#define LOPT_ALT 15 typedef struct { @@ -562,6 +565,7 @@ int LookupDictList(Translator *tr, char **wordptr, char *ph_out, unsigned int *f void MakePhonemeList(Translator *tr, int post_pause, int new_sentence); int ChangePhonemes_ru(Translator *tr, PHONEME_LIST2 *phlist, int n_ph, int index, PHONEME_TAB *ph, CHANGEPH *ch); void ApplySpecialAttribute(Translator *tr, char *phonemes, int dict_flags); +void ApplySpecialAttribute2(Translator *tr, char *phonemes, int dict_flags); void AppendPhonemes(Translator *tr, char *string, int size, const char *ph); void CalcLengths(Translator *tr); diff --git a/src/transldlg.cpp b/src/transldlg.cpp index 7f590197..899fc4bc 100755 --- a/src/transldlg.cpp +++ b/src/transldlg.cpp @@ -454,7 +454,8 @@ void TranslDlg::OnCommand(wxCommandEvent& event) t_phonetic->AppendText(wxString(buf,wxConvUTF8)); } t_phonetic->AppendText(_T("---\n")); - fclose(f_trans); + if(f_trans != NULL) + fclose(f_trans); remove(fname_temp); } t_phonetic->AppendText(wxString(phon_out,wxConvLocal)); diff --git a/src/voice.h b/src/voice.h index 2f647c6b..ab69fa12 100644 --- a/src/voice.h +++ b/src/voice.h @@ -40,7 +40,7 @@ typedef struct { int formant_factor; // adjust nominal formant frequencies by this because of the voice's pitch (256ths) int consonant_amp; // amplitude of unvoiced consonants int consonant_ampv; // amplitude of the noise component of voiced consonants - int klatt[8]; + int klattv[8]; // parameters used by Wavegen short freq[N_PEAKS]; // 100% = 256 diff --git a/src/voices.cpp b/src/voices.cpp index 3e16347e..65b564d0 100755 --- a/src/voices.cpp +++ b/src/voices.cpp @@ -387,7 +387,7 @@ void VoiceReset(int tone_only) voice->voicing = 64; voice->consonant_amp = 100; voice->consonant_ampv = 100; - memset(voice->klatt,0,sizeof(voice->klatt)); + memset(voice->klattv,0,sizeof(voice->klattv)); memset(speed.fast_settings,0,sizeof(speed.fast_settings)); #ifdef PLATFORM_RISCOS @@ -880,8 +880,8 @@ voice_t *LoadVoice(const char *vname, int control) break; case V_KLATT: - Read8Numbers(p,voice->klatt); - voice->klatt[KLATT_Kopen] -= 40; + Read8Numbers(p,voice->klattv); + voice->klattv[KLATT_Kopen] -= 40; break; case V_FAST: @@ -1562,7 +1562,7 @@ static void GetVoices(const char *path) DIR *dir; struct dirent *ent; - if((dir = opendir(path)) == NULL) + if((dir = opendir((char *)path)) == NULL) // note: (char *) is needed for WINCE return; while((ent = readdir(dir)) != NULL)