Added german translation

This commit is contained in:
Manuel 2021-01-24 13:50:20 +01:00
parent 785f4cad0e
commit cc3b1d0ad3
6 changed files with 598 additions and 2 deletions

View File

@ -156,4 +156,5 @@ DISTFILES += \
TRANSLATIONS += \
assets/translations/en.ts \
assets/translations/es.ts \
assets/translations/zh.ts
assets/translations/zh.ts \
assets/translations/de.ts

View File

@ -49,6 +49,7 @@
<file>messages/Welcome_EN.txt</file>
<file>messages/Welcome_ES.txt</file>
<file>messages/Welcome_ZH.txt</file>
<file>messages/Welcome_DE.txt</file>
<file>qml/Widgets/AccelerometerDelegate.qml</file>
<file>qml/Widgets/ArtificialHorizonDelegate.qml</file>
<file>qml/Widgets/BarDelegate.qml</file>
@ -75,5 +76,7 @@
<file>translations/zh.qm</file>
<file>translations/zh.ts</file>
<file>icons/drag-drop.svg</file>
<file>translations/de.qm</file>
<file>translations/de.ts</file>
</qresource>
</RCC>

View File

@ -0,0 +1,23 @@
________ _____ ______ ____________ _____________
__ ___/______________(_)_____ ___ / __ ___/_ /____ _______ /__(_)_____
_____ \_ _ \_ ___/_ /_ __ `/_ / _____ \_ __/ / / / __ /__ /_ __ \
____/ // __/ / _ / / /_/ /_ / ____/ // /_ / /_/ // /_/ / _ / / /_/ /
/____/ \___//_/ /_/ \__,_/ /_/ /____/ \__/ \__,_/ \__,_/ /_/ \____/
Willkommen bei Serial Studio! Um zu beginnen, wählen Sie bitte einen COM-Port und eine Baudrate in dem
Geräte-Fenster auf der rechten Seite. Wenn die serielle Verbindung erfolgreich ist und die eingehenden Daten
korrekt interpretiert werden, wird dieses Fenster automatisch geschlossen und das Dashboard
wird angezeigt. Andernfalls können Sie die Konsole verwenden, um die Quelle Ihres Problemes zu finden.
Verwenden Sie die Schaltflächen der Symbolleiste, um die Funktionen anzuzeigen die Sie verwenden möchten.
Wenn Sie ein Problem mit Serial Studio haben, melden Sie es bitte an:
→ https://github.com/Serial-Studio/Serial-Studio/issues
Sie können auch die Links im Fenster "Über" verwenden. Für Dokumentation bezüglich der
Verwendung von Serial Studio und Integration mit Ihren aktuellen MCU-Projekten, lesen Sie bitte das Wiki:
→ https://github.com/Serial-Studio/Serial-Studio/wiki

BIN
assets/translations/de.qm Normal file

Binary file not shown.

559
assets/translations/de.ts Normal file
View File

@ -0,0 +1,559 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="de" sourcelanguage="en">
<context>
<name>About</name>
<message>
<source>About</source>
<translation>Über</translation>
</message>
<message>
<source>Version %1</source>
<translation>Version %1</translation>
</message>
<message>
<source>The program is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.</source>
<translation></translation>
</message>
<message>
<source>Contact author</source>
<translation>Autor kontaktieren</translation>
</message>
<message>
<source>Report bug</source>
<translation>Fehler melden</translation>
</message>
<message>
<source>Check for updates</source>
<translation>Nach Updates suchen</translation>
</message>
<message>
<source>Documentation</source>
<translation>Dokumentation</translation>
</message>
<message>
<source>Close</source>
<translation>Schließen</translation>
</message>
<message>
<source>Copyright © 2020-%1 %2, released under the MIT License.</source>
<translation></translation>
</message>
</context>
<context>
<name>AccelerometerDelegate</name>
<message>
<source>G Units</source>
<translation>G Einheiten</translation>
</message>
<message>
<source>%1 G MAX</source>
<translation></translation>
</message>
<message>
<source>%1 G MIN</source>
<translation></translation>
</message>
<message>
<source>%1 G ACT</source>
<translation></translation>
</message>
<message>
<source>Reset</source>
<translation>Zurücksetzen</translation>
</message>
</context>
<context>
<name>Console</name>
<message>
<source>No data received so far...</source>
<translation>Noch keine Daten verfügbar...</translation>
</message>
<message>
<source>Send data to device</source>
<translation>Daten an das Gerät senden</translation>
</message>
</context>
<context>
<name>CsvPlayer</name>
<message>
<source>CSV Player</source>
<translation></translation>
</message>
<message>
<source>Invalid configuration for CSV player</source>
<translation>Konfiguration des CSV players ist ungültig</translation>
</message>
<message>
<source>You need to select a JSON map file in order to use this feature</source>
<translation>Sie müssen eine JSON-Modelldatei auswählen, um diese Funktion nutzen zu können</translation>
</message>
<message>
<source>Select CSV file</source>
<translation>CSV Datei auswählen</translation>
</message>
<message>
<source>Serial port open, do you want to continue?</source>
<translation>Serielle Schnittstelle offen, wollen Sie fortfahren?</translation>
</message>
<message>
<source>In order to use this feature, its necessary to disconnect from the serial port</source>
<translation>Um diese Funktion zu nutzen, ist es notwendig, die Verbindung zur seriellen Schnittstelle zu trennen</translation>
</message>
<message>
<source>There is an error with the data in the CSV file</source>
<translation>Es liegt ein Fehler in der CSV Datei vor</translation>
</message>
<message>
<source>Please verify that the CSV file was created with Serial Studio</source>
<translation>Überprüfen Sie ob die CSV mit Serial Studio erstellt ist</translation>
</message>
<message>
<source>Cannot read CSV file</source>
<translation>CSV-Datei kann nicht gelesen werden</translation>
</message>
<message>
<source>Please check file permissions &amp; location</source>
<translation>Prüfen Sie die Dateiberechtigungen und Dateipfade</translation>
</message>
<message>
<source>Replay of %1</source>
<translation>Wiederholen von %1</translation>
</message>
<message>
<source>CSV files</source>
<translation>CSV Dateien</translation>
</message>
</context>
<context>
<name>DataGrid</name>
<message>
<source>View</source>
<translation>Ansicht</translation>
</message>
<message>
<source>Horizontal Range</source>
<translation>Horizontaler Bereich</translation>
</message>
<message>
<source>Data Groups</source>
<translation>Daten Gruppen</translation>
</message>
<message>
<source>Data Plots</source>
<translation>Daten-Diagramme</translation>
</message>
<message>
<source>Data</source>
<translation>Daten</translation>
</message>
</context>
<context>
<name>DeviceManager</name>
<message>
<source>Communication Mode</source>
<translation type="vanished">Komunikations Modus</translation>
</message>
<message>
<source>COM Port</source>
<translation type="vanished">COM Schnittstelle</translation>
</message>
<message>
<source>Baud Rate</source>
<translation type="vanished">Baud rate</translation>
</message>
<message>
<source>Data Bits</source>
<translation type="vanished">Data bits</translation>
</message>
<message>
<source>Stop Bits</source>
<translation type="vanished">Stop bits</translation>
</message>
<message>
<source>Flow Control</source>
<translation type="vanished">Fluss-Kontrolle</translation>
</message>
</context>
<context>
<name>Downloader</name>
<message>
<source>Updater</source>
<translation></translation>
</message>
<message>
<source>Downloading updates</source>
<translation>Herunterladen der Updates</translation>
</message>
<message>
<source>Time remaining: 0 minutes</source>
<translation>Verbleibende Zeit: 0 Minuten</translation>
</message>
<message>
<source>Open</source>
<translation>Öffnen</translation>
</message>
<message>
<source>Stop</source>
<translation></translation>
</message>
<message>
<source>Time remaining</source>
<translation>Zeit übrig</translation>
</message>
<message>
<source>unknown</source>
<translation>unbekant</translation>
</message>
<message>
<source>Error</source>
<translation>Fehler</translation>
</message>
<message>
<source>Cannot find downloaded update!</source>
<translation>Heruntergeladenes Update konnte nicht gefunden werden!</translation>
</message>
<message>
<source>Close</source>
<translation>Schließen</translation>
</message>
<message>
<source>Download complete!</source>
<translation>Download abgeschlossen!</translation>
</message>
<message>
<source>The installer will open separately</source>
<translation>Der Installationsprogramm öffnet sich in einem neuen Fenster</translation>
</message>
<message>
<source>Click &quot;OK&quot; to begin installing the update</source>
<translation>Klicken Sie auf &quot;OK&quot;, um die Installation des Updates zu starten</translation>
</message>
<message>
<source>In order to install the update, you may need to quit the application.</source>
<translation>Um das Update zu installieren, müssen Sie eventuell die Anwendung beenden.</translation>
</message>
<message>
<source>In order to install the update, you may need to quit the application. This is a mandatory update, exiting now will close the application</source>
<translation>Um das Update zu installieren, müssen Sie eventuell die Anwendung beenden. Dieses update is ein obligatorisches Update, die Anwedung wird jetzt geschlossen</translation>
</message>
<message>
<source>Click the &quot;Open&quot; button to apply the update</source>
<translation>Klicken Sie auf die Schaltfläche &quot;Öffnen&quot;, um das Update anzuwenden</translation>
</message>
<message>
<source>Are you sure you want to cancel the download?</source>
<translation>Sind Sie sicher, dass Sie den Download abbrechen möchten?</translation>
</message>
<message>
<source>Are you sure you want to cancel the download? This is a mandatory update, exiting now will close the application</source>
<translation>Sind Sie sicher, dass Sie den Download abbrechen möchten? Dies ist ein obligatorisches Update. Wenn Sie jetzt abbrechen, wird die Anwendung geschlossen</translation>
</message>
<message>
<source>%1 bytes</source>
<translation></translation>
</message>
<message>
<source>%1 KB</source>
<translation></translation>
</message>
<message>
<source>%1 MB</source>
<translation></translation>
</message>
<message>
<source>of</source>
<translation>von</translation>
</message>
<message>
<source>Downloading Updates</source>
<translation>Herunterladen von Updates</translation>
</message>
<message>
<source>Time Remaining</source>
<translation>Verbleibende Zeit</translation>
</message>
<message>
<source>Unknown</source>
<translation>Unbekannt</translation>
</message>
<message>
<source>about %1 hours</source>
<translation>etwa %1 Stunden</translation>
</message>
<message>
<source>about one hour</source>
<translation>etwa 1 Stunde</translation>
</message>
<message>
<source>%1 minutes</source>
<translation>%1 Minuten</translation>
</message>
<message>
<source>1 minute</source>
<translation>1 Minute</translation>
</message>
<message>
<source>%1 seconds</source>
<translation>%1 Sekunden</translation>
</message>
<message>
<source>1 second</source>
<translation>1 Sekunde</translation>
</message>
</context>
<context>
<name>Export</name>
<message>
<source>CSV file not open</source>
<translation>CSV Datei nicht geöffnet</translation>
</message>
<message>
<source>Cannot find CSV export file!</source>
<translation>Konnte CSV exportierte Datei nicht finden!</translation>
</message>
<message>
<source>CSV File Error</source>
<translation>CSV Datei Fehler</translation>
</message>
<message>
<source>Cannot open CSV file for writing!</source>
<translation>Konnte nicht in CSV schreiben!</translation>
</message>
</context>
<context>
<name>Group</name>
<message>
<source>Invalid</source>
<translation>Ungültig</translation>
</message>
</context>
<context>
<name>GyroDelegate</name>
<message>
<source>%1° YAW</source>
<translation>%1 Gierachse</translation>
</message>
<message>
<source>%1° ROLL</source>
<translation>%1 Rollachse</translation>
</message>
<message>
<source>%1° PITCH</source>
<translation>%1° Neigachse</translation>
</message>
</context>
<context>
<name>JsonGenerator</name>
<message>
<source>Select JSON map file</source>
<translation>JSON Modelldatei auswählen</translation>
</message>
<message>
<source>JSON parse error</source>
<translation>JSON-Parsing-Fehler</translation>
</message>
<message>
<source>JSON map file loaded successfully!</source>
<translation>JSON Modelldatei erfolgreich geladen!</translation>
</message>
<message>
<source>File &quot;%1&quot; loaded into memory</source>
<translation>Datei %1 geladen</translation>
</message>
<message>
<source>Cannot read JSON file</source>
<translation>JSON-Datei kann nicht gelesen werden</translation>
</message>
<message>
<source>Please check file permissions &amp; location</source>
<translation>Prüfen Sie die Dateiberechtigungen und Dateipfade</translation>
</message>
<message>
<source>JSON/serial data format mismatch</source>
<translation>JSON/serielles Datenformat stimmt nicht überein</translation>
</message>
<message>
<source>The format of the received data does not correspond to the selected JSON map file.</source>
<translation>Das Format der empfangenen Daten stimmt nicht mit der ausgewählten JSON Modelldatei überein.</translation>
</message>
<message>
<source>JSON files</source>
<translation>JSON Dateien</translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<source>Failed to load welcome text :(</source>
<translation>Begrüßungstext konnte nicht geladen werden :(</translation>
</message>
</context>
<context>
<name>SerialManager</name>
<message>
<source>No Device</source>
<translation>Kein Gerät</translation>
</message>
<message>
<source>Received: %1 %2</source>
<translation>Empfangen: %1 %2</translation>
</message>
<message>
<source>Select Port</source>
<translation>Port auswählen</translation>
</message>
<message>
<source>None</source>
<translation>Keine</translation>
</message>
<message>
<source>Even</source>
<translation>Gerade</translation>
</message>
<message>
<source>Odd</source>
<translation>Ungerade</translation>
</message>
<message>
<source>Space</source>
<translation></translation>
</message>
<message>
<source>Mark</source>
<translation></translation>
</message>
<message>
<source>Critical serial port error</source>
<translation>Kritischer Fehler an der seriellen Schnittstelle</translation>
</message>
</context>
<context>
<name>Setup</name>
<message>
<source>Communication Mode</source>
<translation>Komunikations Modus</translation>
</message>
<message>
<source>Auto (JSON from serial device)</source>
<translation>Auto (JSON von Gerät)</translation>
</message>
<message>
<source>Manual (use JSON map file)</source>
<translation>Manuell (JSON Modelldatei)</translation>
</message>
<message>
<source>Change map file (%1)</source>
<translation>Modelldatei ändern (%1)</translation>
</message>
<message>
<source>Select map file</source>
<translation>Modelldatei auswählen</translation>
</message>
<message>
<source>COM Port</source>
<translation>COM Schnittstelle</translation>
</message>
<message>
<source>Baud Rate</source>
<translation>Baud rate</translation>
</message>
<message>
<source>Data Bits</source>
<translation>Data bits</translation>
</message>
<message>
<source>Parity</source>
<translation>Parität</translation>
</message>
<message>
<source>Stop Bits</source>
<translation>Stop bits</translation>
</message>
<message>
<source>Flow Control</source>
<translation>Fluss-Kontrolle</translation>
</message>
<message>
<source>Language</source>
<translation>Sprache</translation>
</message>
</context>
<context>
<name>Toolbar</name>
<message>
<source>Console</source>
<translation>Konsole</translation>
</message>
<message>
<source>Widgets</source>
<translation></translation>
</message>
<message>
<source>About</source>
<translation>Über</translation>
</message>
<message>
<source>CSV Export</source>
<translation></translation>
</message>
<message>
<source>Dashboard</source>
<translation></translation>
</message>
<message>
<source>CSV Player</source>
<translation></translation>
</message>
<message>
<source>Log</source>
<translation></translation>
</message>
<message>
<source>Open CSV</source>
<translation>CSV Öffnen</translation>
</message>
<message>
<source>Setup</source>
<translation>Einstellungen</translation>
</message>
</context>
<context>
<name>Updater</name>
<message>
<source>Would you like to download the update now?</source>
<translation>Möchten Sie das Update jetzt herunterladen?</translation>
</message>
<message>
<source>Would you like to download the update now? This is a mandatory update, exiting now will close the application</source>
<translation>Möchten Sie das Update jetzt herunterladen? Dies ist ein obligatorisches Update, die Anwedung wird jetzt geschlossen</translation>
</message>
<message>
<source>Version %1 of %2 has been released!</source>
<translation>Die Version %1 von %2 ist verfügbar!</translation>
</message>
<message>
<source>No updates are available for the moment</source>
<translation>Im Moment sind keine Updates verfügbar</translation>
</message>
<message>
<source>Congratulations! You are running the latest version of %1</source>
<translation>Glückwunsch! Sie verwenden die neueste Version von %1</translation>
</message>
</context>
<context>
<name>main</name>
<message>
<source>Check for updates automatically?</source>
<translation>Automatish auf Updates prüfen?</translation>
</message>
<message>
<source>Should %1 automatically check for updates? You can always check for updates manually from the &quot;About&quot; dialog</source>
<translation>Soll %1 Automatish auf Updates prüfen? Sie können jederzeit manuell über den &quot;Über&quot;-Dialog nach Updates suchen</translation>
</message>
<message>
<source>Drop JSON and CSV files here</source>
<translation type="unfinished">JSON und CSV Dateien hierher Ziehen</translation>
</message>
</context>
</TS>

View File

@ -61,6 +61,9 @@ int Translator::systemLanguage() const
case QLocale::Chinese:
lang = 2;
break;
case QLocale::German:
lang = 3;
break;
default:
lang = 0;
break;
@ -101,6 +104,9 @@ QString Translator::welcomeConsoleText() const
case 2:
lang = "ZH";
break;
case 3:
lang = "DE";
break;
default:
lang = "EN";
break;
@ -122,7 +128,7 @@ QString Translator::welcomeConsoleText() const
*/
QStringList Translator::availableLanguages() const
{
return QStringList { "English", "Español", "简体中文" };
return QStringList { "English", "Español", "简体中文", "Deutsch"};
}
/**
@ -150,6 +156,10 @@ void Translator::setLanguage(const int language)
langName = "zh";
locale = QLocale(QLocale::Chinese);
break;
case 3:
langName = "de";
locale = QLocale(QLocale::German);
break;
default:
langName = "en";
locale = QLocale(QLocale::English);