Fixed problem with languages: ru, el, zhy, not speaking English words.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@163 d46cf337-b52f-0410-862d-fd96e6ae7743
This commit is contained in:
jonsd
2008-03-07 18:20:06 +00:00
parent 12c26f0bd8
commit a83b20dde6
4 changed files with 13 additions and 5 deletions
+6 -2
View File
@@ -703,6 +703,8 @@ int Translator::IsLetterGroup(char *word, int group, int pre)
int Translator::IsLetter(int letter, int group)
{//============================================
int letter2;
if(letter_groups[group] != NULL)
{
if(wcschr(letter_groups[group],letter))
@@ -713,10 +715,12 @@ int Translator::IsLetter(int letter, int group)
if(group > 7)
return(0);
if(letter_bits_offset > 0)
{
letter -= letter_bits_offset;
if(((letter2 = (letter - letter_bits_offset)) > 0) && (letter2 < 0x80))
letter = letter2;
else
return(0);
}
else
{
+5 -1
View File
@@ -562,7 +562,11 @@ void Translator::LookupLetter(unsigned int letter, int next_byte, char *ph_buf1)
ph_buf1[0] = 0;
return;
}
if(ph_buf3[0] == phonSWITCH)
{
strcpy(ph_buf1,ph_buf3);
return;
}
// at a stress marker at the start of the letter name, unless one is already marked
ph_stress[0] = phonSTRESS_P;
ph_stress[1] = 0;
+1 -1
View File
@@ -35,7 +35,7 @@
#include "translate.h"
#include "wave.h"
const char *version_string = "1.34 07.Mar.08";
const char *version_string = "1.35 07.Mar.08";
const int version_phdata = 0x013400;
int option_device_number = -1;
+1 -1
View File
@@ -787,7 +787,7 @@ if((wmark > 0) && (wmark < 8))
{
// change to another language in order to translate this word
strcpy(word_phonemes,phonemes);
return(FLAG_SPELLWORD);
return(0);
}
p = &wordx[word_length-3]; // this looks wrong. Doesn't consider multi-byte chars.