mirror of
https://github.com/rhasspy/espeak-ng.git
synced 2026-11-10 08:13:55 +00:00
ru: document the special characters
This commit is contained in:
+7
-7
@@ -3,13 +3,13 @@
|
||||
// This file is UTF8 encoded
|
||||
|
||||
// Special characters:
|
||||
// A vowel: а о у ы э е ё и ю я
|
||||
// B soft consonant: ь й ч щ
|
||||
// C any consonant:
|
||||
// F consonant, not hard: ??
|
||||
// G voiced: б в г д ж з
|
||||
// H hard consonant: ъ ж ц ш
|
||||
// Y iotated vowel, softsign: ь е ё и ю я
|
||||
// A vowel: а е ё и о у ы э ю я ә ө ұ ү і
|
||||
// B soft consonant: ь й ч щ
|
||||
// C any consonant: б в г д ж з й к л м н п р с т ф х ц ч ш щ ъ ь қ ң һ
|
||||
// F consonant, not hard: б в г д з й к л м н п р с т ф х ч щ ь
|
||||
// G voiced: б в г д ж з
|
||||
// H hard consonant: ъ ж ц ш
|
||||
// Y iotated vowel, softsign: ь ю я ё
|
||||
|
||||
|
||||
.group а
|
||||
|
||||
@@ -373,17 +373,21 @@ static const unsigned int replace_cyrillic_latin[] =
|
||||
0x45c, 0x107,
|
||||
0 }; // ѓ ѕ ќ
|
||||
|
||||
static const unsigned char ru_vowels[] = { 0x10, 0x15, 0x31, 0x18, 0x1e, 0x23, 0x2b, 0x2d, 0x2e, 0x2f, 0xb9, 0xc9, 0x91, 0x8f, 0x36, 0 }; // also kazakh
|
||||
static const unsigned char ru_consonants[] = { 0x11, 0x12, 0x13, 0x14, 0x16, 0x17, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1f, 0x20, 0x21, 0x22, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2c, 0x73, 0x7b, 0x83, 0x9b, 0 };
|
||||
static const unsigned char ru_vowels[] = { // (also kazakh) offset by 0x420 -- а е ё и о у ы э ю я ә ө ұ ү і
|
||||
0x10, 0x15, 0x31, 0x18, 0x1e, 0x23, 0x2b, 0x2d, 0x2e, 0x2f, 0xb9, 0xc9, 0x91, 0x8f, 0x36, 0
|
||||
};
|
||||
static const unsigned char ru_consonants[] = { // б в г д ж з й к л м н п р с т ф х ц ч ш щ ъ ь қ ң һ
|
||||
0x11, 0x12, 0x13, 0x14, 0x16, 0x17, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1f, 0x20, 0x21, 0x22, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2c, 0x73, 0x7b, 0x83, 0x9b, 0
|
||||
};
|
||||
|
||||
static void SetCyrillicLetters(Translator *tr)
|
||||
{
|
||||
// character codes offset by 0x420
|
||||
static const char ru_soft[] = { 0x2c, 0x19, 0x27, 0x29, 0 }; // letter group B [k ts; s;]
|
||||
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_voiced[] = { 0x11, 0x12, 0x13, 0x14, 0x16, 0x17, 0 }; // letter group G (voiced obstruents)
|
||||
static const char ru_ivowels[] = { 0x2c, 0x2e, 0x2f, 0x31, 0 }; // letter group Y (iotated vowels & soft-sign)
|
||||
static const char ru_soft[] = { 0x2c, 0x19, 0x27, 0x29, 0 }; // letter group B [k ts; s;] -- ь й ч щ
|
||||
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_voiced[] = { 0x11, 0x12, 0x13, 0x14, 0x16, 0x17, 0 }; // letter group G (voiced obstruents) -- б в г д ж з
|
||||
static const char ru_ivowels[] = { 0x2c, 0x2e, 0x2f, 0x31, 0 }; // letter group Y (iotated vowels & soft-sign) -- ь ю я ё
|
||||
tr->encoding = ESPEAKNG_ENCODING_KOI8_R;
|
||||
tr->transpose_min = 0x430; // convert cyrillic from unicode into range 0x01 to 0x22
|
||||
tr->transpose_max = 0x451;
|
||||
|
||||
Reference in New Issue
Block a user