Merge pull request 'main' (#4) from RemixDev/deemix-webui:main into main
Reviewed-on: https://codeberg.org/m3troux/deemix-webui/pulls/4
This commit is contained in:
commit
79d7432cb9
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -32,6 +32,7 @@ function mountApp() {
|
||||
function initClient() {
|
||||
window.clientMode = true
|
||||
document.querySelector(`#open_downloads_folder`).classList.remove('hide')
|
||||
document.querySelector(`#select_downloads_folder`).classList.remove('hide')
|
||||
}
|
||||
|
||||
document.addEventListener('DOMContentLoaded', startApp)
|
||||
|
@ -19,7 +19,7 @@
|
||||
</h3>
|
||||
<div class="inline-flex">
|
||||
<input autocomplete="off" type="password" id="login_input_arl" ref="loginInput" placeholder="ARL" />
|
||||
<button id="settings_btn_copyArl" @click="copyARLtoClipboard">
|
||||
<button id="settings_btn_copyArl" class="only_icon" @click="copyARLtoClipboard">
|
||||
<i class="material-icons">assignment</i>
|
||||
</button>
|
||||
</div>
|
||||
@ -62,7 +62,12 @@
|
||||
<h3 class="settings-group__header settings-group__header--with-icon">
|
||||
<i class="material-icons">folder</i>{{ $t('settings.downloadPath.title') }}
|
||||
</h3>
|
||||
<input type="text" v-model="settings.downloadLocation" />
|
||||
<div class="inline-flex">
|
||||
<input autocomplete="off" type="text" v-model="settings.downloadLocation" />
|
||||
<button id="select_downloads_folder" class="only_icon hide" @click="selectDownloadFolder">
|
||||
<i class="material-icons">folder</i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="settings-group">
|
||||
@ -672,6 +677,7 @@ export default {
|
||||
socket.on('updateSettings', this.updateSettings)
|
||||
socket.on('accountChanged', this.accountChanged)
|
||||
socket.on('familyAccounts', this.initAccounts)
|
||||
socket.on('downloadFolderSelected', this.downloadFolderSelected)
|
||||
},
|
||||
methods: {
|
||||
revertSettings() {
|
||||
@ -713,6 +719,13 @@ export default {
|
||||
|
||||
socket.emit('saveSettings', this.lastSettings, this.lastCredentials, changed ? this.lastUser : false)
|
||||
},
|
||||
selectDownloadFolder() {
|
||||
if (window.clientMode) socket.emit('selectDownloadFolder')
|
||||
},
|
||||
downloadFolderSelected(folder){
|
||||
console.log(folder)
|
||||
this.settings.downloadLocation = folder
|
||||
},
|
||||
loadSettings(settings, spotifyCredentials, defaults = null) {
|
||||
if (defaults) {
|
||||
this.defaultSettings = { ...defaults }
|
||||
|
325
src/lang/de.js
325
src/lang/de.js
@ -4,77 +4,74 @@ const de = {
|
||||
back: 'zurück',
|
||||
loading: 'lädt',
|
||||
download: 'Download {0}',
|
||||
by: 'um {0}',
|
||||
by: 'von {0}',
|
||||
in: 'in {0}',
|
||||
download_hint: 'Download',
|
||||
play_hint: 'Abspielen',
|
||||
toggle_download_tab_hint: 'Einblenden/Ausblenden',
|
||||
clean_queue_hint: 'Fertige löschen',
|
||||
play_hint: 'Play',
|
||||
toggle_download_tab_hint: 'Erweitern/Minimieren',
|
||||
clean_queue_hint: 'Entferne vollständige',
|
||||
cancel_queue_hint: 'Alle abbrechen',
|
||||
listTabs: {
|
||||
empty: '',
|
||||
all: 'alle',
|
||||
top_result: 'top-ergebnis',
|
||||
album: 'album | alben',
|
||||
artist: 'künstler | künstler',
|
||||
single: 'single | singles',
|
||||
title: 'titel | titel',
|
||||
track: 'track | tracks',
|
||||
trackN: '0 tracks | {n} track | {n} tracks',
|
||||
releaseN: '0 veröffentlichungen | {n} veröffentlichung | {n} veröffentlichungen',
|
||||
playlist: 'playlist | playlisten',
|
||||
compile: 'compilation | compilations',
|
||||
ep: 'ep | eps',
|
||||
spotifyPlaylist: 'spotify playlist | spotify playlists',
|
||||
releaseDate: 'veröffentlichungsdatum',
|
||||
error: 'fehler'
|
||||
top_result: 'Top Ergebnis',
|
||||
album: 'Album | Alben',
|
||||
artist: 'Künstler | Künstler',
|
||||
single: 'Single | Singles',
|
||||
title: 'Titel | Titel',
|
||||
track: 'Track | Tracks',
|
||||
trackN: '0 Tracks | {n} Track | {n} Tracks',
|
||||
releaseN: '0 Releases | {n} Release | {n} Releases',
|
||||
playlist: 'Playlist | Playlists',
|
||||
compile: 'Sammlung | Sammlungen',
|
||||
ep: 'EP | EPs',
|
||||
spotifyPlaylist: 'Spotify Playlist | Spotify Playlists',
|
||||
releaseDate: 'Veröffentlichungsdatum',
|
||||
error: 'Fehler'
|
||||
}
|
||||
},
|
||||
about: {
|
||||
titles: {
|
||||
usefulLinks: 'Hilfreiche Links',
|
||||
bugReports: 'Fehlerberichte',
|
||||
usefulLinks: 'Nützliche Links',
|
||||
bugReports: 'Fehlermeldung',
|
||||
contributing: 'Mitwirkende',
|
||||
donations: 'Spenden',
|
||||
license: 'Lizenz'
|
||||
},
|
||||
subtitles: {
|
||||
bugReports: "Gibt es etwas, das im Deemix nicht funktioniert? Teil es uns mit!",
|
||||
contributing: 'Du möchtest zu diesem Projekt beitragen? Das kannst du auf verschiedene Arten tun!',
|
||||
donations: 'Du möchtest deemix finanziell unterstützen? Dann mach eine Spende'
|
||||
bugReports: 'Funktioniert etwas in Deemix nicht? Sag uns bescheid!',
|
||||
contributing: 'Du möchtest bei dem Projekt helfen? Das kannst du auf verschiedene Arten machen!',
|
||||
donations: 'Du möchtest deemix finanziell unterstützen? Dann lasse eine kleine Spende da!'
|
||||
},
|
||||
usesLibrary: 'Diese App verwendet die <strong>deemix</strong> Bibliothek, die du verwenden kannst, um Deine eigene UI für Deemix zu erstellen.',
|
||||
thanks: `Danke an <strong>rtonno</strong>, <strong>uhwot</strong> und <strong>lollilol</strong> für die Hilfe bei diesem Projekt und an <strong>BasCurtiz</strong> und <strong>scarvimane</strong> für das Design der Icons.`,
|
||||
upToDate: `Bleib auf dem Laufenden mit den Updates indem du dem <a href="https://t.me/RemixDevNews" target="_blank">News Channel</a> auf Telegram folgst.`,
|
||||
officialWebsite: 'Offizielle Webseite',
|
||||
usesLibrary: 'Dieses Programm nutzt die <strong>deemix</strong> Bibliothek, die du dazu nutzen kannst deine eigene deemix UI zu erstellen.',
|
||||
thanks: 'Ein Dankeschön geht an <strong>rtonno</strong>, <strong>uhwot</strong> and <strong>lollilol</strong> für die Hilfe bei diesem Projekt und an <strong>BasCurtiz</strong> and <strong>scarvimane</strong> für die Erstellung des Logos.',
|
||||
upToDate: 'Bleib auf dem Laufenden mit den Updates indem du dem <a href="https://t.me/RemixDevNews" target="_blank">News Channel</a> auf Telegram folgst.',
|
||||
officialWebsite: 'Offizielle Website',
|
||||
officialRepo: 'Offizielle Library Repository',
|
||||
officialWebuiRepo: 'Offizielle WebUI Repository',
|
||||
officialSubreddit: 'Offizieller Subreddit',
|
||||
newsChannel: 'News Kanal',
|
||||
questions: `Wenn du Fragen oder Probleme mit der App hast, suche zuerst nach einer Lösung im <a href="https://www.reddit.com/r/deemix" target="_blank">subreddit</a>. Wenn du dann nichts findest, kannst du einen Beitrag mit Deinem Thema auf dem Subreddit verfassen.`,
|
||||
beforeReporting: `Bevor du einen Fehler meldest, stelle sicher, dass du die neueste Version der App benutzt und dass das, was du melden möchtest, tatsächlich ein Bug ist und nicht etwas, das nur bei dir falsch ist.`,
|
||||
beSure: `Vergewissere dich, dass der Bug auf einem anderen Rechner vorhanden ist und melde <stark>NICHT</stark> einen Bug, wenn er bereits gemeldet wurde.`,
|
||||
duplicateReports: 'Doppelte Fehlerberichte werden geschlossen, also behalte das im Auge.',
|
||||
dontOpenIssues: `Erstelle <strong>KEINE</strong> Fehlerberichte, um Fragen zu stellen, dafür gibt es einen Subreddit.`,
|
||||
newUI: `Wenn du dich mit Python auskennst, könntest du versuchen, mit hilfe der base library eine neue Benutzeroberfläche für die App zu erstellen oder Fehler in der library mit einem Pull-Request in der <a href="https://codeberg.org/RemixDev/deemix" target="_blank">deemix Repo</a> zu beheben.`,
|
||||
acceptFeatures: `Ich akzeptiere auch Features, aber keine komplexen Dinge, da sie direkt in der App und nicht in der Bibliothek implementiert werden können.`,
|
||||
otherLanguages: `Wenn du eine andere Programmiersprache fließend beherrschst, könntest du versuchen, deemix in andere Programmiersprachen zu portieren!`,
|
||||
understandingCode: `Du benötigst Hilfe beim verstehen des Codes? Frag einfach RemixDev auf Telegram oder Reddit.`,
|
||||
contributeWebUI: `Wenn du Vue.js (JavaScript) oder HTML und CSS kennst, könntest du etwas zum <a href="https://codeberg.org/RemixDev/deemix-webui" target="_blank">WebUI</a> beitragen.`,
|
||||
itsFree: `Du solltest daran denken, dass dies ist ein <strong>kostenloses Projekt</strong> ist und <strong>Du solltest die Künstler, die du magst, unterstützen<strong>, bevor du die Entwickler unterstützt.`,
|
||||
notObligated: `Fühle dich nicht verpflichtet zu spenden, wir schätzen deinen Beitrag trotzdem!`,
|
||||
lincensedunder: `Diese Arbeit ist lizensiert unter einer
|
||||
<a rel="license" href="https://www.gnu.org/licenses/gpl-3.0.en.html" target="_blank"
|
||||
>GNU General Public License 3.0</a
|
||||
>.`
|
||||
newsChannel: 'News Channel',
|
||||
questions: 'Bei Fragen oder Problemen mit der App, suche als erstes nach einer Lösung im <a href="https://www.reddit.com/r/deemix" target="_blank">Subreddit</a>. Wenn du da nichts findest, kannst du einen Beitrag mit deinen Problem auf dem Subreddit verfassen.',
|
||||
beforeReporting: 'Bevor du einen Bug meldest, stelle sicher, dass du die neueste Version der App hast und dass das, was du melden möchtest, tatsächlich ein Bug ist und nicht nur bei dir falsch ist.',
|
||||
beSure: 'Stelle sicher, dass der Bug auf anderen Computern auch vorhanden ist <strong>MELDEN NICHT</strong> einen Bug, wenn er schon gemeldet worden ist.',
|
||||
duplicateReports: 'Doppelte Fehlerberichte werden geschlossen, achte darauf.',
|
||||
dontOpenIssues: '<strong>ERSTELLE KEINE</strong> Fehlermeldungen um Fragen zu stellen, es gibt einen Subreddit dafür.',
|
||||
newUI: 'Wenn du Python fließend beherrschst, kannst du versuchen, mit hilfe der base library eine neue Benutzeroberfläche für die App zu erstellen oder Fehler in der Bibliothek mit einem Pull-Request in der <a href="https://codeberg.org/RemixDev/deemix" target="_blank">deemix Repo</a> zu beheben.',
|
||||
acceptFeatures: 'Ich akzeptiere auch Funktionen, aber keine komplexen Dinge, da sie direkt in der App und nicht in der Bibliothek implementiert werden können.',
|
||||
otherLanguages: 'Wenn du eine andere Programmiersprache fließend beherrschst, kannst du versuchen, deemix in andere Programmiersprachen zu portieren!',
|
||||
understandingCode: 'Du benötigst Hilfe beim verstehen des Codes? Frag einfach RemixDev auf Telegram oder Reddit.',
|
||||
contributeWebUI: 'Wenn du Vue.js (JavaScript) oder HTML und CSS kennst, könntest du etwas zum <a href="https://codeberg.org/RemixDev/deemix-webui" target="_blank">WebUI</a> beitragen.',
|
||||
itsFree: 'Du solltest im Kopf behalten das <strong>dies ein kostenloses Projekt ist</strong> und <strong>Du solltest die Künstler unterstützen, die du magst </strong> bevor du die Entwickler unterstützt.',
|
||||
notObligated: 'Fühle dich nicht gezwungen zu spenden, danke, dass du deemix verwendest!',
|
||||
lincensedUnder: 'Diese Arbeit ist lizensiert unter der <a rel="license" href="https://www.gnu.org/licenses/gpl-3.0.en.html" target="_blank">GNU General Public License 3.0</a>.'
|
||||
},
|
||||
charts: {
|
||||
title: 'Charts',
|
||||
changeCountry: 'Land ändern',
|
||||
download: 'Charts herunterladen'
|
||||
changeCountry: 'Land wechseln',
|
||||
download: 'Download Chart'
|
||||
},
|
||||
errors: {
|
||||
title: 'Fehler für {0}',
|
||||
title: 'Errors für {0}',
|
||||
ids: {
|
||||
invalidURL: 'URL nicht erkannt',
|
||||
unsupportedURL: 'URL noch nicht unterstützt',
|
||||
@ -86,7 +83,7 @@ const de = {
|
||||
notOnDeezer: 'Track auf Deezer nicht verfügbar!',
|
||||
notEncoded: 'Track noch nicht codiert!',
|
||||
notEncodedNoAlternative: 'Track noch nicht codiert und keine Alternative gefunden!',
|
||||
wrongBitrate: 'Spur mit gewünschter Bitrate nicht gefunden.',
|
||||
wrongBitrate: 'Track mit gewünschter Bitrate nicht gefunden.',
|
||||
wrongBitrateNoAlternative: 'Track mit gewünschter Bitrate nicht gefunden und keine Alternative gefunden!',
|
||||
no360RA: 'Track ist nicht verfügbar in Reality Audio 360.',
|
||||
notAvailable: "Track ist noch nicht verfügbar auf den Servern von Deezer!",
|
||||
@ -95,113 +92,111 @@ const de = {
|
||||
},
|
||||
favorites: {
|
||||
title: 'Favoriten',
|
||||
noPlaylists: 'Keine Playlisten gefunden',
|
||||
noAlbums: 'Keine Album-Favoriten gefunden',
|
||||
noArtists: 'Keine Künstler-Favoriten gefunden',
|
||||
noTracks: 'Keine Titel-Favoriten gefunden'
|
||||
noPlaylists: 'Keine Playlist gefunden',
|
||||
noAlbums: 'Keine favorisierten Alben gefunden',
|
||||
noArtists: 'Keine favorisierten Künstler gefunden',
|
||||
noTracks: 'Keine favorisierten Tracks gefunden'
|
||||
},
|
||||
home: {
|
||||
needTologin: 'Du musst dich in dein Deezer-Konto einloggen, bevor du mit dem Download beginnen kannst.',
|
||||
needTologin: 'Du musst dich in deinem Deezer-Account anmelden bevor du mit dem Download starten kannst.',
|
||||
openSettings: 'Einstellungen öffnen',
|
||||
sections: {
|
||||
popularPlaylists: 'Beliebte Playlisten',
|
||||
popularAlbums: 'Meist gestreamte Alben'
|
||||
popularPlaylists: 'Beliebte Playlists',
|
||||
popularAlbums: 'Meistgestreamte Alben'
|
||||
}
|
||||
},
|
||||
linkAnalyzer: {
|
||||
info: 'In dieser Sektion findest du weitere Informationen über den Link, den du versuchst herunterzuladen.',
|
||||
useful:
|
||||
"Dies ist nützlich, wenn du versuchst, einige Titel herunterzuladen, die in deinem Land nicht verfügbar sind, und du zum Beispiel wissen willst, wo sie verfügbar sind.",
|
||||
info: 'Diesen Abschnitt kannst du nutzen, um weitere Informationen über den gewünschten Link zu erhalten, den du herunterladen möchtest.',
|
||||
useful: "Dies ist z.B. nützlich, wenn du versuchst einige Titel herunterzuladen, welche in deinem Land nicht verfügbar sind, und du wissen möchtest, wo sie verfügbar sind.",
|
||||
linkNotSupported: 'Dieser Link wird noch nicht unterstützt',
|
||||
linkNotSupportedYet: 'Es scheint, als ob dieser Link noch nicht unterstützt wird, versuche einen anderen zu analysieren.',
|
||||
linkNotSupportedYet: 'Es scheint so, als ob dieser Link noch nicht unterstützt wird. Versuche einen anderen Link zu analysieren.',
|
||||
table: {
|
||||
id: 'ID',
|
||||
isrc: 'ISRC',
|
||||
upc: 'UPC',
|
||||
duration: 'Länge',
|
||||
diskNumber: 'Disk Nummer',
|
||||
trackNumber: 'Titel Nummer',
|
||||
duration: 'Dauer',
|
||||
diskNumber: 'CD Nummer',
|
||||
trackNumber: 'Track Nummer',
|
||||
releaseDate: 'Veröffentlichungsdatum',
|
||||
bpm: 'BPM',
|
||||
label: 'Musiklabel',
|
||||
recordType: 'Record Typ',
|
||||
label: 'Label',
|
||||
recordType: 'Art der Aufnahme',
|
||||
genres: 'Genres',
|
||||
tracklist: 'Tracklist'
|
||||
tracklist: 'Trackliste'
|
||||
}
|
||||
},
|
||||
search: {
|
||||
startSearching: 'Suche starten!',
|
||||
description:
|
||||
'Du kannst einen Track suchen, ein ganzes Album, einen Künstler, eine Playlist.... alles! Du kannst auch einen Deezer-Link einfügen',
|
||||
description: 'Du kannst einen Titel, ein ganzes Album, einen Künstler, eine Playlist suchen ... alles! Du kannst auch einen Deezer-Link einfügen',
|
||||
fans: '{0} Fans',
|
||||
noResults: 'Keine Ergebnisse',
|
||||
noResultsTrack: 'Keine Titel gefunden',
|
||||
noResultsTrack: 'Keine Tracks gefunden',
|
||||
noResultsAlbum: 'Keine Alben gefunden',
|
||||
noResultsArtist: 'Keine Künstler gefunden',
|
||||
noResultsPlaylist: 'Keine Playlisten gefunden'
|
||||
noResultsArtist: 'Keinen Künstler gefunden',
|
||||
noResultsPlaylist: 'Keine Playlist gefunden'
|
||||
},
|
||||
searchbar: 'Suche alles, was du willst (oder füge einfach einen Link ein)',
|
||||
searchbar: 'Suche nach allem, was dir gefällt (oder füge einfach einen Link ein)',
|
||||
downloads: 'Downloads',
|
||||
toasts: {
|
||||
addedToQueue: '{0} zur Warteschlange hinzugefügt',
|
||||
alreadyInQueue: '{0} ist bereits in der Warteschlange!',
|
||||
finishDownload: '{0} bereits heruntgeladen',
|
||||
finishDownload: '{0} vollständig heruntergeladen.',
|
||||
allDownloaded: 'Alle Downloads abgeschlossen!',
|
||||
refreshFavs: 'Aktualisierung abgeschlossen!',
|
||||
refreshFavs: 'Abgeschlossene Downloads neu laden!',
|
||||
loggingIn: 'Einloggen',
|
||||
loggedIn: 'Eingeloggt',
|
||||
alreadyLogged: 'Bereits eingeloggt',
|
||||
loginFailed: "Einloggen nicht möglich",
|
||||
loginFailed: "Login fehlgeschlagen",
|
||||
loggedOut: 'Ausgeloggt',
|
||||
cancellingCurrentItem: 'Aktuelle Auswahl abbrechen.',
|
||||
currentItemCancelled: 'Aktuelle Auswahl abgebrochen.',
|
||||
startAddingArtist: '{0} Alben zur Warteschlange hinzufügen',
|
||||
finishAddingArtist: '{0} Alben zur Warteschlange hinzugefügt',
|
||||
startConvertingSpotifyPlaylist: 'Umwandlung von Spotify-Titel in Deezer-Titel',
|
||||
finishConvertingSpotifyPlaylist: 'Spotify Playlist konvertiert'
|
||||
currentItemCancelled: 'Aktuelle Auswahl wurde abgebrochen',
|
||||
startAddingArtist: '{0} Alben werden hinzugefügt',
|
||||
finishAddingArtist: '{0} Alben wurden hinzugefügt',
|
||||
startConvertingSpotifyPlaylist: 'Konvertierern von Spotify-Tracks zu Deezer-Tracks',
|
||||
finishConvertingSpotifyPlaylist: 'Spotify Playlist convertiert'
|
||||
},
|
||||
settings: {
|
||||
title: 'Einstellungen',
|
||||
languages: 'Sprachen',
|
||||
login: {
|
||||
title: 'Login',
|
||||
loggedIn: 'Sie sind eingeloggt als {username}',
|
||||
loggedIn: 'Du bist eingeloggt als {username}',
|
||||
arl: {
|
||||
question: 'Wie bekomme ich meine eigene ARL?',
|
||||
update: 'ARL aktualisieren'
|
||||
update: 'Update ARL'
|
||||
},
|
||||
logout: 'Ausloggen'
|
||||
logout: 'Logout'
|
||||
},
|
||||
appearance: {
|
||||
title: 'Aussehen',
|
||||
slimDownloadTab: 'Schlanker Download-Tab'
|
||||
title: 'Design',
|
||||
slimDownloadTab: 'schmaler Download-Tab'
|
||||
},
|
||||
downloadPath: {
|
||||
title: 'Download Pfad'
|
||||
},
|
||||
templates: {
|
||||
title: 'Vorlagen',
|
||||
tracknameTemplate: 'Titelname Vorlage',
|
||||
albumTracknameTemplate: 'Album Titel Vorlage',
|
||||
playlistTracknameTemplate: 'Playlist Titel Vorlage'
|
||||
tracknameTemplate: 'Vorlage für den Tracknamen',
|
||||
albumTracknameTemplate: 'Vorlage für Tracks in einem Album',
|
||||
playlistTracknameTemplate: 'Vorlage für Tracks in einer Playlist'
|
||||
},
|
||||
folders: {
|
||||
title: 'Ordner',
|
||||
title: 'Folders',
|
||||
createPlaylistFolder: 'Ordner für Playlist erstellen',
|
||||
playlistNameTemplate: 'Playlist Ordner Vorlage',
|
||||
playlistNameTemplate: 'Vorlage für Playlist-Ordner',
|
||||
createArtistFolder: 'Ordner für Künstler erstellen',
|
||||
artistNameTemplate: 'Künstler Ordner Vorlage',
|
||||
artistNameTemplate: 'Vorlage für Künstler-Ordner',
|
||||
createAlbumFolder: 'Ordner für Album erstellen',
|
||||
albumNameTemplate: 'Album Ordner Vorlage',
|
||||
albumNameTemplate: 'Vorlage für Album-Ordner',
|
||||
createCDFolder: 'Ordner für CDs erstellen',
|
||||
createStructurePlaylist: 'Erstellen von Künstler-, Alben- und CD-Ordnern auch für Playlisten',
|
||||
createStructurePlaylist: 'Erstellen von Künstler-, Alben- und CD-Ordnern auch für Playlists',
|
||||
createSingleFolder: 'Ordner für einzelne Titel erstellen'
|
||||
},
|
||||
trackTitles: {
|
||||
title: 'Track Titel',
|
||||
padTracks: 'einheitliche Länge der Titelnummern (voranstehende Nullen werden ergänzt)',
|
||||
paddingSize: 'Paddinggröße überschreiben',
|
||||
illegalCharacterReplacer: 'unzulässige Zeichen ersetzen'
|
||||
title: 'Songtitel',
|
||||
padTracks: 'Einheitliche Länge der Titelnummern (voranstehende Nullen werden ergänzt)',
|
||||
paddingSize: 'Innenabstand überschreiben',
|
||||
illegalCharacterReplacer: 'Unzulässige Zeichen ersetzen'
|
||||
},
|
||||
downloads: {
|
||||
title: 'Downloads',
|
||||
@ -213,131 +208,131 @@ const de = {
|
||||
1: 'MP3 128kbps'
|
||||
},
|
||||
overwriteFile: {
|
||||
title: 'Soll ich die Dateien überschreiben?',
|
||||
y: 'Ja, Datei überschreiben',
|
||||
n: "Nein, Datei nicht überschreiben",
|
||||
t: 'Nur Tags überschreiben'
|
||||
title: 'Soll ich die Dateien überchreiben?',
|
||||
y: 'Ja überschreibe die Dateien',
|
||||
n: 'Nein überschreibe die Dateien nicht',
|
||||
t: 'Überschreibe nur die Tags'
|
||||
},
|
||||
fallbackBitrate: 'Falls gewünschte Bitrate nicht verfügbar, auf niedrigere Bitrate zurückgreifen',
|
||||
fallbackSearch: 'Zur Suche zurückkehren, wenn der Song nicht verfügbar ist',
|
||||
logErrors: 'Protokolldatei für Fehler im Download-Ordner erstellen',
|
||||
logSearched: 'Protokolldatei für gesuchte Tracks erstellen',
|
||||
logSearched: 'Protokolldatei für gesuchte Titel erstellen',
|
||||
createM3U8File: 'Erstelle Playlist-Datei (M3U8)',
|
||||
syncedLyrics: 'Erstelle synchrone Lyric-Datei (.lyr)',
|
||||
playlistFilenameTemplate: 'Dateinamenvorlage für Playlist',
|
||||
syncedLyrics: 'Erstelle synchrone Lyrics-Datei (.lyr)',
|
||||
playlistFilenameTemplate: 'Vorlage für den Namen der Playlist',
|
||||
saveDownloadQueue: 'Download-Warteschlange beim Schließen der App speichern'
|
||||
},
|
||||
covers: {
|
||||
title: 'Album-Cover',
|
||||
title: 'Album Cover',
|
||||
saveArtwork: 'Cover speichern',
|
||||
coverImageTemplate: 'Vorlage für Cover-Bezeichnung',
|
||||
saveArtworkArtist: 'Künstlerbild speichern',
|
||||
artistImageTemplate: 'Vorlage für Künstlerbild',
|
||||
localArtworkSize: 'Lokale Größe des Künstlerbildes',
|
||||
embeddedArtworkSize: 'Eingebettete Größe des Künstlerbildes',
|
||||
coverImageTemplate: 'Vorlage für den Covernamen',
|
||||
saveArtworkArtist: 'Speichere das Künstlerbild',
|
||||
artistImageTemplate: 'Vorlage des Künstlerbildes',
|
||||
localArtworkSize: 'Lokale Grafikgröße',
|
||||
embeddedArtworkSize: 'Eingebettete Grafikgröße',
|
||||
localArtworkFormat: {
|
||||
title: 'Welches Format soll das lokale Künstlerbild haben?',
|
||||
jpg: 'Ein jpeg Bild',
|
||||
title: 'Welches Datei-Format soll das Cover haben?',
|
||||
jpg: 'Ein jpg Bild',
|
||||
png: 'Ein png Bild',
|
||||
both: 'Beides, eine jpeg und eine png'
|
||||
both: 'Beides (jpg + png)'
|
||||
},
|
||||
jpegImageQuality: 'JPEG Bild Qualität'
|
||||
jpegImageQuality: 'JPEG Qualität'
|
||||
},
|
||||
tags: {
|
||||
head: 'Welche Tags sollen gespeichert werden',
|
||||
head: 'Welche Tags sollen gespeichert werden?',
|
||||
title: 'Titel',
|
||||
artist: 'Künstler',
|
||||
album: 'Album',
|
||||
cover: 'Cover',
|
||||
trackNumber: 'Titel Nummer',
|
||||
trackTotal: 'Titel Insgesamt',
|
||||
discNumber: 'Disc Nummer',
|
||||
discTotal: 'Disc Insgesamt',
|
||||
trackNumber: 'Titelnummer',
|
||||
trackTotal: 'Titelanzahl',
|
||||
discNumber: 'CD Nummer',
|
||||
discTotal: 'CDs insgesamt',
|
||||
albumArtist: 'Album Künstler',
|
||||
genre: 'Genre',
|
||||
year: 'Jahr',
|
||||
date: 'Datum',
|
||||
explicit: 'Explizite Texte',
|
||||
explicit: 'Explizite Lyrics',
|
||||
isrc: 'ISRC',
|
||||
length: 'Länge',
|
||||
length: 'Titel Länge',
|
||||
barcode: 'Album Barcode (UPC)',
|
||||
bpm: 'BPM',
|
||||
replayGain: 'Replay Gain',
|
||||
replayGain: 'Wiedergabe Lautstärke',
|
||||
label: 'Album Plattenlabel',
|
||||
lyrics: 'Unsynchronisierte Liedtexte',
|
||||
copyright: 'Urheberrecht',
|
||||
lyrics: 'Nicht synchronisierte Texte',
|
||||
copyright: 'Copyright',
|
||||
composer: 'Komponist',
|
||||
involvedPeople: 'Beteiligte Personen'
|
||||
involvedPeople: 'Mitwirkende Personen'
|
||||
},
|
||||
other: {
|
||||
title: 'Andere',
|
||||
savePlaylistAsCompilation: 'Wiedergabelisten als Zussammenstellung speichern',
|
||||
useNullSeparator: 'Null-Trennzeichen verwenden',
|
||||
saveID3v1: 'ID3v1 ebenfalls speichern',
|
||||
title: 'Sonsitge',
|
||||
savePlaylistAsCompilation: 'Speichere Playlist als Zusammenstellung',
|
||||
useNullSeparator: 'Verwende Nulltrennzeichen',
|
||||
saveID3v1: 'Speichere ID3v1 ebenfalls',
|
||||
multiArtistSeparator: {
|
||||
title: 'Wie möchten Sie Ihre Künstler trennen?',
|
||||
nothing: 'Nur den Hauptkünstler speichern',
|
||||
default: 'Verwendung der Standardspezifikation',
|
||||
andFeat: 'Verwendung von & und feat.',
|
||||
title: 'Wie möchtest du die Künstler trennen?',
|
||||
nothing: 'Speichere nur den Hauptkünstler',
|
||||
default: 'Verwende Standard Spezifikationen',
|
||||
andFeat: 'Verwende & und feat.',
|
||||
using: 'Verwende "{0}"'
|
||||
},
|
||||
singleAlbumArtist: 'Nur den Interpreten des Hauptalbums speichern',
|
||||
albumVariousArtists: '"Verschiedene Künstler" im Album Künstler Tag behalten',
|
||||
removeAlbumVersion: '"Album-Version" aus dem Titelnamen entfernen',
|
||||
removeduplicateArtists: 'Kombinationen von Künstlern entfernen',
|
||||
singleAlbumArtist: 'Nur den Hauptkünstler speichern',
|
||||
albumVariousArtists: 'Verschiedene Künstler" im Album Künstler Tag behalten',
|
||||
removeAlbumVersion: 'Entferne die "Album Version" vom Songtitel',
|
||||
removeDuplicateArtists: 'Kombinationen von Künstlern entfernen',
|
||||
dateFormat: {
|
||||
title: 'Datumsformat für FLAC-Dateien',
|
||||
year: 'YYYY',
|
||||
title: 'Datumsformatierung für FLAC Dateien',
|
||||
year: 'JJJJ',
|
||||
month: 'MM',
|
||||
day: 'DD'
|
||||
day: 'TT'
|
||||
},
|
||||
featuredToTitle: {
|
||||
title: 'Was soll ich mit den Featured Künstlern machen?',
|
||||
title: 'Was soll ich mit featured Artists machen?',
|
||||
0: 'Nichts',
|
||||
1: 'Aus dem Titel entfernen',
|
||||
3: 'Aus dem Titel und dem Albumtitel entfernen',
|
||||
2: 'In den Titel verschieben'
|
||||
1: 'Vom Titel entfernen',
|
||||
3: 'Vom Titel und Albumtitel entfernen',
|
||||
2: 'Zu dem Titel hinzufügen'
|
||||
},
|
||||
titleCasing: 'Titel Textformattierung',
|
||||
artistCasing: 'Künstler Textformattierung',
|
||||
titleCasing: 'Titel-Schreibweise',
|
||||
artistCasing: 'Künstler-Schreibweise',
|
||||
casing: {
|
||||
nothing: 'Unverändert lassen',
|
||||
lower: 'kleinbuchstaben',
|
||||
upper: 'GROSSBUCHSTABEN',
|
||||
start: 'Anfang Jedes Wortes',
|
||||
sentence: 'Wie einen satz'
|
||||
nothing: 'Unbearbeitet lassen',
|
||||
lower: 'klein',
|
||||
upper: 'GROSS',
|
||||
start: 'Wortanfang Gross',
|
||||
sentence: 'Satzanfang gross'
|
||||
},
|
||||
previewVolume: 'Vorschau Lautstärke',
|
||||
previewVolume: 'Vorschau der Lautstärke',
|
||||
executeCommand: {
|
||||
title: 'Befehl zur Ausführung nach dem Download',
|
||||
description: 'Leer lassen für keine Aktion'
|
||||
title: 'Befehl, der nach dem Download ausgeführt werden soll',
|
||||
description: 'Leer lassen ohne Aktion'
|
||||
}
|
||||
},
|
||||
spotify: {
|
||||
title: 'Spotify-Funktionen',
|
||||
clientID: 'Spotify clientID',
|
||||
title: 'Spotify Features',
|
||||
clientID: 'Spotify Client ID',
|
||||
clientSecret: 'Spotify Client Secret',
|
||||
username: 'Spotify Benutzername'
|
||||
},
|
||||
reset: 'Auf Standard zurücksetzen',
|
||||
reset: 'Auf Standardwerte zurücksetzen',
|
||||
save: 'Speichern',
|
||||
toasts: {
|
||||
init: 'Einstellungen geladen!',
|
||||
update: 'Einstellungen aktualisiert!',
|
||||
ARLcopied: 'ARL in die Zwischenablage kopiert'
|
||||
ARLcopied: 'ARL wurde in die Zwischenablage kopiert'
|
||||
}
|
||||
},
|
||||
sidebar: {
|
||||
home: 'start',
|
||||
search: 'suche',
|
||||
charts: 'charts',
|
||||
favorites: 'favoriten',
|
||||
linkAnalyzer: 'link-analysator',
|
||||
settings: 'einstellungen',
|
||||
about: 'über'
|
||||
home: 'Home',
|
||||
search: 'Suche',
|
||||
charts: 'Charts',
|
||||
favorites: 'Favoriten',
|
||||
linkAnalyzer: 'Link Analyse',
|
||||
settings: 'Einstellungen',
|
||||
about: 'Info'
|
||||
},
|
||||
tracklist: {
|
||||
downloadSelection: 'Auswahl herunterladen'
|
||||
downloadSelection: 'Downloads'
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -20,11 +20,13 @@ const fr = {
|
||||
single: 'single | singles',
|
||||
title: 'titre | titres',
|
||||
track: 'piste | pistes',
|
||||
trackN: '0 pistes | {n} piste | {n} pistes',
|
||||
releaseN: '0 parutions | {n} parution | {n} parutions',
|
||||
trackN: '0 piste | {n} piste | {n} pistes',
|
||||
releaseN: '0 parution | {n} parution | {n} parutions',
|
||||
playlist: 'playlist | playlists',
|
||||
compile: 'compilation | compilations',
|
||||
ep: 'ep | eps',
|
||||
more: "Plus d'albums",
|
||||
featured: 'En vedette dans',
|
||||
spotifyPlaylist: 'playlist spotify | playlists spotify',
|
||||
releaseDate: 'date de parution',
|
||||
error: 'erreur'
|
||||
@ -57,7 +59,7 @@ const fr = {
|
||||
beSure: "Assurez-vous que le bug est reproductible sur d'autres machines et aussi de <strong>NE PAS</strong> signaler un bug si celui-ci a déjà été mentionné.",
|
||||
duplicateReports: 'Les doublons de rapports de bug seront supprimés, alors gardez un œil sur cela.',
|
||||
dontOpenIssues: "<strong>NE PAS</strong> ouvrir un nouveau problème pour poser des questions, il existe un subreddit pour cela.",
|
||||
newUI: `Si vous maîtrisez python, vous pouvez essayer de créer une nouvelle interface utilisateur pour l'application à l'aide de la bibliothèque de base, ou corriger des bugs dans la bibliothèque avec une requête sur le <a href="https://codeberg.org/RemixDev/deemix" target="_blank">répertoire de dépôt</a>.`,
|
||||
newUI: `Si vous maîtrisez python, vous pouvez essayer de créer une nouvelle interface utilisateur pour l'application à l'aide de la bibliothèque de base, ou corriger des bugs dans la bibliothèque à l'aide d'une demande de fusion de branches (pull request) sur le <a href="https://codeberg.org/RemixDev/deemix" target="_blank">répertoire de dépôt</a>.`,
|
||||
acceptFeatures: "J'accepte également les fonctionnalités, mais pas de choses complexes, car elles peuvent être implémentées directement dans l'application et non dans la bibliothèque.",
|
||||
otherLanguages: "Si vous maîtrisez un autre langage de programmation, vous pouvez essayer de transposer deemix dans d'autres langages de programmation !",
|
||||
understandingCode: "Vous avez besoin d'aide pour comprendre le code ? Il suffit de contacter RemixDev sur Telegram ou Reddit.",
|
||||
|
@ -112,6 +112,17 @@ button {
|
||||
}
|
||||
}
|
||||
|
||||
&.only_icon {
|
||||
min-width: 24px;
|
||||
width: 48px;
|
||||
margin: 0px 0px 0px 8px;
|
||||
padding: 0px 4px;
|
||||
|
||||
i {
|
||||
padding: 6px 0px;
|
||||
}
|
||||
}
|
||||
|
||||
&:active {
|
||||
background-color: var(--accent-color);
|
||||
transform: scale(0.98);
|
||||
|
@ -21,21 +21,10 @@
|
||||
margin: 8px 0px;
|
||||
}
|
||||
|
||||
#login_input_arl {
|
||||
.inline-flex input {
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
#settings_btn_copyArl {
|
||||
min-width: 24px;
|
||||
width: 48px;
|
||||
margin: 0px 0px 0px 8px;
|
||||
padding: 0px 4px;
|
||||
|
||||
i {
|
||||
padding: 6px 0px;
|
||||
}
|
||||
}
|
||||
|
||||
#spotify_icon {
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
|
Loading…
Reference in New Issue
Block a user