1
0
Fork 0
mirror of https://github.com/opentx/opentx.git synced 2025-07-25 17:25:13 +03:00

German spoken language fixed.

Spoken numbers fixed:
100 -> "ein", "hundert"
1000 -> "ein", "tausend"
999 -> "9", "hundert", "99"

Timers:
60 seconds -> "eine", "minute"
3600 seconds -> "eine", "stunde"
120 seconds -> "2", "minuten"

Sound files needed to be generated because new words are used.
This commit is contained in:
Benjamin Boy 2016-10-19 10:32:22 +02:00
parent 407cc432f2
commit 236d3149ee
2 changed files with 98 additions and 56 deletions

View file

@ -3,6 +3,7 @@
* - Andre Bernet <bernet.andre@gmail.com>
* - Andreas Weitl <andreas.weitl@gmx.de>
* - Bertrand Songis <bsongis@gmail.com>
* - Benjamin Boy <rcbebo82@googlemail.com>
* - Thomas Husterer
*
* opentx is based on code named
@ -27,18 +28,22 @@
enum GermanPrompts {
DE_PROMPT_NUMBERS_BASE = 0,
DE_PROMPT_NULL = DE_PROMPT_NUMBERS_BASE+0,
DE_PROMPT_HUNDERT = DE_PROMPT_NUMBERS_BASE+100,
DE_PROMPT_TAUSEND = DE_PROMPT_NUMBERS_BASE+101,
DE_PROMPT_COMMA = 102,
DE_PROMPT_EIN = DE_PROMPT_NUMBERS_BASE+100,
DE_PROMPT_EINE = DE_PROMPT_NUMBERS_BASE+101,
DE_PROMPT_HUNDERT = DE_PROMPT_NUMBERS_BASE+102,
DE_PROMPT_TAUSEND = DE_PROMPT_NUMBERS_BASE+103,
DE_PROMPT_COMMA = 104,
DE_PROMPT_UND,
DE_PROMPT_MINUS,
DE_PROMPT_UHR,
DE_PROMPT_MINUTE,
DE_PROMPT_MINUTEN,
DE_PROMPT_SECUNDE,
DE_PROMPT_SECUNDEN,
DE_PROMPT_SEKUNDE,
DE_PROMPT_SEKUNDEN,
DE_PROMPT_STUNDE,
DE_PROMPT_STUNDEN,
DE_PROMPT_UNITS_BASE = 110,
DE_PROMPT_UNITS_BASE = 114,
DE_PROMPT_VOLTS = DE_PROMPT_UNITS_BASE+UNIT_VOLTS,
DE_PROMPT_AMPS = DE_PROMPT_UNITS_BASE+UNIT_AMPS,
DE_PROMPT_METERS_PER_SECOND = DE_PROMPT_UNITS_BASE+UNIT_METERS_PER_SECOND,
@ -138,74 +143,108 @@ I18N_PLAY_FUNCTION(de, playNumber, getvalue_t number, uint8_t unit, uint8_t att)
return;
}
if (number >= 1000) {
if (number >= 1100) {
if (number >= 2000) {
PLAY_NUMBER(number / 1000, 0, 0);
PUSH_NUMBER_PROMPT(DE_PROMPT_TAUSEND);
} else {
PUSH_NUMBER_PROMPT(DE_PROMPT_TAUSEND);
}
number %= 1000;
if (number == 0)
number = -1;
}
if (number >= 100) {
if (number >= 200)
PUSH_NUMBER_PROMPT(DE_PROMPT_NULL + number/100);
if ((number >= 1000) && (number < 2000)) {
PUSH_NUMBER_PROMPT(DE_PROMPT_EIN);
PUSH_NUMBER_PROMPT(DE_PROMPT_TAUSEND);
number %= 1000;
}
if ((number >= 200) && (number < 1000)) {
PUSH_NUMBER_PROMPT(DE_PROMPT_NULL + number / 100);
PUSH_NUMBER_PROMPT(DE_PROMPT_HUNDERT);
number %= 100;
}
if ((number >= 100) && (number < 200)) {
PUSH_NUMBER_PROMPT(DE_PROMPT_EIN);
PUSH_NUMBER_PROMPT(DE_PROMPT_HUNDERT);
number %= 100;
}
if (number > 0){
if (number == 1){
PUSH_NUMBER_PROMPT(DE_PROMPT_EIN);
}
else {
PUSH_NUMBER_PROMPT(DE_PROMPT_NULL + number / 1);
number %= 1;
}
}
if (number == 0)
number = -1;
}
PUSH_NUMBER_PROMPT(DE_PROMPT_NULL+number);
if (unit) {
DE_PUSH_UNIT_PROMPT(unit);
}
}
I18N_PLAY_FUNCTION(de, playDuration, int seconds PLAY_DURATION_ATT)
{
if (seconds == 0) {
PLAY_NUMBER(seconds, 0, 0);
return;
}
if (seconds < 0) {
PUSH_NUMBER_PROMPT(DE_PROMPT_MINUS);
seconds = -seconds;
}
uint8_t ore = 0;
uint8_t tmp = seconds / 3600;
seconds %= 3600;
if (tmp > 0 || IS_PLAY_TIME()) {
PLAY_NUMBER(tmp, UNIT_HOURS, 0);
if (tmp > 1) {
PLAY_NUMBER(tmp, 0, 0);
PUSH_NUMBER_PROMPT(DE_PROMPT_STUNDEN);
}
else {
PUSH_NUMBER_PROMPT(DE_PROMPT_EINE);
PUSH_NUMBER_PROMPT(DE_PROMPT_STUNDE);
}
if (seconds > 0) {
PUSH_NUMBER_PROMPT(DE_PROMPT_UND);
}
}
tmp = seconds / 60;
seconds %= 60;
if (tmp > 0 || ore >0) {
if (tmp > 0) {
if (tmp > 1) {
PLAY_NUMBER(tmp, 0, 0);
if (tmp != 1) {
#if defined(CPUARM)
PUSH_UNIT_PROMPT(UNIT_MINUTES, 1);
} else {
PUSH_UNIT_PROMPT(UNIT_MINUTES, 0);
#else
PUSH_NUMBER_PROMPT(DE_PROMPT_MINUTEN);
} else {
PUSH_NUMBER_PROMPT(DE_PROMPT_MINUTE);
#endif
}
else {
PUSH_NUMBER_PROMPT(DE_PROMPT_EINE);
PUSH_NUMBER_PROMPT(DE_PROMPT_MINUTE);
}
if (seconds > 0) {
PUSH_NUMBER_PROMPT(DE_PROMPT_UND);
}
}
if (seconds > 1) {
PLAY_NUMBER(seconds, 0, 0);
if (seconds != 1) {
#if defined(CPUARM)
PUSH_UNIT_PROMPT(UNIT_SECONDS, 1);
} else {
PUSH_UNIT_PROMPT(UNIT_SECONDS, 0);
#else
PUSH_NUMBER_PROMPT(DE_PROMPT_SECUNDEN);
} else {
PUSH_NUMBER_PROMPT(DE_PROMPT_SECUNDE);
#endif
PUSH_NUMBER_PROMPT(DE_PROMPT_SEKUNDEN);
}
else {
if (seconds == 1) {
PUSH_NUMBER_PROMPT(DE_PROMPT_EINE);
PUSH_NUMBER_PROMPT(DE_PROMPT_SEKUNDE);
}
else {
PLAY_NUMBER(seconds, 0, 0);
}
}
}

View file

@ -8,14 +8,17 @@ from tts_common import filename, NO_ALTERNATE, PROMPT_SYSTEM_BASE, PROMPT_CUSTOM
systemSounds = []
sounds = []
for i in range(101):
for i in range(100):
systemSounds.append((str(i), filename(PROMPT_SYSTEM_BASE + i)))
systemSounds.append(("tausend", filename(PROMPT_SYSTEM_BASE + 101)))
for i, s in enumerate(["comma", "und", "minus", "uhr", "minute", "minuten", "sekunde", "sekunden"]):
systemSounds.append((s, filename(PROMPT_SYSTEM_BASE + 102 + i)))
for i, (s, f) in enumerate([(u"Volt","volt0"),
(u"Ampere", "amp0"),
(u"MilliAmpere", "mamp0"),
systemSounds.append(("ein", filename(PROMPT_SYSTEM_BASE + 100)))
systemSounds.append(("eine", filename(PROMPT_SYSTEM_BASE + 101)))
systemSounds.append(("hundert", filename(PROMPT_SYSTEM_BASE + 102)))
systemSounds.append(("tausend", filename(PROMPT_SYSTEM_BASE + 103)))
for i, s in enumerate(["komma", "und", "minus", "uhr", "minute", "minuten", "sekunde", "sekunden", "stunde", "stunden"]):
systemSounds.append((s, filename(PROMPT_SYSTEM_BASE + 104 + i)))
for i, (s, f) in enumerate([(u"Wolt","volt0"),
(u"Ampär", "amp0"),
(u"MilliAmpär", "mamp0"),
(u"Knoten", "knot0"),
(u"Meter pro sekunde", "mps0"),
(u"Fuss pro sekunde", "fps0"),
@ -26,7 +29,7 @@ for i, (s, f) in enumerate([(u"Volt","volt0"),
(u"Grad Celsius", "celsius0"),
(u"Grad Fahrenheit", "fahr0"),
(u"Prozent", "percent0"),
(u"Milliampere pro stunde", "mamps0"),
(u"Milliampär pro stunde", "mamps0"),
(u"Watt", "watt0"),
(u"Milli Watt", "mwatt0"),
(u"D B", "db0"),
@ -40,7 +43,7 @@ for i, (s, f) in enumerate([(u"Volt","volt0"),
(u"Minute", "minute0"), (u"Minuten", "minute1"),
(u"Sekunde", "second0"), (u"Sekunden", "second1"),
]):
systemSounds.append((s, filename(f, PROMPT_SYSTEM_BASE + 110 + i)))
systemSounds.append((s, filename(f, PROMPT_SYSTEM_BASE + 114 + i)))
for s, f, a in [(u"Inaktivitätsalarm", "inactiv", 486),
(u"Senderspannung schwach", "lowbatt", 485),
(u"Gaskanal nicht Null, bitte prüfen", "thralert", 481),