Browse Source

Merge pull request #888

Set number handling on by default
master
jaacoppi 4 years ago
parent
commit
4c3fe183dd
No account linked to committer's email address
4 changed files with 28 additions and 6 deletions
  1. 8
    4
      CHANGELOG.md
  2. 4
    2
      docs/numbers.md
  3. 15
    0
      src/libespeak-ng/tr_languages.c
  4. 1
    0
      src/libespeak-ng/translate.h

+ 8
- 4
CHANGELOG.md View File

* Add documentation about dictionary flags. * Add documentation about dictionary flags.


updated languages: updated languages:
* ba (Bashkir) -- boracasli98, Valdis Vitolins
* chr (Cherokee) -- Michael Conrad
* ba (Bashkir) -- boracasli98, Valdis Vitolins, Juho Hiltunen
* de (German) -- Karl Eick * de (German) -- Karl Eick
* el (Modern Greek) -- Reece Dunn (support for variant Greek letter forms) * el (Modern Greek) -- Reece Dunn (support for variant Greek letter forms)
* en (English) -- Steven Presser, Ben Talagan * en (English) -- Steven Presser, Ben Talagan
* ga (Gaelic (Irish)) Chen, Chien-ting * ga (Gaelic (Irish)) Chen, Chien-ting
* grc (Ancient Greek) -- Reece Dunn (support for variant Greek letter forms) * grc (Ancient Greek) -- Reece Dunn (support for variant Greek letter forms)
* hak (Hakka Chinese) -- Juho Hiltunen
* haw (Hawaiian) -- Juho Hiltunen
* kok (Konkani) -- Juho Hiltunen
* nb (Norwegian Bokmål) -- Juho Hiltunen
* nci (Classical Nahuatl) -- Juho Hiltunen
* hy (Armenian) -- tigransimonyan * hy (Armenian) -- tigransimonyan
* ia (Interlingua) -- nesrad * ia (Interlingua) -- nesrad
* it (Italian) -- Christian Leo * it (Italian) -- Christian Leo
* ja (Japanese) -- fukuen
* ja (Japanese) -- fukuen, Juho Hiltunen
* jbo (Lojban) -- Juho Hiltunen, xunsku * jbo (Lojban) -- Juho Hiltunen, xunsku
* lv (Latvian) -- Valdis Vitolins * lv (Latvian) -- Valdis Vitolins
* mi (Māori) -- boracasli98 * mi (Māori) -- boracasli98
* tr (Turkish) -- boracasli98 * tr (Turkish) -- boracasli98
* ur (Urdu) -- Ejaz Shah * ur (Urdu) -- Ejaz Shah
* uz (Uzbek) -- boracasli98, Valdis Vitolins * uz (Uzbek) -- boracasli98, Valdis Vitolins
* zh (Chinese) -- Silas S. Brown, Rongcui Dong, Icenowy Zheng
* zh (Chinese) -- Silas S. Brown, Rongcui Dong, Icenowy Zheng, Juho Hiltunen


new languages: new languages:
* chr (Cherokee) -- Michael Conrad * chr (Cherokee) -- Michael Conrad

+ 4
- 2
docs/numbers.md View File



These controls how numbers are pronounced. These controls how numbers are pronounced.


If `numbers` is set to `0` (the default value), numbers will not be pronounced.
Setting it to `1` will enable number pronunciation using the dictionary rules.
If `numbers` is set to `0`, numbers will not be pronounced.
Setting it to `1` (the default value) will enable number pronunciation using the dictionary rules.
For more control over number pronunciation, see the flags in `translate.h`.



tr->langopts.max_digits tr->langopts.max_digits



+ 15
- 0
src/libespeak-ng/tr_languages.c View File

* Copyright (C) 2005 to 2015 by Jonathan Duddington * Copyright (C) 2005 to 2015 by Jonathan Duddington
* email: [email protected] * email: [email protected]
* Copyright (C) 2015-2016, 2020 Reece H. Dunn * Copyright (C) 2015-2016, 2020 Reece H. Dunn
* Copyright (C) 2021 Juho Hiltunen
* *
* This program is free software; you can redistribute it and/or modify * This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
tr->langopts.min_roman = 2; tr->langopts.min_roman = 2;
tr->langopts.thousands_sep = ','; tr->langopts.thousands_sep = ',';
tr->langopts.decimal_sep = '.'; tr->langopts.decimal_sep = '.';
tr->langopts.numbers = NUM_DEFAULT;
tr->langopts.break_numbers = BREAK_THOUSANDS; tr->langopts.break_numbers = BREAK_THOUSANDS;
tr->langopts.max_digits = 14; tr->langopts.max_digits = 14;




switch (name2) switch (name2)
{ {
case L('m', 'i'):
case L('m', 'y'):
case L4('p', 'i', 'q', 'd'): // piqd
case L('p', 'y'):
case L('q', 'u'):
case L3('q', 'u', 'c'):
case L('t', 'h'):
case L('u', 'z'):
{
tr->langopts.numbers = 0; // disable numbers until the definition are complete in _list file
}
break;
case L('a', 'f'): case L('a', 'f'):
{ {
static const short stress_lengths_af[8] = { 170, 140, 220, 220, 0, 0, 250, 270 }; static const short stress_lengths_af[8] = { 170, 140, 220, 220, 0, 0, 250, 270 };
tr->langopts.param[LOPT_CAPS_IN_WORD] = 1; // capitals indicate stressed syllables tr->langopts.param[LOPT_CAPS_IN_WORD] = 1; // capitals indicate stressed syllables
SetLetterVowel(tr, 'y'); SetLetterVowel(tr, 'y');
tr->langopts.max_lengthmod = 368; tr->langopts.max_lengthmod = 368;
tr->langopts.numbers = 0; // disable numbers until the definition are complete in _list file
} }
break; break;
case L('k', 'a'): // Georgian case L('k', 'a'): // Georgian

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



#define L(c1, c2) (c1<<8)+c2 // combine two characters into an integer for translator name #define L(c1, c2) (c1<<8)+c2 // combine two characters into an integer for translator name
#define L3(c1, c2, c3) (c1<<16)+(c2<<8) + c3 // combine three characters into an integer for translator name #define L3(c1, c2, c3) (c1<<16)+(c2<<8) + c3 // combine three characters into an integer for translator name
#define L4(c1, c2, c3, c4) (c1<<24)+(c2<<16)+(c3<<8) + c4 // combine four characters into an integer for translator name


#define CTRL_EMBEDDED 0x01 // control character at the start of an embedded command #define CTRL_EMBEDDED 0x01 // control character at the start of an embedded command
#define REPLACED_E 'E' // 'e' replaced by silent e #define REPLACED_E 'E' // 'e' replaced by silent e

Loading…
Cancel
Save