diff --git a/dictsource/af_list b/dictsource/af_list index e0a4f7e7..f5d10faa 100755 --- a/dictsource/af_list +++ b/dictsource/af_list @@ -11,12 +11,29 @@ // abbreviations (http ://) hA:te@te@p'e@_ +bpk b@p&rk +bv beIf'o@rbe@lt $dot +dr d'Okt@r $dot e.a _:En_'and@r -sabc Es_A:be@s'e@ +edms eI@ndOms +ens Enso@fo@rts $dot +insp InspEkt'Y@r $dot +isbn $abbrev +kapt kapt'eIn $dot +mnr mIn'e@r $dot +mej m@jWfr@U $dot +mev m@fr@U $dot +pres pr@s@d'Ent $dot +prof pruf'Es@r $dot +sabc $abbrev +sanrb $abbrev +st s@nt $dot +supt suprEntEnd'Ent $dot + // letter names // any letter which also appear as words should be prefixed by a _ here -a A: +_a A: b be@ c se@ d de@ @@ -42,24 +59,24 @@ w ve@ x Eks y eI z zEd -à x2raf'Is?A: -á ak'yt?A: -ä de@lte@k@n?A: -è x2raf'Is?e@: -é ak'yt?e@: -ê kapi?e@: -ë de@lte@k@n?e@: -ì x2raf'Is?i -í ak'yt?i -ï de@lte@k@n?i -ò x2raf'Is?o@ -ó ak'yt?o@ -ô kapi?o@ -ö de@lte@k@n?o@ -ù x2raf'Is?y -ú ak'yt?y -û kapi?y -ü de@lte@k@n?y +à $accent $atend +á $accent +ä $accent +è $accent +é $accent +ê $accent +ë $accent +ì $accent +í $accent +ï $accent +ò $accent +ó $accent +ô $accent +ö $accent +ù $accent +ú $accent +û $accent +ü $accent _cap h'o@flEt@r @@ -70,12 +87,12 @@ _?A l'Et@r _lig d'Wb@llEt@r _acu ak'yt _ac2 d'Wb@lakyt -_brv br'i:v -_ced s'e@dIla +_brv k'Orte@k@n +_ced s@dIla _cir k'api _dia d'e@lte@k@n _dot p'Wnt -_grv x2r'afIs +_grv x2raf'Is _hac k'A:rOn _mcn m'akrOn _ogo o@x2o@n,&k @@ -180,6 +197,7 @@ portugal $1 potchefstroom pOtSIfstr'o@m pretoria prit'o@ria robertson _^_EN +singapoer siNgapur stellenbosch st%&l@mbOs swellendam $3 tunisië $2 @@ -512,21 +530,7 @@ dis $u // phrase with words spoken together (nie waar nie) n,i||v,A:r||n'i - - -// abbreviations - -mnr mIn'e@r $dot -mej m@jWfr@U $dot -mev m@fr@U $dot -dr d'Okt@r $dot -insp InspEkt'Y@r $dot -kapt kapt'eIn $dot -prof pruf'Es@r $dot -st s@nt $dot -supt suprEntEnd'Ent $dot -pres pr@s@d'Ent $dot -bv beIf'o@rbe@lt $dot +(à la carte) a||la||k'art diff --git a/dictsource/af_rules b/dictsource/af_rules index 595e356c..ebc12c90 100755 --- a/dictsource/af_rules +++ b/dictsource/af_rules @@ -106,7 +106,7 @@ _k) a (nA %a //kanon and others ane (mo %an@ // fix stress and vowel sounds: anemoon/anemone - apart ap'art + apart %apart // fix stress: (bus-/klein)apartheid _) a (po %a // apollo/apostel apolog (A %ap%Ol%ux2 // fix stress and vowel sounds: apologie/apologeer/-gering/-geties/-getika/-geet/-gete aposto (lie %ap@sto@ // fix stress and vowel sounds: apostolies/-e @@ -221,6 +221,7 @@ asem A:s@m // asemgehaal/asemhaling/asemteug/ontwaseming _) as (ke %as // move default stress: askeet/askete/asketies/askese a (spersie %a // move default stress: aspersie and compounds + _) aspi (rA %asp%i // move default stress: aspirant/-e and compounds assist %as@st // assistent/e/assisteer r) assis (K %asIs // rassis/-te/-ties/-me atel (jee %at@L // fix vowel sounds and stress: ateljee and compounds @@ -332,6 +333,7 @@ band (e band // fix d sound: bandeverkoper moterbande etc. band (iet b%and // fix stress and d sound: bandiet/-e and compounds ba (nier b%a // move default stress: banier/-e and compounds + ban (ket b%aN // move default stress: banket/-te/-saal, etc. ban (krot b%aN // move default stress: bankrot and derivitives @) ba (ren b'A: // onrusbarend/opsienbarend and derivitives ba (ret b%a // move default stress and shorten a sound: baret/-te @@ -605,11 +607,13 @@ deur (lop@ d%y@r // move default stress: deurlopend/-e deur (lugt d%y@r // move default stress: deurlugtig/-e/-heid deur (priem d%Y@r // move default stress: deurpriem/-de + deur (reis d%Y@r // move default stress: deurreis deur (sigt d%y@r // move default stress: deursigtig/-e deur (skynA d%Y@r // move default stress: deurskynend/-e deur (skynde d%Y@r // move default stress: deurskynde deur (soek d%Y@r // move default stress: deursoek/-ing deurspek d%y@rspEk // fix stress and 2nd e: deurspek/-te + deur (waaid d%Y@r // move default stress: deurwaaid/-e deur (weeC d%y@r // move default stress: deurweef/deurweek/-te deur (winter d%y@r // move default stress: deurwinter/-de dia (C d%i%a // diabeet/diafragma/diagnose/dialek/dialoog/diamant @@ -655,6 +659,7 @@ digers d@x2@rs departe (ment d@p%art@ deposito d@pOsitu // stress and vowel sounds: deposito and compounds + depot (_ dEp%u // fix vowel sounds, drop t: (bus-/goedere)depot/-s, etc. detail d'i:teIl di (ssi d@ // move default stress: dissipel/-s dissi (pl d@s@ // fix stress: dissipline/-s and compounds @@ -687,6 +692,7 @@ @n) d (ete_ t // aandete/oggendete @) d (eteC_ t // aand-/oggendetes/grondeter djie ci // bokbaardjie/bordjie/boordjie/perdjie/tydjie + doeane d%uA:n@ // fix stress and e sound: doeane(-beampte/-gelde/-kantoor...) @) d (r d // but oordrewe/oordrom san) d (r t // fix d sound: sandrif/-randjie/-rivier/-ruiter han) d (r t // fix d sound: handreiking/-reling/-rug @@ -699,6 +705,7 @@ @) d (rose_ t // fix d sound: maand-/strand-/veldrose @) d (rosie t // fix d sound: maand-/strand-/veldrosie/-s @) d (t // drop d: breedte/handtekening/rondte/rondtrek... + du (et d%u:w // fix stress and -ue-sound: (klavier)duet/-te, etc. @n) d (uit t_ // fix d sound and insert short break: enduit/handuit and similar @) dwes tv'Es // noordwes/te/lik/e suidwes/te/lik/e @) dwese tve@s@ // leedwese/vakbondwese @@ -715,10 +722,12 @@ CAC) e (C% E // beesfilette/nougesette/onderbesette/voortgesette CACp) e (rl @ // fix e sound: werperligte/wimperloos CAC) e (rr @ // fix e sound: koperring/-rooi/nederryn/somerreën/-rok/superrealis/syferrekenaar... + @C) e (reekK @ // fix e sound: duine-/rotsereeks aai) e (rC @ // fix e sound: baaierd/waaierstert/compounds starting with baaiers- bloup) ers &:rs // fix e sound: bloupers treil) e (rC @ // fix e sound: (vis)treilerkaptein/-wrak and similar compounds dehands) e (C@ @ // fix e sound: tweedehandsemotorhandelaar/-winkel, etc. + goeder) e (@ @ // fix e sound: goederekapitaal/-kantoor/-loods/-mark/-omset/-reg hond) e (@ @_ // fix e sound: hondebloed/-oor/-trou, etc. kod) e (C @ // fix e sound: kodenommer/kodetaal/kodewoord, etc. Cond) e (CA @ // blondekop/geskondenes/hondebelasting and many compounds/sondebok/sondelas @@ -758,6 +767,7 @@ _) epi (C %Ep%i //episode and others halw) e (K @ // fix e sound: halwemaan/halwerweë/halwes liefd) e (C @ // fix e in compounds starting with liefde: -blyk/-daad/-diens/-gawe/-groete/-werk, etc. + @C) edans @dA~ns // fix e sound: elwe-/klompe-/volkspele-/windedans/-e/-er mal) e (dy @ // fix e sound: vermaledy/-de and other derivitives sp) e (d @ // ekspedisie/gaspedaal/kwispedoor gev) e (gK & // fix e sound in compounds like buitegevegstelling/skietgevegte @@ -899,7 +909,8 @@ @C) eny (_ @n'eI // words ending in eny have stress on y d) e (fi E  &w) e (f @ // fix e sound: wolwefluite/krewefuik - C) e (kant @ // buitekant/noordekant + C) e (kant+ @ // buitekant/noordekant/landsekant/gladdekantvyl/hawekantoor + @C) e (kodeK @ // fix e sound: kudde-/module-/morsekode/-s ee e@ eetjie e@ici // tweetjies/hanetreetjie eedjie e@ici // kleedjie/tafelkleedjie/altaarkleedjie @@ -1411,10 +1422,12 @@ hemel he@m@l // hemelblou/hemelhoog and many compounds with hemel @) he (nK hE // fix e sound: broeihen/-ne/huishen, etc. _) her (@P3 h%&r + _oor) her (C h&r // fix stress: oorherhaalde/oorhersiene and similar heral (d h%&ral // eliminate short pause: heraldies/-e heral (diek h%&r%al // fix stress: heraldiek _) her (beCP3 h'&r // stress on her-: herbenoem/herbevestig, etc. her (berg h&r // restore default stress: herberg/-e + herberg (i h%&rb%&rx2 // move stress to end: herbergier/herbergin herberg (sa@ h%&rb&rx2 // fix stress: (on)herbergsaam/herbergsame herder h'&rd@r her (eK he@r // here/herehuis/heretjie @@ -2008,6 +2021,7 @@ lobola l%ObO:la // fix stress and vowel sounds: lobola and compounds lo (kalA l%u // fix stress and o sound: lokale/ontvangslokale, etc. lom (bardie l%Om // move default stress: Lombardies/-e + _) lore (C@ lo@r@ // fix e sound: verloregaan/verloregoederekantoor/Verlorerivier _) losge (@P5 l'Osx2@ _) losies l%us'is //losies at start always means "to stay" &) lm (K l@-m @@ -2102,6 +2116,7 @@ mis (ha m@s // mishandel/mishaag miske (n m@skE // misken/ning/onmiskenbaar mis (l m@s // misluk/mislei + mis (lamp mIs // restore default stress: mislamp/-e mis (lik m'Is // default stress again mis (loop mIs // default stress: misloop _) mis (m m@s // mismaak/-te/mismoedig @@ -2120,6 +2135,7 @@ mode (l m%o@d& // fix stress and e sound: model/-le and compounds mode (lle@ m%Od@ // fix stress and e sound: modelleer/modellering modern m%ud&r@-n + mo (dulA m%O // fix stress and o sound: module/-s/modulêr moedswillig mutsv'Il@x2 // move default stress: moedswillig/-e/-heid moeite m'uIt@ // moeitevol/le/moeiteloos/lose moe (ras m%u // move default stress: moeras and compounds @@ -2363,6 +2379,7 @@ o (lim %o@ // move default stress: olimpies/-e o (lyC %o@ // move default stress: olyf and compounds/olywe olym (p %o@lIm // fix stress and y sound: Olympia/Olympus + _) om (strede %Om // fix stress: (on)omstrede/-nheid orang )(oet %ur%aN_ // fix stress and o sound: orangoetang and compounds oranje %o@ranj@ // fix stress and e sound in compounds: oranjeagtig/oranjekleur _) ordent %OrdEnt // move default stress: ordentlik/-e/-er/-ste/-heid @@ -2493,6 +2510,11 @@ o (rakel %O // fix stress and o sound: orakel/-spreuk/-taal, etc. _) or (ga %Or // move default stress: orgaan/organe organi (sA %Orx2%ani + _) orto (@ %Ort%u // fix stress and 2nd o sound: ortodoks/-e/ortopeed/-pede/ortodonsie and many similar + ort (ogra %Ort // fix 2nd o and stress: ortografie/-grafies/-e/-graaf + ort (olo %Ort // fix 2nd o sound and stress: ortologie/-logies/-e/-loog/-loë + ort (ometr %Ort // fix 2nd o sound and stress: ortometrie/-metries/-e + ort (osko %Ort // fix 2nd o sound and stress: ortoskopies/-e ose (a %o@S%i // fix stress and s and e sounds: oseaan/oseane and compounds @) oties 'o@tis // antibioties/eksoties/eroties/neuroties _) o (va@ %o@ // move default stress: ovaal/ovale/ovaalvormig @@ -2512,6 +2534,7 @@ ondjie OINci ontjie OINci ontering %Onte@r@N //ontering in compounds montering etc. + _) on (tooCC %On // ontoombaar/-bare/-baarheid/ontoonbaar/-bare/-baarheid/ontoornig/-e/-heid onvoor (s %Onf%o@r //stress: onvoorsiens, onvoorstelbaar etc. onvoor (w %Onf%o@r //stress: onvoorwaardelik etc. onome un'o@m@ // astronome/ekonome/gastronome @@ -3034,6 +3057,7 @@ s (iën S _) sebra se@bra // fix vowel sounds: sebra/-strepe; variant of zebra se (ggA s& // fix e sound: niksseggend/-e + @) seko (no@ s_%Ek%u // fix e sound; default stress; insert short pause: bedryfs-landsekonomie/-s/-ekonoom selek (CA s@lEk //seleksie selekteer etc. sending (_ sEnd@N //fix sending at word end seroto (ni s%Er@t%u // fix stress and vowel sounds: serotonien(vlakke, etc.) @@ -3140,6 +3164,7 @@ snaper (ing snA:p@r // fix stress and vowel sounds: versnapering/-e/-s and compounds snel (_ sn&l // fix e: aansnel/agternasnel/blitssnel/heengesnel/koppesnel/nasnel/verbysnel sodom (iet s,o@dOm // fix stress + soet (sappi s%ut // move default stress: soetsappig/-e/-heid soewe (nier s%uv@ // move default stress: soewenier/-e/-s _) soie so@?i // soiets/soiemand _) sol (da s%Ol // move default stress: soldaat/soldate and compounds @@ -3159,6 +3184,7 @@ spartel spart@l // fix stress and e sound: spartel/-end/-ing _) spat (a spat_ // fix stress, a sound and insert pause: spataar/spatare spek (takel sp%Ek // move default stress: spektakel/-s + _nA) spel (_ sp&l // fix e sound: naspel/náspel spelagtig sp&l'ax2t@x2 // skouspelagtig/e/heid/klugspelagtig e) spel (_ sp&l //klokkespel/snarespel/driespel/hokkiespel/puntespel/putjiespel C) spel (_ sp&l // many compounds ending in spel after consonant @@ -3340,6 +3366,7 @@ tantes tA~nt@s // nasalise and fix e sound: tantes tapisse (ri t%ap@s@ // move default stress: tapisserie/-ë taren (ta t%ar@n // fix stress and 1st a sound: tarentaal/tarentale + _) ta (rieC t%a // fix stress and a sound: tarief/tariewe and compounds taverne t%af&rn@ // fix stress and 1st e sound: taverne and compounds taver (nier t%af@r // move stress to end: tavernier/-s @@ -3353,6 +3380,7 @@ @) tief (_ t'if // alternatief/aktief/instinktief/(ak)kumulatief @) tiewe (_ t'iv@ // alternatiewe/aktiewe/instinktiewe/(ak)kumulatiewe tink (tink t@Nk // move default stress: tinktinkie/-s + ti (perA t%i // move default stress: tipering/tiperend/-e ti (ra t%i // move default stress tiran tirade tira (nnie t%ir%a // move default stress: tirannie titel tit@l // fix e sound: (on)getiteld/titelblad/-geveg and many similar @@ -3585,6 +3613,7 @@ uitgee (+ 'Yytx2e@ // se rule: _) uitge (@P5 Yytx2@ uit (huisig %Yyt // move stress: uithuisig/-e/-heid uiting Yyt@N // remove break and fix ng: uiting/-e/-svermoë and similar compounds + uitme (kaar %Yytm@ // move default stress: uitmekaar breek/gaan/loop/, etc. uit (munten %Yyt // move stress: uitmuntend/-e uit (sluiten %Yyt // move default stress: uitsluitend/-e uitsluitlik %YytslYytl@k // move default stress: uitsluitlik/-e @@ -3608,7 +3637,7 @@ urienweg %yrinv&x2_ // fix stress and e sound: urienweginfeksie/-ontsteking, etc. urine %yrin@ // urine and compounds urineer yrin'e@r // stress to end - _b) u (sA 'W //busongeluk etc. + _b) us (A ''Ws_ //busongeluk/-operateur/-uitstappie, etc. utjie Yyci univers (A@ %yn%iv%&rs // universiteit and compounds/universeel/-ele C) uwelik yv@l@k // gruwelik/huwelik/afskuwelik @@ -3656,6 +3685,7 @@ veranda v@randa // fix stress and e sound: veranda and compounds verby f@rbeI // fix stress: verbykomkans/verbykomslag, etc. vere (sto fe@r@ // avoid ver prefix: verestoffer/-s and compounds + verversing f@rf'&rs@N //verversing and compounds vere (_ fe@r@ // fix e sound: vere and compounds ending in vere vi (o f%i // move default stress: viool and compounds/viole vio (letK f%i%u // move default stress: violet/-te/-kleurige, etc. @@ -3689,6 +3719,7 @@ _) versf f''&rsf // fix stress and e sound: versfragment/-e ver (sie_ f&:r //words ending in versie ver (sies_ f&:r //words ending in versies + vers (panor f&:rs // fix stress and e sound: verspanorama/-s ver (flenC f@r // verflenter and derivitives/verflens; see rule: verf (C f&rf ver (fris f@r // verfris and derivitives; see rule: verf (C f&rf verfyn f@rf'eIn @@ -4054,3 +4085,4 @@ ÷ x2@de@ldY@r ♯ krYys ♭ mOl + diff --git a/dictsource/dict_phonemes b/dictsource/dict_phonemes index 1810335c..6d56fd8a 100644 --- a/dictsource/dict_phonemes +++ b/dictsource/dict_phonemes @@ -360,8 +360,9 @@ t tS v w x z Z Dictionary ko_dict -a E e i o u u- V -Y +a aI@ aU@ E e e: i i@3 +IR ji o O~ u u- U@ V +y: b d dZ g h j k k` l m n N p p` r s @@ -391,6 +392,17 @@ p r R R2 s S t tS v w x z +Dictionary rw_dict + +a a# e e# i i# o u +u# + +* : b B c d dZ f +g h j J k l m n +N n^ p q R s S S; +t tS v w x z + + Dictionary tr_dict a e E i I o O u diff --git a/dictsource/en_rules b/dictsource/en_rules index 379723a6..36f1d430 100644 --- a/dictsource/en_rules +++ b/dictsource/en_rules @@ -1181,7 +1181,7 @@ @) bi (osA baI bi (oC_ bI bi (ous bI - bio (g baI'0 + bio (gr baI'0 bio (log baI'0 bio (ni baI'0 bio (ps baI'0 @@ -1488,7 +1488,7 @@ delu (g dElju: de (lv+ dE de (ma dI2 - de (mea dI2 + demea dI2m'i: de (men dI2 de (mise dI2 de (mocrac dI2 diff --git a/phsource/compile_report b/phsource/compile_report index f7472d67..94c6f109 100644 --- a/phsource/compile_report +++ b/phsource/compile_report @@ -1,4 +1,4 @@ -48 phoneme tables +49 phoneme tables new total base 98 98 base2 24 117 @@ -47,7 +47,8 @@ tr 18 122 ku 17 121 id 15 119 - ko 16 112 + rw 12 122 + ko 18 114 Data file Used by b/b [b] base @@ -467,6 +468,7 @@ r3/r_n [r/] base [r/] ru r3/r_o [(o)] base r3/r_ru [R4] ru +r3/r_ru2 [R4] ru r3/r_trill [R2] base [R3] base [r] af @@ -477,7 +479,6 @@ r3/r_trill [R2] base r3/r_trill2 [R] base [r] cy [R] hr - [R4] ru r3/r_trill2.wav [R] base [r] cy [R] hr @@ -1032,6 +1033,7 @@ vdiph/yi [yi] fi vdiph/y#i [Yi] fi vdiph/y#i_2 [Yy] is vdiph/yi_fr [w^i] fr + [ji] ko vdiph/y#y [Yy] fi vdiph/y#y_2 [Yy] af [eoi] zhy @@ -1212,6 +1214,8 @@ vowel/a# [a/] base2 [&] sr [&] pt [&/] pt + [a#] rw + [a/] rw vowel/a_2 [a] base2 [a] en_wi [A:] en_wi @@ -1222,6 +1226,7 @@ vowel/a_2 [a] base2 [a] pt_pt [a] ro [a:] vi + [a] rw vowel/a#_2 [&] hr [a2] sv [&] is @@ -1280,6 +1285,7 @@ vowel/aa_6 [A] de vowel/aa_7 [A] nl vowel/aa_8 [0] en_us [A:] en_us + [V] ko vowel/a_en [a] en [aa] en [A] fr @@ -1306,7 +1312,9 @@ vowel/e [e] base2 [e] grc [e] vi [e] id - [E] ko + [e] rw + [e#] rw + [e] ko vowel/e# [I] en_sc [I2] en_sc vowel/e_2 [eI] en_sc @@ -1361,7 +1369,6 @@ vowel/e_mid [E] en_rp [E] tr [E] id [E2] id - [e] ko vowel/e_mid2 [E] af [E] de [E2] de @@ -1374,6 +1381,7 @@ vowel/e_mid2 [E] af [e] el [e] sw [e] tr + [E] ko vowel/@_fnt [@] en_wi [@2] en_wi [@2] hr @@ -1399,6 +1407,8 @@ vowel/i [i] base2 [i] zhy [i] zh [i] sw + [i] rw + [i#] rw [i] ko vowel/i# [i] en_rp [y:] cy @@ -1495,11 +1505,14 @@ vowel/o [o] base2 [o] grc [o:] sv [o] id + [o] rw + [o#] rw vowel/o_2 [o:] cy [o:] hi [o:] hu [o:] la [o:] no + [o] ko vowel/o-_2 [V] en_n [V] en_wm vowel/o_3 [oU] en_sc @@ -1519,7 +1532,6 @@ vowel/oe_4 [W] sv vowel/o_mid [O] fr [o] hu [o] tr - [o] ko vowel/oo [O:] en_sc [O] en_wi [O:] en_wi @@ -1606,6 +1618,7 @@ vowel/u_6 [U] pt_pt [u] pt_pt [u] ku vowel/u#_6 [u:] en_us + [y] ko vowel/u_7 [u] vi vowel/u#_7 [u#] tr vowel/u_bck [u] base2 @@ -1627,6 +1640,8 @@ vowel/u_bck [u] base2 [u] is [u] zhy [u] zh + [u] rw + [u#] rw [u] ko vowel/u_bck2 [u:] la vowel/u_fnt [u:] en_rp @@ -1650,7 +1665,6 @@ vowel/uu_bck [U] en_n [u] zhy vowel/u_unr [u-] ko vowel/V [3] en_sc - [V] ko vowel/V_2 [V] en [a] af [V] ru diff --git a/phsource/envelope/p_214 b/phsource/envelope/p_214 index fb47143c..cf33fa4d 100644 --- a/phsource/envelope/p_214 +++ b/phsource/envelope/p_214 @@ -1,5 +1,5 @@ ENVELOPE -0 33 +0 50 20 15 35 3 75 40 diff --git a/phsource/ph_russian b/phsource/ph_russian index 375ce4f4..ded323a9 100755 --- a/phsource/ph_russian +++ b/phsource/ph_russian @@ -308,9 +308,9 @@ endphoneme phoneme R4 liquid - vowelin f1=0 f2=1500 -300 300 f3=-300 80 - vowelout f1=2 f2=1500 -300 300 f3=-300 80 brk - formants r3/r_trill2+r3/r_ru%50 + vowelin f1=0 f2=1500 -300 300 f3=-200 80 rms=60 brk + vowelout f1=2 f2=1500 -300 300 f3=-200 80 + formants r3/r_ru2+r3/r_ru%50 lengthmod 6 endphoneme diff --git a/phsource/ph_zh b/phsource/ph_zh index e9e32926..7dbc0ee6 100644 --- a/phsource/ph_zh +++ b/phsource/ph_zh @@ -15,7 +15,7 @@ endphoneme phoneme 214 // tone: fall rise stress - tone 20 40 envelope/p_214 NULL + tone 18 42 envelope/p_214 NULL endphoneme phoneme 22 // tone: mid-low level diff --git a/phsource/phonemes b/phsource/phonemes index 408097f9..5d6faa89 100644 --- a/phsource/phonemes +++ b/phsource/phonemes @@ -1275,5 +1275,8 @@ phonemetable id base2 include ph_indonesian +phonemetable rw base2 +include ph_kinyarwanda + phonemetable ko base include ph_korean diff --git a/src/numbers.cpp b/src/numbers.cpp index 559ba15a..5408837f 100644 --- a/src/numbers.cpp +++ b/src/numbers.cpp @@ -978,7 +978,11 @@ int Translator::LookupNum3(int value, char *ph_out, int suppress_null, int thous LookupNum2(hundreds/10, x, ph_digits); } - sprintf(ph_thousands,"%s%s%c",ph_digits,ph_10T,phonPAUSE_NOLINK); + if(langopts.numbers2 & 0x200) + sprintf(ph_thousands,"%s%s%c",ph_10T,ph_digits,phonPAUSE_NOLINK); // say "thousands" before its number, not after + else + sprintf(ph_thousands,"%s%s%c",ph_digits,ph_10T,phonPAUSE_NOLINK); + hundreds %= 10; if(hundreds == 0) ph_100[0] = 0; @@ -1271,7 +1275,10 @@ int Translator::TranslateNumber_1(char *word, char *ph_out, unsigned int *flags, } LookupNum3(value, ph_buf, suppress_null, thousandplex, prev_thousands); - sprintf(ph_out,"%s%s%s",ph_buf2,ph_buf,ph_append); + if((thousandplex > 0) && (langopts.numbers2 & 0x200)) + sprintf(ph_out,"%s%s%s",ph_append,ph_buf2,ph_buf); // say "thousands" before its number + else + sprintf(ph_out,"%s%s%s",ph_buf2,ph_buf,ph_append); while(decimal_point) diff --git a/src/synthdata.cpp b/src/synthdata.cpp index ed7d97c1..60fd681c 100755 --- a/src/synthdata.cpp +++ b/src/synthdata.cpp @@ -35,7 +35,7 @@ #include "translate.h" #include "wave.h" -const char *version_string = "1.36.06 22.Mar.08"; +const char *version_string = "1.36.07 25.Mar.08"; const int version_phdata = 0x013400; int option_device_number = -1; diff --git a/src/tr_languages.cpp b/src/tr_languages.cpp index 0992d6cc..98746a46 100644 --- a/src/tr_languages.cpp +++ b/src/tr_languages.cpp @@ -601,6 +601,9 @@ SetLengthMods(tr,3); // all equal tr->langopts.stress_rule = 2; tr->langopts.stress_flags = 0x16; tr->langopts.length_mods0 = tr->langopts.length_mods; // don't lengthen vowels in the last syllable + + tr->langopts.numbers = 0x61 + 0x100000 + 0x4000; + tr->langopts.numbers2 = 0x200; // say "thousands" before its number } break; diff --git a/src/translate.cpp b/src/translate.cpp index 01cbeb41..d38dd58c 100755 --- a/src/translate.cpp +++ b/src/translate.cpp @@ -1918,14 +1918,13 @@ int Translator::TranslateChar(char *ptr, int prev_in, unsigned int c, unsigned i int final; static const unsigned char hangul_compatibility[0x34] = { - 0, 0x00,0x01,0x82,0x02,0x84,0x85,0x03, - 0x04,0x05,0x88,0x89,0x8a,0x8b,0x8c,0x8d, - 0x8e,0x06,0x07,0x08,0x91,0x09,0x0a,0x94, - 0x0c,0x0d,0x0e,0x0f,0x10,0x11,0x12,0x40, - 0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48, - 0x49,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,0x50, - 0x51,0x52,0x53,0x54 }; - + 0, 0x00,0x01,0xaa,0x02,0xac,0xad,0x03, + 0x04,0x05,0xb0,0xb1,0xb2,0xb3,0xb4,0xb4, + 0xb6,0x06,0x07,0x08,0xb9,0x09,0x0a,0xbc, + 0x0c,0x0d,0x0e,0x0f,0x10,0x11,0x12,0x61, + 0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69, + 0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,0x70,0x71, + 0x72,0x73,0x74,0x75 }; switch(translator_name) { diff --git a/src/translate.h b/src/translate.h index 740ba86a..b489d5ad 100755 --- a/src/translate.h +++ b/src/translate.h @@ -342,6 +342,7 @@ typedef struct { // bit6=(LANG=pl) two forms of plural, M or MA // bit7=(LANG-ru) use MB for 1 thousand, million, etc // bit8=(LANG=sw) special word for 100,000s + // bit9=(LANG=rw) say "thousand" and "million" before its number, not after int numbers2; int max_roman;