From 0309cfd649c7daf29d3d25a4b59451bc78fcab3a Mon Sep 17 00:00:00 2001
From: cdricms <36056008+cdricms@users.noreply.github.com>
Date: Mon, 20 Jul 2026 11:20:32 +0200
Subject: [PATCH] feat(l10n): add German translations
Translate all 253 user-facing strings to German (formal "Sie"; standard iOS
term conventions). Generates values-de/strings.xml for KMP, de localizations in
the Apple catalog, and adds de to CFBundleLocalizations.
---
apple/VniDrop/Resources/Info.plist | 1 +
apple/VniDrop/Resources/Localizable.xcstrings | 1530 +++++++++++++++++
localization/strings.json | 763 +++++---
.../composeResources/values-de/strings.xml | 257 +++
4 files changed, 2298 insertions(+), 253 deletions(-)
create mode 100644 shared/src/commonMain/composeResources/values-de/strings.xml
diff --git a/apple/VniDrop/Resources/Info.plist b/apple/VniDrop/Resources/Info.plist
index e267c3e..5876924 100644
--- a/apple/VniDrop/Resources/Info.plist
+++ b/apple/VniDrop/Resources/Info.plist
@@ -8,6 +8,7 @@
fr
es
it
+ de
CADisableMinimumFrameDurationOnPhone
diff --git a/apple/VniDrop/Resources/Localizable.xcstrings b/apple/VniDrop/Resources/Localizable.xcstrings
index a7d26e5..8986802 100644
--- a/apple/VniDrop/Resources/Localizable.xcstrings
+++ b/apple/VniDrop/Resources/Localizable.xcstrings
@@ -9,6 +9,12 @@
"comment": "Apple format template composing three values with a middot separator (e.g. metadata rows). Legacy literal key — rename.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "%1$@ %2$@ · %3$@"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -39,6 +45,12 @@
"comment": "Apple format template composing two values with a middot separator. Legacy literal key — rename.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "%1$@ · %2$@"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -73,6 +85,12 @@
"comment": "About screen: button/link that opens the bug report form.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Fehler melden"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -103,6 +121,12 @@
"comment": "About screen: intro paragraph describing what VniDrop does.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "VniDrop überträgt Dateien und Ordner direkt von einem Gerät auf ein anderes über das Netzwerk, ohne sie auf einen Hosting-Dienst hochzuladen. Es muss kein Konto erstellt werden, und nach Abschluss verbleibt keine Kopie Ihrer Übertragung in der Cloud."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -133,6 +157,12 @@
"comment": "About screen, 'What VniDrop is' list: point about direct device-to-device transfer.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Eine direkte Gerät-zu-Gerät-Übertragung – Ihre Dateien gehen direkt an den Empfänger."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -163,6 +193,12 @@
"comment": "About screen, 'What VniDrop is' list: point about encrypted, verified connections.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Verbindungen sind authentifiziert und Ende-zu-Ende-verschlüsselt (über Iroh), und eingehende Dateien werden anhand ihres Inhalts-Hashs überprüft."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -193,6 +229,12 @@
"comment": "About screen, 'What VniDrop is' list: point about controlling who receives.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Sie entscheiden, wer empfängt: Genehmigen Sie jede Anfrage oder öffnen Sie eine Übertragung für alle, die die Einladung besitzen."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -223,6 +265,12 @@
"comment": "About screen, 'What VniDrop is' list: point about being account-free.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Ohne Konto – es gibt nichts zu registrieren."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -253,6 +301,12 @@
"comment": "About screen, 'What VniDrop is' list: point about being open source.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Open Source, veröffentlicht unter der Apache-2.0-Lizenz."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -283,6 +337,12 @@
"comment": "About screen: section heading for the 'What VniDrop is' list.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Was VniDrop ist"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -313,6 +373,12 @@
"comment": "About screen, 'What VniDrop isn't' list: point about not being cloud storage.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Kein Cloud-Speicher – kein Server hält Ihre Dateien, und nach einer Übertragung wartet nichts in der Cloud."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -343,6 +409,12 @@
"comment": "About screen, 'What VniDrop isn't' list: point about invitations not being public broadcasts.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Keine öffentliche Übertragung – eine Einladung ist ein privater Zugangslink, keine Ankündigung an alle in der Nähe."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -373,6 +445,12 @@
"comment": "About screen, 'What VniDrop isn't' list: point about not being sync/backup.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Kein Synchronisierungs- oder Backup-Dienst."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -403,6 +481,12 @@
"comment": "About screen: section heading for the 'What VniDrop isn't' list.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Was VniDrop nicht ist"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -433,6 +517,12 @@
"comment": "About screen: label for the license row.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Lizenz"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -463,6 +553,12 @@
"comment": "About screen: link to the privacy policy.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Datenschutzrichtlinie"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -493,6 +589,12 @@
"comment": "About screen, Privacy & security list: point that invitations are capabilities to share carefully.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Einladungen sind Zugangsschlüssel. Behandeln Sie einen QR-Code, ein NFC-Tag oder eine .vnd-Datei wie einen privaten Zugangslink und teilen Sie ihn nur mit den vorgesehenen Personen – insbesondere bei „Jeder mit dieser Übertragung“."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -523,6 +625,12 @@
"comment": "About screen, Privacy & security list: point about denying unknown requests by default.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Standardmäßig ablehnen – VniDrop stellt nur den Inhalt einer aktiven Freigabe bereit und weist unbekannte Anfragen ab."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -553,6 +661,12 @@
"comment": "About screen, Privacy & security list: point about received files staying local and never overwriting.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Empfangene Dateien werden auf Ihrem Gerät gespeichert und überschreiben niemals eine vorhandene Datei."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -583,6 +697,12 @@
"comment": "About screen: label for the privacy policy row.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Datenschutzrichtlinie"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -613,6 +733,12 @@
"comment": "About screen, Privacy & security list: point explaining encrypted relays.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wenn zwei Geräte sich nicht direkt verbinden können, kann die verschlüsselte Verbindung weitergeleitet werden. Relays leiten nur verschlüsselte Pakete weiter; sie speichern niemals Ihre Dateien."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -643,6 +769,12 @@
"comment": "About screen: section heading for the Privacy & security list.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Datenschutz & Sicherheit"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -673,6 +805,12 @@
"comment": "About screen: short tagline under the app name.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Senden Sie Dateien direkt. Behalten Sie die Kontrolle darüber, wer sie empfängt."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -703,6 +841,12 @@
"comment": "About screen: navigation/screen title.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Über"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -733,6 +877,12 @@
"comment": "Settings > Appearance: description for the System/auto option.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Der hellen oder dunklen Darstellung dieses Geräts folgen."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -763,6 +913,12 @@
"comment": "Settings > Appearance: label for the dark theme option.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Dunkelmodus"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -793,6 +949,12 @@
"comment": "Settings > Appearance: label for the light theme option.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Hellmodus"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -823,6 +985,12 @@
"comment": "Settings > Appearance: label for the follow-system option.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "System"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -853,6 +1021,12 @@
"comment": "Settings > Appearance: section title.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Darstellung"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -883,6 +1057,12 @@
"comment": "Approval prompt: title when a receiver requests to download a transfer.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Empfangsanfrage"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -913,6 +1093,12 @@
"comment": "Approval prompt: shows the requesting device's ID. {arg1} = device/endpoint identifier.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Geräte-ID: %1$@"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -943,6 +1129,12 @@
"comment": "Approval prompt: fallback label for a requester with no display name.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Ein Gerät in der Nähe"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -973,6 +1165,12 @@
"comment": "Send/transfer list: badge showing how many receive requests are awaiting approval. {count} = pending requests.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "%1$d Anfragen warten"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1003,6 +1201,12 @@
"comment": "Approval prompt body: '{arg1} wants to receive \"{arg2}\".' {arg1} = requester name, {arg2} = transfer name.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "%1$@ möchte „%2$@“ empfangen."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1033,6 +1237,12 @@
"comment": "Device information row: battery level label.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Batteriestand"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1063,6 +1273,12 @@
"comment": "Bug report form: placeholder text in the contact email field.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "name@beispiel.com"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1093,6 +1309,12 @@
"comment": "Bug report form: label for the optional contact email field.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Kontakt-E-Mail (optional)"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1123,6 +1345,12 @@
"comment": "Bug report form: intro text explaining what gets attached.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Sagen Sie uns, was schiefgelaufen ist. Wir hängen Geräteinformationen und optional aktuelle Protokolle an (sensible Werte werden geschwärzt)."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1153,6 +1381,12 @@
"comment": "Bug report form: heading for the attached device information section.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Geräteinformationen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1183,6 +1417,12 @@
"comment": "Bug report form: placeholder in the 'what did you expect' field.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Beschreiben Sie, was Sie erwartet haben"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1213,6 +1453,12 @@
"comment": "Bug report form: label for the expected-behavior field.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Was haben Sie erwartet?"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1243,6 +1489,12 @@
"comment": "Bug report form: toggle label to attach recent logs.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Aktuelle Protokolle einschließen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1273,6 +1525,12 @@
"comment": "Bug report form: explanation under the include-logs toggle.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Hilft uns, das Problem zu diagnostizieren. Sensible Werte werden vor dem Senden geschwärzt."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1303,6 +1561,12 @@
"comment": "Bug report form: label showing the size of the log attachment.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Größe des Protokollanhangs"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1333,6 +1597,12 @@
"comment": "Bug report form: validation error when the expected-behavior field is empty.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Bitte beschreiben Sie, was Sie erwartet haben."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1363,6 +1633,12 @@
"comment": "Bug report form: validation error when the what-happened field is empty.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Bitte beschreiben Sie, was passiert ist."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1393,6 +1669,12 @@
"comment": "Bug report form: placeholder in the steps-to-reproduce field.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Listen Sie die Schritte zum Reproduzieren des Problems auf"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1423,6 +1705,12 @@
"comment": "Bug report form: label for the optional steps-to-reproduce field.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Schritte zum Reproduzieren (optional)"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1453,6 +1741,12 @@
"comment": "Bug report form: submit button.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Bericht senden"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1483,6 +1777,12 @@
"comment": "Bug report form: error message when submission fails.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Der Fehlerbericht konnte nicht gesendet werden. Bitte versuchen Sie es später erneut."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1513,6 +1813,12 @@
"comment": "Bug report form: confirmation message after a successful submission.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Danke – Ihr Fehlerbericht wurde erfasst."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1543,6 +1849,12 @@
"comment": "Bug report form: progress label while the report is being sent.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wird gesendet…"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1573,6 +1885,12 @@
"comment": "Bug report form: placeholder in the what-happened field.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Beschreiben Sie, was passiert ist"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1603,6 +1921,12 @@
"comment": "Bug report form: label for the what-happened field.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Was ist passiert?"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1633,6 +1957,12 @@
"comment": "Button: approve a receiver's request.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Genehmigen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1663,6 +1993,12 @@
"comment": "Button: go back to the previous step/screen.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Zurück"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1693,6 +2029,12 @@
"comment": "Button: cancel the current action or dialog.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Abbrechen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1723,6 +2065,12 @@
"comment": "Button: cancel an in-progress receive.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Abbrechen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1753,6 +2101,12 @@
"comment": "Button: change the selected files in the send flow.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Dateien ändern"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1783,6 +2137,12 @@
"comment": "Button: open the file picker to choose files to send.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Dateien auswählen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1813,6 +2173,12 @@
"comment": "Button: open the folder picker (send selection or receive folder).",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Ordner auswählen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1843,6 +2209,12 @@
"comment": "Button: clear the current input or selection.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Löschen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1873,6 +2245,12 @@
"comment": "Button: close the current sheet/dialog.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Schließen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1903,6 +2281,12 @@
"comment": "Button: start creating a new transfer (Send tab).",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Neue Übertragung"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1933,6 +2317,12 @@
"comment": "Button: delete a transfer.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Übertragung löschen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1963,6 +2353,12 @@
"comment": "Button: save the invitation as a .vnd file.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": ".vnd-Datei sichern"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -1993,6 +2389,12 @@
"comment": "Button: open the OS share sheet to share the invitation.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Einladung teilen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2023,6 +2425,12 @@
"comment": "Button: open the OS Settings app (e.g. for permissions).",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Einstellungen öffnen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2053,6 +2461,12 @@
"comment": "Button: receive label (Receive action).",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Empfangen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2083,6 +2497,12 @@
"comment": "Button: start receiving a transfer.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Empfang starten"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2113,6 +2533,12 @@
"comment": "Button: refuse a receiver's request.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Ablehnen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2143,6 +2569,12 @@
"comment": "Button: remove a single file from the send selection.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Datei entfernen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2173,6 +2605,12 @@
"comment": "Button: reset a setting to its default value.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Standard verwenden"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2203,6 +2641,12 @@
"comment": "Button: retry after a failed operation.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wiederholen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2233,6 +2677,12 @@
"comment": "Button: start sharing the transfer (make it available).",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Freigabe starten"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2263,6 +2713,12 @@
"comment": "Button: disabled/loading state while the transfer is being prepared.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Übertragung wird vorbereitet…"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2293,6 +2749,12 @@
"comment": "Button: reveal a received file in the Files app.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "In „Dateien“ anzeigen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2323,6 +2785,12 @@
"comment": "Button: write the invitation to an NFC tag.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Auf NFC-Tag schreiben"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2353,6 +2821,12 @@
"comment": "Device information row: device model label.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Gerätemodell"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2383,6 +2857,12 @@
"comment": "Device information row: device name label.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Gerätename"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2413,6 +2893,12 @@
"comment": "Settings > Diagnostics: explanation of what anonymous diagnostics collect.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Anonyme Absturzberichte und Nutzungsereignisse senden, damit wir VniDrop verbessern können. Sie können dies jederzeit deaktivieren. Einladungen, Dateipfade und Übertragungsinhalte werden niemals einbezogen."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2443,6 +2929,12 @@
"comment": "Settings > Diagnostics: confirmation shown when diagnostics are turned off.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Die Freigabe von Diagnosedaten ist deaktiviert."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2473,6 +2965,12 @@
"comment": "Settings > Diagnostics: confirmation shown when diagnostics are turned on.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Die Freigabe von Diagnosedaten ist aktiviert."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2503,6 +3001,12 @@
"comment": "Settings > Diagnostics: toggle title.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Diagnosedaten teilen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2533,6 +3037,12 @@
"comment": "Error: camera permission is needed to scan a QR code.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Für das Scannen eines QR-Codes ist Kamerazugriff erforderlich."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2563,6 +3073,12 @@
"comment": "Error: device information could not be loaded.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Geräteinformationen konnten nicht geladen werden."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2593,6 +3109,12 @@
"comment": "Error: the selected files/folder could not be accessed.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "VniDrop konnte nicht auf die ausgewählten Dateien oder den Ordner zugreifen. Überprüfen Sie die Berechtigungen und versuchen Sie es erneut."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2623,6 +3145,12 @@
"comment": "Error: generic fallback message.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Etwas ist schiefgelaufen. Versuchen Sie es erneut."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2653,6 +3181,12 @@
"comment": "Error: the app failed to finish starting up.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "VniDrop konnte den Start nicht abschließen. Schließen Sie die App und versuchen Sie es erneut."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2683,6 +3217,12 @@
"comment": "Error: the invitation/ticket could not be parsed.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Diese Einladung konnte nicht gelesen werden. Bitten Sie den Absender um eine neue."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2713,6 +3253,12 @@
"comment": "Error: the opened invitation contained no data.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Diese Einladung ist leer. Versuchen Sie, sie erneut zu öffnen."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2743,6 +3289,12 @@
"comment": "Error: the native library is missing from the build.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Die native VniDrop-Bibliothek fehlt in diesem Build."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2773,6 +3325,12 @@
"comment": "Error: the NFC tag could not be read/used.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Dieses NFC-Tag konnte nicht verwendet werden. Versuchen Sie ein anderes."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2803,6 +3361,12 @@
"comment": "Error: the transfer was not approved or was refused by the sender.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Der Absender hat diese Übertragung nicht genehmigt oder sie wurde abgelehnt."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2833,6 +3397,12 @@
"comment": "Error: transfer data could not be saved locally.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "VniDrop konnte die Übertragungsdaten auf diesem Gerät nicht speichern."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2863,6 +3433,12 @@
"comment": "Error: the selected item could not be opened.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Das ausgewählte Objekt konnte nicht geöffnet werden. Versuchen Sie, es erneut auszuwählen."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2893,6 +3469,12 @@
"comment": "Error: attempted to share with nothing selected.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wählen Sie mindestens ein Objekt zum Teilen aus."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2923,6 +3505,12 @@
"comment": "Error: the app could not open its network sockets.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "VniDrop konnte seine Netzwerk-Sockets auf diesem Gerät nicht öffnen."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2953,6 +3541,12 @@
"comment": "Error: an invitation was opened before startup finished.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "VniDrop startet noch. Öffnen Sie die Einladung gleich erneut."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -2983,6 +3577,12 @@
"comment": "Error: the transfer could not be completed.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Die Übertragung konnte nicht abgeschlossen werden. Überprüfen Sie Ihre Verbindung und versuchen Sie es erneut."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3013,6 +3613,12 @@
"comment": "Text field label: the receiver's display name.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Empfängername"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3043,6 +3649,12 @@
"comment": "Text field label: the sender's display name.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Absendername"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3073,6 +3685,12 @@
"comment": "Text field label: the name given to a transfer.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Übertragungsname"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3103,6 +3721,12 @@
"comment": "Settings text field label: this device's display name.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Anzeigename"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3133,6 +3757,12 @@
"comment": "Receive-folder status: permission is required to write to the chosen folder.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Berechtigung erforderlich"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3163,6 +3793,12 @@
"comment": "Receive-folder status: the chosen folder is unavailable.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Nicht verfügbar"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3193,6 +3829,12 @@
"comment": "Receive-folder status: the folder is being checked.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Ordner wird geprüft…"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3223,6 +3865,12 @@
"comment": "Receive-folder status: the folder is valid and writable.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Bereit"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3253,6 +3901,12 @@
"comment": "Transfer metadata label: number of files.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Dateien"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3283,6 +3937,12 @@
"comment": "Transfer metadata label: total size.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Größe"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3313,6 +3973,12 @@
"comment": "Transfer metadata label: current status.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Status"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3343,6 +4009,12 @@
"comment": "Bottom navigation: Receive tab label.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Empfangen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3373,6 +4045,12 @@
"comment": "Bottom navigation: Send tab label.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Senden"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3403,6 +4081,12 @@
"comment": "Bottom navigation: Settings tab label.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Einstellungen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3433,6 +4117,12 @@
"comment": "Device information row: network label.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Netzwerk"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3463,6 +4153,12 @@
"comment": "Settings > Notifications: explanation of what notifications are used for.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Werden Sie über neue Empfangsanfragen benachrichtigt, während VniDrop im Hintergrund läuft."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3493,6 +4189,12 @@
"comment": "Settings > Notifications: confirmation when notifications are enabled.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Mitteilungen aktiviert."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3523,6 +4225,12 @@
"comment": "Settings > Notifications: label for the allow-notifications action.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Mitteilungen erlauben"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3553,6 +4261,12 @@
"comment": "Settings > Notifications: message when the OS permission is denied.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Mitteilungen sind für VniDrop deaktiviert. Sie können sie in den Einstellungen aktivieren."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3583,6 +4297,12 @@
"comment": "Settings > Notifications: error when the OS notification settings can't be opened.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Die Mitteilungseinstellungen konnten nicht geöffnet werden."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3613,6 +4333,12 @@
"comment": "Settings > Notifications: section title.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Mitteilungen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3643,6 +4369,12 @@
"comment": "Settings > Notifications: message when notifications aren't supported on the device.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Mitteilungen sind auf diesem Gerät nicht verfügbar."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3673,6 +4405,12 @@
"comment": "Device information row: operating system version label.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Betriebssystem"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3703,6 +4441,12 @@
"comment": "Settings > Preferences: label for the received-files destination folder.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Empfangene Übertragungen sichern in"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3733,6 +4477,12 @@
"comment": "Settings > Preferences: section title.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Voreinstellungen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3763,6 +4513,12 @@
"comment": "Transfer progress label: cancelled.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Abgebrochen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3793,6 +4549,12 @@
"comment": "Transfer progress label: completed.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Abgeschlossen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3823,6 +4585,12 @@
"comment": "Transfer progress label: connected.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Verbunden"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3853,6 +4621,12 @@
"comment": "Transfer progress label: connecting.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Verbinden"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3883,6 +4657,12 @@
"comment": "Transfer progress label: downloading.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wird geladen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3913,6 +4693,12 @@
"comment": "Transfer progress label: failed.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Fehlgeschlagen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3943,6 +4729,12 @@
"comment": "Transfer progress label: getting ready.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wird bereitgemacht"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -3973,6 +4765,12 @@
"comment": "Transfer progress label: the transfer was interrupted.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Übertragung unterbrochen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4003,6 +4801,12 @@
"comment": "Transfer progress label: preparing.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wird vorbereitet"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4033,6 +4837,12 @@
"comment": "Transfer progress label: ready.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Bereit"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4063,6 +4873,12 @@
"comment": "Transfer progress label: receiving.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wird empfangen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4093,6 +4909,12 @@
"comment": "Transfer progress label: requesting access from the sender.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Zugriff wird angefragt"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4123,6 +4945,12 @@
"comment": "Transfer progress label: saving received files.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wird gesichert"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4153,6 +4981,12 @@
"comment": "Transfer progress label: sending.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wird gesendet"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4183,6 +5017,12 @@
"comment": "Transfer progress label: sending to N receivers. %lld = receiver count.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Senden an %1$d"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4213,6 +5053,12 @@
"comment": "Transfer progress label: the share is ready.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Bereit zum Teilen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4243,6 +5089,12 @@
"comment": "Transfer progress label: generic working/in-progress state.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wird bearbeitet…"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4273,6 +5125,12 @@
"comment": "Receive flow: body text prompting the user to pick an invitation method.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wählen Sie die Ihnen zur Verfügung stehende Einladungsmethode."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4303,6 +5161,12 @@
"comment": "Receive flow: title of the connect-method chooser.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wie möchten Sie sich verbinden?"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4333,6 +5197,12 @@
"comment": "Receive history: action to clear all history.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Verlauf löschen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4363,6 +5233,12 @@
"comment": "Receive history: confirmation dialog body for clearing all history.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Alle abgeschlossenen, fehlgeschlagenen und abgebrochenen Empfänge werden aus dem Verlauf von VniDrop entfernt. Heruntergeladene Dateien verbleiben auf diesem Gerät."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4393,6 +5269,12 @@
"comment": "Receive history: confirmation dialog title for clearing all history.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Empfangsverlauf löschen?"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4423,6 +5305,12 @@
"comment": "Receive flow: toast/message when a transfer finishes downloading.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Übertragung empfangen."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4453,6 +5341,12 @@
"comment": "Receive history: confirmation body for removing one item. {arg1} = transfer name.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "„%1$@“ wird aus dem Verlauf von VniDrop entfernt. Die heruntergeladene Datei verbleibt auf diesem Gerät."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4483,6 +5377,12 @@
"comment": "Receive history: swipe/menu action to delete a single history item.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Aus Empfangsverlauf löschen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4513,6 +5413,12 @@
"comment": "Receive history: confirmation title for removing one item.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Aus dem Verlauf entfernen?"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4543,6 +5449,12 @@
"comment": "Receive tab empty state: instructions on how to receive.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Öffnen Sie eine VniDrop-Einladung, scannen Sie einen QR-Code oder halten Sie das Gerät an ein NFC-Tag."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4573,6 +5485,12 @@
"comment": "Receive tab empty state: title when nothing has been received.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Noch nichts empfangen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4603,6 +5521,12 @@
"comment": "Receive history: toast confirming history was cleared.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Empfangsverlauf gelöscht."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4633,6 +5557,12 @@
"comment": "Receive tab: History section title.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Verlauf"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4663,6 +5593,12 @@
"comment": "Receive method: open a .vnd invitation file.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Eine .vnd-Einladung öffnen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4693,6 +5629,12 @@
"comment": "Receive method description: open a saved/shared invitation file.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wählen Sie eine auf diesem Gerät gespeicherte oder geteilte Einladung."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4723,6 +5665,12 @@
"comment": "Receive method: read an NFC tag.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "NFC-Tag lesen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4753,6 +5701,12 @@
"comment": "Receive method description: hold near the sender's NFC tag.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Halten Sie dieses Gerät an das Einladungs-Tag des Absenders."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4783,6 +5737,12 @@
"comment": "Receive method: scan a QR code.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "QR-Code scannen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4813,6 +5773,12 @@
"comment": "Receive method description: use the camera to scan the sender's code.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Verwenden Sie die Kamera, um den VniDrop-Code des Absenders zu scannen."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4843,6 +5809,12 @@
"comment": "Receive tab: subtitle under the title.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Übertragungen, die Sie auf diesem Gerät empfangen haben."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4873,6 +5845,12 @@
"comment": "Receive flow: prompt while waiting to read an NFC tag.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Halten Sie das Gerät an das NFC-Tag…"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4903,6 +5881,12 @@
"comment": "Receive flow: error when opening VniDrop's folder in Files fails.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "VniDrop konnte in „Dateien“ nicht geöffnet werden."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4933,6 +5917,12 @@
"comment": "Receive flow: title of the review screen before accepting a transfer.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Übertragung prüfen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4963,6 +5953,12 @@
"comment": "Receive tab: screen title.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Empfangen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -4993,6 +5989,12 @@
"comment": "Receive flow: fallback name for a transfer with no title.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "VniDrop-Übertragung"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5023,6 +6025,12 @@
"comment": "Send access option: anyone with the invitation can receive.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Jeder mit dieser Übertragung"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5053,6 +6061,12 @@
"comment": "Send access option description: no approval required.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Keine Genehmigung erforderlich. Verwenden Sie dies nur für Objekte, die Sie unbedenklich teilen können."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5083,6 +6097,12 @@
"comment": "Send access option warning: caution about open access.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Jeder mit der Einladung kann herunterladen, bis Sie die Freigabe beenden. Verwenden Sie dies nicht für private oder sensible Objekte."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5113,6 +6133,12 @@
"comment": "Send access option: approve each receiver.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Vor jedem Download fragen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5143,6 +6169,12 @@
"comment": "Send access option description: you approve/refuse each receiver.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Sie genehmigen oder lehnen jeden neuen Empfänger ab."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5173,6 +6205,12 @@
"comment": "Send flow: heading for the who-can-receive access chooser.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wer kann sie empfangen?"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5203,6 +6241,12 @@
"comment": "Send flow: body text for the choose-what-to-share step.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wählen Sie Dateien oder einen Ordner auf diesem Gerät aus. Sie können die Auswahl überprüfen, bevor Sie die Übertragung erstellen."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5233,6 +6277,12 @@
"comment": "Send flow: title of the choose-what-to-share step.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wählen Sie, was Sie teilen möchten"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5263,6 +6313,12 @@
"comment": "Send tab empty state: instructions on how to create a transfer.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Erstellen Sie eine Übertragung, entscheiden Sie, wer sie empfangen darf, und laden Sie diese Personen dann mit einem QR-Code, einem NFC-Tag oder einer Einladungsdatei ein."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5293,6 +6349,12 @@
"comment": "Send tab empty state: title when nothing has been shared.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Noch nichts geteilt"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5323,6 +6385,12 @@
"comment": "Send flow: shown when a selected file's size can't be determined.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Größe nicht verfügbar"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5353,6 +6421,12 @@
"comment": "Send flow: label indicating a selected item is a folder.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Ordner"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5383,6 +6457,12 @@
"comment": "Send flow: description for the create-new-transfer entry.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Eine neue Übertragung erstellen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5413,6 +6493,12 @@
"comment": "Send flow: title for the new-transfer step.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Neue Übertragung"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5443,6 +6529,12 @@
"comment": "Send flow: title of the review-transfer step before creating it.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Übertragung prüfen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5473,6 +6565,12 @@
"comment": "Send flow: count of files chosen. {count} = selected files. NOTE: singular case reads '1 files' — should become a plural.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "%1$d Dateien ausgewählt"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5503,6 +6601,12 @@
"comment": "Transfer details: action to stop sharing a transfer.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Freigabe beenden"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5533,6 +6637,12 @@
"comment": "Transfer details: confirmation body for stopping sharing.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Dies beendet die Übertragung und unterbricht alle, die sie gerade herunterladen. Sie verbleibt in Ihrem Verlauf als „Beendet“."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5563,6 +6673,12 @@
"comment": "Send tab: subtitle under the title.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Übertragungen, die Sie von diesem Gerät aus teilen."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5593,6 +6709,12 @@
"comment": "Send tab: screen title.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Senden"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5623,6 +6745,12 @@
"comment": "Send flow: toast confirming a transfer was created.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Übertragung erstellt."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5653,6 +6781,12 @@
"comment": "Send flow: title of the transfer details screen.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Übertragungsdetails"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5683,6 +6817,12 @@
"comment": "Send tab: 'Your transfers' list heading.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Ihre Übertragungen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5713,6 +6853,12 @@
"comment": "Settings screen: subtitle summarizing what's configurable.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Ihr Name, wo Übertragungen gesichert werden, Darstellung und Mitteilungen."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5743,6 +6889,12 @@
"comment": "Settings screen: title.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Einstellungen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5773,6 +6925,12 @@
"comment": "Snackbar: accessibility label / action to dismiss the snackbar.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Ausblenden"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5803,6 +6961,12 @@
"comment": "Transfer status: available (actively shared).",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Verfügbar"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5833,6 +6997,12 @@
"comment": "Transfer status: cancelled.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Abgebrochen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5863,6 +7033,12 @@
"comment": "Transfer status: completed.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Abgeschlossen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5893,6 +7069,12 @@
"comment": "Transfer status: failed.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Fehlgeschlagen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5923,6 +7105,12 @@
"comment": "Transfer status: preparing.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wird vorbereitet"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5953,6 +7141,12 @@
"comment": "Transfer status: receiving.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wird empfangen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -5983,6 +7177,12 @@
"comment": "Transfer status: stopped.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Beendet"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6013,6 +7213,12 @@
"comment": "Settings > Storage: placeholder while a size is being calculated.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wird berechnet…"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6043,6 +7249,12 @@
"comment": "Settings > Storage: button to delete all transfer records.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Alle Übertragungen löschen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6073,6 +7285,12 @@
"comment": "Settings > Storage: confirmation body for deleting all transfer records.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Dies löscht alle Datensätze gesendeter und empfangener Übertragungen aus Ihrem Verlauf. Ihre empfangenen Dateien werden nicht gelöscht. Hinweis: Die Übertragungs-Engine behält ihre gespeicherten Inhalte, sodass die Übertragungsdaten möglicherweise nicht abnehmen. Dies kann nicht rückgängig gemacht werden."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6103,6 +7321,12 @@
"comment": "Settings > Storage: progress label while transfers are being deleted.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wird gelöscht…"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6133,6 +7357,12 @@
"comment": "Settings > Storage: footer explaining how storage is managed.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Übertragungsdaten werden von der Übertragungs-Engine verwaltet – Ihr Verlauf sowie der Inhalt der von Ihnen geteilten Dateien. Die Schaltfläche unten löscht Ihre Übertragungsdatensätze; die Engine behält ihre gespeicherten Inhalte, sodass dieser Wert möglicherweise nicht sinkt. Empfangene Dateien sind Ihre heruntergeladenen Dateien und werden hier niemals gelöscht."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6163,6 +7393,12 @@
"comment": "Settings > Storage: label for the received-files size row.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Empfangene Dateien"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6193,6 +7429,12 @@
"comment": "Settings > Storage: label for the temporary-files size row.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Temporäre Dateien"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6223,6 +7465,12 @@
"comment": "Settings > Storage: section title.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Speicher"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6253,6 +7501,12 @@
"comment": "Settings > Storage: label for the total-size row.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Gesamt"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6283,6 +7537,12 @@
"comment": "Settings > Storage: label for the transfer-engine data size row.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Übertragungsdaten"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6313,6 +7573,12 @@
"comment": "Settings > Storage: toast confirming all transfers were deleted.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Alle Übertragungen gelöscht"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6343,6 +7609,12 @@
"comment": "Transfer details: description under the Activity section.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wichtige Aktualisierungen zu dieser Übertragung ansehen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6373,6 +7645,12 @@
"comment": "Transfer details: Activity section title.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Aktivität"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6403,6 +7681,12 @@
"comment": "Transfer details: confirmation body for deleting a transfer. {arg1} = transfer name.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "„%1$@“ wird nicht mehr geteilt und sein Übertragungsverlauf wird von diesem Gerät entfernt."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6433,6 +7717,12 @@
"comment": "Transfer details: confirmation title for deleting a transfer.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Übertragung löschen?"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6463,6 +7753,12 @@
"comment": "Transfer details: toast confirming a transfer was deleted.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Übertragung gelöscht."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6493,6 +7789,12 @@
"comment": "Transfer details: progress label while a transfer is being deleted.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wird gelöscht…"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6523,6 +7825,12 @@
"comment": "Transfer details: screen title.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Übertragungsdetails"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6553,6 +7861,12 @@
"comment": "Transfer activity event: a receiver's access was approved.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Empfängerzugriff genehmigt"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6583,6 +7897,12 @@
"comment": "Transfer activity event: a receiver completed the transfer.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Ein Empfänger hat die Übertragung abgeschlossen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6613,6 +7933,12 @@
"comment": "Transfer activity event: connecting to the sender.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Verbindung zum Absender"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6643,6 +7969,12 @@
"comment": "Transfer activity event: downloading.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wird geladen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6673,6 +8005,12 @@
"comment": "Transfer activity event: the transfer hit a problem.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Bei der Übertragung ist ein Problem aufgetreten"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6703,6 +8041,12 @@
"comment": "Transfer activity event: preparing the transfer.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Ihre Übertragung wird vorbereitet"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6733,6 +8077,12 @@
"comment": "Transfer activity event: ready to share.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Bereit zum Teilen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6763,6 +8113,12 @@
"comment": "Transfer activity event: a receiver's access was refused.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Empfängerzugriff abgelehnt"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6793,6 +8149,12 @@
"comment": "Transfer activity event: a receiver requested access.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Ein Empfänger hat Zugriff angefragt"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6823,6 +8185,12 @@
"comment": "Transfer activity event: saving received files.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wird gesichert"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6853,6 +8221,12 @@
"comment": "Transfer activity event: sharing was stopped.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Freigabe beendet"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6883,6 +8257,12 @@
"comment": "Transfer activity event: the transfer was updated.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Übertragung aktualisiert"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -6913,6 +8293,24 @@
"comment": "Transfer subtitle: file count with pluralization. {count} = number of files.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "variations": {
+ "plural": {
+ "one": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "%1$d Datei"
+ }
+ },
+ "other": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "%1$d Dateien"
+ }
+ }
+ }
+ }
+ },
"en": {
"variations": {
"plural": {
@@ -6991,6 +8389,12 @@
"comment": "Transfer share: toast confirming the invitation file was saved.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Einladung gesichert."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7021,6 +8425,12 @@
"comment": "Transfer share/receivers: label for a nearby device.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Gerät in der Nähe"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7051,6 +8461,12 @@
"comment": "Transfer share: message when NFC writing isn't available on the device.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Das Beschreiben von NFC-Tags ist auf diesem Gerät nicht verfügbar."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7081,6 +8497,12 @@
"comment": "Transfer share: prompt while waiting to write an NFC tag.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Halten Sie Ihr Gerät an ein beschreibbares NFC-Tag."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7111,6 +8533,12 @@
"comment": "Transfer share: confirmation the invitation was written to the NFC tag.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Einladung auf das NFC-Tag geschrieben."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7141,6 +8569,12 @@
"comment": "Transfer details: empty state for the Activity section.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Es gibt noch keine Aktivität anzuzeigen."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7171,6 +8605,12 @@
"comment": "Transfer details: empty state for the Receivers section.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Noch niemand hat diese Übertragung angefragt."
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7201,6 +8641,12 @@
"comment": "Receiver status: approved, waiting for the download to complete.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Genehmigt – wartet auf Abschluss"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7231,6 +8677,12 @@
"comment": "Receiver status: received successfully.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Erfolgreich empfangen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7261,6 +8713,12 @@
"comment": "Receiver status: the request expired.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Anfrage abgelaufen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7291,6 +8749,12 @@
"comment": "Receiver status: the request was refused.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Anfrage abgelehnt"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7321,6 +8785,12 @@
"comment": "Receiver status: waiting for the sender's approval.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Wartet auf Ihre Genehmigung"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7351,6 +8821,12 @@
"comment": "Receiver status: status unavailable/unknown.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Status nicht verfügbar"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7381,6 +8857,12 @@
"comment": "Receivers summary: how many receivers completed. {count} = completed receivers.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "%1$d abgeschlossen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7411,6 +8893,12 @@
"comment": "Transfer details: description under the Receivers section.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Anfragen, Genehmigungen und abgeschlossene Zustellungen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7441,6 +8929,12 @@
"comment": "Receivers summary: how many requests are waiting. {count} = pending receivers.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "%1$d warten"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7471,6 +8965,12 @@
"comment": "Transfer details: Receivers section title.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Empfänger"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7501,6 +9001,12 @@
"comment": "Transfer share: caption under the QR code.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Mit VniDrop scannen, um diese Übertragung zu empfangen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7531,6 +9037,12 @@
"comment": "Transfer details: description under the Share section.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "QR-Code, Einladungsdatei und Optionen in der Nähe"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7561,6 +9073,12 @@
"comment": "Transfer details: Share section title.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Teilen"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7591,6 +9109,12 @@
"comment": "Placeholder shown when a device-info or metadata value can't be read.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "Nicht verfügbar"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
@@ -7621,6 +9145,12 @@
"comment": "Device information / Settings row: app version label.",
"extractionState": "manual",
"localizations": {
+ "de": {
+ "stringUnit": {
+ "state": "needs_review",
+ "value": "App-Version"
+ }
+ },
"en": {
"stringUnit": {
"state": "translated",
diff --git a/localization/strings.json b/localization/strings.json
index 1abff78..cccb727 100644
--- a/localization/strings.json
+++ b/localization/strings.json
@@ -5,7 +5,8 @@
"en",
"fr",
"es",
- "it"
+ "it",
+ "de"
],
"strings": {
"%@": {
@@ -37,7 +38,8 @@
"en": "{arg1} {arg2} · {arg3}",
"fr": "{arg1} {arg2} · {arg3}",
"es": "{arg1} {arg2} · {arg3}",
- "it": "{arg1} {arg2} · {arg3}"
+ "it": "{arg1} {arg2} · {arg3}",
+ "de": "{arg1} {arg2} · {arg3}"
}
},
"%@ · %@": {
@@ -59,7 +61,8 @@
"en": "{arg1} · {arg2}",
"fr": "{arg1} · {arg2}",
"es": "{arg1} · {arg2}",
- "it": "{arg1} · {arg2}"
+ "it": "{arg1} · {arg2}",
+ "de": "{arg1} · {arg2}"
}
},
"%@%%": {
@@ -74,7 +77,8 @@
"en": "Report a bug",
"fr": "Signaler un bug",
"es": "Informar de un error",
- "it": "Segnala un bug"
+ "it": "Segnala un bug",
+ "de": "Fehler melden"
}
},
"about_description": {
@@ -83,7 +87,8 @@
"en": "VniDrop moves files and folders straight from one device to another over the network, without uploading them to any file-hosting service. There’s no account to create, and no copy of your transfer is left in the cloud once you’re done.",
"fr": "VniDrop transfère fichiers et dossiers directement d’un appareil à un autre sur le réseau, sans les téléverser vers un service d’hébergement. Aucun compte à créer, et aucune copie de votre transfert ne reste dans le cloud une fois terminé.",
"es": "VniDrop transfiere archivos y carpetas directamente de un dispositivo a otro a través de la red, sin subirlos a ningún servicio de alojamiento. No hay que crear ninguna cuenta y no queda ninguna copia de su transferencia en la nube una vez que termina.",
- "it": "VniDrop trasferisce file e cartelle direttamente da un dispositivo a un altro sulla rete, senza caricarli su alcun servizio di hosting. Non c’è alcun account da creare e nessuna copia del suo trasferimento rimane nel cloud una volta terminato."
+ "it": "VniDrop trasferisce file e cartelle direttamente da un dispositivo a un altro sulla rete, senza caricarli su alcun servizio di hosting. Non c’è alcun account da creare e nessuna copia del suo trasferimento rimane nel cloud una volta terminato.",
+ "de": "VniDrop überträgt Dateien und Ordner direkt von einem Gerät auf ein anderes über das Netzwerk, ohne sie auf einen Hosting-Dienst hochzuladen. Es muss kein Konto erstellt werden, und nach Abschluss verbleibt keine Kopie Ihrer Übertragung in der Cloud."
}
},
"about_is_direct": {
@@ -92,7 +97,8 @@
"en": "A direct device-to-device transfer — your files go straight to the receiver.",
"fr": "Un transfert direct d’appareil à appareil — vos fichiers vont droit au destinataire.",
"es": "Una transferencia directa entre dispositivos: sus archivos van directamente al destinatario.",
- "it": "Un trasferimento diretto da dispositivo a dispositivo: i suoi file vanno direttamente al destinatario."
+ "it": "Un trasferimento diretto da dispositivo a dispositivo: i suoi file vanno direttamente al destinatario.",
+ "de": "Eine direkte Gerät-zu-Gerät-Übertragung – Ihre Dateien gehen direkt an den Empfänger."
}
},
"about_is_encrypted": {
@@ -101,7 +107,8 @@
"en": "Connections are authenticated and end-to-end encrypted (via Iroh), and incoming files are verified by their content hash.",
"fr": "Les connexions sont authentifiées et chiffrées de bout en bout (via Iroh), et les fichiers entrants sont vérifiés par leur empreinte de contenu.",
"es": "Las conexiones están autenticadas y cifradas de extremo a extremo (mediante Iroh), y los archivos entrantes se verifican por su huella de contenido.",
- "it": "Le connessioni sono autenticate e cifrate end-to-end (tramite Iroh) e i file in arrivo vengono verificati tramite l’impronta del loro contenuto."
+ "it": "Le connessioni sono autenticate e cifrate end-to-end (tramite Iroh) e i file in arrivo vengono verificati tramite l’impronta del loro contenuto.",
+ "de": "Verbindungen sind authentifiziert und Ende-zu-Ende-verschlüsselt (über Iroh), und eingehende Dateien werden anhand ihres Inhalts-Hashs überprüft."
}
},
"about_is_in_control": {
@@ -110,7 +117,8 @@
"en": "You decide who receives: approve each request, or open a transfer to anyone holding the invitation.",
"fr": "Vous décidez qui reçoit : approuvez chaque demande, ou ouvrez un transfert à toute personne disposant de l’invitation.",
"es": "Usted decide quién recibe: apruebe cada solicitud o abra una transferencia a cualquiera que tenga la invitación.",
- "it": "Lei decide chi riceve: approvi ogni richiesta oppure apra un trasferimento a chiunque disponga dell’invito."
+ "it": "Lei decide chi riceve: approvi ogni richiesta oppure apra un trasferimento a chiunque disponga dell’invito.",
+ "de": "Sie entscheiden, wer empfängt: Genehmigen Sie jede Anfrage oder öffnen Sie eine Übertragung für alle, die die Einladung besitzen."
}
},
"about_is_no_account": {
@@ -119,7 +127,8 @@
"en": "Account-free — there’s nothing to sign up for.",
"fr": "Sans compte — il n’y a rien à créer.",
"es": "Sin cuenta: no hay nada que registrar.",
- "it": "Senza account: non c’è nulla da registrare."
+ "it": "Senza account: non c’è nulla da registrare.",
+ "de": "Ohne Konto – es gibt nichts zu registrieren."
}
},
"about_is_open": {
@@ -128,7 +137,8 @@
"en": "Open source, released under the Apache 2.0 license.",
"fr": "Open source, publié sous licence Apache 2.0.",
"es": "Código abierto, publicado bajo la licencia Apache 2.0.",
- "it": "Open source, rilasciato con licenza Apache 2.0."
+ "it": "Open source, rilasciato con licenza Apache 2.0.",
+ "de": "Open Source, veröffentlicht unter der Apache-2.0-Lizenz."
}
},
"about_is_title": {
@@ -137,7 +147,8 @@
"en": "What VniDrop is",
"fr": "Ce qu’est VniDrop",
"es": "Qué es VniDrop",
- "it": "Cos’è VniDrop"
+ "it": "Cos’è VniDrop",
+ "de": "Was VniDrop ist"
}
},
"about_isnt_cloud": {
@@ -146,7 +157,8 @@
"en": "Not cloud storage — no server holds your files, and nothing waits in the cloud after a transfer.",
"fr": "Pas un stockage cloud — aucun serveur ne détient vos fichiers, et rien n’attend dans le cloud après un transfert.",
"es": "No es almacenamiento en la nube: ningún servidor guarda sus archivos y nada queda en la nube después de una transferencia.",
- "it": "Non è un’archiviazione cloud: nessun server conserva i suoi file e nulla resta nel cloud dopo un trasferimento."
+ "it": "Non è un’archiviazione cloud: nessun server conserva i suoi file e nulla resta nel cloud dopo un trasferimento.",
+ "de": "Kein Cloud-Speicher – kein Server hält Ihre Dateien, und nach einer Übertragung wartet nichts in der Cloud."
}
},
"about_isnt_public": {
@@ -155,7 +167,8 @@
"en": "Not public broadcasting — an invitation is a private access link, not an announcement to everyone nearby.",
"fr": "Pas une diffusion publique — une invitation est un lien d’accès privé, pas une annonce à tout le voisinage.",
"es": "No es difusión pública: una invitación es un enlace de acceso privado, no un anuncio para todos los que estén cerca.",
- "it": "Non è una diffusione pubblica: un invito è un link di accesso privato, non un annuncio a tutti nelle vicinanze."
+ "it": "Non è una diffusione pubblica: un invito è un link di accesso privato, non un annuncio a tutti nelle vicinanze.",
+ "de": "Keine öffentliche Übertragung – eine Einladung ist ein privater Zugangslink, keine Ankündigung an alle in der Nähe."
}
},
"about_isnt_sync": {
@@ -164,7 +177,8 @@
"en": "Not a sync or backup service.",
"fr": "Pas un service de synchronisation ou de sauvegarde.",
"es": "No es un servicio de sincronización ni de copia de seguridad.",
- "it": "Non è un servizio di sincronizzazione o di backup."
+ "it": "Non è un servizio di sincronizzazione o di backup.",
+ "de": "Kein Synchronisierungs- oder Backup-Dienst."
}
},
"about_isnt_title": {
@@ -173,7 +187,8 @@
"en": "What VniDrop isn’t",
"fr": "Ce que VniDrop n’est pas",
"es": "Qué no es VniDrop",
- "it": "Cosa non è VniDrop"
+ "it": "Cosa non è VniDrop",
+ "de": "Was VniDrop nicht ist"
}
},
"about_license_label": {
@@ -182,7 +197,8 @@
"en": "License",
"fr": "Licence",
"es": "Licencia",
- "it": "Licenza"
+ "it": "Licenza",
+ "de": "Lizenz"
}
},
"about_privacy": {
@@ -191,7 +207,8 @@
"en": "Privacy policy",
"fr": "Politique de confidentialité",
"es": "Política de privacidad",
- "it": "Informativa sulla privacy"
+ "it": "Informativa sulla privacy",
+ "de": "Datenschutzrichtlinie"
}
},
"about_privacy_capability": {
@@ -200,7 +217,8 @@
"en": "Invitations are capabilities. Treat a QR code, NFC tag, or .vnd file like a private access link and share it only with the people you intend — especially with “Anyone with this transfer.”",
"fr": "Les invitations sont des clés d’accès. Traitez un QR code, un tag NFC ou un fichier .vnd comme un lien d’accès privé et ne le partagez qu’avec les personnes visées — en particulier avec « Toute personne disposant de ce transfert ».",
"es": "Las invitaciones son claves de acceso. Trate un código QR, una etiqueta NFC o un archivo .vnd como un enlace de acceso privado y compártalo solo con las personas previstas, especialmente con «Cualquiera que tenga esta transferencia».",
- "it": "Gli inviti sono chiavi di accesso. Tratti un codice QR, un tag NFC o un file .vnd come un link di accesso privato e lo condivida solo con le persone previste, soprattutto con «Chiunque abbia questo trasferimento»."
+ "it": "Gli inviti sono chiavi di accesso. Tratti un codice QR, un tag NFC o un file .vnd come un link di accesso privato e lo condivida solo con le persone previste, soprattutto con «Chiunque abbia questo trasferimento».",
+ "de": "Einladungen sind Zugangsschlüssel. Behandeln Sie einen QR-Code, ein NFC-Tag oder eine .vnd-Datei wie einen privaten Zugangslink und teilen Sie ihn nur mit den vorgesehenen Personen – insbesondere bei „Jeder mit dieser Übertragung“."
}
},
"about_privacy_deny": {
@@ -209,7 +227,8 @@
"en": "Deny by default — VniDrop serves only the content of an active share and rejects unknown requests.",
"fr": "Refus par défaut — VniDrop ne sert que le contenu d’un partage actif et rejette les demandes inconnues.",
"es": "Denegación por defecto: VniDrop solo sirve el contenido de un recurso compartido activo y rechaza las solicitudes desconocidas.",
- "it": "Rifiuto predefinito: VniDrop serve solo il contenuto di una condivisione attiva e rifiuta le richieste sconosciute."
+ "it": "Rifiuto predefinito: VniDrop serve solo il contenuto di una condivisione attiva e rifiuta le richieste sconosciute.",
+ "de": "Standardmäßig ablehnen – VniDrop stellt nur den Inhalt einer aktiven Freigabe bereit und weist unbekannte Anfragen ab."
}
},
"about_privacy_local": {
@@ -218,7 +237,8 @@
"en": "Received files are saved on your device and never silently overwrite an existing file.",
"fr": "Les fichiers reçus sont enregistrés sur votre appareil et n’écrasent jamais un fichier existant.",
"es": "Los archivos recibidos se guardan en su dispositivo y nunca sobrescriben un archivo existente.",
- "it": "I file ricevuti vengono salvati sul suo dispositivo e non sovrascrivono mai un file esistente."
+ "it": "I file ricevuti vengono salvati sul suo dispositivo e non sovrascrivono mai un file esistente.",
+ "de": "Empfangene Dateien werden auf Ihrem Gerät gespeichert und überschreiben niemals eine vorhandene Datei."
}
},
"about_privacy_policy_label": {
@@ -227,7 +247,8 @@
"en": "Privacy policy",
"fr": "Politique de confidentialité",
"es": "Política de privacidad",
- "it": "Informativa sulla privacy"
+ "it": "Informativa sulla privacy",
+ "de": "Datenschutzrichtlinie"
}
},
"about_privacy_relay": {
@@ -236,7 +257,8 @@
"en": "If two devices can’t connect directly, the encrypted connection may be relayed. Relays forward encrypted packets only; they never store your files.",
"fr": "Si deux appareils ne peuvent pas se connecter directement, la connexion chiffrée peut être relayée. Les relais ne transmettent que des paquets chiffrés ; ils ne stockent jamais vos fichiers.",
"es": "Si dos dispositivos no pueden conectarse directamente, la conexión cifrada puede retransmitirse. Los relés solo reenvían paquetes cifrados; nunca almacenan sus archivos.",
- "it": "Se due dispositivi non riescono a connettersi direttamente, la connessione cifrata può essere instradata tramite relay. I relay inoltrano solo pacchetti cifrati; non memorizzano mai i suoi file."
+ "it": "Se due dispositivi non riescono a connettersi direttamente, la connessione cifrata può essere instradata tramite relay. I relay inoltrano solo pacchetti cifrati; non memorizzano mai i suoi file.",
+ "de": "Wenn zwei Geräte sich nicht direkt verbinden können, kann die verschlüsselte Verbindung weitergeleitet werden. Relays leiten nur verschlüsselte Pakete weiter; sie speichern niemals Ihre Dateien."
}
},
"about_privacy_title": {
@@ -245,7 +267,8 @@
"en": "Privacy & security",
"fr": "Confidentialité et sécurité",
"es": "Privacidad y seguridad",
- "it": "Privacy e sicurezza"
+ "it": "Privacy e sicurezza",
+ "de": "Datenschutz & Sicherheit"
}
},
"about_tagline": {
@@ -254,7 +277,8 @@
"en": "Send files directly. Stay in control of who receives them.",
"fr": "Envoyez des fichiers directement. Gardez le contrôle de qui les reçoit.",
"es": "Envíe archivos directamente. Mantenga el control de quién los recibe.",
- "it": "Invii file direttamente. Mantenga il controllo su chi li riceve."
+ "it": "Invii file direttamente. Mantenga il controllo su chi li riceve.",
+ "de": "Senden Sie Dateien direkt. Behalten Sie die Kontrolle darüber, wer sie empfängt."
}
},
"about_title": {
@@ -263,7 +287,8 @@
"en": "About",
"fr": "À propos",
"es": "Acerca de",
- "it": "Informazioni"
+ "it": "Informazioni",
+ "de": "Über"
}
},
"appearance_auto_description": {
@@ -272,7 +297,8 @@
"en": "Match this device’s light or dark appearance.",
"fr": "Suivre l’apparence claire ou sombre de cet appareil.",
"es": "Seguir la apariencia clara u oscura de este dispositivo.",
- "it": "Segue l’aspetto chiaro o scuro di questo dispositivo."
+ "it": "Segue l’aspetto chiaro o scuro di questo dispositivo.",
+ "de": "Der hellen oder dunklen Darstellung dieses Geräts folgen."
}
},
"appearance_dark_mode": {
@@ -281,7 +307,8 @@
"en": "Dark mode",
"fr": "Mode sombre",
"es": "Modo oscuro",
- "it": "Modalità scura"
+ "it": "Modalità scura",
+ "de": "Dunkelmodus"
}
},
"appearance_light_mode": {
@@ -290,7 +317,8 @@
"en": "Light mode",
"fr": "Mode clair",
"es": "Modo claro",
- "it": "Modalità chiara"
+ "it": "Modalità chiara",
+ "de": "Hellmodus"
}
},
"appearance_system_mode": {
@@ -299,7 +327,8 @@
"en": "System",
"fr": "Système",
"es": "Sistema",
- "it": "Sistema"
+ "it": "Sistema",
+ "de": "System"
}
},
"appearance_title": {
@@ -308,7 +337,8 @@
"en": "Appearance",
"fr": "Apparence",
"es": "Apariencia",
- "it": "Aspetto"
+ "it": "Aspetto",
+ "de": "Darstellung"
}
},
"approval_connection_request": {
@@ -317,7 +347,8 @@
"en": "Receive request",
"fr": "Demande de réception",
"es": "Solicitud de recepción",
- "it": "Richiesta di ricezione"
+ "it": "Richiesta di ricezione",
+ "de": "Empfangsanfrage"
}
},
"approval_endpoint_id": {
@@ -332,7 +363,8 @@
"en": "Device ID: {arg1}",
"fr": "Identifiant de l’appareil : {arg1}",
"es": "ID del dispositivo: {arg1}",
- "it": "ID dispositivo: {arg1}"
+ "it": "ID dispositivo: {arg1}",
+ "de": "Geräte-ID: {arg1}"
}
},
"approval_nearby_device": {
@@ -341,7 +373,8 @@
"en": "A nearby device",
"fr": "Un appareil à proximité",
"es": "Un dispositivo cercano",
- "it": "Un dispositivo nelle vicinanze"
+ "it": "Un dispositivo nelle vicinanze",
+ "de": "Ein Gerät in der Nähe"
}
},
"approval_pending_count": {
@@ -356,7 +389,8 @@
"en": "{count} requests waiting",
"fr": "{count} demandes en attente",
"es": "{count} solicitudes en espera",
- "it": "{count} richieste in attesa"
+ "it": "{count} richieste in attesa",
+ "de": "{count} Anfragen warten"
}
},
"approval_request_body": {
@@ -375,7 +409,8 @@
"en": "{arg1} wants to receive “{arg2}”.",
"fr": "{arg1} souhaite recevoir « {arg2} ».",
"es": "{arg1} quiere recibir «{arg2}».",
- "it": "{arg1} vuole ricevere «{arg2}»."
+ "it": "{arg1} vuole ricevere «{arg2}».",
+ "de": "{arg1} möchte „{arg2}“ empfangen."
}
},
"battery_level_title": {
@@ -384,7 +419,8 @@
"en": "Battery level",
"fr": "Niveau de batterie",
"es": "Nivel de batería",
- "it": "Livello batteria"
+ "it": "Livello batteria",
+ "de": "Batteriestand"
}
},
"bug_report_contact_hint": {
@@ -393,7 +429,8 @@
"en": "name@example.com",
"fr": "nom@exemple.com",
"es": "nombre@ejemplo.com",
- "it": "nome@esempio.com"
+ "it": "nome@esempio.com",
+ "de": "name@beispiel.com"
}
},
"bug_report_contact_label": {
@@ -402,7 +439,8 @@
"en": "Contact email (optional)",
"fr": "E-mail de contact (facultatif)",
"es": "Correo de contacto (opcional)",
- "it": "Email di contatto (facoltativa)"
+ "it": "Email di contatto (facoltativa)",
+ "de": "Kontakt-E-Mail (optional)"
}
},
"bug_report_description": {
@@ -411,7 +449,8 @@
"en": "Tell us what went wrong. We attach device info and optional recent logs (with sensitive values redacted).",
"fr": "Dites-nous ce qui s’est passé. Nous joignons les infos de l’appareil et, en option, les journaux récents (valeurs sensibles masquées).",
"es": "Cuéntenos qué salió mal. Adjuntamos información del dispositivo y, opcionalmente, registros recientes (con los valores sensibles ocultos).",
- "it": "Ci dica cosa è andato storto. Alleghiamo le informazioni sul dispositivo e, facoltativamente, i log recenti (con i valori sensibili oscurati)."
+ "it": "Ci dica cosa è andato storto. Alleghiamo le informazioni sul dispositivo e, facoltativamente, i log recenti (con i valori sensibili oscurati).",
+ "de": "Sagen Sie uns, was schiefgelaufen ist. Wir hängen Geräteinformationen und optional aktuelle Protokolle an (sensible Werte werden geschwärzt)."
}
},
"bug_report_device_section": {
@@ -420,7 +459,8 @@
"en": "Device information",
"fr": "Informations sur l’appareil",
"es": "Información del dispositivo",
- "it": "Informazioni sul dispositivo"
+ "it": "Informazioni sul dispositivo",
+ "de": "Geräteinformationen"
}
},
"bug_report_expected_hint": {
@@ -429,7 +469,8 @@
"en": "Describe what you expected to happen",
"fr": "Décrivez ce à quoi vous vous attendiez",
"es": "Describa lo que esperaba que ocurriera",
- "it": "Descriva cosa si aspettava che accadesse"
+ "it": "Descriva cosa si aspettava che accadesse",
+ "de": "Beschreiben Sie, was Sie erwartet haben"
}
},
"bug_report_expected_label": {
@@ -438,7 +479,8 @@
"en": "What did you expect?",
"fr": "À quoi vous attendiez-vous ?",
"es": "¿Qué esperaba?",
- "it": "Cosa si aspettava?"
+ "it": "Cosa si aspettava?",
+ "de": "Was haben Sie erwartet?"
}
},
"bug_report_include_logs": {
@@ -447,7 +489,8 @@
"en": "Include recent logs",
"fr": "Inclure les journaux récents",
"es": "Incluir registros recientes",
- "it": "Includi i log recenti"
+ "it": "Includi i log recenti",
+ "de": "Aktuelle Protokolle einschließen"
}
},
"bug_report_include_logs_description": {
@@ -456,7 +499,8 @@
"en": "Helps us diagnose the issue. Sensitive values are redacted before sending.",
"fr": "Nous aide à diagnostiquer le problème. Les valeurs sensibles sont masquées avant l’envoi.",
"es": "Nos ayuda a diagnosticar el problema. Los valores sensibles se ocultan antes de enviarlos.",
- "it": "Ci aiuta a diagnosticare il problema. I valori sensibili vengono oscurati prima dell’invio."
+ "it": "Ci aiuta a diagnosticare il problema. I valori sensibili vengono oscurati prima dell’invio.",
+ "de": "Hilft uns, das Problem zu diagnostizieren. Sensible Werte werden vor dem Senden geschwärzt."
}
},
"bug_report_logs_size": {
@@ -465,7 +509,8 @@
"en": "Log attachment size",
"fr": "Taille de la pièce jointe des journaux",
"es": "Tamaño del archivo de registros",
- "it": "Dimensione dell’allegato dei log"
+ "it": "Dimensione dell’allegato dei log",
+ "de": "Größe des Protokollanhangs"
}
},
"bug_report_missing_expected": {
@@ -474,7 +519,8 @@
"en": "Please describe what you expected.",
"fr": "Veuillez décrire ce à quoi vous vous attendiez.",
"es": "Describa lo que esperaba.",
- "it": "Descriva cosa si aspettava."
+ "it": "Descriva cosa si aspettava.",
+ "de": "Bitte beschreiben Sie, was Sie erwartet haben."
}
},
"bug_report_missing_what": {
@@ -483,7 +529,8 @@
"en": "Please describe what happened.",
"fr": "Veuillez décrire ce qui s’est passé.",
"es": "Describa lo que ocurrió.",
- "it": "Descriva cosa è accaduto."
+ "it": "Descriva cosa è accaduto.",
+ "de": "Bitte beschreiben Sie, was passiert ist."
}
},
"bug_report_steps_hint": {
@@ -492,7 +539,8 @@
"en": "List the steps to reproduce the issue",
"fr": "Listez les étapes pour reproduire le problème",
"es": "Enumere los pasos para reproducir el problema",
- "it": "Elenchi i passaggi per riprodurre il problema"
+ "it": "Elenchi i passaggi per riprodurre il problema",
+ "de": "Listen Sie die Schritte zum Reproduzieren des Problems auf"
}
},
"bug_report_steps_label": {
@@ -501,7 +549,8 @@
"en": "Steps to reproduce (optional)",
"fr": "Étapes pour reproduire (facultatif)",
"es": "Pasos para reproducir (opcional)",
- "it": "Passaggi per riprodurre (facoltativi)"
+ "it": "Passaggi per riprodurre (facoltativi)",
+ "de": "Schritte zum Reproduzieren (optional)"
}
},
"bug_report_submit": {
@@ -510,7 +559,8 @@
"en": "Submit report",
"fr": "Envoyer le rapport",
"es": "Enviar informe",
- "it": "Invia segnalazione"
+ "it": "Invia segnalazione",
+ "de": "Bericht senden"
}
},
"bug_report_submit_failed": {
@@ -519,7 +569,8 @@
"en": "Could not submit the bug report. Try again later.",
"fr": "Impossible d’envoyer le rapport de bug. Réessayez plus tard.",
"es": "No se pudo enviar el informe de error. Inténtelo de nuevo más tarde.",
- "it": "Impossibile inviare la segnalazione. Riprovi più tardi."
+ "it": "Impossibile inviare la segnalazione. Riprovi più tardi.",
+ "de": "Der Fehlerbericht konnte nicht gesendet werden. Bitte versuchen Sie es später erneut."
}
},
"bug_report_submitted": {
@@ -528,7 +579,8 @@
"en": "Thanks — your bug report was recorded.",
"fr": "Merci — votre rapport de bug a été enregistré.",
"es": "Gracias: su informe de error se ha registrado.",
- "it": "Grazie: la sua segnalazione è stata registrata."
+ "it": "Grazie: la sua segnalazione è stata registrata.",
+ "de": "Danke – Ihr Fehlerbericht wurde erfasst."
}
},
"bug_report_submitting": {
@@ -537,7 +589,8 @@
"en": "Submitting…",
"fr": "Envoi…",
"es": "Enviando…",
- "it": "Invio in corso…"
+ "it": "Invio in corso…",
+ "de": "Wird gesendet…"
}
},
"bug_report_what_hint": {
@@ -546,7 +599,8 @@
"en": "Describe what happened",
"fr": "Décrivez ce qui s’est passé",
"es": "Describa lo que ocurrió",
- "it": "Descriva cosa è accaduto"
+ "it": "Descriva cosa è accaduto",
+ "de": "Beschreiben Sie, was passiert ist"
}
},
"bug_report_what_label": {
@@ -555,7 +609,8 @@
"en": "What happened?",
"fr": "Que s’est-il passé ?",
"es": "¿Qué ocurrió?",
- "it": "Cosa è accaduto?"
+ "it": "Cosa è accaduto?",
+ "de": "Was ist passiert?"
}
},
"button_approve": {
@@ -564,7 +619,8 @@
"en": "Approve",
"fr": "Approuver",
"es": "Aprobar",
- "it": "Approva"
+ "it": "Approva",
+ "de": "Genehmigen"
}
},
"button_back": {
@@ -573,7 +629,8 @@
"en": "Back",
"fr": "Retour",
"es": "Atrás",
- "it": "Indietro"
+ "it": "Indietro",
+ "de": "Zurück"
}
},
"button_cancel": {
@@ -582,7 +639,8 @@
"en": "Cancel",
"fr": "Annuler",
"es": "Cancelar",
- "it": "Annulla"
+ "it": "Annulla",
+ "de": "Abbrechen"
}
},
"button_cancel_receive": {
@@ -591,7 +649,8 @@
"en": "Cancel",
"fr": "Annuler",
"es": "Cancelar",
- "it": "Annulla"
+ "it": "Annulla",
+ "de": "Abbrechen"
}
},
"button_change_files": {
@@ -600,7 +659,8 @@
"en": "Change files",
"fr": "Modifier les fichiers",
"es": "Cambiar archivos",
- "it": "Cambia file"
+ "it": "Cambia file",
+ "de": "Dateien ändern"
}
},
"button_choose_files": {
@@ -609,7 +669,8 @@
"en": "Choose files",
"fr": "Choisir des fichiers",
"es": "Elegir archivos",
- "it": "Scegli file"
+ "it": "Scegli file",
+ "de": "Dateien auswählen"
}
},
"button_choose_folder": {
@@ -618,7 +679,8 @@
"en": "Choose folder",
"fr": "Choisir un dossier",
"es": "Elegir carpeta",
- "it": "Scegli cartella"
+ "it": "Scegli cartella",
+ "de": "Ordner auswählen"
}
},
"button_clear": {
@@ -627,7 +689,8 @@
"en": "Clear",
"fr": "Effacer",
"es": "Borrar",
- "it": "Cancella"
+ "it": "Cancella",
+ "de": "Löschen"
}
},
"button_close": {
@@ -636,7 +699,8 @@
"en": "Close",
"fr": "Fermer",
"es": "Cerrar",
- "it": "Chiudi"
+ "it": "Chiudi",
+ "de": "Schließen"
}
},
"button_create_new_transfer": {
@@ -645,7 +709,8 @@
"en": "New transfer",
"fr": "Nouveau transfert",
"es": "Nueva transferencia",
- "it": "Nuovo trasferimento"
+ "it": "Nuovo trasferimento",
+ "de": "Neue Übertragung"
}
},
"button_delete_transfer": {
@@ -654,7 +719,8 @@
"en": "Delete transfer",
"fr": "Supprimer le transfert",
"es": "Eliminar transferencia",
- "it": "Elimina trasferimento"
+ "it": "Elimina trasferimento",
+ "de": "Übertragung löschen"
}
},
"button_download_invitation": {
@@ -663,7 +729,8 @@
"en": "Save .vnd file",
"fr": "Enregistrer le fichier .vnd",
"es": "Guardar archivo .vnd",
- "it": "Salva file .vnd"
+ "it": "Salva file .vnd",
+ "de": ".vnd-Datei sichern"
}
},
"button_native_share": {
@@ -672,7 +739,8 @@
"en": "Share invitation",
"fr": "Partager l’invitation",
"es": "Compartir invitación",
- "it": "Condividi invito"
+ "it": "Condividi invito",
+ "de": "Einladung teilen"
}
},
"button_open_settings": {
@@ -681,7 +749,8 @@
"en": "Open Settings",
"fr": "Ouvrir les Réglages",
"es": "Abrir Ajustes",
- "it": "Apri Impostazioni"
+ "it": "Apri Impostazioni",
+ "de": "Einstellungen öffnen"
}
},
"button_receive": {
@@ -690,7 +759,8 @@
"en": "Receive",
"fr": "Recevoir",
"es": "Recibir",
- "it": "Ricevi"
+ "it": "Ricevi",
+ "de": "Empfangen"
}
},
"button_receive_files": {
@@ -699,7 +769,8 @@
"en": "Start receiving",
"fr": "Commencer à recevoir",
"es": "Empezar a recibir",
- "it": "Inizia a ricevere"
+ "it": "Inizia a ricevere",
+ "de": "Empfang starten"
}
},
"button_refuse": {
@@ -708,7 +779,8 @@
"en": "Refuse",
"fr": "Refuser",
"es": "Rechazar",
- "it": "Rifiuta"
+ "it": "Rifiuta",
+ "de": "Ablehnen"
}
},
"button_remove_file": {
@@ -717,7 +789,8 @@
"en": "Remove file",
"fr": "Retirer le fichier",
"es": "Quitar archivo",
- "it": "Rimuovi file"
+ "it": "Rimuovi file",
+ "de": "Datei entfernen"
}
},
"button_reset_default": {
@@ -726,7 +799,8 @@
"en": "Use default",
"fr": "Valeur par défaut",
"es": "Usar predeterminado",
- "it": "Usa predefinito"
+ "it": "Usa predefinito",
+ "de": "Standard verwenden"
}
},
"button_retry": {
@@ -735,7 +809,8 @@
"en": "Retry",
"fr": "Réessayer",
"es": "Reintentar",
- "it": "Riprova"
+ "it": "Riprova",
+ "de": "Wiederholen"
}
},
"button_share_file": {
@@ -744,7 +819,8 @@
"en": "Start sharing",
"fr": "Commencer le partage",
"es": "Empezar a compartir",
- "it": "Inizia a condividere"
+ "it": "Inizia a condividere",
+ "de": "Freigabe starten"
}
},
"button_sharing_file": {
@@ -753,7 +829,8 @@
"en": "Preparing transfer…",
"fr": "Préparation du transfert…",
"es": "Preparando la transferencia…",
- "it": "Preparazione del trasferimento…"
+ "it": "Preparazione del trasferimento…",
+ "de": "Übertragung wird vorbereitet…"
}
},
"button_show_in_files": {
@@ -762,7 +839,8 @@
"en": "Show in Files",
"fr": "Afficher dans Fichiers",
"es": "Mostrar en Archivos",
- "it": "Mostra in File"
+ "it": "Mostra in File",
+ "de": "In „Dateien“ anzeigen"
}
},
"button_write_nfc": {
@@ -771,7 +849,8 @@
"en": "Write to NFC tag",
"fr": "Écrire sur un tag NFC",
"es": "Escribir en etiqueta NFC",
- "it": "Scrivi su tag NFC"
+ "it": "Scrivi su tag NFC",
+ "de": "Auf NFC-Tag schreiben"
}
},
"device_model_title": {
@@ -780,7 +859,8 @@
"en": "Device model",
"fr": "Modèle de l’appareil",
"es": "Modelo del dispositivo",
- "it": "Modello del dispositivo"
+ "it": "Modello del dispositivo",
+ "de": "Gerätemodell"
}
},
"device_name_title": {
@@ -789,7 +869,8 @@
"en": "Device name",
"fr": "Nom de l’appareil",
"es": "Nombre del dispositivo",
- "it": "Nome del dispositivo"
+ "it": "Nome del dispositivo",
+ "de": "Gerätename"
}
},
"diagnostics_description": {
@@ -798,7 +879,8 @@
"en": "Send anonymous crash reports and usage events so we can improve VniDrop. You can turn this off anytime. Invitations, file paths, and transfer contents are never included.",
"fr": "Envoyer des rapports de plantage et des événements d’utilisation anonymes pour nous aider à améliorer VniDrop. Vous pouvez désactiver cela à tout moment. Les invitations, chemins de fichiers et contenus de transfert ne sont jamais inclus.",
"es": "Enviar informes de fallos y eventos de uso anónimos para ayudarnos a mejorar VniDrop. Puede desactivarlo en cualquier momento. Las invitaciones, las rutas de archivos y el contenido de las transferencias nunca se incluyen.",
- "it": "Invia report di arresto anomalo ed eventi d’uso anonimi per aiutarci a migliorare VniDrop. Può disattivarlo in qualsiasi momento. Inviti, percorsi dei file e contenuti dei trasferimenti non vengono mai inclusi."
+ "it": "Invia report di arresto anomalo ed eventi d’uso anonimi per aiutarci a migliorare VniDrop. Può disattivarlo in qualsiasi momento. Inviti, percorsi dei file e contenuti dei trasferimenti non vengono mai inclusi.",
+ "de": "Anonyme Absturzberichte und Nutzungsereignisse senden, damit wir VniDrop verbessern können. Sie können dies jederzeit deaktivieren. Einladungen, Dateipfade und Übertragungsinhalte werden niemals einbezogen."
}
},
"diagnostics_disabled_message": {
@@ -807,7 +889,8 @@
"en": "Diagnostics sharing is off.",
"fr": "Le partage des diagnostics est désactivé.",
"es": "El uso compartido de diagnósticos está desactivado.",
- "it": "La condivisione dei dati diagnostici è disattivata."
+ "it": "La condivisione dei dati diagnostici è disattivata.",
+ "de": "Die Freigabe von Diagnosedaten ist deaktiviert."
}
},
"diagnostics_enabled_message": {
@@ -816,7 +899,8 @@
"en": "Diagnostics sharing is on.",
"fr": "Le partage des diagnostics est activé.",
"es": "El uso compartido de diagnósticos está activado.",
- "it": "La condivisione dei dati diagnostici è attivata."
+ "it": "La condivisione dei dati diagnostici è attivata.",
+ "de": "Die Freigabe von Diagnosedaten ist aktiviert."
}
},
"diagnostics_title": {
@@ -825,7 +909,8 @@
"en": "Share diagnostics",
"fr": "Partager les diagnostics",
"es": "Compartir diagnósticos",
- "it": "Condividi dati diagnostici"
+ "it": "Condividi dati diagnostici",
+ "de": "Diagnosedaten teilen"
}
},
"error_camera": {
@@ -834,7 +919,8 @@
"en": "Camera access is required to scan a QR code.",
"fr": "L’accès à la caméra est nécessaire pour scanner un QR code.",
"es": "Se necesita acceso a la cámara para escanear un código QR.",
- "it": "Per scansionare un codice QR è necessario l’accesso alla fotocamera."
+ "it": "Per scansionare un codice QR è necessario l’accesso alla fotocamera.",
+ "de": "Für das Scannen eines QR-Codes ist Kamerazugriff erforderlich."
}
},
"error_device_info": {
@@ -843,7 +929,8 @@
"en": "Could not load device information.",
"fr": "Impossible de charger les informations de l’appareil.",
"es": "No se pudo cargar la información del dispositivo.",
- "it": "Impossibile caricare le informazioni sul dispositivo."
+ "it": "Impossibile caricare le informazioni sul dispositivo.",
+ "de": "Geräteinformationen konnten nicht geladen werden."
}
},
"error_filesystem": {
@@ -852,7 +939,8 @@
"en": "VniDrop could not access the selected files or folder. Check permissions and try again.",
"fr": "VniDrop n’a pas pu accéder aux fichiers ou au dossier sélectionnés. Vérifiez les autorisations et réessayez.",
"es": "VniDrop no pudo acceder a los archivos o la carpeta seleccionados. Compruebe los permisos e inténtelo de nuevo.",
- "it": "VniDrop non ha potuto accedere ai file o alla cartella selezionati. Controlli le autorizzazioni e riprovi."
+ "it": "VniDrop non ha potuto accedere ai file o alla cartella selezionati. Controlli le autorizzazioni e riprovi.",
+ "de": "VniDrop konnte nicht auf die ausgewählten Dateien oder den Ordner zugreifen. Überprüfen Sie die Berechtigungen und versuchen Sie es erneut."
}
},
"error_generic": {
@@ -861,7 +949,8 @@
"en": "Something went wrong. Try again.",
"fr": "Une erreur est survenue. Réessayez.",
"es": "Algo salió mal. Inténtelo de nuevo.",
- "it": "Qualcosa è andato storto. Riprovi."
+ "it": "Qualcosa è andato storto. Riprovi.",
+ "de": "Etwas ist schiefgelaufen. Versuchen Sie es erneut."
}
},
"error_initialization": {
@@ -870,7 +959,8 @@
"en": "VniDrop could not finish starting up. Close the app and try again.",
"fr": "VniDrop n’a pas pu terminer son démarrage. Fermez l’app et réessayez.",
"es": "VniDrop no pudo terminar de iniciarse. Cierre la app e inténtelo de nuevo.",
- "it": "VniDrop non ha potuto completare l’avvio. Chiuda l’app e riprovi."
+ "it": "VniDrop non ha potuto completare l’avvio. Chiuda l’app e riprovi.",
+ "de": "VniDrop konnte den Start nicht abschließen. Schließen Sie die App und versuchen Sie es erneut."
}
},
"error_invalid_ticket": {
@@ -879,7 +969,8 @@
"en": "This invitation could not be read. Ask the sender for a new one.",
"fr": "Cette invitation n’a pas pu être lue. Demandez-en une nouvelle à l’expéditeur.",
"es": "No se pudo leer esta invitación. Pida al remitente una nueva.",
- "it": "Impossibile leggere questo invito. Ne chieda uno nuovo al mittente."
+ "it": "Impossibile leggere questo invito. Ne chieda uno nuovo al mittente.",
+ "de": "Diese Einladung konnte nicht gelesen werden. Bitten Sie den Absender um eine neue."
}
},
"error_invitation_empty": {
@@ -888,7 +979,8 @@
"en": "That invitation is empty. Try opening it again.",
"fr": "Cette invitation est vide. Essayez de l’ouvrir à nouveau.",
"es": "Esa invitación está vacía. Intente abrirla de nuevo.",
- "it": "Questo invito è vuoto. Provi ad aprirlo di nuovo."
+ "it": "Questo invito è vuoto. Provi ad aprirlo di nuovo.",
+ "de": "Diese Einladung ist leer. Versuchen Sie, sie erneut zu öffnen."
}
},
"error_missing_native_library": {
@@ -897,7 +989,8 @@
"en": "The native VniDrop library is missing from this build.",
"fr": "La bibliothèque native de VniDrop est absente de cette version.",
"es": "Falta la biblioteca nativa de VniDrop en esta versión.",
- "it": "La libreria nativa di VniDrop non è presente in questa build."
+ "it": "La libreria nativa di VniDrop non è presente in questa build.",
+ "de": "Die native VniDrop-Bibliothek fehlt in diesem Build."
}
},
"error_nfc": {
@@ -906,7 +999,8 @@
"en": "This NFC tag could not be used. Try another tag.",
"fr": "Ce tag NFC n’a pas pu être utilisé. Essayez-en un autre.",
"es": "No se pudo usar esta etiqueta NFC. Pruebe con otra.",
- "it": "Impossibile usare questo tag NFC. Ne provi un altro."
+ "it": "Impossibile usare questo tag NFC. Ne provi un altro.",
+ "de": "Dieses NFC-Tag konnte nicht verwendet werden. Versuchen Sie ein anderes."
}
},
"error_permission": {
@@ -915,7 +1009,8 @@
"en": "The sender has not approved this transfer, or it was refused.",
"fr": "L’expéditeur n’a pas approuvé ce transfert, ou il a été refusé.",
"es": "El remitente no ha aprobado esta transferencia, o fue rechazada.",
- "it": "Il mittente non ha approvato questo trasferimento, oppure è stato rifiutato."
+ "it": "Il mittente non ha approvato questo trasferimento, oppure è stato rifiutato.",
+ "de": "Der Absender hat diese Übertragung nicht genehmigt oder sie wurde abgelehnt."
}
},
"error_repository": {
@@ -924,7 +1019,8 @@
"en": "VniDrop could not save transfer data on this device.",
"fr": "VniDrop n’a pas pu enregistrer les données de transfert sur cet appareil.",
"es": "VniDrop no pudo guardar los datos de la transferencia en este dispositivo.",
- "it": "VniDrop non ha potuto salvare i dati del trasferimento su questo dispositivo."
+ "it": "VniDrop non ha potuto salvare i dati del trasferimento su questo dispositivo.",
+ "de": "VniDrop konnte die Übertragungsdaten auf diesem Gerät nicht speichern."
}
},
"error_selection_failed": {
@@ -933,7 +1029,8 @@
"en": "Could not open the selected item. Try choosing it again.",
"fr": "Impossible d’ouvrir l’élément sélectionné. Essayez de le choisir à nouveau.",
"es": "No se pudo abrir el elemento seleccionado. Intente elegirlo de nuevo.",
- "it": "Impossibile aprire l’elemento selezionato. Provi a sceglierlo di nuovo."
+ "it": "Impossibile aprire l’elemento selezionato. Provi a sceglierlo di nuovo.",
+ "de": "Das ausgewählte Objekt konnte nicht geöffnet werden. Versuchen Sie, es erneut auszuwählen."
}
},
"error_share_empty": {
@@ -942,7 +1039,8 @@
"en": "Select at least one item to share.",
"fr": "Sélectionnez au moins un élément à partager.",
"es": "Seleccione al menos un elemento para compartir.",
- "it": "Selezioni almeno un elemento da condividere."
+ "it": "Selezioni almeno un elemento da condividere.",
+ "de": "Wählen Sie mindestens ein Objekt zum Teilen aus."
}
},
"error_socket_bind": {
@@ -951,7 +1049,8 @@
"en": "VniDrop could not open its network sockets on this device.",
"fr": "VniDrop n’a pas pu ouvrir ses sockets réseau sur cet appareil.",
"es": "VniDrop no pudo abrir sus sockets de red en este dispositivo.",
- "it": "VniDrop non ha potuto aprire i suoi socket di rete su questo dispositivo."
+ "it": "VniDrop non ha potuto aprire i suoi socket di rete su questo dispositivo.",
+ "de": "VniDrop konnte seine Netzwerk-Sockets auf diesem Gerät nicht öffnen."
}
},
"error_starting_up": {
@@ -960,7 +1059,8 @@
"en": "VniDrop is still starting. Open the invitation again in a moment.",
"fr": "VniDrop démarre encore. Rouvrez l’invitation dans un instant.",
"es": "VniDrop todavía se está iniciando. Vuelva a abrir la invitación en un momento.",
- "it": "VniDrop è ancora in fase di avvio. Riapra l’invito tra un momento."
+ "it": "VniDrop è ancora in fase di avvio. Riapra l’invito tra un momento.",
+ "de": "VniDrop startet noch. Öffnen Sie die Einladung gleich erneut."
}
},
"error_transfer": {
@@ -969,7 +1069,8 @@
"en": "The transfer could not be completed. Check your connection and try again.",
"fr": "Le transfert n’a pas pu être terminé. Vérifiez votre connexion et réessayez.",
"es": "No se pudo completar la transferencia. Compruebe su conexión e inténtelo de nuevo.",
- "it": "Impossibile completare il trasferimento. Controlli la connessione e riprovi."
+ "it": "Impossibile completare il trasferimento. Controlli la connessione e riprovi.",
+ "de": "Die Übertragung konnte nicht abgeschlossen werden. Überprüfen Sie Ihre Verbindung und versuchen Sie es erneut."
}
},
"field_receiver_name": {
@@ -978,7 +1079,8 @@
"en": "Receiver name",
"fr": "Nom du destinataire",
"es": "Nombre del destinatario",
- "it": "Nome del destinatario"
+ "it": "Nome del destinatario",
+ "de": "Empfängername"
}
},
"field_sender_name": {
@@ -987,7 +1089,8 @@
"en": "Sender name",
"fr": "Nom de l’expéditeur",
"es": "Nombre del remitente",
- "it": "Nome del mittente"
+ "it": "Nome del mittente",
+ "de": "Absendername"
}
},
"field_transfer_name": {
@@ -996,7 +1099,8 @@
"en": "Transfer name",
"fr": "Nom du transfert",
"es": "Nombre de la transferencia",
- "it": "Nome del trasferimento"
+ "it": "Nome del trasferimento",
+ "de": "Übertragungsname"
}
},
"field_username": {
@@ -1005,7 +1109,8 @@
"en": "Display name",
"fr": "Nom d’affichage",
"es": "Nombre visible",
- "it": "Nome visualizzato"
+ "it": "Nome visualizzato",
+ "de": "Anzeigename"
}
},
"folder_status_permission_required": {
@@ -1014,7 +1119,8 @@
"en": "Permission needed",
"fr": "Autorisation requise",
"es": "Permiso necesario",
- "it": "Autorizzazione necessaria"
+ "it": "Autorizzazione necessaria",
+ "de": "Berechtigung erforderlich"
}
},
"folder_status_unavailable": {
@@ -1023,7 +1129,8 @@
"en": "Unavailable",
"fr": "Indisponible",
"es": "No disponible",
- "it": "Non disponibile"
+ "it": "Non disponibile",
+ "de": "Nicht verfügbar"
}
},
"folder_status_validating": {
@@ -1032,7 +1139,8 @@
"en": "Checking folder…",
"fr": "Vérification du dossier…",
"es": "Comprobando carpeta…",
- "it": "Controllo della cartella…"
+ "it": "Controllo della cartella…",
+ "de": "Ordner wird geprüft…"
}
},
"folder_status_writable": {
@@ -1041,7 +1149,8 @@
"en": "Ready",
"fr": "Prêt",
"es": "Listo",
- "it": "Pronta"
+ "it": "Pronta",
+ "de": "Bereit"
}
},
"metadata_files": {
@@ -1050,7 +1159,8 @@
"en": "Files",
"fr": "Fichiers",
"es": "Archivos",
- "it": "File"
+ "it": "File",
+ "de": "Dateien"
}
},
"metadata_size": {
@@ -1059,7 +1169,8 @@
"en": "Size",
"fr": "Taille",
"es": "Tamaño",
- "it": "Dimensione"
+ "it": "Dimensione",
+ "de": "Größe"
}
},
"metadata_status": {
@@ -1068,7 +1179,8 @@
"en": "Status",
"fr": "Statut",
"es": "Estado",
- "it": "Stato"
+ "it": "Stato",
+ "de": "Status"
}
},
"nav_receive": {
@@ -1077,7 +1189,8 @@
"en": "Receive",
"fr": "Recevoir",
"es": "Recibir",
- "it": "Ricevi"
+ "it": "Ricevi",
+ "de": "Empfangen"
}
},
"nav_send": {
@@ -1086,7 +1199,8 @@
"en": "Send",
"fr": "Envoyer",
"es": "Enviar",
- "it": "Invia"
+ "it": "Invia",
+ "de": "Senden"
}
},
"nav_settings": {
@@ -1095,7 +1209,8 @@
"en": "Settings",
"fr": "Réglages",
"es": "Ajustes",
- "it": "Impostazioni"
+ "it": "Impostazioni",
+ "de": "Einstellungen"
}
},
"network_title": {
@@ -1104,7 +1219,8 @@
"en": "Network",
"fr": "Réseau",
"es": "Red",
- "it": "Rete"
+ "it": "Rete",
+ "de": "Netzwerk"
}
},
"notifications_description": {
@@ -1113,7 +1229,8 @@
"en": "Get notified about new receive requests while VniDrop is in the background.",
"fr": "Soyez averti des nouvelles demandes de réception lorsque VniDrop est en arrière-plan.",
"es": "Reciba avisos sobre nuevas solicitudes de recepción cuando VniDrop está en segundo plano.",
- "it": "Ricevi avvisi sulle nuove richieste di ricezione quando VniDrop è in background."
+ "it": "Ricevi avvisi sulle nuove richieste di ricezione quando VniDrop è in background.",
+ "de": "Werden Sie über neue Empfangsanfragen benachrichtigt, während VniDrop im Hintergrund läuft."
}
},
"notifications_enabled_message": {
@@ -1122,7 +1239,8 @@
"en": "Notifications enabled.",
"fr": "Notifications activées.",
"es": "Notificaciones activadas.",
- "it": "Notifiche attivate."
+ "it": "Notifiche attivate.",
+ "de": "Mitteilungen aktiviert."
}
},
"notifications_local_title": {
@@ -1131,7 +1249,8 @@
"en": "Allow notifications",
"fr": "Autoriser les notifications",
"es": "Permitir notificaciones",
- "it": "Consenti le notifiche"
+ "it": "Consenti le notifiche",
+ "de": "Mitteilungen erlauben"
}
},
"notifications_permission_denied": {
@@ -1140,7 +1259,8 @@
"en": "Notifications are turned off for VniDrop. You can enable them in Settings.",
"fr": "Les notifications sont désactivées pour VniDrop. Vous pouvez les activer dans les Réglages.",
"es": "Las notificaciones están desactivadas para VniDrop. Puede activarlas en Ajustes.",
- "it": "Le notifiche sono disattivate per VniDrop. Può attivarle in Impostazioni."
+ "it": "Le notifiche sono disattivate per VniDrop. Può attivarle in Impostazioni.",
+ "de": "Mitteilungen sind für VniDrop deaktiviert. Sie können sie in den Einstellungen aktivieren."
}
},
"notifications_settings_open_failed": {
@@ -1149,7 +1269,8 @@
"en": "Could not open notification settings.",
"fr": "Impossible d’ouvrir les réglages de notifications.",
"es": "No se pudieron abrir los ajustes de notificaciones.",
- "it": "Impossibile aprire le impostazioni delle notifiche."
+ "it": "Impossibile aprire le impostazioni delle notifiche.",
+ "de": "Die Mitteilungseinstellungen konnten nicht geöffnet werden."
}
},
"notifications_title": {
@@ -1158,7 +1279,8 @@
"en": "Notifications",
"fr": "Notifications",
"es": "Notificaciones",
- "it": "Notifiche"
+ "it": "Notifiche",
+ "de": "Mitteilungen"
}
},
"notifications_unsupported": {
@@ -1167,7 +1289,8 @@
"en": "Notifications are not available on this device.",
"fr": "Les notifications ne sont pas disponibles sur cet appareil.",
"es": "Las notificaciones no están disponibles en este dispositivo.",
- "it": "Le notifiche non sono disponibili su questo dispositivo."
+ "it": "Le notifiche non sono disponibili su questo dispositivo.",
+ "de": "Mitteilungen sind auf diesem Gerät nicht verfügbar."
}
},
"os_version_title": {
@@ -1176,7 +1299,8 @@
"en": "Operating system",
"fr": "Système d’exploitation",
"es": "Sistema operativo",
- "it": "Sistema operativo"
+ "it": "Sistema operativo",
+ "de": "Betriebssystem"
}
},
"preferences_receive_folder_title": {
@@ -1185,7 +1309,8 @@
"en": "Save received transfers to",
"fr": "Enregistrer les transferts reçus dans",
"es": "Guardar las transferencias recibidas en",
- "it": "Salva i trasferimenti ricevuti in"
+ "it": "Salva i trasferimenti ricevuti in",
+ "de": "Empfangene Übertragungen sichern in"
}
},
"preferences_title": {
@@ -1194,7 +1319,8 @@
"en": "Preferences",
"fr": "Préférences",
"es": "Preferencias",
- "it": "Preferenze"
+ "it": "Preferenze",
+ "de": "Voreinstellungen"
}
},
"progress_cancelled": {
@@ -1203,7 +1329,8 @@
"en": "Cancelled",
"fr": "Annulé",
"es": "Cancelado",
- "it": "Annullato"
+ "it": "Annullato",
+ "de": "Abgebrochen"
}
},
"progress_completed": {
@@ -1212,7 +1339,8 @@
"en": "Completed",
"fr": "Terminé",
"es": "Completado",
- "it": "Completato"
+ "it": "Completato",
+ "de": "Abgeschlossen"
}
},
"progress_connected": {
@@ -1221,7 +1349,8 @@
"en": "Connected",
"fr": "Connecté",
"es": "Conectado",
- "it": "Connesso"
+ "it": "Connesso",
+ "de": "Verbunden"
}
},
"progress_connecting": {
@@ -1230,7 +1359,8 @@
"en": "Connecting",
"fr": "Connexion",
"es": "Conectando",
- "it": "Connessione"
+ "it": "Connessione",
+ "de": "Verbinden"
}
},
"progress_downloading": {
@@ -1239,7 +1369,8 @@
"en": "Downloading",
"fr": "Téléchargement",
"es": "Descargando",
- "it": "Download"
+ "it": "Download",
+ "de": "Wird geladen"
}
},
"progress_failed": {
@@ -1248,7 +1379,8 @@
"en": "Failed",
"fr": "Échec",
"es": "Fallido",
- "it": "Non riuscito"
+ "it": "Non riuscito",
+ "de": "Fehlgeschlagen"
}
},
"progress_getting_ready": {
@@ -1257,7 +1389,8 @@
"en": "Getting ready",
"fr": "Préparation",
"es": "Preparándose",
- "it": "Preparazione"
+ "it": "Preparazione",
+ "de": "Wird bereitgemacht"
}
},
"progress_interrupted": {
@@ -1266,7 +1399,8 @@
"en": "Transfer interrupted",
"fr": "Transfert interrompu",
"es": "Transferencia interrumpida",
- "it": "Trasferimento interrotto"
+ "it": "Trasferimento interrotto",
+ "de": "Übertragung unterbrochen"
}
},
"progress_preparing": {
@@ -1275,7 +1409,8 @@
"en": "Preparing",
"fr": "Préparation",
"es": "Preparando",
- "it": "Preparazione"
+ "it": "Preparazione",
+ "de": "Wird vorbereitet"
}
},
"progress_ready": {
@@ -1284,7 +1419,8 @@
"en": "Ready",
"fr": "Prêt",
"es": "Listo",
- "it": "Pronto"
+ "it": "Pronto",
+ "de": "Bereit"
}
},
"progress_receiving": {
@@ -1293,7 +1429,8 @@
"en": "Receiving",
"fr": "Réception",
"es": "Recibiendo",
- "it": "Ricezione"
+ "it": "Ricezione",
+ "de": "Wird empfangen"
}
},
"progress_requesting_access": {
@@ -1302,7 +1439,8 @@
"en": "Requesting access",
"fr": "Demande d’accès",
"es": "Solicitando acceso",
- "it": "Richiesta di accesso"
+ "it": "Richiesta di accesso",
+ "de": "Zugriff wird angefragt"
}
},
"progress_saving": {
@@ -1311,7 +1449,8 @@
"en": "Saving",
"fr": "Enregistrement",
"es": "Guardando",
- "it": "Salvataggio"
+ "it": "Salvataggio",
+ "de": "Wird gesichert"
}
},
"progress_sending": {
@@ -1320,7 +1459,8 @@
"en": "Sending",
"fr": "Envoi",
"es": "Enviando",
- "it": "Invio"
+ "it": "Invio",
+ "de": "Wird gesendet"
}
},
"progress_sending_to_count": {
@@ -1329,7 +1469,8 @@
"en": "Sending to {count}",
"fr": "Envoi à {count}",
"es": "Enviando a {count}",
- "it": "Invio a {count}"
+ "it": "Invio a {count}",
+ "de": "Senden an {count}"
},
"args": [
{
@@ -1344,7 +1485,8 @@
"en": "Ready to share",
"fr": "Prêt à partager",
"es": "Listo para compartir",
- "it": "Pronto per la condivisione"
+ "it": "Pronto per la condivisione",
+ "de": "Bereit zum Teilen"
}
},
"progress_working": {
@@ -1353,7 +1495,8 @@
"en": "Working…",
"fr": "En cours…",
"es": "Trabajando…",
- "it": "Elaborazione…"
+ "it": "Elaborazione…",
+ "de": "Wird bearbeitet…"
}
},
"receive_choose_method_body": {
@@ -1362,7 +1505,8 @@
"en": "Choose the invitation method available to you.",
"fr": "Choisissez la méthode d’invitation à votre disposition.",
"es": "Elija el método de invitación de que disponga.",
- "it": "Scelga il metodo di invito a sua disposizione."
+ "it": "Scelga il metodo di invito a sua disposizione.",
+ "de": "Wählen Sie die Ihnen zur Verfügung stehende Einladungsmethode."
}
},
"receive_choose_method_title": {
@@ -1371,7 +1515,8 @@
"en": "How would you like to connect?",
"fr": "Comment souhaitez-vous vous connecter ?",
"es": "¿Cómo quiere conectarse?",
- "it": "Come vuole connettersi?"
+ "it": "Come vuole connettersi?",
+ "de": "Wie möchten Sie sich verbinden?"
}
},
"receive_clear_history": {
@@ -1380,7 +1525,8 @@
"en": "Clear history",
"fr": "Effacer l’historique",
"es": "Borrar historial",
- "it": "Cancella cronologia"
+ "it": "Cancella cronologia",
+ "de": "Verlauf löschen"
}
},
"receive_clear_history_description": {
@@ -1389,7 +1535,8 @@
"en": "All completed, failed, and cancelled receives will be removed from VniDrop’s history. Downloaded files will remain on this device.",
"fr": "Toutes les réceptions terminées, échouées et annulées seront retirées de l’historique de VniDrop. Les fichiers téléchargés resteront sur cet appareil.",
"es": "Todas las recepciones completadas, fallidas y canceladas se eliminarán del historial de VniDrop. Los archivos descargados permanecerán en este dispositivo.",
- "it": "Tutte le ricezioni completate, non riuscite e annullate verranno rimosse dalla cronologia di VniDrop. I file scaricati rimarranno su questo dispositivo."
+ "it": "Tutte le ricezioni completate, non riuscite e annullate verranno rimosse dalla cronologia di VniDrop. I file scaricati rimarranno su questo dispositivo.",
+ "de": "Alle abgeschlossenen, fehlgeschlagenen und abgebrochenen Empfänge werden aus dem Verlauf von VniDrop entfernt. Heruntergeladene Dateien verbleiben auf diesem Gerät."
}
},
"receive_clear_history_title": {
@@ -1398,7 +1545,8 @@
"en": "Clear receive history?",
"fr": "Effacer l’historique de réception ?",
"es": "¿Borrar el historial de recepción?",
- "it": "Cancellare la cronologia di ricezione?"
+ "it": "Cancellare la cronologia di ricezione?",
+ "de": "Empfangsverlauf löschen?"
}
},
"receive_completed": {
@@ -1407,7 +1555,8 @@
"en": "Transfer received.",
"fr": "Transfert reçu.",
"es": "Transferencia recibida.",
- "it": "Trasferimento ricevuto."
+ "it": "Trasferimento ricevuto.",
+ "de": "Übertragung empfangen."
}
},
"receive_delete_history_description": {
@@ -1422,7 +1571,8 @@
"en": "“{arg1}” will be removed from VniDrop’s history. The downloaded file will remain on this device.",
"fr": "« {arg1} » sera retiré de l’historique de VniDrop. Le fichier téléchargé restera sur cet appareil.",
"es": "«{arg1}» se eliminará del historial de VniDrop. El archivo descargado permanecerá en este dispositivo.",
- "it": "«{arg1}» verrà rimosso dalla cronologia di VniDrop. Il file scaricato rimarrà su questo dispositivo."
+ "it": "«{arg1}» verrà rimosso dalla cronologia di VniDrop. Il file scaricato rimarrà su questo dispositivo.",
+ "de": "„{arg1}“ wird aus dem Verlauf von VniDrop entfernt. Die heruntergeladene Datei verbleibt auf diesem Gerät."
}
},
"receive_delete_history_item": {
@@ -1431,7 +1581,8 @@
"en": "Delete from receive history",
"fr": "Supprimer de l’historique de réception",
"es": "Eliminar del historial de recepción",
- "it": "Elimina dalla cronologia di ricezione"
+ "it": "Elimina dalla cronologia di ricezione",
+ "de": "Aus Empfangsverlauf löschen"
}
},
"receive_delete_history_title": {
@@ -1440,7 +1591,8 @@
"en": "Remove from history?",
"fr": "Retirer de l’historique ?",
"es": "¿Quitar del historial?",
- "it": "Rimuovere dalla cronologia?"
+ "it": "Rimuovere dalla cronologia?",
+ "de": "Aus dem Verlauf entfernen?"
}
},
"receive_empty_body": {
@@ -1449,7 +1601,8 @@
"en": "Open a VniDrop invitation, scan a QR code, or hold near an NFC tag.",
"fr": "Ouvrez une invitation VniDrop, scannez un QR code ou approchez un tag NFC.",
"es": "Abra una invitación de VniDrop, escanee un código QR o acerque una etiqueta NFC.",
- "it": "Apra un invito VniDrop, scansioni un codice QR o avvicini un tag NFC."
+ "it": "Apra un invito VniDrop, scansioni un codice QR o avvicini un tag NFC.",
+ "de": "Öffnen Sie eine VniDrop-Einladung, scannen Sie einen QR-Code oder halten Sie das Gerät an ein NFC-Tag."
}
},
"receive_empty_title": {
@@ -1458,7 +1611,8 @@
"en": "Nothing received yet",
"fr": "Rien reçu pour l’instant",
"es": "Aún no se ha recibido nada",
- "it": "Ancora nulla di ricevuto"
+ "it": "Ancora nulla di ricevuto",
+ "de": "Noch nichts empfangen"
}
},
"receive_history_cleared": {
@@ -1467,7 +1621,8 @@
"en": "Receive history cleared.",
"fr": "Historique de réception effacé.",
"es": "Historial de recepción borrado.",
- "it": "Cronologia di ricezione cancellata."
+ "it": "Cronologia di ricezione cancellata.",
+ "de": "Empfangsverlauf gelöscht."
}
},
"receive_history_title": {
@@ -1476,7 +1631,8 @@
"en": "History",
"fr": "Historique",
"es": "Historial",
- "it": "Cronologia"
+ "it": "Cronologia",
+ "de": "Verlauf"
}
},
"receive_method_file": {
@@ -1485,7 +1641,8 @@
"en": "Open a .vnd invitation",
"fr": "Ouvrir une invitation .vnd",
"es": "Abrir una invitación .vnd",
- "it": "Apri un invito .vnd"
+ "it": "Apri un invito .vnd",
+ "de": "Eine .vnd-Einladung öffnen"
}
},
"receive_method_file_description": {
@@ -1494,7 +1651,8 @@
"en": "Choose an invitation saved or shared to this device.",
"fr": "Choisissez une invitation enregistrée ou partagée sur cet appareil.",
"es": "Elija una invitación guardada o compartida en este dispositivo.",
- "it": "Scelga un invito salvato o condiviso su questo dispositivo."
+ "it": "Scelga un invito salvato o condiviso su questo dispositivo.",
+ "de": "Wählen Sie eine auf diesem Gerät gespeicherte oder geteilte Einladung."
}
},
"receive_method_nfc": {
@@ -1503,7 +1661,8 @@
"en": "Read NFC tag",
"fr": "Lire un tag NFC",
"es": "Leer etiqueta NFC",
- "it": "Leggi tag NFC"
+ "it": "Leggi tag NFC",
+ "de": "NFC-Tag lesen"
}
},
"receive_method_nfc_description": {
@@ -1512,7 +1671,8 @@
"en": "Hold this device near the sender’s invitation tag.",
"fr": "Approchez cet appareil du tag d’invitation de l’expéditeur.",
"es": "Acerque este dispositivo a la etiqueta de invitación del remitente.",
- "it": "Avvicini questo dispositivo al tag di invito del mittente."
+ "it": "Avvicini questo dispositivo al tag di invito del mittente.",
+ "de": "Halten Sie dieses Gerät an das Einladungs-Tag des Absenders."
}
},
"receive_method_scan": {
@@ -1521,7 +1681,8 @@
"en": "Scan QR code",
"fr": "Scanner un QR code",
"es": "Escanear código QR",
- "it": "Scansiona codice QR"
+ "it": "Scansiona codice QR",
+ "de": "QR-Code scannen"
}
},
"receive_method_scan_description": {
@@ -1530,7 +1691,8 @@
"en": "Use the camera to scan the sender’s VniDrop code.",
"fr": "Utilisez la caméra pour scanner le code VniDrop de l’expéditeur.",
"es": "Use la cámara para escanear el código de VniDrop del remitente.",
- "it": "Usi la fotocamera per scansionare il codice VniDrop del mittente."
+ "it": "Usi la fotocamera per scansionare il codice VniDrop del mittente.",
+ "de": "Verwenden Sie die Kamera, um den VniDrop-Code des Absenders zu scannen."
}
},
"receive_new_subtitle": {
@@ -1539,7 +1701,8 @@
"en": "Transfers you’ve received on this device.",
"fr": "Transferts que vous avez reçus sur cet appareil.",
"es": "Transferencias que ha recibido en este dispositivo.",
- "it": "Trasferimenti che ha ricevuto su questo dispositivo."
+ "it": "Trasferimenti che ha ricevuto su questo dispositivo.",
+ "de": "Übertragungen, die Sie auf diesem Gerät empfangen haben."
}
},
"receive_nfc_waiting": {
@@ -1548,7 +1711,8 @@
"en": "Hold near the NFC tag…",
"fr": "Approchez du tag NFC…",
"es": "Acerque a la etiqueta NFC…",
- "it": "Avvicini al tag NFC…"
+ "it": "Avvicini al tag NFC…",
+ "de": "Halten Sie das Gerät an das NFC-Tag…"
}
},
"receive_open_files_failed": {
@@ -1557,7 +1721,8 @@
"en": "Couldn’t open VniDrop in Files.",
"fr": "Impossible d’ouvrir VniDrop dans Fichiers.",
"es": "No se pudo abrir VniDrop en Archivos.",
- "it": "Impossibile aprire VniDrop in File."
+ "it": "Impossibile aprire VniDrop in File.",
+ "de": "VniDrop konnte in „Dateien“ nicht geöffnet werden."
}
},
"receive_review_title": {
@@ -1566,7 +1731,8 @@
"en": "Review transfer",
"fr": "Vérifier le transfert",
"es": "Revisar transferencia",
- "it": "Rivedi trasferimento"
+ "it": "Rivedi trasferimento",
+ "de": "Übertragung prüfen"
}
},
"receive_title": {
@@ -1575,7 +1741,8 @@
"en": "Receive",
"fr": "Recevoir",
"es": "Recibir",
- "it": "Ricevi"
+ "it": "Ricevi",
+ "de": "Empfangen"
}
},
"receive_unknown_transfer": {
@@ -1584,7 +1751,8 @@
"en": "VniDrop transfer",
"fr": "Transfert VniDrop",
"es": "Transferencia de VniDrop",
- "it": "Trasferimento VniDrop"
+ "it": "Trasferimento VniDrop",
+ "de": "VniDrop-Übertragung"
}
},
"send_access_anyone": {
@@ -1593,7 +1761,8 @@
"en": "Anyone with this transfer",
"fr": "Toute personne disposant de ce transfert",
"es": "Cualquiera que tenga esta transferencia",
- "it": "Chiunque abbia questo trasferimento"
+ "it": "Chiunque abbia questo trasferimento",
+ "de": "Jeder mit dieser Übertragung"
}
},
"send_access_anyone_description": {
@@ -1602,7 +1771,8 @@
"en": "No approval is required. Only use this for items you are comfortable sharing.",
"fr": "Aucune approbation requise. À n’utiliser que pour des éléments que vous êtes à l’aise de partager.",
"es": "No se requiere aprobación. Úselo solo para elementos que no le importe compartir.",
- "it": "Nessuna approvazione richiesta. Da usare solo per elementi che non ha problemi a condividere."
+ "it": "Nessuna approvazione richiesta. Da usare solo per elementi che non ha problemi a condividere.",
+ "de": "Keine Genehmigung erforderlich. Verwenden Sie dies nur für Objekte, die Sie unbedenklich teilen können."
}
},
"send_access_anyone_warning": {
@@ -1611,7 +1781,8 @@
"en": "Anyone with the invitation can download until you stop sharing. Do not use this for private or sensitive items.",
"fr": "Toute personne disposant de l’invitation peut télécharger jusqu’à ce que vous arrêtiez le partage. Ne l’utilisez pas pour des éléments privés ou sensibles.",
"es": "Cualquiera que tenga la invitación puede descargar hasta que deje de compartir. No lo use para elementos privados o sensibles.",
- "it": "Chiunque abbia l’invito può scaricare finché non interrompe la condivisione. Non lo usi per elementi privati o sensibili."
+ "it": "Chiunque abbia l’invito può scaricare finché non interrompe la condivisione. Non lo usi per elementi privati o sensibili.",
+ "de": "Jeder mit der Einladung kann herunterladen, bis Sie die Freigabe beenden. Verwenden Sie dies nicht für private oder sensible Objekte."
}
},
"send_access_approval": {
@@ -1620,7 +1791,8 @@
"en": "Ask before each download",
"fr": "Demander avant chaque téléchargement",
"es": "Preguntar antes de cada descarga",
- "it": "Chiedi prima di ogni download"
+ "it": "Chiedi prima di ogni download",
+ "de": "Vor jedem Download fragen"
}
},
"send_access_approval_description": {
@@ -1629,7 +1801,8 @@
"en": "You approve or refuse every new receiver.",
"fr": "Vous approuvez ou refusez chaque nouveau destinataire.",
"es": "Usted aprueba o rechaza a cada nuevo destinatario.",
- "it": "Approva o rifiuta ogni nuovo destinatario."
+ "it": "Approva o rifiuta ogni nuovo destinatario.",
+ "de": "Sie genehmigen oder lehnen jeden neuen Empfänger ab."
}
},
"send_access_title": {
@@ -1638,7 +1811,8 @@
"en": "Who can receive it?",
"fr": "Qui peut le recevoir ?",
"es": "¿Quién puede recibirla?",
- "it": "Chi può riceverlo?"
+ "it": "Chi può riceverlo?",
+ "de": "Wer kann sie empfangen?"
}
},
"send_choose_file_body": {
@@ -1647,7 +1821,8 @@
"en": "Select files or a folder from this device. You can review the selection before creating the transfer.",
"fr": "Sélectionnez des fichiers ou un dossier sur cet appareil. Vous pourrez vérifier la sélection avant de créer le transfert.",
"es": "Seleccione archivos o una carpeta de este dispositivo. Podrá revisar la selección antes de crear la transferencia.",
- "it": "Selezioni file o una cartella da questo dispositivo. Potrà rivedere la selezione prima di creare il trasferimento."
+ "it": "Selezioni file o una cartella da questo dispositivo. Potrà rivedere la selezione prima di creare il trasferimento.",
+ "de": "Wählen Sie Dateien oder einen Ordner auf diesem Gerät aus. Sie können die Auswahl überprüfen, bevor Sie die Übertragung erstellen."
}
},
"send_choose_file_title": {
@@ -1656,7 +1831,8 @@
"en": "Choose what to share",
"fr": "Choisissez quoi partager",
"es": "Elija qué compartir",
- "it": "Scelga cosa condividere"
+ "it": "Scelga cosa condividere",
+ "de": "Wählen Sie, was Sie teilen möchten"
}
},
"send_empty_body": {
@@ -1665,7 +1841,8 @@
"en": "Create a transfer, decide who can receive it, then invite them with a QR code, NFC tag, or invitation file.",
"fr": "Créez un transfert, décidez qui peut le recevoir, puis invitez-les avec un QR code, un tag NFC ou un fichier d’invitation.",
"es": "Cree una transferencia, decida quién puede recibirla y luego invite a esas personas con un código QR, una etiqueta NFC o un archivo de invitación.",
- "it": "Crei un trasferimento, decida chi può riceverlo, poi inviti queste persone con un codice QR, un tag NFC o un file di invito."
+ "it": "Crei un trasferimento, decida chi può riceverlo, poi inviti queste persone con un codice QR, un tag NFC o un file di invito.",
+ "de": "Erstellen Sie eine Übertragung, entscheiden Sie, wer sie empfangen darf, und laden Sie diese Personen dann mit einem QR-Code, einem NFC-Tag oder einer Einladungsdatei ein."
}
},
"send_empty_title": {
@@ -1674,7 +1851,8 @@
"en": "Nothing shared yet",
"fr": "Rien partagé pour l’instant",
"es": "Aún no se ha compartido nada",
- "it": "Ancora nulla di condiviso"
+ "it": "Ancora nulla di condiviso",
+ "de": "Noch nichts geteilt"
}
},
"send_file_size_unknown": {
@@ -1683,7 +1861,8 @@
"en": "Size unavailable",
"fr": "Taille indisponible",
"es": "Tamaño no disponible",
- "it": "Dimensione non disponibile"
+ "it": "Dimensione non disponibile",
+ "de": "Größe nicht verfügbar"
}
},
"send_folder_label": {
@@ -1692,7 +1871,8 @@
"en": "Folder",
"fr": "Dossier",
"es": "Carpeta",
- "it": "Cartella"
+ "it": "Cartella",
+ "de": "Ordner"
}
},
"send_new_transfer_description": {
@@ -1701,7 +1881,8 @@
"en": "Create a new transfer",
"fr": "Créer un nouveau transfert",
"es": "Crear una nueva transferencia",
- "it": "Crea un nuovo trasferimento"
+ "it": "Crea un nuovo trasferimento",
+ "de": "Eine neue Übertragung erstellen"
}
},
"send_new_transfer_title": {
@@ -1710,7 +1891,8 @@
"en": "New transfer",
"fr": "Nouveau transfert",
"es": "Nueva transferencia",
- "it": "Nuovo trasferimento"
+ "it": "Nuovo trasferimento",
+ "de": "Neue Übertragung"
}
},
"send_review_title": {
@@ -1719,7 +1901,8 @@
"en": "Review transfer",
"fr": "Vérifier le transfert",
"es": "Revisar transferencia",
- "it": "Rivedi trasferimento"
+ "it": "Rivedi trasferimento",
+ "de": "Übertragung prüfen"
}
},
"send_selected_files_count": {
@@ -1734,7 +1917,8 @@
"en": "{count} files selected",
"fr": "{count} fichiers sélectionnés",
"es": "{count} archivos seleccionados",
- "it": "{count} file selezionati"
+ "it": "{count} file selezionati",
+ "de": "{count} Dateien ausgewählt"
}
},
"send_stop_sharing": {
@@ -1743,7 +1927,8 @@
"en": "Stop sharing",
"fr": "Arrêter le partage",
"es": "Dejar de compartir",
- "it": "Interrompi condivisione"
+ "it": "Interrompi condivisione",
+ "de": "Freigabe beenden"
}
},
"send_stop_sharing_description": {
@@ -1752,7 +1937,8 @@
"en": "This stops the transfer and interrupts anyone currently downloading it. It stays in your history as Stopped.",
"fr": "Cela arrête le transfert et interrompt toute personne en train de le télécharger. Il reste dans votre historique en tant qu’Arrêté.",
"es": "Esto detiene la transferencia e interrumpe a quien esté descargándola. Permanece en su historial como Detenida.",
- "it": "Questo interrompe il trasferimento e blocca chiunque lo stia scaricando. Rimane nella sua cronologia come Interrotto."
+ "it": "Questo interrompe il trasferimento e blocca chiunque lo stia scaricando. Rimane nella sua cronologia come Interrotto.",
+ "de": "Dies beendet die Übertragung und unterbricht alle, die sie gerade herunterladen. Sie verbleibt in Ihrem Verlauf als „Beendet“."
}
},
"send_subtitle": {
@@ -1761,7 +1947,8 @@
"en": "Transfers you’re sharing from this device.",
"fr": "Transferts que vous partagez depuis cet appareil.",
"es": "Transferencias que está compartiendo desde este dispositivo.",
- "it": "Trasferimenti che sta condividendo da questo dispositivo."
+ "it": "Trasferimenti che sta condividendo da questo dispositivo.",
+ "de": "Übertragungen, die Sie von diesem Gerät aus teilen."
}
},
"send_title": {
@@ -1770,7 +1957,8 @@
"en": "Send",
"fr": "Envoyer",
"es": "Enviar",
- "it": "Invia"
+ "it": "Invia",
+ "de": "Senden"
}
},
"send_transfer_created": {
@@ -1779,7 +1967,8 @@
"en": "Transfer created.",
"fr": "Transfert créé.",
"es": "Transferencia creada.",
- "it": "Trasferimento creato."
+ "it": "Trasferimento creato.",
+ "de": "Übertragung erstellt."
}
},
"send_transfer_details_title": {
@@ -1788,7 +1977,8 @@
"en": "Transfer details",
"fr": "Détails du transfert",
"es": "Detalles de la transferencia",
- "it": "Dettagli del trasferimento"
+ "it": "Dettagli del trasferimento",
+ "de": "Übertragungsdetails"
}
},
"send_transfers_title": {
@@ -1797,7 +1987,8 @@
"en": "Your transfers",
"fr": "Vos transferts",
"es": "Sus transferencias",
- "it": "I suoi trasferimenti"
+ "it": "I suoi trasferimenti",
+ "de": "Ihre Übertragungen"
}
},
"settings_subtitle": {
@@ -1806,7 +1997,8 @@
"en": "Your name, where transfers are saved, appearance, and notifications.",
"fr": "Votre nom, l’emplacement d’enregistrement des transferts, l’apparence et les notifications.",
"es": "Su nombre, dónde se guardan las transferencias, la apariencia y las notificaciones.",
- "it": "Il suo nome, dove vengono salvati i trasferimenti, l’aspetto e le notifiche."
+ "it": "Il suo nome, dove vengono salvati i trasferimenti, l’aspetto e le notifiche.",
+ "de": "Ihr Name, wo Übertragungen gesichert werden, Darstellung und Mitteilungen."
}
},
"settings_title": {
@@ -1815,7 +2007,8 @@
"en": "Settings",
"fr": "Réglages",
"es": "Ajustes",
- "it": "Impostazioni"
+ "it": "Impostazioni",
+ "de": "Einstellungen"
}
},
"snackbar_dismiss": {
@@ -1824,7 +2017,8 @@
"en": "Dismiss",
"fr": "Ignorer",
"es": "Descartar",
- "it": "Ignora"
+ "it": "Ignora",
+ "de": "Ausblenden"
}
},
"status_available": {
@@ -1833,7 +2027,8 @@
"en": "Available",
"fr": "Disponible",
"es": "Disponible",
- "it": "Disponibile"
+ "it": "Disponibile",
+ "de": "Verfügbar"
}
},
"status_cancelled": {
@@ -1842,7 +2037,8 @@
"en": "Cancelled",
"fr": "Annulé",
"es": "Cancelado",
- "it": "Annullato"
+ "it": "Annullato",
+ "de": "Abgebrochen"
}
},
"status_completed": {
@@ -1851,7 +2047,8 @@
"en": "Completed",
"fr": "Terminé",
"es": "Completado",
- "it": "Completato"
+ "it": "Completato",
+ "de": "Abgeschlossen"
}
},
"status_failed": {
@@ -1860,7 +2057,8 @@
"en": "Failed",
"fr": "Échec",
"es": "Fallido",
- "it": "Non riuscito"
+ "it": "Non riuscito",
+ "de": "Fehlgeschlagen"
}
},
"status_preparing": {
@@ -1869,7 +2067,8 @@
"en": "Preparing",
"fr": "Préparation",
"es": "Preparando",
- "it": "Preparazione"
+ "it": "Preparazione",
+ "de": "Wird vorbereitet"
}
},
"status_receiving": {
@@ -1878,7 +2077,8 @@
"en": "Receiving",
"fr": "Réception",
"es": "Recibiendo",
- "it": "Ricezione"
+ "it": "Ricezione",
+ "de": "Wird empfangen"
}
},
"status_stopped": {
@@ -1887,7 +2087,8 @@
"en": "Stopped",
"fr": "Arrêté",
"es": "Detenido",
- "it": "Interrotto"
+ "it": "Interrotto",
+ "de": "Beendet"
}
},
"storage_calculating": {
@@ -1896,7 +2097,8 @@
"en": "Calculating…",
"fr": "Calcul…",
"es": "Calculando…",
- "it": "Calcolo…"
+ "it": "Calcolo…",
+ "de": "Wird berechnet…"
}
},
"storage_delete_transfers": {
@@ -1905,7 +2107,8 @@
"en": "Delete all transfers",
"fr": "Supprimer tous les transferts",
"es": "Eliminar todas las transferencias",
- "it": "Elimina tutti i trasferimenti"
+ "it": "Elimina tutti i trasferimenti",
+ "de": "Alle Übertragungen löschen"
}
},
"storage_delete_transfers_description": {
@@ -1914,7 +2117,8 @@
"en": "This clears all sent and received transfer records from your history. Your received files are not deleted. Note: the transfer engine keeps its stored content, so Transfer data may not decrease. This can’t be undone.",
"fr": "Cela efface tous les enregistrements de transferts envoyés et reçus de votre historique. Vos fichiers reçus ne sont pas supprimés. Remarque : le moteur de transfert conserve son contenu stocké, donc les données de transfert peuvent ne pas diminuer. Cette action est irréversible.",
"es": "Esto borra todos los registros de transferencias enviadas y recibidas de su historial. Sus archivos recibidos no se eliminan. Nota: el motor de transferencia conserva su contenido almacenado, por lo que los datos de transferencia pueden no disminuir. Esto no se puede deshacer.",
- "it": "Questo cancella dalla cronologia tutti i record dei trasferimenti inviati e ricevuti. I suoi file ricevuti non vengono eliminati. Nota: il motore di trasferimento conserva il contenuto memorizzato, quindi i dati di trasferimento potrebbero non diminuire. Questa operazione non può essere annullata."
+ "it": "Questo cancella dalla cronologia tutti i record dei trasferimenti inviati e ricevuti. I suoi file ricevuti non vengono eliminati. Nota: il motore di trasferimento conserva il contenuto memorizzato, quindi i dati di trasferimento potrebbero non diminuire. Questa operazione non può essere annullata.",
+ "de": "Dies löscht alle Datensätze gesendeter und empfangener Übertragungen aus Ihrem Verlauf. Ihre empfangenen Dateien werden nicht gelöscht. Hinweis: Die Übertragungs-Engine behält ihre gespeicherten Inhalte, sodass die Übertragungsdaten möglicherweise nicht abnehmen. Dies kann nicht rückgängig gemacht werden."
}
},
"storage_deleting": {
@@ -1923,7 +2127,8 @@
"en": "Deleting…",
"fr": "Suppression…",
"es": "Eliminando…",
- "it": "Eliminazione…"
+ "it": "Eliminazione…",
+ "de": "Wird gelöscht…"
}
},
"storage_footer": {
@@ -1932,7 +2137,8 @@
"en": "Transfer data is managed by the transfer engine — your history plus the content of files you’ve shared. The button below clears your transfer records; the engine keeps its stored content, so this value may not drop. Received files are your downloaded files and are never deleted here.",
"fr": "Les données de transfert sont gérées par le moteur de transfert — votre historique ainsi que le contenu des fichiers que vous avez partagés. Le bouton ci-dessous efface vos enregistrements de transferts ; le moteur conserve son contenu stocké, donc cette valeur peut ne pas baisser. Les fichiers reçus sont vos fichiers téléchargés et ne sont jamais supprimés ici.",
"es": "Los datos de transferencia los gestiona el motor de transferencia: su historial más el contenido de los archivos que ha compartido. El botón de abajo borra sus registros de transferencias; el motor conserva su contenido almacenado, por lo que este valor puede no bajar. Los archivos recibidos son los archivos que ha descargado y nunca se eliminan aquí.",
- "it": "I dati di trasferimento sono gestiti dal motore di trasferimento: la sua cronologia più il contenuto dei file che ha condiviso. Il pulsante qui sotto cancella i record dei trasferimenti; il motore conserva il contenuto memorizzato, quindi questo valore potrebbe non diminuire. I file ricevuti sono i file che ha scaricato e non vengono mai eliminati qui."
+ "it": "I dati di trasferimento sono gestiti dal motore di trasferimento: la sua cronologia più il contenuto dei file che ha condiviso. Il pulsante qui sotto cancella i record dei trasferimenti; il motore conserva il contenuto memorizzato, quindi questo valore potrebbe non diminuire. I file ricevuti sono i file che ha scaricato e non vengono mai eliminati qui.",
+ "de": "Übertragungsdaten werden von der Übertragungs-Engine verwaltet – Ihr Verlauf sowie der Inhalt der von Ihnen geteilten Dateien. Die Schaltfläche unten löscht Ihre Übertragungsdatensätze; die Engine behält ihre gespeicherten Inhalte, sodass dieser Wert möglicherweise nicht sinkt. Empfangene Dateien sind Ihre heruntergeladenen Dateien und werden hier niemals gelöscht."
}
},
"storage_received_files": {
@@ -1941,7 +2147,8 @@
"en": "Received files",
"fr": "Fichiers reçus",
"es": "Archivos recibidos",
- "it": "File ricevuti"
+ "it": "File ricevuti",
+ "de": "Empfangene Dateien"
}
},
"storage_temporary": {
@@ -1950,7 +2157,8 @@
"en": "Temporary files",
"fr": "Fichiers temporaires",
"es": "Archivos temporales",
- "it": "File temporanei"
+ "it": "File temporanei",
+ "de": "Temporäre Dateien"
}
},
"storage_title": {
@@ -1959,7 +2167,8 @@
"en": "Storage",
"fr": "Stockage",
"es": "Almacenamiento",
- "it": "Archiviazione"
+ "it": "Archiviazione",
+ "de": "Speicher"
}
},
"storage_total": {
@@ -1968,7 +2177,8 @@
"en": "Total",
"fr": "Total",
"es": "Total",
- "it": "Totale"
+ "it": "Totale",
+ "de": "Gesamt"
}
},
"storage_transfer_data": {
@@ -1977,7 +2187,8 @@
"en": "Transfer data",
"fr": "Données de transfert",
"es": "Datos de transferencia",
- "it": "Dati di trasferimento"
+ "it": "Dati di trasferimento",
+ "de": "Übertragungsdaten"
}
},
"storage_transfers_deleted": {
@@ -1986,7 +2197,8 @@
"en": "All transfers deleted",
"fr": "Tous les transferts supprimés",
"es": "Todas las transferencias eliminadas",
- "it": "Tutti i trasferimenti eliminati"
+ "it": "Tutti i trasferimenti eliminati",
+ "de": "Alle Übertragungen gelöscht"
}
},
"transfer_activity_description": {
@@ -1995,7 +2207,8 @@
"en": "See important updates for this transfer",
"fr": "Consultez les mises à jour importantes de ce transfert",
"es": "Vea las actualizaciones importantes de esta transferencia",
- "it": "Veda gli aggiornamenti importanti di questo trasferimento"
+ "it": "Veda gli aggiornamenti importanti di questo trasferimento",
+ "de": "Wichtige Aktualisierungen zu dieser Übertragung ansehen"
}
},
"transfer_activity_title": {
@@ -2004,7 +2217,8 @@
"en": "Activity",
"fr": "Activité",
"es": "Actividad",
- "it": "Attività"
+ "it": "Attività",
+ "de": "Aktivität"
}
},
"transfer_delete_description": {
@@ -2019,7 +2233,8 @@
"en": "“{arg1}” will stop being shared and its transfer history will be removed from this device.",
"fr": "« {arg1} » cessera d’être partagé et son historique de transfert sera retiré de cet appareil.",
"es": "«{arg1}» dejará de compartirse y su historial de transferencia se eliminará de este dispositivo.",
- "it": "«{arg1}» non verrà più condiviso e la sua cronologia di trasferimento verrà rimossa da questo dispositivo."
+ "it": "«{arg1}» non verrà più condiviso e la sua cronologia di trasferimento verrà rimossa da questo dispositivo.",
+ "de": "„{arg1}“ wird nicht mehr geteilt und sein Übertragungsverlauf wird von diesem Gerät entfernt."
}
},
"transfer_delete_title": {
@@ -2028,7 +2243,8 @@
"en": "Delete transfer?",
"fr": "Supprimer le transfert ?",
"es": "¿Eliminar la transferencia?",
- "it": "Eliminare il trasferimento?"
+ "it": "Eliminare il trasferimento?",
+ "de": "Übertragung löschen?"
}
},
"transfer_deleted": {
@@ -2037,7 +2253,8 @@
"en": "Transfer deleted.",
"fr": "Transfert supprimé.",
"es": "Transferencia eliminada.",
- "it": "Trasferimento eliminato."
+ "it": "Trasferimento eliminato.",
+ "de": "Übertragung gelöscht."
}
},
"transfer_deleting": {
@@ -2046,7 +2263,8 @@
"en": "Deleting…",
"fr": "Suppression…",
"es": "Eliminando…",
- "it": "Eliminazione…"
+ "it": "Eliminazione…",
+ "de": "Wird gelöscht…"
}
},
"transfer_details_title": {
@@ -2055,7 +2273,8 @@
"en": "Transfer details",
"fr": "Détails du transfert",
"es": "Detalles de la transferencia",
- "it": "Dettagli del trasferimento"
+ "it": "Dettagli del trasferimento",
+ "de": "Übertragungsdetails"
}
},
"transfer_event_approved": {
@@ -2064,7 +2283,8 @@
"en": "Receiver access approved",
"fr": "Accès du destinataire approuvé",
"es": "Acceso del destinatario aprobado",
- "it": "Accesso del destinatario approvato"
+ "it": "Accesso del destinatario approvato",
+ "de": "Empfängerzugriff genehmigt"
}
},
"transfer_event_completed": {
@@ -2073,7 +2293,8 @@
"en": "A receiver completed the transfer",
"fr": "Un destinataire a terminé le transfert",
"es": "Un destinatario completó la transferencia",
- "it": "Un destinatario ha completato il trasferimento"
+ "it": "Un destinatario ha completato il trasferimento",
+ "de": "Ein Empfänger hat die Übertragung abgeschlossen"
}
},
"transfer_event_connecting": {
@@ -2082,7 +2303,8 @@
"en": "Connecting to sender",
"fr": "Connexion à l’expéditeur",
"es": "Conectando con el remitente",
- "it": "Connessione al mittente"
+ "it": "Connessione al mittente",
+ "de": "Verbindung zum Absender"
}
},
"transfer_event_downloading": {
@@ -2091,7 +2313,8 @@
"en": "Downloading",
"fr": "Téléchargement",
"es": "Descargando",
- "it": "Download"
+ "it": "Download",
+ "de": "Wird geladen"
}
},
"transfer_event_failed": {
@@ -2100,7 +2323,8 @@
"en": "The transfer encountered a problem",
"fr": "Le transfert a rencontré un problème",
"es": "La transferencia tuvo un problema",
- "it": "Il trasferimento ha riscontrato un problema"
+ "it": "Il trasferimento ha riscontrato un problema",
+ "de": "Bei der Übertragung ist ein Problem aufgetreten"
}
},
"transfer_event_preparing": {
@@ -2109,7 +2333,8 @@
"en": "Preparing your transfer",
"fr": "Préparation de votre transfert",
"es": "Preparando su transferencia",
- "it": "Preparazione del trasferimento"
+ "it": "Preparazione del trasferimento",
+ "de": "Ihre Übertragung wird vorbereitet"
}
},
"transfer_event_ready": {
@@ -2118,7 +2343,8 @@
"en": "Ready to share",
"fr": "Prêt à partager",
"es": "Listo para compartir",
- "it": "Pronto per la condivisione"
+ "it": "Pronto per la condivisione",
+ "de": "Bereit zum Teilen"
}
},
"transfer_event_refused": {
@@ -2127,7 +2353,8 @@
"en": "Receiver access refused",
"fr": "Accès du destinataire refusé",
"es": "Acceso del destinatario rechazado",
- "it": "Accesso del destinatario rifiutato"
+ "it": "Accesso del destinatario rifiutato",
+ "de": "Empfängerzugriff abgelehnt"
}
},
"transfer_event_requested": {
@@ -2136,7 +2363,8 @@
"en": "A receiver requested access",
"fr": "Un destinataire a demandé l’accès",
"es": "Un destinatario solicitó acceso",
- "it": "Un destinatario ha richiesto l’accesso"
+ "it": "Un destinatario ha richiesto l’accesso",
+ "de": "Ein Empfänger hat Zugriff angefragt"
}
},
"transfer_event_saving": {
@@ -2145,7 +2373,8 @@
"en": "Saving",
"fr": "Enregistrement",
"es": "Guardando",
- "it": "Salvataggio"
+ "it": "Salvataggio",
+ "de": "Wird gesichert"
}
},
"transfer_event_stopped": {
@@ -2154,7 +2383,8 @@
"en": "Sharing stopped",
"fr": "Partage arrêté",
"es": "Se dejó de compartir",
- "it": "Condivisione interrotta"
+ "it": "Condivisione interrotta",
+ "de": "Freigabe beendet"
}
},
"transfer_event_updated": {
@@ -2163,7 +2393,8 @@
"en": "Transfer updated",
"fr": "Transfert mis à jour",
"es": "Transferencia actualizada",
- "it": "Trasferimento aggiornato"
+ "it": "Trasferimento aggiornato",
+ "de": "Übertragung aktualisiert"
}
},
"transfer_file_count": {
@@ -2190,6 +2421,10 @@
"it": {
"one": "{count} file",
"other": "{count} file"
+ },
+ "de": {
+ "one": "{count} Datei",
+ "other": "{count} Dateien"
}
}
},
@@ -2199,7 +2434,8 @@
"en": "Invitation saved.",
"fr": "Invitation enregistrée.",
"es": "Invitación guardada.",
- "it": "Invito salvato."
+ "it": "Invito salvato.",
+ "de": "Einladung gesichert."
}
},
"transfer_nearby_device": {
@@ -2208,7 +2444,8 @@
"en": "Nearby device",
"fr": "Appareil à proximité",
"es": "Dispositivo cercano",
- "it": "Dispositivo nelle vicinanze"
+ "it": "Dispositivo nelle vicinanze",
+ "de": "Gerät in der Nähe"
}
},
"transfer_nfc_unavailable": {
@@ -2217,7 +2454,8 @@
"en": "NFC tag writing is not available on this device.",
"fr": "L’écriture de tag NFC n’est pas disponible sur cet appareil.",
"es": "La escritura de etiquetas NFC no está disponible en este dispositivo.",
- "it": "La scrittura dei tag NFC non è disponibile su questo dispositivo."
+ "it": "La scrittura dei tag NFC non è disponibile su questo dispositivo.",
+ "de": "Das Beschreiben von NFC-Tags ist auf diesem Gerät nicht verfügbar."
}
},
"transfer_nfc_waiting": {
@@ -2226,7 +2464,8 @@
"en": "Hold your device near a writable NFC tag.",
"fr": "Approchez votre appareil d’un tag NFC inscriptible.",
"es": "Acerque su dispositivo a una etiqueta NFC grabable.",
- "it": "Avvicini il dispositivo a un tag NFC scrivibile."
+ "it": "Avvicini il dispositivo a un tag NFC scrivibile.",
+ "de": "Halten Sie Ihr Gerät an ein beschreibbares NFC-Tag."
}
},
"transfer_nfc_written": {
@@ -2235,7 +2474,8 @@
"en": "Invitation written to the NFC tag.",
"fr": "Invitation écrite sur le tag NFC.",
"es": "Invitación escrita en la etiqueta NFC.",
- "it": "Invito scritto sul tag NFC."
+ "it": "Invito scritto sul tag NFC.",
+ "de": "Einladung auf das NFC-Tag geschrieben."
}
},
"transfer_no_activity": {
@@ -2244,7 +2484,8 @@
"en": "There is no activity to show yet.",
"fr": "Aucune activité à afficher pour l’instant.",
"es": "Todavía no hay actividad que mostrar.",
- "it": "Non c’è ancora alcuna attività da mostrare."
+ "it": "Non c’è ancora alcuna attività da mostrare.",
+ "de": "Es gibt noch keine Aktivität anzuzeigen."
}
},
"transfer_no_receivers": {
@@ -2253,7 +2494,8 @@
"en": "Nobody has requested this transfer yet.",
"fr": "Personne n’a encore demandé ce transfert.",
"es": "Nadie ha solicitado aún esta transferencia.",
- "it": "Nessuno ha ancora richiesto questo trasferimento."
+ "it": "Nessuno ha ancora richiesto questo trasferimento.",
+ "de": "Noch niemand hat diese Übertragung angefragt."
}
},
"transfer_receiver_accepted": {
@@ -2262,7 +2504,8 @@
"en": "Approved — waiting for completion",
"fr": "Approuvé — en attente de la fin",
"es": "Aprobado: esperando a que se complete",
- "it": "Approvato: in attesa del completamento"
+ "it": "Approvato: in attesa del completamento",
+ "de": "Genehmigt – wartet auf Abschluss"
}
},
"transfer_receiver_completed": {
@@ -2271,7 +2514,8 @@
"en": "Received successfully",
"fr": "Reçu avec succès",
"es": "Recibido correctamente",
- "it": "Ricevuto correttamente"
+ "it": "Ricevuto correttamente",
+ "de": "Erfolgreich empfangen"
}
},
"transfer_receiver_expired": {
@@ -2280,7 +2524,8 @@
"en": "Request expired",
"fr": "Demande expirée",
"es": "Solicitud caducada",
- "it": "Richiesta scaduta"
+ "it": "Richiesta scaduta",
+ "de": "Anfrage abgelaufen"
}
},
"transfer_receiver_refused": {
@@ -2289,7 +2534,8 @@
"en": "Request refused",
"fr": "Demande refusée",
"es": "Solicitud rechazada",
- "it": "Richiesta rifiutata"
+ "it": "Richiesta rifiutata",
+ "de": "Anfrage abgelehnt"
}
},
"transfer_receiver_requested": {
@@ -2298,7 +2544,8 @@
"en": "Waiting for your approval",
"fr": "En attente de votre approbation",
"es": "Esperando su aprobación",
- "it": "In attesa della sua approvazione"
+ "it": "In attesa della sua approvazione",
+ "de": "Wartet auf Ihre Genehmigung"
}
},
"transfer_receiver_unknown": {
@@ -2307,7 +2554,8 @@
"en": "Status unavailable",
"fr": "Statut indisponible",
"es": "Estado no disponible",
- "it": "Stato non disponibile"
+ "it": "Stato non disponibile",
+ "de": "Status nicht verfügbar"
}
},
"transfer_receivers_completed_count": {
@@ -2322,7 +2570,8 @@
"en": "{count} completed",
"fr": "{count} terminés",
"es": "{count} completados",
- "it": "{count} completati"
+ "it": "{count} completati",
+ "de": "{count} abgeschlossen"
}
},
"transfer_receivers_description": {
@@ -2331,7 +2580,8 @@
"en": "Requests, approvals, and completed deliveries",
"fr": "Demandes, approbations et livraisons terminées",
"es": "Solicitudes, aprobaciones y entregas completadas",
- "it": "Richieste, approvazioni e consegne completate"
+ "it": "Richieste, approvazioni e consegne completate",
+ "de": "Anfragen, Genehmigungen und abgeschlossene Zustellungen"
}
},
"transfer_receivers_pending": {
@@ -2346,7 +2596,8 @@
"en": "{count} waiting",
"fr": "{count} en attente",
"es": "{count} en espera",
- "it": "{count} in attesa"
+ "it": "{count} in attesa",
+ "de": "{count} warten"
}
},
"transfer_receivers_title": {
@@ -2355,7 +2606,8 @@
"en": "Receivers",
"fr": "Destinataires",
"es": "Destinatarios",
- "it": "Destinatari"
+ "it": "Destinatari",
+ "de": "Empfänger"
}
},
"transfer_scan_qr": {
@@ -2364,7 +2616,8 @@
"en": "Scan with VniDrop to receive this transfer",
"fr": "Scannez avec VniDrop pour recevoir ce transfert",
"es": "Escanee con VniDrop para recibir esta transferencia",
- "it": "Scansioni con VniDrop per ricevere questo trasferimento"
+ "it": "Scansioni con VniDrop per ricevere questo trasferimento",
+ "de": "Mit VniDrop scannen, um diese Übertragung zu empfangen"
}
},
"transfer_share_description": {
@@ -2373,7 +2626,8 @@
"en": "QR code, invitation file, and nearby options",
"fr": "QR code, fichier d’invitation et options à proximité",
"es": "Código QR, archivo de invitación y opciones cercanas",
- "it": "Codice QR, file di invito e opzioni nelle vicinanze"
+ "it": "Codice QR, file di invito e opzioni nelle vicinanze",
+ "de": "QR-Code, Einladungsdatei und Optionen in der Nähe"
}
},
"transfer_share_title": {
@@ -2382,7 +2636,8 @@
"en": "Share",
"fr": "Partager",
"es": "Compartir",
- "it": "Condividi"
+ "it": "Condividi",
+ "de": "Teilen"
}
},
"value_unavailable": {
@@ -2391,7 +2646,8 @@
"en": "Not available",
"fr": "Non disponible",
"es": "No disponible",
- "it": "Non disponibile"
+ "it": "Non disponibile",
+ "de": "Nicht verfügbar"
}
},
"version_title": {
@@ -2400,7 +2656,8 @@
"en": "App version",
"fr": "Version de l’app",
"es": "Versión de la app",
- "it": "Versione dell’app"
+ "it": "Versione dell’app",
+ "de": "App-Version"
}
}
}
diff --git a/shared/src/commonMain/composeResources/values-de/strings.xml b/shared/src/commonMain/composeResources/values-de/strings.xml
new file mode 100644
index 0000000..7e4c535
--- /dev/null
+++ b/shared/src/commonMain/composeResources/values-de/strings.xml
@@ -0,0 +1,257 @@
+
+
+ Fehler melden
+ VniDrop überträgt Dateien und Ordner direkt von einem Gerät auf ein anderes über das Netzwerk, ohne sie auf einen Hosting-Dienst hochzuladen. Es muss kein Konto erstellt werden, und nach Abschluss verbleibt keine Kopie Ihrer Übertragung in der Cloud.
+ Eine direkte Gerät-zu-Gerät-Übertragung – Ihre Dateien gehen direkt an den Empfänger.
+ Verbindungen sind authentifiziert und Ende-zu-Ende-verschlüsselt (über Iroh), und eingehende Dateien werden anhand ihres Inhalts-Hashs überprüft.
+ Sie entscheiden, wer empfängt: Genehmigen Sie jede Anfrage oder öffnen Sie eine Übertragung für alle, die die Einladung besitzen.
+ Ohne Konto – es gibt nichts zu registrieren.
+ Open Source, veröffentlicht unter der Apache-2.0-Lizenz.
+ Was VniDrop ist
+ Kein Cloud-Speicher – kein Server hält Ihre Dateien, und nach einer Übertragung wartet nichts in der Cloud.
+ Keine öffentliche Übertragung – eine Einladung ist ein privater Zugangslink, keine Ankündigung an alle in der Nähe.
+ Kein Synchronisierungs- oder Backup-Dienst.
+ Was VniDrop nicht ist
+ Lizenz
+ Datenschutzrichtlinie
+ Einladungen sind Zugangsschlüssel. Behandeln Sie einen QR-Code, ein NFC-Tag oder eine .vnd-Datei wie einen privaten Zugangslink und teilen Sie ihn nur mit den vorgesehenen Personen – insbesondere bei „Jeder mit dieser Übertragung“.
+ Standardmäßig ablehnen – VniDrop stellt nur den Inhalt einer aktiven Freigabe bereit und weist unbekannte Anfragen ab.
+ Empfangene Dateien werden auf Ihrem Gerät gespeichert und überschreiben niemals eine vorhandene Datei.
+ Datenschutzrichtlinie
+ Wenn zwei Geräte sich nicht direkt verbinden können, kann die verschlüsselte Verbindung weitergeleitet werden. Relays leiten nur verschlüsselte Pakete weiter; sie speichern niemals Ihre Dateien.
+ Datenschutz & Sicherheit
+ Senden Sie Dateien direkt. Behalten Sie die Kontrolle darüber, wer sie empfängt.
+ Über
+ Der hellen oder dunklen Darstellung dieses Geräts folgen.
+ Dunkelmodus
+ Hellmodus
+ System
+ Darstellung
+ Empfangsanfrage
+ Geräte-ID: %1$s
+ Ein Gerät in der Nähe
+ %1$d Anfragen warten
+ %1$s möchte „%2$s“ empfangen.
+ Batteriestand
+ name@beispiel.com
+ Kontakt-E-Mail (optional)
+ Sagen Sie uns, was schiefgelaufen ist. Wir hängen Geräteinformationen und optional aktuelle Protokolle an (sensible Werte werden geschwärzt).
+ Geräteinformationen
+ Beschreiben Sie, was Sie erwartet haben
+ Was haben Sie erwartet?
+ Aktuelle Protokolle einschließen
+ Hilft uns, das Problem zu diagnostizieren. Sensible Werte werden vor dem Senden geschwärzt.
+ Größe des Protokollanhangs
+ Bitte beschreiben Sie, was Sie erwartet haben.
+ Bitte beschreiben Sie, was passiert ist.
+ Listen Sie die Schritte zum Reproduzieren des Problems auf
+ Schritte zum Reproduzieren (optional)
+ Bericht senden
+ Der Fehlerbericht konnte nicht gesendet werden. Bitte versuchen Sie es später erneut.
+ Danke – Ihr Fehlerbericht wurde erfasst.
+ Wird gesendet…
+ Beschreiben Sie, was passiert ist
+ Was ist passiert?
+ Genehmigen
+ Zurück
+ Abbrechen
+ Abbrechen
+ Dateien ändern
+ Dateien auswählen
+ Ordner auswählen
+ Löschen
+ Schließen
+ Neue Übertragung
+ Übertragung löschen
+ .vnd-Datei sichern
+ Einladung teilen
+ Einstellungen öffnen
+ Empfangen
+ Empfang starten
+ Ablehnen
+ Datei entfernen
+ Standard verwenden
+ Wiederholen
+ Freigabe starten
+ Übertragung wird vorbereitet…
+ In „Dateien“ anzeigen
+ Auf NFC-Tag schreiben
+ Gerätemodell
+ Gerätename
+ Anonyme Absturzberichte und Nutzungsereignisse senden, damit wir VniDrop verbessern können. Sie können dies jederzeit deaktivieren. Einladungen, Dateipfade und Übertragungsinhalte werden niemals einbezogen.
+ Die Freigabe von Diagnosedaten ist deaktiviert.
+ Die Freigabe von Diagnosedaten ist aktiviert.
+ Diagnosedaten teilen
+ Für das Scannen eines QR-Codes ist Kamerazugriff erforderlich.
+ Geräteinformationen konnten nicht geladen werden.
+ VniDrop konnte nicht auf die ausgewählten Dateien oder den Ordner zugreifen. Überprüfen Sie die Berechtigungen und versuchen Sie es erneut.
+ Etwas ist schiefgelaufen. Versuchen Sie es erneut.
+ VniDrop konnte den Start nicht abschließen. Schließen Sie die App und versuchen Sie es erneut.
+ Diese Einladung konnte nicht gelesen werden. Bitten Sie den Absender um eine neue.
+ Diese Einladung ist leer. Versuchen Sie, sie erneut zu öffnen.
+ Die native VniDrop-Bibliothek fehlt in diesem Build.
+ Dieses NFC-Tag konnte nicht verwendet werden. Versuchen Sie ein anderes.
+ Der Absender hat diese Übertragung nicht genehmigt oder sie wurde abgelehnt.
+ VniDrop konnte die Übertragungsdaten auf diesem Gerät nicht speichern.
+ Das ausgewählte Objekt konnte nicht geöffnet werden. Versuchen Sie, es erneut auszuwählen.
+ Wählen Sie mindestens ein Objekt zum Teilen aus.
+ VniDrop konnte seine Netzwerk-Sockets auf diesem Gerät nicht öffnen.
+ VniDrop startet noch. Öffnen Sie die Einladung gleich erneut.
+ Die Übertragung konnte nicht abgeschlossen werden. Überprüfen Sie Ihre Verbindung und versuchen Sie es erneut.
+ Empfängername
+ Absendername
+ Übertragungsname
+ Anzeigename
+ Berechtigung erforderlich
+ Nicht verfügbar
+ Ordner wird geprüft…
+ Bereit
+ Dateien
+ Größe
+ Status
+ Empfangen
+ Senden
+ Einstellungen
+ Netzwerk
+ Werden Sie über neue Empfangsanfragen benachrichtigt, während VniDrop im Hintergrund läuft.
+ Mitteilungen aktiviert.
+ Mitteilungen erlauben
+ Mitteilungen sind für VniDrop deaktiviert. Sie können sie in den Einstellungen aktivieren.
+ Die Mitteilungseinstellungen konnten nicht geöffnet werden.
+ Mitteilungen
+ Mitteilungen sind auf diesem Gerät nicht verfügbar.
+ Betriebssystem
+ Empfangene Übertragungen sichern in
+ Voreinstellungen
+ Abgebrochen
+ Abgeschlossen
+ Verbunden
+ Verbinden
+ Wird geladen
+ Fehlgeschlagen
+ Wird bereitgemacht
+ Übertragung unterbrochen
+ Wird vorbereitet
+ Bereit
+ Wird empfangen
+ Zugriff wird angefragt
+ Wird gesichert
+ Wird gesendet
+ Senden an %1$d
+ Bereit zum Teilen
+ Wird bearbeitet…
+ Wählen Sie die Ihnen zur Verfügung stehende Einladungsmethode.
+ Wie möchten Sie sich verbinden?
+ Verlauf löschen
+ Alle abgeschlossenen, fehlgeschlagenen und abgebrochenen Empfänge werden aus dem Verlauf von VniDrop entfernt. Heruntergeladene Dateien verbleiben auf diesem Gerät.
+ Empfangsverlauf löschen?
+ Übertragung empfangen.
+ „%1$s“ wird aus dem Verlauf von VniDrop entfernt. Die heruntergeladene Datei verbleibt auf diesem Gerät.
+ Aus Empfangsverlauf löschen
+ Aus dem Verlauf entfernen?
+ Öffnen Sie eine VniDrop-Einladung, scannen Sie einen QR-Code oder halten Sie das Gerät an ein NFC-Tag.
+ Noch nichts empfangen
+ Empfangsverlauf gelöscht.
+ Verlauf
+ Eine .vnd-Einladung öffnen
+ Wählen Sie eine auf diesem Gerät gespeicherte oder geteilte Einladung.
+ NFC-Tag lesen
+ Halten Sie dieses Gerät an das Einladungs-Tag des Absenders.
+ QR-Code scannen
+ Verwenden Sie die Kamera, um den VniDrop-Code des Absenders zu scannen.
+ Übertragungen, die Sie auf diesem Gerät empfangen haben.
+ Halten Sie das Gerät an das NFC-Tag…
+ VniDrop konnte in „Dateien“ nicht geöffnet werden.
+ Übertragung prüfen
+ Empfangen
+ VniDrop-Übertragung
+ Jeder mit dieser Übertragung
+ Keine Genehmigung erforderlich. Verwenden Sie dies nur für Objekte, die Sie unbedenklich teilen können.
+ Jeder mit der Einladung kann herunterladen, bis Sie die Freigabe beenden. Verwenden Sie dies nicht für private oder sensible Objekte.
+ Vor jedem Download fragen
+ Sie genehmigen oder lehnen jeden neuen Empfänger ab.
+ Wer kann sie empfangen?
+ Wählen Sie Dateien oder einen Ordner auf diesem Gerät aus. Sie können die Auswahl überprüfen, bevor Sie die Übertragung erstellen.
+ Wählen Sie, was Sie teilen möchten
+ Erstellen Sie eine Übertragung, entscheiden Sie, wer sie empfangen darf, und laden Sie diese Personen dann mit einem QR-Code, einem NFC-Tag oder einer Einladungsdatei ein.
+ Noch nichts geteilt
+ Größe nicht verfügbar
+ Ordner
+ Eine neue Übertragung erstellen
+ Neue Übertragung
+ Übertragung prüfen
+ %1$d Dateien ausgewählt
+ Freigabe beenden
+ Dies beendet die Übertragung und unterbricht alle, die sie gerade herunterladen. Sie verbleibt in Ihrem Verlauf als „Beendet“.
+ Übertragungen, die Sie von diesem Gerät aus teilen.
+ Senden
+ Übertragung erstellt.
+ Übertragungsdetails
+ Ihre Übertragungen
+ Ihr Name, wo Übertragungen gesichert werden, Darstellung und Mitteilungen.
+ Einstellungen
+ Ausblenden
+ Verfügbar
+ Abgebrochen
+ Abgeschlossen
+ Fehlgeschlagen
+ Wird vorbereitet
+ Wird empfangen
+ Beendet
+ Wird berechnet…
+ Alle Übertragungen löschen
+ Dies löscht alle Datensätze gesendeter und empfangener Übertragungen aus Ihrem Verlauf. Ihre empfangenen Dateien werden nicht gelöscht. Hinweis: Die Übertragungs-Engine behält ihre gespeicherten Inhalte, sodass die Übertragungsdaten möglicherweise nicht abnehmen. Dies kann nicht rückgängig gemacht werden.
+ Wird gelöscht…
+ Übertragungsdaten werden von der Übertragungs-Engine verwaltet – Ihr Verlauf sowie der Inhalt der von Ihnen geteilten Dateien. Die Schaltfläche unten löscht Ihre Übertragungsdatensätze; die Engine behält ihre gespeicherten Inhalte, sodass dieser Wert möglicherweise nicht sinkt. Empfangene Dateien sind Ihre heruntergeladenen Dateien und werden hier niemals gelöscht.
+ Empfangene Dateien
+ Temporäre Dateien
+ Speicher
+ Gesamt
+ Übertragungsdaten
+ Alle Übertragungen gelöscht
+ Wichtige Aktualisierungen zu dieser Übertragung ansehen
+ Aktivität
+ „%1$s“ wird nicht mehr geteilt und sein Übertragungsverlauf wird von diesem Gerät entfernt.
+ Übertragung löschen?
+ Übertragung gelöscht.
+ Wird gelöscht…
+ Übertragungsdetails
+ Empfängerzugriff genehmigt
+ Ein Empfänger hat die Übertragung abgeschlossen
+ Verbindung zum Absender
+ Wird geladen
+ Bei der Übertragung ist ein Problem aufgetreten
+ Ihre Übertragung wird vorbereitet
+ Bereit zum Teilen
+ Empfängerzugriff abgelehnt
+ Ein Empfänger hat Zugriff angefragt
+ Wird gesichert
+ Freigabe beendet
+ Übertragung aktualisiert
+ Einladung gesichert.
+ Gerät in der Nähe
+ Das Beschreiben von NFC-Tags ist auf diesem Gerät nicht verfügbar.
+ Halten Sie Ihr Gerät an ein beschreibbares NFC-Tag.
+ Einladung auf das NFC-Tag geschrieben.
+ Es gibt noch keine Aktivität anzuzeigen.
+ Noch niemand hat diese Übertragung angefragt.
+ Genehmigt – wartet auf Abschluss
+ Erfolgreich empfangen
+ Anfrage abgelaufen
+ Anfrage abgelehnt
+ Wartet auf Ihre Genehmigung
+ Status nicht verfügbar
+ %1$d abgeschlossen
+ Anfragen, Genehmigungen und abgeschlossene Zustellungen
+ %1$d warten
+ Empfänger
+ Mit VniDrop scannen, um diese Übertragung zu empfangen
+ QR-Code, Einladungsdatei und Optionen in der Nähe
+ Teilen
+ Nicht verfügbar
+ App-Version
+
+ - %1$d Datei
+ - %1$d Dateien
+
+