Lang=fr, [o],[O] more open. git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@15 d46cf337-b52f-0410-862d-fd96e6ae7743master
we've %wi:v $pastf | we've %wi:v $pastf | ||||
they've %DeIv $pastf | they've %DeIv $pastf | ||||
we'd %wi:d $pastf | |||||
I aI $u+ $verbf $only | I aI $u+ $verbf $only | ||||
(I am) %aIa2m | (I am) %aIa2m | ||||
he %hi: $verbsf | he %hi: $verbsf |
| |||||
// This file in UTF8 encoded | // This file in UTF8 encoded | ||||
// Options | // Options | ||||
?2_11 'oNzi | ?2_11 'oNzi | ||||
?1_12 d'ozy | ?1_12 d'ozy | ||||
?2_12 d'ozi | ?2_12 d'ozi | ||||
?1_13 t:r'ezy | |||||
?1_13 tr'ezy | |||||
?2_13 t@-*'ezi | ?2_13 t@-*'ezi | ||||
?1_14 k&t'orzy | ?1_14 k&t'orzy | ||||
?2_14 kat'Orzi | ?2_14 kat'Orzi | ||||
usb $abbrev | usb $abbrev | ||||
dr $dot | |||||
mr $dot | |||||
mrs $dot | |||||
prof pr'Of $dot | |||||
sr $dot | |||||
sra ,Es;'Errj'a $dot | |||||
// articles | // articles | ||||
o $u+ | o $u+ | ||||
a $u+ | a $u+ | ||||
?1 doc d'Ok | ?1 doc d'Ok | ||||
?1 delete d'il'it | ?1 delete d'il'it | ||||
?1 design d,iz'ain | ?1 design d,iz'ain | ||||
?1 dj d,i:dZ'eI | |||||
?1 down d'a,wn | ?1 down d'a,wn | ||||
?1 download d'a,wnl'oud | ?1 download d'a,wnl'oud | ||||
?1 end 'end | ?1 end 'end | ||||
?1 pause p'au:z | ?1 pause p'au:z | ||||
?1 page p'eIdZ | ?1 page p'eIdZ | ||||
?1 readme r'i:dmi: | ?1 readme r'i:dmi: | ||||
?1 scanner sk'En&@ | |||||
?1 sapi s,ap'i | |||||
?1 scanner sk'En&r | |||||
?1 shift S'ift | ?1 shift S'ift | ||||
?1 scroll sk:r'ol | ?1 scroll sk:r'ol | ||||
site s'aIt | site s'aIt | ||||
?1 space sp'eIsy | ?1 space sp'eIsy | ||||
?1 sporting sp'Ort,ing | ?1 sporting sp'Ort,ing | ||||
?1 tab t'ab | ?1 tab t'ab | ||||
?1 telemóvel t,El,Em'OvEl | |||||
?1 telemóveis t,El,Em'OveIS | |||||
?1 up &p | ?1 up &p | ||||
?1 upload &pl'oud | ?1 upload &pl'oud | ||||
?1 window w'iNd'ou | ?1 window w'iNd'ou | ||||
?1 elton 'Elt&N | ?1 elton 'Elt&N | ||||
?1 halison &l'is&N | ?1 halison &l'is&N | ||||
klein kl'aIn // Very common on southern Brazil. | klein kl'aIn // Very common on southern Brazil. | ||||
?1 kleverson kl'Evers&N | |||||
krueger k@-*'iZer | krueger k@-*'iZer | ||||
krüger k@-*'iZer | krüger k@-*'iZer | ||||
kühl k'il | kühl k'il | ||||
?1 p) a (d_ =E | ?1 p) a (d_ =E | ||||
a (CC_ & | a (CC_ & | ||||
?1 al (_ 'al // eg: Portugal, capital, etc. | ?1 al (_ 'al // eg: Portugal, capital, etc. | ||||
//?1 al (C ''al // Algarve, alto, etc... | |||||
?1 _) a (lC ,a // Algarve, alto, etc... | |||||
?2 al (K aU | ?2 al (K aU | ||||
?2 alh alj | ?2 alh alj | ||||
c (c //drop “c” in European Portuguese (eg: seleccionar) | c (c //drop “c” in European Portuguese (eg: seleccionar) | ||||
?1 A) ct t //drop “c” in European Portuguese (eg: exacto) | ?1 A) ct t //drop “c” in European Portuguese (eg: exacto) | ||||
?1 A) cç s //drop “c” in European Portuguese (eg: selecção) | ?1 A) cç s //drop “c” in European Portuguese (eg: selecção) | ||||
?1 conta) ct ct | |||||
?1 conta) ct (A kt // eg: contacto, contactar, contactável, incontactável, etc... | |||||
.group d | .group d | ||||
_) r (_ 'Exe | _) r (_ 'Exe | ||||
_) r (_\$ xe'aU // currency | _) r (_\$ xe'aU // currency | ||||
r r | r r | ||||
?1 A) r (A :r | |||||
?1 A) r (A r | |||||
?2 A) r (A * | ?2 A) r (A * | ||||
?1 A) r (_A :r | |||||
?1 A) r (_A r | |||||
?2 A) r (_A * | ?2 A) r (_A * | ||||
rr x | rr x | ||||
?1 C) r (A :r | |||||
?1 C) r (A r | |||||
?2 C) r (A @-* | ?2 C) r (A @-* | ||||
_) r x | _) r x | ||||
l) r x | l) r x | ||||
n) r x | n) r x | ||||
s) r x | s) r x | ||||
?1 A) r (_ =@- //now, tis sound isn’t perfect but is is acceptable. | |||||
?1 A) r (_ r // this letter is imperfect. | |||||
.group s | .group s | ||||
?1 _) s (_W Es|; within an acronym [s]+[;] not [s;] phoneme | ?1 _) s (_W Es|; within an acronym [s]+[;] not [s;] phoneme | ||||
?1 _) s (_ Es | ?1 _) s (_ Es | ||||
?2 _) s (_ Ese | |||||
?2 _) s (_ 'Ese | |||||
s s | s s | ||||
ss s | ss s | ||||
sc (Y s | sc (Y s | ||||
2 vowel/ii_4 en_rp | 2 vowel/ii_4 en_rp | ||||
6 vowel/ii_en en en_n | 6 vowel/ii_en en en_n | ||||
5 vowel/@_low hi ro no | 5 vowel/@_low hi ro no | ||||
8 vowel/o en en_wm de hi it pt_pt sv | |||||
9 vowel/o en en_wm de fr hi it pt_pt sv | |||||
4 vowel/o_2 cy hi hu no | 4 vowel/o_2 cy hi hu no | ||||
2 vowel/o-_2 en_n en_wm | 2 vowel/o-_2 en_n en_wm | ||||
2 vowel/o_3 en_sc | 2 vowel/o_3 en_sc | ||||
1 vowel/o-_3 en_rp | 1 vowel/o-_3 en_rp | ||||
2 vowel/o_4 en_n fr | |||||
2 vowel/o_6 fr nl | |||||
1 vowel/o_4 en_n | |||||
1 vowel/o_6 nl | |||||
4 vowel/oe en af de fr | 4 vowel/oe en af de fr | ||||
1 vowel/oe_2 no | 1 vowel/oe_2 no | ||||
1 vowel/oe_4 sv | 1 vowel/oe_4 sv | ||||
2 vowel/o_mid hu ro | |||||
3 vowel/o_mid fr hu ro | |||||
8 vowel/oo en_sc de eo es el sv no zh_yue | 8 vowel/oo en_sc de eo es el sv no zh_yue | ||||
11 vowel/oo_1 en_n en_rp en_wm af fi sk hr vi | 11 vowel/oo_1 en_n en_rp en_wm af fi sk hr vi | ||||
3 vowel/oo_2 en_sc cy cs | 3 vowel/oo_2 en_sc cy cs |
phoneme o | phoneme o | ||||
vowel starttype (o) endtype (o) | vowel starttype (o) endtype (o) | ||||
length 160 | length 160 | ||||
formants vowel/o_4 | |||||
formants vowel/o | |||||
endphoneme | endphoneme | ||||
phoneme O | phoneme O | ||||
vowel starttype (o) endtype (o) | vowel starttype (o) endtype (o) | ||||
length 170 | length 170 | ||||
formants vowel/o_6 | |||||
formants vowel/o_mid | |||||
endphoneme | endphoneme | ||||
} | } | ||||
#ifdef PLATFORM_WINDOWS | |||||
int strcasecmp(const char *s1, const char *s2) | |||||
{ | |||||
int ix=0; | |||||
int diff; | |||||
for(;;) | |||||
{ | |||||
if((diff = (tolower(s1[ix]) - tolower(s2[ix]))) != 0) | |||||
return(diff); | |||||
if((s1[ix] == 0) || (s2[ix] == 0)) | |||||
return(diff); | |||||
ix++; | |||||
} | |||||
} | |||||
#endif | |||||
static int ph_sorter(char **a, char **b) | static int ph_sorter(char **a, char **b) | ||||
{//====================================== | {//====================================== |
{PITCHfrise, 38,10, PITCHfrise2, 36,10, // comma, or question | {PITCHfrise, 38,10, PITCHfrise2, 36,10, // comma, or question | ||||
20, 25, 34, 20, drops_0, 3, 3, 15, 25, 0}, | 20, 25, 34, 20, drops_0, 3, 3, 15, 25, 0}, | ||||
// {PITCHdrop, 38, 1, PITCHdrop, 42,25, // exclamation | |||||
// 20, 25, 34, 22, drops_0, 3, 3, 12, 8, 0}, | |||||
{PITCHfall, 30, 5, PITCHfall, 30, 7, // statement | |||||
{PITCHdrop, 38, 1, PITCHdrop, 42,25, // exclamation | |||||
20, 25, 34, 22, drops_0, 3, 3, 12, 8, 0}, | 20, 25, 34, 22, drops_0, 3, 3, 12, 8, 0}, | ||||
#include "translate.h" | #include "translate.h" | ||||
#include "wave.h" | #include "wave.h" | ||||
const char *version_string = "1.24.12 18.May.07"; | |||||
const int version_phdata = 0x012201; | |||||
const char *version_string = "1.25 20.May.07"; | |||||
const int version_phdata = 0x012501; | |||||
int option_device_number = -1; | int option_device_number = -1; | ||||
tr->langopts.stress_rule = 3; // stress on final syllable | tr->langopts.stress_rule = 3; // stress on final syllable | ||||
tr->langopts.stress_flags = 0x6 | 0x10; | tr->langopts.stress_flags = 0x6 | 0x10; | ||||
tr->langopts.numbers = 0xa69 + 0x2000; | tr->langopts.numbers = 0xa69 + 0x2000; | ||||
tr->punct_to_tone[0][3] = 2; // use exclamation intonation | |||||
} | } | ||||
break; | break; | ||||
langopts.decimal_sep = '.'; | langopts.decimal_sep = '.'; | ||||
memcpy(punct_to_tone,punctuation_to_tone,sizeof(punct_to_tone)); | memcpy(punct_to_tone,punctuation_to_tone,sizeof(punct_to_tone)); | ||||
punct_to_tone[0][3] = 0; // exclamation, use period until we can improve the exclamation intonation | |||||
} | } | ||||
*insert = (new_c >> 16); | *insert = (new_c >> 16); | ||||
new_c &= 0xffff; | new_c &= 0xffff; | ||||
} | } | ||||
#ifndef PLATFORM_RISCOS | |||||
if(upper_case) | if(upper_case) | ||||
new_c = towupper(new_c); | new_c = towupper(new_c); | ||||
#endif | |||||
return(new_c); | return(new_c); | ||||
} | } | ||||
} | } |