mirror of
https://github.com/rhasspy/espeak-ng.git
synced 2026-11-01 21:58:52 +00:00
[1.47.14]
Language changes: an, en, es, fa, gu, it, pt, ta, te. Voice files: added attribute 'dictdialect', eg: dictdialect en-us uses the US English voice to speak words or rules which are marked with _^_EN git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@366 d46cf337-b52f-0410-862d-fd96e6ae7743
This commit is contained in:
+9
-4
@@ -235,6 +235,7 @@ char *DecodeRule(const char *group_chars, int group_length, char *rule, int cont
|
||||
unsigned char rb;
|
||||
unsigned char c;
|
||||
char *p;
|
||||
char *p_end;
|
||||
int ix;
|
||||
int match_type;
|
||||
int finished=0;
|
||||
@@ -245,10 +246,10 @@ char *DecodeRule(const char *group_chars, int group_length, char *rule, int cont
|
||||
int condition_num=0;
|
||||
int at_start = 0;
|
||||
const char *name;
|
||||
char buf[60];
|
||||
char buf_pre[60];
|
||||
char buf[200];
|
||||
char buf_pre[200];
|
||||
char suffix[20];
|
||||
static char output[60];
|
||||
static char output[80];
|
||||
|
||||
static char symbols[] =
|
||||
{' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',
|
||||
@@ -367,6 +368,8 @@ char *DecodeRule(const char *group_chars, int group_length, char *rule, int cont
|
||||
*p = 0;
|
||||
|
||||
p = output;
|
||||
p_end = p + sizeof(output) - 1;
|
||||
|
||||
if(linenum > 0)
|
||||
{
|
||||
sprintf(p,"%5d:\t",linenum);
|
||||
@@ -381,12 +384,14 @@ char *DecodeRule(const char *group_chars, int group_length, char *rule, int cont
|
||||
{
|
||||
if(at_start)
|
||||
*p++ = '_';
|
||||
while(--ix >= 0)
|
||||
while((--ix >= 0) && (p < p_end-3))
|
||||
*p++ = buf_pre[ix];
|
||||
*p++ = ')';
|
||||
*p++ = ' ';
|
||||
}
|
||||
*p = 0;
|
||||
|
||||
buf[p_end - p] = 0; // prevent overflow in output[]
|
||||
strcat(p,buf);
|
||||
ix = strlen(output);
|
||||
while(ix < 8)
|
||||
|
||||
Reference in New Issue
Block a user