Browse Source

code cleanup: use ReadNumbers() for language options "dictrules", "stressopt"

language option "numbers" could be changed to use the same function, but
it needs tests.
master
Juho Hiltunen 4 years ago
parent
commit
a6abb1e89b
1 changed files with 15 additions and 12 deletions
  1. 15
    12
      src/libespeak-ng/voices.c

+ 15
- 12
src/libespeak-ng/voices.c View File

int tone_only = control & 2; int tone_only = control & 2;
bool language_set = false; bool language_set = false;
bool phonemes_set = false; bool phonemes_set = false;
int conditional_rules = 0;


char voicename[40]; char voicename[40];
char language_name[40]; char language_name[40];
translator->langopts.tunes[ix] = value; translator->langopts.tunes[ix] = value;
} }
break; break;

case V_DICTRULES: // conditional dictionary rules and list entries case V_DICTRULES: // conditional dictionary rules and list entries
case V_NUMBERS:
if (CheckTranslator(translator, keyword_tab, key) != 0)
break;

ReadNumbers(p, &translator->dict_condition, 32, keyword_tab, key);
break;
case V_STRESSOPT: case V_STRESSOPT:
if (CheckTranslator(translator, keyword_tab, key) != 0)
break;

ReadNumbers(p, &translator->langopts.stress_flags, 32, keyword_tab, key);
break;

case V_NUMBERS:
if (CheckTranslator(translator, keyword_tab, key) != 0) if (CheckTranslator(translator, keyword_tab, key) != 0)
break; break;


if ((n = atoi(p)) > 0) { if ((n = atoi(p)) > 0) {
p++; p++;
if (n < 32) { if (n < 32) {
if (key == V_DICTRULES)
conditional_rules |= (1 << n);
else if (key == V_NUMBERS)
translator->langopts.numbers |= (1 << n); translator->langopts.numbers |= (1 << n);
else if (key == V_STRESSOPT)
translator->langopts.stress_flags |= (1 << n);
} else { } else {
if ((key == V_NUMBERS) && (n < 64))
if (n < 64)
translator->langopts.numbers2 |= (1 << (n-32)); translator->langopts.numbers2 |= (1 << (n-32));
else else
fprintf(stderr, "Bad option number %d\n", n);
}
fprintf(stderr, "numbers: Bad option number %d\n", n); }
} }
while (isalnum(*p)) p++; while (isalnum(*p)) p++;
} }
} }
} }


translator->dict_condition = conditional_rules;

voice_languages[langix] = 0; voice_languages[langix] = 0;
} }



Loading…
Cancel
Save