Browse Source

Add a NUM_DEFAULT define.

master
Reece H. Dunn 5 years ago
parent
commit
8352683e1b
2 changed files with 10 additions and 10 deletions
  1. 9
    9
      src/libespeak-ng/tr_languages.c
  2. 1
    1
      src/libespeak-ng/translate.h

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

tr->langopts.break_numbers = BREAK_LAKH_BN; tr->langopts.break_numbers = BREAK_LAKH_BN;


if (name2 == L3('b', 'p', 'y')) { if (name2 == L3('b', 'p', 'y')) {
tr->langopts.numbers = 1;
tr->langopts.numbers = NUM_DEFAULT;
tr->langopts.numbers2 = NUM2_SWAP_THOUSANDS; tr->langopts.numbers2 = NUM2_SWAP_THOUSANDS;
} }


SetLetterBitsRange(tr, LETTERGP_B, 0x90, 0xbc); SetLetterBitsRange(tr, LETTERGP_B, 0x90, 0xbc);
SetLetterBitsRange(tr, LETTERGP_C, 0x40, 0x6c); // consonant letters (not subjoined) SetLetterBitsRange(tr, LETTERGP_C, 0x40, 0x6c); // consonant letters (not subjoined)
tr->langopts.param[LOPT_UNPRONOUNCABLE] = 1; // disable check for unpronouncable words tr->langopts.param[LOPT_UNPRONOUNCABLE] = 1; // disable check for unpronouncable words
tr->langopts.numbers = 1;
tr->langopts.numbers = NUM_DEFAULT;
} }
break; break;
case L('c', 'y'): // Welsh case L('c', 'y'): // Welsh
tr->langopts.stress_flags = S_MID_DIM | S_FINAL_DIM; // use 'diminished' for unstressed final syllable tr->langopts.stress_flags = S_MID_DIM | S_FINAL_DIM; // use 'diminished' for unstressed final syllable
SetLetterBitsRange(tr, LETTERGP_B, 0x26, 0x30); // vowel signs, and virama SetLetterBitsRange(tr, LETTERGP_B, 0x26, 0x30); // vowel signs, and virama
tr->langopts.break_numbers = BREAK_LAKH_DV; tr->langopts.break_numbers = BREAK_LAKH_DV;
tr->langopts.numbers = 1;
tr->langopts.numbers = NUM_DEFAULT;
} }
break; break;
case L('e', 'n'): case L('e', 'n'):
} }
break; break;
case L('k', 'y'): // Kyrgyx case L('k', 'y'): // Kyrgyx
tr->langopts.numbers = 1;
tr->langopts.numbers = NUM_DEFAULT;
break; break;
case L('l', 'a'): // Latin case L('l', 'a'): // Latin
{ {
tr->encoding = ESPEAKNG_ENCODING_ISO_8859_3; tr->encoding = ESPEAKNG_ENCODING_ISO_8859_3;
tr->langopts.param[LOPT_REGRESSIVE_VOICING] = 0x100; // devoice at end of word tr->langopts.param[LOPT_REGRESSIVE_VOICING] = 0x100; // devoice at end of word
tr->langopts.stress_rule = STRESSPOSN_2R; // penultimate tr->langopts.stress_rule = STRESSPOSN_2R; // penultimate
tr->langopts.numbers = 1;
tr->langopts.numbers = NUM_DEFAULT;
} }
break; break;
case L('n', 'l'): // Dutch case L('n', 'l'): // Dutch
tr->langopts.stress_rule = 13; // 1st syllable, unless 1st vowel is short and 2nd is long tr->langopts.stress_rule = 13; // 1st syllable, unless 1st vowel is short and 2nd is long
} else if (name2 == L('k', 'n')) { } else if (name2 == L('k', 'n')) {
tr->letter_bits_offset = OFFSET_KANNADA; tr->letter_bits_offset = OFFSET_KANNADA;
tr->langopts.numbers = 0x1;
tr->langopts.numbers = NUM_DEFAULT;
} else if (name2 == L('t', 'e')) { } else if (name2 == L('t', 'e')) {
tr->letter_bits_offset = OFFSET_TELUGU; tr->letter_bits_offset = OFFSET_TELUGU;
tr->langopts.numbers = 0x1;
tr->langopts.numbers = NUM_DEFAULT;
tr->langopts.numbers2 = NUM2_ORDINAL_DROP_VOWEL; tr->langopts.numbers2 = NUM2_ORDINAL_DROP_VOWEL;
} }
SetIndicLetters(tr); // call this after setting OFFSET_ SetIndicLetters(tr); // call this after setting OFFSET_
case L3('s', 'h', 'n'): case L3('s', 'h', 'n'):
tr->langopts.tone_language = 1; // Tone language, use CalcPitches_Tone() rather than CalcPitches() tr->langopts.tone_language = 1; // Tone language, use CalcPitches_Tone() rather than CalcPitches()
tr->langopts.length_mods0 = tr->langopts.length_mods; // don't lengthen vowels in the last syllable tr->langopts.length_mods0 = tr->langopts.length_mods; // don't lengthen vowels in the last syllable
tr->langopts.numbers = 1;
tr->langopts.numbers = NUM_DEFAULT;
tr->langopts.break_numbers = BREAK_INDIVIDUAL; tr->langopts.break_numbers = BREAK_INDIVIDUAL;
break; break;
case L3('c', 'm', 'n'): // no break, just go to 'zh' case case L3('c', 'm', 'n'): // no break, just go to 'zh' case
if (name2 == L3('z', 'h', 'y')) { if (name2 == L3('z', 'h', 'y')) {
tr->langopts.textmode = true; tr->langopts.textmode = true;
tr->langopts.listx = 1; // compile zh_listx after zh_list tr->langopts.listx = 1; // compile zh_listx after zh_list
tr->langopts.numbers = 1;
tr->langopts.numbers = NUM_DEFAULT;
tr->langopts.numbers2 = NUM2_ZERO_TENS; tr->langopts.numbers2 = NUM2_ZERO_TENS;
tr->langopts.break_numbers = BREAK_INDIVIDUAL; tr->langopts.break_numbers = BREAK_INDIVIDUAL;
} }

+ 1
- 1
src/libespeak-ng/translate.h View File

unsigned char *length_mods; unsigned char *length_mods;
unsigned char *length_mods0; unsigned char *length_mods0;


#define NUM_ROUTINE_BITS 0x00000003 // which numbers routine to use.
#define NUM_DEFAULT 0x00000001 // enable number processing; use if no other NUM_ option is specified
#define NUM_THOUS_SPACE 0x00000004 // thousands separator must be space #define NUM_THOUS_SPACE 0x00000004 // thousands separator must be space
#define NUM_DECIMAL_COMMA 0x00000008 // , decimal separator, not . #define NUM_DECIMAL_COMMA 0x00000008 // , decimal separator, not .
#define NUM_SWAP_TENS 0x00000010 // use three-and-twenty rather than twenty-three #define NUM_SWAP_TENS 0x00000010 // use three-and-twenty rather than twenty-three

Loading…
Cancel
Save