| } | } | ||||
| break; | break; | ||||
| case L('k','k'): // Kazakh | |||||
| { | |||||
| static const unsigned char stress_amps_tr[8] = {18,16, 20,21, 20,21, 21,20 }; | |||||
| static const short stress_lengths_tr[8] = {190,180, 230,230, 0,0, 250,250}; | |||||
| tr->letter_bits_offset = OFFSET_CYRILLIC; | |||||
| memset(tr->letter_bits,0,sizeof(tr->letter_bits)); | |||||
| SetLetterBits(tr,LETTERGP_A,(char *)ru_vowels); | |||||
| SetLetterBits(tr,LETTERGP_C,(char *)ru_consonants); | |||||
| SetLetterBits(tr,LETTERGP_VOWEL2,(char *)ru_vowels); | |||||
| SetupTranslator(tr,stress_lengths_tr,stress_amps_tr); | |||||
| tr->langopts.stress_rule = 7; // stress on the last syllable, before any explicitly unstressed syllable | |||||
| tr->langopts.stress_flags = S_NO_AUTO_2 + S_NO_EOC_LENGTHEN; //no automatic secondary stress, don't lengthen at end-of-clause | |||||
| tr->langopts.lengthen_tonic = 0; | |||||
| tr->langopts.param[LOPT_SUFFIX] = 1; | |||||
| tr->langopts.numbers = NUM_OMIT_1_HUNDRED | NUM_DFRACTION_6 ; | |||||
| tr->langopts.max_initial_consonants = 2; | |||||
| SetLengthMods(tr,3); // all equal | |||||
| } | |||||
| break; | |||||
| case L('k','o'): // Korean, TEST | case L('k','o'): // Korean, TEST | ||||
| { | { | ||||
| static const char ko_ivowels[] = {0x63,0x64,0x67,0x68,0x6d,0x72,0x74,0x75,0}; // y and i vowels | static const char ko_ivowels[] = {0x63,0x64,0x67,0x68,0x6d,0x72,0x74,0x75,0}; // y and i vowels |