Browse Source

cleanup: move numbers to LoadLanguageOptions()

Note: This feature has no tests.
master
Juho Hiltunen 2 years ago
parent
commit
ac82698f99
3 changed files with 26 additions and 23 deletions
  1. 24
    0
      src/libespeak-ng/langopts.c
  2. 1
    1
      src/libespeak-ng/tr_languages.c
  3. 1
    22
      src/libespeak-ng/voices.c

+ 24
- 0
src/libespeak-ng/langopts.c View File

@@ -20,6 +20,7 @@

#include "config.h"

#include <ctype.h>
#include <errno.h>
#include <stdint.h>
#include <stdio.h>
@@ -119,6 +120,29 @@ void LoadLanguageOptions(Translator *translator, int key, char *keyValue ) {
}
break;
}
case V_NUMBERS: {
// if (CheckTranslator(translator, langopts_tab, key) != 0)
break;

// expect a list of numbers
while (*keyValue != 0) {
while (isspace(*keyValue)) keyValue++;
if ((n = atoi(keyValue)) > 0) {
keyValue++;
if (n < 32) {
translator->langopts.numbers |= (1 << n);
} else {
if (n < 64)
translator->langopts.numbers2 |= (1 << (n-32));
else
fprintf(stderr, "numbers: Bad option number %d\n", n); }
}
while (isalnum(*keyValue)) keyValue++;
}
ProcessLanguageOptions(&(translator->langopts));

break;
}
case V_LOWERCASE_SENTENCE: {
if (CheckTranslator(translator, langopts_tab, key) != 0)
break;

+ 1
- 1
src/libespeak-ng/tr_languages.c View File

@@ -808,7 +808,7 @@ Translator *SelectTranslator(const char *name)
tr->langopts.param[LOPT_IT_DOUBLING] = 1;
tr->langopts.long_stop = 130;

tr->langopts.numbers = NUM_DECIMAL_COMMA | NUM_ALLOW_SPACE | NUM_DFRACTION_2 | NUM_ORDINAL_DOT;
// tr->langopts.numbers = NUM_DECIMAL_COMMA | NUM_ALLOW_SPACE | NUM_DFRACTION_2 | NUM_ORDINAL_DOT;
SetLetterVowel(tr, 'y');
tr->langopts.spelling_stress = 1;
tr->langopts.intonation_group = 3; // less intonation, don't raise pitch at comma

+ 1
- 22
src/libespeak-ng/voices.c View File

@@ -124,6 +124,7 @@ const MNEM_TAB langopts_tab[] = {
{ "dictrules", V_DICTRULES },
{ "intonation", V_INTONATION },
{ "lowercaseSentence", V_LOWERCASE_SENTENCE },
{ "numbers", V_NUMBERS },
{ "stressAdd", V_STRESSADD },
{ "stressAmp", V_STRESSAMP },
{ "stressLength", V_STRESSLENGTH },
@@ -157,7 +158,6 @@ static const MNEM_TAB keyword_tab[] = {
{ "voicing", V_VOICING },
{ "breath", V_BREATH },
{ "breathw", V_BREATHW },
{ "numbers", V_NUMBERS },
{ "mbrola", V_MBROLA },
{ "consonants", V_CONSONANTS },
{ "klatt", V_KLATT },
@@ -706,28 +706,7 @@ voice_t *LoadVoice(const char *vname, int control)



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

// expect a list of numbers
while (*p != 0) {
while (isspace(*p)) p++;
if ((n = atoi(p)) > 0) {
p++;
if (n < 32) {
translator->langopts.numbers |= (1 << n);
} else {
if (n < 64)
translator->langopts.numbers2 |= (1 << (n-32));
else
fprintf(stderr, "numbers: Bad option number %d\n", n); }
}
while (isalnum(*p)) p++;
}
ProcessLanguageOptions(&(translator->langopts));

break;
case V_REPLACE:
if (phonemes_set == false) {
// must set up a phoneme table before we can lookup phoneme mnemonics

Loading…
Cancel
Save