diff --git a/lib/i18n/strings_de.i18n.json b/lib/i18n/strings_de.i18n.json new file mode 100644 index 00000000..176effea --- /dev/null +++ b/lib/i18n/strings_de.i18n.json @@ -0,0 +1,372 @@ +{ + "app": { + "title": "Plezy", + "loading": "Lädt..." + }, + "auth": { + "signInWithPlex": "Mit Plex anmelden", + "showQRCode": "QR-Code anzeigen", + "cancel": "Abbrechen", + "authenticate": "Authentifizieren", + "retry": "Erneut versuchen", + "debugEnterToken": "Debug: Plex-Token eingeben", + "plexTokenLabel": "Plex-Auth-Token", + "plexTokenHint": "Plex.tv-Token eingeben", + "authenticationTimeout": "Authentifizierung abgelaufen. Bitte erneut versuchen.", + "scanQRCodeInstruction": "Diesen QR-Code mit einem bei Plex angemeldeten Gerät scannen, um zu authentifizieren.", + "waitingForAuth": "Warte auf Authentifizierung...\nBitte Anmeldung im Browser abschließen." + }, + "common": { + "cancel": "Abbrechen", + "save": "Speichern", + "close": "Schließen", + "clear": "Leeren", + "reset": "Zurücksetzen", + "later": "Später", + "submit": "Senden", + "confirm": "Bestätigen", + "retry": "Erneut versuchen", + "playNow": "Jetzt abspielen", + "logout": "Abmelden", + "online": "Online", + "offline": "Offline", + "owned": "Eigentum", + "shared": "Geteilt", + "current": "AKTUELL", + "unknown": "Unbekannt", + "refresh": "Aktualisieren", + "yes": "Ja", + "no": "Nein", + "server": "Server" + }, + "screens": { + "licenses": "Lizenzen", + "selectServer": "Server auswählen", + "switchProfile": "Profil wechseln", + "subtitleStyling": "Untertitel-Stil", + "search": "Suche", + "logs": "Protokolle" + }, + "update": { + "available": "Update verfügbar", + "versionAvailable": "Version ${version} ist verfügbar", + "currentVersion": "Aktuell: ${version}", + "skipVersion": "Diese Version überspringen", + "viewRelease": "Release anzeigen", + "latestVersion": "Aktuellste Version installiert", + "checkFailed": "Fehler bei der Updateprüfung" + }, + "settings": { + "title": "Einstellungen", + "language": "Sprache", + "theme": "Theme", + "appearance": "Darstellung", + "videoPlayback": "Videowiedergabe", + "shufflePlay": "Zufallswiedergabe", + "advanced": "Erweitert", + "useSeasonPostersDescription": "Staffelposter statt Serienposter für Episoden anzeigen", + "showHeroSectionDescription": "Bereich mit empfohlenen Inhalten auf der Startseite anzeigen", + "secondsLabel": "Sekunden", + "minutesLabel": "Minuten", + "secondsShort": "s", + "minutesShort": "m", + "durationHint": "Dauer eingeben (${min}-${max})", + "systemTheme": "System", + "systemThemeDescription": "Systemeinstellungen folgen", + "lightTheme": "Hell", + "darkTheme": "Dunkel", + "libraryDensity": "Bibliotheksdichte", + "compact": "Kompakt", + "compactDescription": "Kleinere Karten, mehr Elemente sichtbar", + "normal": "Normal", + "normalDescription": "Standardgröße", + "comfortable": "Großzügig", + "comfortableDescription": "Größere Karten, weniger Elemente sichtbar", + "viewMode": "Ansichtsmodus", + "gridView": "Raster", + "gridViewDescription": "Elemente im Raster anzeigen", + "listView": "Liste", + "listViewDescription": "Elemente in Listenansicht anzeigen", + "useSeasonPosters": "Staffelposter verwenden", + "showHeroSection": "Hero-Bereich anzeigen", + "hardwareDecoding": "Hardware-Decodierung", + "hardwareDecodingDescription": "Hardwarebeschleunigung verwenden, wenn verfügbar", + "bufferSize": "Puffergröße", + "bufferSizeMB": "${size}MB", + "subtitleStyling": "Untertitel-Stil", + "subtitleStylingDescription": "Aussehen von Untertiteln anpassen", + "smallSkipDuration": "Kleine Sprungdauer", + "largeSkipDuration": "Große Sprungdauer", + "secondsUnit": "${seconds} Sekunden", + "defaultSleepTimer": "Standard-Sleep-Timer", + "minutesUnit": "${minutes} Minuten", + "rememberTrackSelections": "Spurauswahl pro Serie/Film merken", + "rememberTrackSelectionsDescription": "Audio- und Untertitelsprache automatisch speichern, wenn während der Wiedergabe geändert", + "unwatchedOnly": "Nur ungesehene", + "unwatchedOnlyDescription": "Nur ungesehene Episoden in die Shuffle-Warteschlange aufnehmen", + "shuffleOrderNavigation": "Navigation der Shuffle-Reihenfolge", + "shuffleOrderNavigationDescription": "Weiter/Zurück folgt der zufälligen Reihenfolge", + "loopShuffleQueue": "Shuffle-Warteschlange wiederholen", + "loopShuffleQueueDescription": "Warteschlange neu starten, wenn das Ende erreicht ist", + "videoPlayerControls": "Videoplayer-Steuerung", + "keyboardShortcuts": "Tastenkürzel", + "keyboardShortcutsDescription": "Tastenkürzel anpassen", + "debugLogging": "Debug-Protokollierung", + "debugLoggingDescription": "Detaillierte Protokolle zur Fehleranalyse aktivieren", + "viewLogs": "Protokolle anzeigen", + "viewLogsDescription": "App-Protokolle anzeigen", + "clearCache": "Cache löschen", + "clearCacheDescription": "Löscht alle zwischengespeicherten Bilder und Daten. Die App kann danach langsamer laden.", + "clearCacheSuccess": "Cache erfolgreich gelöscht", + "resetSettings": "Einstellungen zurücksetzen", + "resetSettingsDescription": "Alle Einstellungen auf Standard zurücksetzen. Dies kann nicht rückgängig gemacht werden.", + "resetSettingsSuccess": "Einstellungen erfolgreich zurückgesetzt", + "shortcutsReset": "Tastenkürzel auf Standard zurückgesetzt", + "about": "Über", + "aboutDescription": "App-Informationen und Lizenzen", + "updates": "Updates", + "updateAvailable": "Update verfügbar", + "checkForUpdates": "Nach Updates suchen", + "validationErrorEnterNumber": "Bitte eine gültige Zahl eingeben", + "validationErrorDuration": "Dauer muss zwischen ${min} und ${max} ${unit} liegen", + "shortcutAlreadyAssigned": "Tastenkürzel bereits zugewiesen an ${action}", + "shortcutUpdated": "Tastenkürzel aktualisiert für ${action}" + }, + "search": { + "hint": "Filme, Serien, Musik suchen...", + "tryDifferentTerm": "Anderen Suchbegriff versuchen", + "searchYourMedia": "In den eigenen Medien suchen", + "enterTitleActorOrKeyword": "Titel, Schauspieler oder Stichwort eingeben" + }, + "hotkeys": { + "setShortcutFor": "Tastenkürzel festlegen für ${actionName}", + "clearShortcut": "Kürzel löschen" + }, + "pinEntry": { + "enterPin": "PIN eingeben", + "showPin": "PIN anzeigen", + "hidePin": "PIN verbergen" + }, + "fileInfo": { + "title": "Dateiinfo", + "video": "Video", + "audio": "Audio", + "file": "Datei", + "advanced": "Erweitert", + "codec": "Codec", + "resolution": "Auflösung", + "bitrate": "Bitrate", + "frameRate": "Bildrate", + "aspectRatio": "Seitenverhältnis", + "profile": "Profil", + "bitDepth": "Farbtiefe", + "colorSpace": "Farbraum", + "colorRange": "Farbbereich", + "colorPrimaries": "Primärfarben", + "chromaSubsampling": "Chroma-Subsampling", + "channels": "Kanäle", + "path": "Pfad", + "size": "Größe", + "container": "Container", + "duration": "Dauer", + "optimizedForStreaming": "Für Streaming optimiert", + "has64bitOffsets": "64-Bit-Offsets" + }, + "mediaMenu": { + "markAsWatched": "Als gesehen markieren", + "markAsUnwatched": "Als ungesehen markieren", + "removeFromContinueWatching": "Aus ‚Weiterschauen‘ entfernen", + "goToSeries": "Zur Serie", + "goToSeason": "Zur Staffel", + "shufflePlay": "Zufallswiedergabe", + "fileInfo": "Dateiinfo" + }, + "tooltips": { + "shufflePlay": "Zufallswiedergabe", + "markAsWatched": "Als gesehen markieren", + "markAsUnwatched": "Als ungesehen markieren" + }, + "videoControls": { + "audioLabel": "Audio", + "subtitlesLabel": "Untertitel", + "resetToZero": "Auf 0 ms zurücksetzen", + "addTime": "+${amount}${unit}", + "minusTime": "-${amount}${unit}", + "playsLater": "${label} spielt später", + "playsEarlier": "${label} spielt früher", + "noOffset": "Kein Offset", + "letterbox": "Letterbox", + "fillScreen": "Bild füllen", + "stretch": "Strecken", + "lockRotation": "Rotation sperren", + "unlockRotation": "Rotation entsperren" + }, + "userStatus": { + "admin": "Admin", + "restricted": "Eingeschränkt", + "protected": "Geschützt" + }, + "messages": { + "markedAsWatched": "Als gesehen markiert", + "markedAsUnwatched": "Als ungesehen markiert", + "removedFromContinueWatching": "Aus ‚Weiterschauen‘ entfernt", + "errorLoading": "Fehler: ${error}", + "fileInfoNotAvailable": "Dateiinfo nicht verfügbar", + "errorLoadingFileInfo": "Fehler beim Laden der Dateiinfo: ${error}", + "errorLoadingSeries": "Fehler beim Laden der Serie", + "errorLoadingSeason": "Fehler beim Laden der Staffel", + "musicNotSupported": "Musikwiedergabe wird noch nicht unterstützt", + "logsCleared": "Protokolle gelöscht", + "logsCopied": "Protokolle in Zwischenablage kopiert", + "noLogsAvailable": "Keine Protokolle verfügbar", + "libraryScanning": "Scanne „${title}“...", + "libraryScanStarted": "Bibliotheksscan gestartet für „${title}“", + "libraryScanFailed": "Fehler beim Scannen der Bibliothek: ${error}", + "metadataRefreshing": "Metadaten werden aktualisiert für „${title}“...", + "metadataRefreshStarted": "Metadaten-Aktualisierung gestartet für „${title}“", + "metadataRefreshFailed": "Metadaten konnten nicht aktualisiert werden: ${error}", + "noPlexToken": "Kein Plex-Token gefunden. Bitte erneut anmelden.", + "logoutConfirm": "Abmeldung wirklich durchführen?", + "noSeasonsFound": "Keine Staffeln gefunden", + "noEpisodesFound": "Keine Episoden in der ersten Staffel gefunden", + "noEpisodesFoundGeneral": "Keine Episoden gefunden", + "noResultsFound": "Keine Ergebnisse gefunden", + "sleepTimerSet": "Sleep-Timer gesetzt auf ${label}", + "failedToSwitchProfile": "Profilwechsel zu ${displayName} fehlgeschlagen" + }, + "profile": { + "noUsersAvailable": "Keine Benutzer verfügbar" + }, + "subtitlingStyling": { + "stylingOptions": "Stiloptionen", + "fontSize": "Schriftgröße", + "textColor": "Textfarbe", + "borderSize": "Rahmengröße", + "borderColor": "Rahmenfarbe", + "backgroundOpacity": "Hintergrunddeckkraft", + "backgroundColor": "Hintergrundfarbe" + }, + "dialog": { + "confirmAction": "Aktion bestätigen", + "areYouSure": "Aktion wirklich ausführen?", + "cancel": "Abbrechen", + "playNow": "Jetzt abspielen" + }, + "discover": { + "title": "Entdecken", + "switchProfile": "Profil wechseln", + "switchServer": "Server wechseln", + "logout": "Abmelden", + "noContentAvailable": "Kein Inhalt verfügbar", + "addMediaToLibraries": "Medien zur Bibliothek hinzufügen", + "continueWatching": "Weiterschauen", + "recentlyAdded": "Kürzlich hinzugefügt", + "play": "Abspielen", + "resume": "Fortsetzen", + "playEpisode": "Spiele S${season}, E${episode}", + "resumeEpisode": "Fortsetzen S${season}, E${episode}", + "pause": "Pause", + "overview": "Übersicht", + "cast": "Besetzung", + "episodeCount": "${count} Episoden", + "watchedProgress": "${watched}/${total} gesehen", + "movie": "Film", + "tvShow": "Serie", + "minutesLeft": "${minutes} Min übrig" + }, + "errors": { + "searchFailed": "Suche fehlgeschlagen: ${error}", + "connectionTimeout": "Zeitüberschreitung beim Laden von ${context}", + "connectionFailed": "Verbindung zum Plex-Server fehlgeschlagen", + "failedToLoad": "Fehler beim Laden von ${context}: ${error}", + "noClientAvailable": "Kein Client verfügbar", + "authenticationFailed": "Authentifizierung fehlgeschlagen: ${error}", + "couldNotLaunchUrl": "Auth-URL konnte nicht geöffnet werden", + "pleaseEnterToken": "Bitte Token eingeben", + "invalidToken": "Ungültiges Token", + "failedToVerifyToken": "Token-Verifizierung fehlgeschlagen: ${error}", + "failedToSwitchProfile": "Profilwechsel zu ${displayName} fehlgeschlagen", + "connectionFailedGeneric": "Verbindung fehlgeschlagen" + }, + "libraries": { + "title": "Bibliotheken", + "scanLibraryFiles": "Bibliotheksdateien scannen", + "scanLibrary": "Bibliothek scannen", + "analyze": "Analysieren", + "analyzeLibrary": "Bibliothek analysieren", + "refreshMetadata": "Metadaten aktualisieren", + "emptyTrash": "Papierkorb leeren", + "emptyingTrash": "Papierkorb für „${title}“ wird geleert...", + "trashEmptied": "Papierkorb für „${title}“ geleert", + "failedToEmptyTrash": "Papierkorb konnte nicht geleert werden: ${error}", + "analyzing": "Analysiere „${title}“...", + "analysisStarted": "Analyse gestartet für „${title}“", + "failedToAnalyze": "Analyse der Bibliothek fehlgeschlagen: ${error}", + "noLibrariesFound": "Keine Bibliotheken gefunden", + "thisLibraryIsEmpty": "Diese Bibliothek ist leer", + "all": "Alle", + "clearAll": "Alle löschen", + "scanLibraryConfirm": "„${title}“ wirklich scannen?", + "analyzeLibraryConfirm": "„${title}“ wirklich analysieren?", + "refreshMetadataConfirm": "Metadaten für „${title}“ wirklich aktualisieren?", + "emptyTrashConfirm": "Papierkorb für „${title}“ wirklich leeren?", + "manageLibraries": "Bibliotheken verwalten", + "sort": "Sortieren", + "sortBy": "Sortieren nach", + "filters": "Filter", + "loadingLibraryWithCount": "Lade Bibliothek... (${count} Elemente geladen)", + "confirmActionMessage": "Aktion wirklich durchführen?", + "showLibrary": "Bibliothek anzeigen", + "hideLibrary": "Bibliothek ausblenden", + "libraryOptions": "Bibliotheksoptionen" + }, + "about": { + "title": "Über", + "openSourceLicenses": "Open-Source-Lizenzen", + "versionLabel": "Version ${version}", + "appDescription": "Ein schöner Plex-Client für Flutter", + "viewLicensesDescription": "Lizenzen von Drittanbieter-Bibliotheken anzeigen" + }, + "serverSelection": { + "connectingToServer": "Verbinde mit Server...", + "serverDebugCopied": "Server-Debugdaten kopiert", + "copyDebugData": "Debugdaten kopieren", + "noServersFound": "Keine Server gefunden", + "malformedServerData": "${count} Server mit fehlerhaften Daten gefunden. Keine gültigen Server verfügbar.", + "incompleteServerInfo": "Einige Serverinformationen sind unvollständig und wurden übersprungen. Plex.tv-Konto prüfen.", + "incompleteConnectionInfo": "Serververbindungsinformationen unvollständig. Bitte erneut versuchen.", + "malformedServerInfo": "Serverinformationen fehlerhaft: ${message}", + "networkConnectionFailed": "Netzwerkverbindung fehlgeschlagen. Internetverbindung prüfen und erneut versuchen.", + "authenticationFailed": "Authentifizierung fehlgeschlagen. Bitte erneut anmelden.", + "plexServiceUnavailable": "Plex-Dienst nicht verfügbar. Bitte später erneut versuchen.", + "failedToLoadServers": "Server konnten nicht geladen werden: ${error}" + }, + "hubDetail": { + "title": "Titel", + "releaseYear": "Erscheinungsjahr", + "dateAdded": "Hinzugefügt am", + "rating": "Bewertung", + "noItemsFound": "Keine Elemente gefunden" + }, + "logs": { + "title": "Protokolle", + "clearLogs": "Protokolle löschen", + "copyLogs": "Protokolle kopieren", + "exportLogs": "Protokolle exportieren", + "noLogsToShow": "Keine Protokolle zum Anzeigen", + "error": "Fehler:", + "stackTrace": "Stacktrace:" + }, + "licenses": { + "relatedPackages": "Verwandte Pakete", + "license": "Lizenz", + "licenseNumber": "Lizenz ${number}", + "licensesCount": "${count} Lizenzen" + }, + "navigation": { + "home": "Start", + "search": "Suche", + "libraries": "Bibliotheken", + "settings": "Einstellungen" + } +}