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> * - Andre Bernet <bernet.andre@gmail.com>
* - Andreas Weitl <andreas.weitl@gmx.de> * - Andreas Weitl <andreas.weitl@gmx.de>
* - Bertrand Songis <bsongis@gmail.com> * - Bertrand Songis <bsongis@gmail.com>
* - Benjamin Boy <rcbebo82@googlemail.com>
* - Thomas Husterer * - Thomas Husterer
* *
* opentx is based on code named * opentx is based on code named
@ -27,18 +28,22 @@
enum GermanPrompts { enum GermanPrompts {
DE_PROMPT_NUMBERS_BASE = 0, DE_PROMPT_NUMBERS_BASE = 0,
DE_PROMPT_NULL = DE_PROMPT_NUMBERS_BASE+0, DE_PROMPT_NULL = DE_PROMPT_NUMBERS_BASE+0,
DE_PROMPT_HUNDERT = DE_PROMPT_NUMBERS_BASE+100, DE_PROMPT_EIN = DE_PROMPT_NUMBERS_BASE+100,
DE_PROMPT_TAUSEND = DE_PROMPT_NUMBERS_BASE+101, DE_PROMPT_EINE = DE_PROMPT_NUMBERS_BASE+101,
DE_PROMPT_COMMA = 102, 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_UND,
DE_PROMPT_MINUS, DE_PROMPT_MINUS,
DE_PROMPT_UHR, DE_PROMPT_UHR,
DE_PROMPT_MINUTE, DE_PROMPT_MINUTE,
DE_PROMPT_MINUTEN, DE_PROMPT_MINUTEN,
DE_PROMPT_SECUNDE, DE_PROMPT_SEKUNDE,
DE_PROMPT_SECUNDEN, 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_VOLTS = DE_PROMPT_UNITS_BASE+UNIT_VOLTS,
DE_PROMPT_AMPS = DE_PROMPT_UNITS_BASE+UNIT_AMPS, DE_PROMPT_AMPS = DE_PROMPT_UNITS_BASE+UNIT_AMPS,
DE_PROMPT_METERS_PER_SECOND = DE_PROMPT_UNITS_BASE+UNIT_METERS_PER_SECOND, DE_PROMPT_METERS_PER_SECOND = DE_PROMPT_UNITS_BASE+UNIT_METERS_PER_SECOND,
@ -108,7 +113,7 @@ I18N_PLAY_FUNCTION(de, playNumber, getvalue_t number, uint8_t unit, uint8_t att)
unit = UNIT_FEET; unit = UNIT_FEET;
} }
if (unit == UNIT_SPEED) { if (unit == UNIT_SPEED) {
unit = UNIT_KTS; unit = UNIT_KTS;
} }
} }
unit++; unit++;
@ -138,74 +143,108 @@ I18N_PLAY_FUNCTION(de, playNumber, getvalue_t number, uint8_t unit, uint8_t att)
return; return;
} }
if (number >= 1000) { if (number >= 2000) {
if (number >= 1100) { PLAY_NUMBER(number / 1000, 0, 0);
PLAY_NUMBER(number / 1000, 0, 0); PUSH_NUMBER_PROMPT(DE_PROMPT_TAUSEND);
PUSH_NUMBER_PROMPT(DE_PROMPT_TAUSEND);
} else {
PUSH_NUMBER_PROMPT(DE_PROMPT_TAUSEND);
}
number %= 1000; number %= 1000;
if (number == 0)
number = -1;
} }
if (number >= 100) {
if (number >= 200) if ((number >= 1000) && (number < 2000)) {
PUSH_NUMBER_PROMPT(DE_PROMPT_NULL + number/100); 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); PUSH_NUMBER_PROMPT(DE_PROMPT_HUNDERT);
number %= 100; number %= 100;
if (number == 0)
number = -1;
} }
PUSH_NUMBER_PROMPT(DE_PROMPT_NULL+number);
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;
if (unit) { if (unit) {
DE_PUSH_UNIT_PROMPT(unit); DE_PUSH_UNIT_PROMPT(unit);
} }
} }
I18N_PLAY_FUNCTION(de, playDuration, int seconds PLAY_DURATION_ATT) I18N_PLAY_FUNCTION(de, playDuration, int seconds PLAY_DURATION_ATT)
{ {
if (seconds == 0) {
PLAY_NUMBER(seconds, 0, 0);
return;
}
if (seconds < 0) { if (seconds < 0) {
PUSH_NUMBER_PROMPT(DE_PROMPT_MINUS); PUSH_NUMBER_PROMPT(DE_PROMPT_MINUS);
seconds = -seconds; seconds = -seconds;
} }
uint8_t ore = 0;
uint8_t tmp = seconds / 3600; uint8_t tmp = seconds / 3600;
seconds %= 3600; seconds %= 3600;
if (tmp > 0 || IS_PLAY_TIME()) { 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; tmp = seconds / 60;
seconds %= 60; seconds %= 60;
if (tmp > 0 || ore >0) {
PLAY_NUMBER(tmp, 0, 0); if (tmp > 0) {
if (tmp != 1) { if (tmp > 1) {
#if defined(CPUARM) PLAY_NUMBER(tmp, 0, 0);
PUSH_UNIT_PROMPT(UNIT_MINUTES, 1);
} else {
PUSH_UNIT_PROMPT(UNIT_MINUTES, 0);
#else
PUSH_NUMBER_PROMPT(DE_PROMPT_MINUTEN); PUSH_NUMBER_PROMPT(DE_PROMPT_MINUTEN);
} else {
PUSH_NUMBER_PROMPT(DE_PROMPT_MINUTE);
#endif
} }
PUSH_NUMBER_PROMPT(DE_PROMPT_UND); else {
PUSH_NUMBER_PROMPT(DE_PROMPT_EINE);
PUSH_NUMBER_PROMPT(DE_PROMPT_MINUTE);
}
if (seconds > 0) {
PUSH_NUMBER_PROMPT(DE_PROMPT_UND);
}
} }
PLAY_NUMBER(seconds, 0, 0);
if (seconds != 1) { if (seconds > 1) {
#if defined(CPUARM) PLAY_NUMBER(seconds, 0, 0);
PUSH_UNIT_PROMPT(UNIT_SECONDS, 1); PUSH_NUMBER_PROMPT(DE_PROMPT_SEKUNDEN);
} else { }
PUSH_UNIT_PROMPT(UNIT_SECONDS, 0); else {
#else if (seconds == 1) {
PUSH_NUMBER_PROMPT(DE_PROMPT_SECUNDEN); PUSH_NUMBER_PROMPT(DE_PROMPT_EINE);
} else { PUSH_NUMBER_PROMPT(DE_PROMPT_SEKUNDE);
PUSH_NUMBER_PROMPT(DE_PROMPT_SECUNDE); }
#endif 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 = [] systemSounds = []
sounds = [] sounds = []
for i in range(101): for i in range(100):
systemSounds.append((str(i), filename(PROMPT_SYSTEM_BASE + i))) systemSounds.append((str(i), filename(PROMPT_SYSTEM_BASE + i)))
systemSounds.append(("tausend", filename(PROMPT_SYSTEM_BASE + 101))) systemSounds.append(("ein", filename(PROMPT_SYSTEM_BASE + 100)))
for i, s in enumerate(["comma", "und", "minus", "uhr", "minute", "minuten", "sekunde", "sekunden"]): systemSounds.append(("eine", filename(PROMPT_SYSTEM_BASE + 101)))
systemSounds.append((s, filename(PROMPT_SYSTEM_BASE + 102 + i))) systemSounds.append(("hundert", filename(PROMPT_SYSTEM_BASE + 102)))
for i, (s, f) in enumerate([(u"Volt","volt0"), systemSounds.append(("tausend", filename(PROMPT_SYSTEM_BASE + 103)))
(u"Ampere", "amp0"), for i, s in enumerate(["komma", "und", "minus", "uhr", "minute", "minuten", "sekunde", "sekunden", "stunde", "stunden"]):
(u"MilliAmpere", "mamp0"), 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"Knoten", "knot0"),
(u"Meter pro sekunde", "mps0"), (u"Meter pro sekunde", "mps0"),
(u"Fuss pro sekunde", "fps0"), (u"Fuss pro sekunde", "fps0"),
@ -26,7 +29,7 @@ for i, (s, f) in enumerate([(u"Volt","volt0"),
(u"Grad Celsius", "celsius0"), (u"Grad Celsius", "celsius0"),
(u"Grad Fahrenheit", "fahr0"), (u"Grad Fahrenheit", "fahr0"),
(u"Prozent", "percent0"), (u"Prozent", "percent0"),
(u"Milliampere pro stunde", "mamps0"), (u"Milliampär pro stunde", "mamps0"),
(u"Watt", "watt0"), (u"Watt", "watt0"),
(u"Milli Watt", "mwatt0"), (u"Milli Watt", "mwatt0"),
(u"D B", "db0"), (u"D B", "db0"),
@ -40,7 +43,7 @@ for i, (s, f) in enumerate([(u"Volt","volt0"),
(u"Minute", "minute0"), (u"Minuten", "minute1"), (u"Minute", "minute0"), (u"Minuten", "minute1"),
(u"Sekunde", "second0"), (u"Sekunden", "second1"), (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), for s, f, a in [(u"Inaktivitätsalarm", "inactiv", 486),
(u"Senderspannung schwach", "lowbatt", 485), (u"Senderspannung schwach", "lowbatt", 485),
(u"Gaskanal nicht Null, bitte prüfen", "thralert", 481), (u"Gaskanal nicht Null, bitte prüfen", "thralert", 481),