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); | ||||
| } | } | ||||
| } | } |