diff --git a/web-src/src/i18n.js b/web-src/src/i18n.js index 9b544336..25bcfa5c 100644 --- a/web-src/src/i18n.js +++ b/web-src/src/i18n.js @@ -9,6 +9,7 @@ import messages from '@intlify/vite-plugin-vue-i18n/messages' export default createI18n({ legacy: false, globalInjection: true, + availableLocales: ('de','en','fr'), locale: navigator.language, fallbackLocale: 'en', fallbackWarn: false, diff --git a/web-src/src/locales/de.json b/web-src/src/locales/de.json new file mode 100644 index 00000000..ef010bba --- /dev/null +++ b/web-src/src/locales/de.json @@ -0,0 +1,549 @@ +{ + "data": { + "kind": { + "file": "Datei", + "url": "URL", + "spotify": "Spotify", + "pipe": "Stream" + } + }, + "dialog": { + "cancel": "Abbrechen", + "add": { + "rss": { + "add": "Hinzufügen", + "cancel": "Abbrechen", + "help": "Hinzufügen eines Podcasts führt zur Anlage einer RSS-Playlist, so kann Owntone das Podcast-Abo verwalten.", + "placeholder": "https://url-to-rss", + "processing": "Verarbeite…", + "title": "Füge Podcast RSS-Feed-Url hinzu" + }, + "stream": { + "add": "Hinzufügen", + "cancel": "Abbrechen", + "loading": "Lade…", + "placeholder": "https://url-to-stream", + "play": "Spielen", + "title": "Stream-URL hinzufügen" + } + }, + "album": { + "add-next": "Als nächstes hinzufügen", + "add": "Hinzufügen", + "added-on": "Hinzugefügt am", + "artist": "Album Künstler", + "duration": "Dauer", + "mark-as-played": "Markiere als gespielt", + "play": "Spielen", + "release-date": "Veröffentlichungsdatum", + "remove-podcast": "Entferne podcast", + "tracks": "Track Nummer", + "type": "Art", + "year": "Jahr" + }, + "artist": { + "add-next": "Als nächstes hinzufügen", + "add": "Hinzufügen", + "added-on": "Hinzugefügt am", + "albums": "Alben", + "play": "Spielen", + "tracks": "Tracks", + "type": "Art" + }, + "composer": { + "add-next": "Als nächstes hinzufügen", + "add": "Hinzufügen", + "albums": "Alben", + "duration": "Dauer", + "play": "Spielen", + "tracks": "Tracks" + }, + "directory": { + "add-next": "Als nächstes hinzufügen", + "add": "Hinzufügen", + "play": "Spielen" + }, + "genre": { + "add-next": "Als nächstes hinzufügen", + "add": "Hinzufügen", + "albums": "Alben", + "duration": "Dauer", + "play": "Spielen", + "tracks": "Tracks" + }, + "playlist": { + "add-next": "Als nächstes hinzufügen", + "add": "Hinzufügen", + "play": "Spielen", + "track-count": "Tracknummer", + "type": "Art", + "save": { + "cancel": "Abbrechen", + "save": "Speichern", + "saving": "Speichere…", + "title": "Warteschlange als Playlist speichern" + } + }, + "queue-item": { + "album-artist": "Album-Künstler", + "album": "Album", + "bitrate": "{'|'} {rate} kbit/s", + "channels": "{'|'} {channels}", + "composer": "Komponist", + "duration": "Dauer", + "genre": "Genre", + "path": "Pfad", + "play": "Spielen", + "position": "Disc / Track", + "quality": "Qualität", + "remove": "Entfernen", + "samplerate": "{'|'} {rate} Hz", + "spotify-album": "Album", + "spotify-artist": "Künstler", + "type": "Art", + "year": "Jahr" + }, + "remote-pairing": { + "cancel": "Abbrechen", + "pair": "Remote paaren", + "title": "Remote-Paarungs-Anfrage" + }, + "spotify": { + "album": { + "add-next": "Als nächstes hinzufügen", + "add": "Hinzufügen", + "album-artist": "Album-Künstler", + "play": "Spielen", + "release-date": "Veröffentlichungsdatum", + "type": "Art" + }, + "artist": { + "add-next": "Als nächstes hinzufügen", + "add": "Hinzufügen", + "genres": "Genres", + "play": "Spielen", + "popularity": "Popularität / Followers" + }, + "playlist": { + "add-next": "Als nächstes hinzufügen", + "add": "Hinzufügen", + "owner": "Besitzer", + "path": "Pfad", + "play": "Spielen", + "tracks": "Tracks" + }, + "track": { + "add-next": "Als nächstes hinzufügen", + "add": "Hinzufügen", + "album-artist": "Album-Künstler", + "album": "Album", + "duration": "Dauer", + "path": "Pfad", + "play": "Spielen", + "position": "Disc / Track", + "release-date": "Veröffentlichungsdatum" + } + }, + "track": { + "add-next": "Als nächstes hinzufügen", + "add": "Hinzufügen", + "added-on": "Hinzugefügt am", + "album-artist": "Album-Künstler", + "album": "Album", + "bitrate": " {'|'} {rate} Kb/s", + "channels": " {'|'} {channels}", + "comment": "Kommentar", + "composer": "Komponist", + "duration": "Dauer", + "genre": "Genre", + "mark-as-new": "Markiere als neu", + "mark-as-played": "Markiere als gespielt", + "path": "Pfad", + "play": "Spielen", + "position": "Disc / Track", + "quality": "Qualität", + "rating-value": "{rating} / 10", + "rating": "Bewertung", + "release-date": "Veröffentlichungsdatum", + "samplerate": " {'|'} {rate} Hz", + "spotify-album": "Album", + "spotify-artist": "Künstler", + "type": "Art", + "year": "Jahr" + }, + "update": { + "all": "Alles neu einlesen", + "cancel": "Abbrechen", + "feeds": "Nur RSS-Feeds neu einlesen", + "info": "Suche nach neuen, gelöschten und veränderten Dateien", + "local": "Nur lokale Bibliothek neu einlesen", + "progress": "Bibliothek wird neu eingelesen…", + "rescan-metadata": "Metadata von unveränderten Dateien neu einlesen", + "rescan": "Neu einlesen", + "spotify": "Nur Spotify neu einlesen", + "title": "Bibliothek neu einlesen" + } + }, + "language": { + "en": "English", + "fr": "French (Français)", + "de": "German (Deutsch)" + }, + "list": { + "albums": { + "info-1": "Diesen Podcast dauerhaft aus der Bibliothek löschen?", + "info-2": "Dies wir auch RSS-Playlisten löschen ", + "notification": "Podcast kann nicht gelöscht werden - evtl. wurde er nicht als RSS-Playlist hinzugefügt." + }, + "spotify": { + "not-playable-track": "Track kann nicht gespielt werden", + "restriction-reason": ", restriction reason: {reason}" + } + }, + "media": { + "kind": { + "album": "Album", + "audiobook": "Hörbuch", + "music": "Musik", + "podcast": "Podcast" + } + }, + "navigation": { + "about": "Über", + "albums": "Alben", + "artists": "Künstler", + "audiobooks": "Hörbücher", + "now-playing": " - {album}", + "stream-error": "HTTP-stream-Fehler: Stream kann nicht geladen werden oder wurde wg. Netzwerkfehler gestopt", + "stream": "HTTP-stream", + "volume": "Lautstärke", + "files": "Dateien", + "genres": "Genres", + "music": "Musik", + "playlists": "Playlisten", + "podcasts": "Podcasts", + "radio": "Radio", + "search": "Suche", + "settings": "Einstellungen", + "spotify": "Spotify", + "title": "OwnTone", + "update-library": "Bibliothek neu einlesen" + }, + "page": { + "about": { + "albums": "Albums", + "artists": "Künstler", + "built-with": "Oberfläche erstellt mit Bulma, Material Design Icons, Vue.js, axios und anderem.", + "compiled-with": "Compiliert mit Unterstützung von {options}.", + "library": "Bibliothek", + "total-playtime": "Gesamte Spielzeit", + "tracks": "Tracks", + "update": "Neu einlesen", + "updated-on": "vor {time}", + "updated": "Neu eingelesen", + "uptime": "Laufzeit", + "version": "Version {version}" + }, + "album": { + "shuffle": "Zufallswiedergabe", + "track-count": "{count} Tracks" + }, + "albums": { + "count": "{count} Slbums", + "filter": "Filter", + "hide-singles-help": "Nach Aktivierung werden keine Singles und Alben angezeigt, die nur in Playlists enthalten sind.", + "hide-singles": "Nach Aktivierung werden keine Singles angezeigt", + "hide-spotify-help": "Nach Aktivierung werden keine Alben angezeigt, die nur in der Spotify-Bibliothek enthalten sind.", + "hide-spotify": "Verbirgt Spotify-Alben", + "title": "Alben", + "sort-by": { + "title": "Sortieren nach", + "name": "Name", + "recently-added": "Kürzlich hinzugefügt", + "recently-released": "Kürzlich erschienen" + } + }, + "artist": { + "album-count": "{count} Alben", + "shuffle": "Zufallswiedergabe", + "track-count": "{count} Tracks", + "sort-by": { + "title": "Sortieren nach", + "name": "Name", + "release-date": "Erscheinungsdatum" + } + }, + "artists": { + "count": "{count} Künstler", + "filter": "Filter", + "sort-by": { + "title": "Sortieren nach", + "name": "Namen", + "recently-added": "Kürzlich hinzugefügt" + }, + "hide-singles-help": "Nach Aktivierung werden keine Singles und Alben angezeigt, die nur in Playlists enthalten sind.", + "hide-singles": "Nach Aktivierung werden keine Singles angezeigt", + "hide-spotify-help": "Nach Aktivierung werden keine Alben angezeigt, die nur in der Spotify-Bibliothek enthalten sind.", + "hide-spotify": "Verbirgt Künstler auf Spotify", + "title": "Künstler" + }, + "audiobooks": { + "album": { + "play": "Spielen", + "track-count": "{count} Tracks" + }, + "albums": { + "count": "{count} Hörbücher", + "title": "Hörbücher" + }, + "artist": { + "albums-count": "{count} Alben", + "shuffle": "Zufallswiedergabe" + }, + "artists": { + "count": "{count} Autoren", + "title": "Autoren" + }, + "tabs": { + "authors": "Autoren", + "audiobooks": "Hörbücher" + } + }, + "browse": { + "albums": "Alben", + "show-more": "Zeige mehr", + "tracks": "Tracks", + "recently-added": { + "albums": "Alben", + "title": "Kürzlich hinzugefügt" + }, + "recently-played": { + "title": "Kürzlich gespielt", + "tracks": "Tracks" + }, + "tabs": { + "albums": "Alben", + "artists": "Künstler", + "browse": "Auswählen", + "composers": "Komponisten", + "genres": "Genres", + "spotify": "Spotify" + } + }, + "composer": { + "album-count": "{count} Alben", + "shuffle": "Zufallswiedergabe", + "track-count": "{count} Tracks" + }, + "composers": { + "count": "{count} Komponisten", + "title": "Komponisten" + }, + "files": { + "play": "Spielen", + "title": "Dateien" + }, + "genre": { + "album-count": "{count} Alben", + "shuffle": "Zufallswiedergabe", + "track-count": "{count} Tracks" + }, + "genres": { + "count": "{count} Genres", + "title": "Genres" + }, + "now-playing": { + "info": "Tracks durch Auswählen aus der Bibliothek anfügen", + "title": "Deine Playliste ist leer." + }, + "playlist": { + "length": "{length} Tracks", + "shuffle": "Zufallswiedergabe" + }, + "playlists": { + "count": "{count} Playlists" + }, + "podcast": { + "play": "Spielen", + "remove-error": "Podcast kann nicht entfernt werden, evtl. wurde er nicht als RSS-Playlist hinzugefügt.", + "remove-info-1": "Diesen Podcast wirklich dauerhaft aus der Bibliothek löschen?", + "remove-info-2": "Damit wird auch die RSS-Playliste gelöscht. ", + "track-count": "{count} Tracks" + }, + "podcasts": { + "add": "Hinzufügen", + "count": "{count} Podcasts", + "mark-all-played": "Alle abgespielten markieren", + "new-episodes": "Neue Episoden", + "title": "Podcasts", + "update": "Neu einlesen" + }, + "queue": { + "add-stream": "Stream hinzufügen", + "clear": "Alle entfernen", + "count": "{count} Tracks", + "edit": "Bearbeiten", + "hide-previous": "Vorherige verbergen", + "title": "Warteschlange", + "save": "Speichern" + }, + "radio": { + "count": "{count} Stationen", + "title": "Radio" + }, + "search": { + "albums": "Alben", + "artists": "Künstler", + "audiobooks": "Hörbücher", + "composers": "Komponisten", + + "help": "Tip: Du kannst mit einer Smart-Playlist-Abfrage-Sprache nach Ausdrücken suchen wenn Du dem Ausdruck ein query: voranstellst.", + "no-albums": "Keine Alben gefunden", + "no-artists": "Keine Künstler gefunden", + "no-audiobooks": "Keine Hörbücher gefunden", + "no-composers": "Keine Komponisten gefunden", + "no-playlists": "Keine Playlisten gefunden", + "no-podcasts": "Keine Podcasts gefunden", + "no-tracks": "Keine Tracks gefunden", + "playlists": "Playlists", + "podcasts": "Podcasts", + "show-albums": "Zeige alle {count} Alben", + "show-artists": "Zeige alle {count} Künstler", + "show-audiobooks": "Zeige alle {count} Hörbücher", + "show-composers": "Zeige alle {count} Komponisten", + "show-playlists": "Zeige alle {count} Playlisten", + "show-podcasts": "Zeige alle {count} Podcasts", + "show-tracks": "Zeige alle {count} Tracks", + "tracks": "Tracks", + "tabs": { + "library": "Bibliothek", + "spotify": "Spotify" + } + }, + "settings": { + "artwork": { + "artwork": "Artwork", + "coverartarchive": "Cover Art Archive", + "discogs": "Discogs", + "explanation-1": "OwnTone verarbeitet PNG- und JPEG-Artwork, welches in einer eigenen Datei in der Bibliothek, in die Dateien eingebttet oder online von Radiostationen bereitgestellt werden kann.", + "explanation-2": "Zusätzlich kann auf folgende Artwork-Anbietern zugegriffen werden:", + "spotify": "Spotify" + }, + "devices": { + "no-active-pairing": "Keine aktive Pairing-Anfrage", + "pairing-request": "Remote-Pairing-Anfrage von ", + "pairing": "Pairing Remote", + "send": "Senden", + "speaker-pairing-info": "Wenn der Laufsprecher PIN-basiertes Pairing verlangt, aktiviere ihn hier und gib dann den hier PIN an, der am Laufsprecher angezeigt wird.", + "speaker-pairing": "Lautsprecher-Pairing und Geräteverifikation", + "verification-code": "Verifikationscode eingeben", + "verify": "Verifizieren" + }, + "general": { + "album-lists": "Album-Listen", + "audiobooks": "Hörbücher", + "files": "Audiodateien", + "language": "Sprache", + "music": "Musik", + "navigation-item-selection-info": "Wenn mehr dateien ausgewählt werden, als der Bildschirm anzeigen kann, verschwindet das Burger-Menü.", + "navigation-item-selection": "Wähle hier die Einträge des oberen Navigationsmenüs ", + "navigation-items": "Navigationsmenüs", + "now-playing-page": "Aktuell läuft-Seite", + "playlists": "Playlists", + "podcasts": "Podcasts", + "radio": "Radio", + "recently-added-page-info": "Beschränkte die Zahl der Alben auf der \"kürzlich hinzugefügt\"-Seite", + "recently-added-page": "Kürzlich hinzugefügt-Seite", + "search": "Suche", + "show-composer-genres-info-1": "Komma-separierte Liste der Genres, wo der Komponist auf der \"Aktuell läuft\"-Seite angezeigt werden soll", + "show-composer-genres-info-2": "Leer lassen, um ihn immer anzuzeigen.", + "show-composer-genres-info-3": "Der Genre-Tag des aktuellen Tracks wird abgeglichen als Teil-String des Genre-Tags. Z.B. \"classical, soundtrack\" wird den Komponisten beim Genre-Tag \"Contemporary Classical\" anzeigen", + "show-composer-genres": "Zeige den Komponisten für die aufgelisteten Genres an", + "show-composer-info": "Wenn aktiviert, wird der Komponist auf der \"Aktuell läuft\"-Seite angezeigt.", + "show-composer": "Komponisten anzeigen", + "show-coverart": "Zeige Cover-Artwork in der Albumliste" + }, + "services": { + "lastfm": { + "grant-access": "Last.fm - melde Dich mit Deinem Last.fm-Usernamen und Password an, um Scrobbeln zu aktivieren", + "info": "OwnTone wird Usernamen und Passwort von last.fm nicht speichern, nur den Sitzungs-Schlüssel. Dieser läuft nicht ab.", + "title": "Last.fm", + "no-support": "OwnTone wurde ohne Unterstützung für Last.fm kompiliert.", + "stop-scrobbling": "Stop Scrobbling" + }, + "spotify": { + "no-support": "OwnTone wurde entweder ohne Unterstützung für Spotify kompiliert oder libspotify ist nicht installiert.", + "logged-as": "Angemeldet als ", + "requirements": "Spotify Premium Abo erforderlich.", + "scopes": "Zugriff auf die Spotify Web-Api ermöglicht scannen der Spotify-Blibliothek. Erforderliche scopes sind: ", + "user": "Zugriff gestattet für ", + "authorize": "Authorisiere Web-API-Zugriff", + "credentials": " - Anmelden mit dem Spotify Username und Passwort", + "grant-access": "Spotify Web-API - Zugriff auf die Spotify Web-API gestatten", + "help-1": "libspotify ermöglicht OwnTone, Spotify-Tracks abzuspielen.", + "help-2": "OwnTone speichert das Passwort nicht, aber wird über libspotify dennoch einen automatischen Login über ein Login-Token ermöglichen.", + "reauthorize": "Bitte den Zugriff der Web-API durch setzen folgender Zugriffsrechte für Owntone: ", + "title": "Spotify" + }, + "login": "Einloggen", + "logout": "Ausloggen" + }, + "tabs": { + "artwork": "Artwork", + "general": "Allgemein", + "online-services": "Online-Services", + "remotes-and-outputs": "Fernbedienungen und Ausgänge" + } + }, + "spotify": { + "album": { + "shuffle": "Zufallswiedergabe", + "track-count": "{count} Tracks" + }, + "artist": { + "album-count": "{count} Alben", + "shuffle": "Zufallswiedergabe" + }, + "browse": { + "featured-playlists": "Ausgezeichnete Playlists", + "new-releases": "Neuvorstellung", + "show-more": "Zeige mehr" + }, + "playlist": { + "count": "{count} Tracks", + "shuffle": "Zufallswiedergabe" + }, + "search": { + "albums": "Alben", + "artists": "Künstler", + "no-albums": "Keine Alben gefunden", + "no-artists": "Keine Künstler gefunden", + "no-playlists": "Keine Playlisten gefunden", + "no-tracks": "Keine Tracks gefunden", + "playlists": "Playlists", + "show-all-albums": "Zeige alle {count} Alben", + "show-all-artists": "Zeige alle {count} Künstler", + "show-all-playlists": "Zeige alle {count} Playlisten", + "show-all-tracks": "Zeige alle {count} Tracks", + "tracks": "Tracks" + } + } + }, + "setting": { + "not-saved": " (Fehler beim Speichern der Einstellungen)", + "saved": " (Einstellungen gesichert)" + }, + "server": { + "connection-failed": "Fehler bei Verbindung zum OwnTone-Server", + "missing-port": "Fehlender Websocket-Port", + "request-failed": "Anfrage gescheitert (Status: {status} {cause} {url})", + "queue-saved": "Warteschlange zu Playlist {name} gesichert", + "appended-tracks": "{count} Tracks an die Abspielliste angehängt", + "empty-queue": "Warteschlange ist leer" + }, + "group-by-list": { + "today": "Heute", + "last-week": "Letzte Woche", + "last-month": "Letzer Monat" + } +}