Browse Source

issue #518: Add the 'е є ї' letters to the Y group in Translate_Russian, not SetCyrillicLetters.

master
Reece H. Dunn 6 years ago
parent
commit
36c6727e90
1 changed files with 3 additions and 3 deletions
  1. 3
    3
      src/libespeak-ng/tr_languages.c

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

static const char ru_hard[] = { 0x2a, 0x16, 0x26, 0x28, 0 }; // letter group H [S Z ts] -- ъ ж ц ш static const char ru_hard[] = { 0x2a, 0x16, 0x26, 0x28, 0 }; // letter group H [S Z ts] -- ъ ж ц ш
static const char ru_nothard[] = { 0x11, 0x12, 0x13, 0x14, 0x17, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1f, 0x20, 0x21, 0x22, 0x24, 0x25, 0x27, 0x29, 0x2c, 0 }; // б в г д з й к л м н п р с т ф х ч щ ь static const char ru_nothard[] = { 0x11, 0x12, 0x13, 0x14, 0x17, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1f, 0x20, 0x21, 0x22, 0x24, 0x25, 0x27, 0x29, 0x2c, 0 }; // б в г д з й к л м н п р с т ф х ч щ ь
static const char ru_voiced[] = { 0x11, 0x12, 0x13, 0x14, 0x16, 0x17, 0 }; // letter group G (voiced obstruents) -- б в г д ж з static const char ru_voiced[] = { 0x11, 0x12, 0x13, 0x14, 0x16, 0x17, 0 }; // letter group G (voiced obstruents) -- б в г д ж з
static const char ru_ivowels[] = { 0x15, 0x2c, 0x2e, 0x2f, 0x31, 0x34, 0x37, 0 }; // letter group Y (iotated vowels & soft-sign) -- е ь ю я ё є ї
static const char ru_ivowels[] = { 0x2c, 0x2e, 0x2f, 0x31, 0 }; // letter group Y (iotated vowels & soft-sign) -- ь ю я ё
tr->encoding = ESPEAKNG_ENCODING_KOI8_R; tr->encoding = ESPEAKNG_ENCODING_KOI8_R;
tr->transpose_min = 0x430; // convert cyrillic from unicode into range 0x01 to 0x22 tr->transpose_min = 0x430; // convert cyrillic from unicode into range 0x01 to 0x22
tr->transpose_max = 0x451; tr->transpose_max = 0x451;
{ {
static const unsigned char stress_amps_ru[] = { 16, 16, 18, 18, 20, 24, 24, 22 }; static const unsigned char stress_amps_ru[] = { 16, 16, 18, 18, 20, 24, 24, 22 };
static const short stress_lengths_ru[8] = { 150, 140, 220, 220, 0, 0, 260, 280 }; static const short stress_lengths_ru[8] = { 150, 140, 220, 220, 0, 0, 260, 280 };
static const char ru_ivowels2[] = { 0x18, 0 }; // add и to Y lettergroup (iotated vowels & soft-sign)
static const char ru_ivowels[] = { 0x15, 0x18, 0x34, 0x37, 0 }; // add и є ї" to Y lettergroup (iotated vowels & soft-sign)


SetupTranslator(tr, stress_lengths_ru, stress_amps_ru); SetupTranslator(tr, stress_lengths_ru, stress_amps_ru);
SetCyrillicLetters(tr); SetCyrillicLetters(tr);
SetLetterBits(tr, LETTERGP_Y, ru_ivowels2);
SetLetterBits(tr, LETTERGP_Y, ru_ivowels);


tr->langopts.param[LOPT_UNPRONOUNCABLE] = 0x432; // [v] don't count this character at start of word tr->langopts.param[LOPT_UNPRONOUNCABLE] = 0x432; // [v] don't count this character at start of word
tr->langopts.param[LOPT_REGRESSIVE_VOICING] = 1; tr->langopts.param[LOPT_REGRESSIVE_VOICING] = 1;

Loading…
Cancel
Save