mirror of
https://github.com/Psychotoxical/psysonic.git
synced 2026-07-22 15:25:46 +00:00
refactor(i18n): split locale files into per-namespace modules (Phase K) (#688)
Each src/locales/<lang>.ts (~1800 LOC) becomes a folder src/locales/<lang>/ with one module per i18n namespace (44 each) plus an index.ts barrel that reassembles <lang>Translation in the original key order. Mechanical, script-driven split with a JSON round-trip check: every locale object is byte-identical to its pre-split form. i18n.ts is unchanged — './locales/<lang>' now resolves to the folder index. The per-namespace settings.ts files land ~440-460 LOC; a single i18n namespace is the natural, non-arbitrary split unit for a flat string table, so they are intentionally left whole.
This commit is contained in:
committed by
GitHub
parent
ec112922a2
commit
2409a1fec8
@@ -0,0 +1,45 @@
|
||||
export const queue = {
|
||||
title: 'Warteschlange',
|
||||
savePlaylist: 'Playlist speichern',
|
||||
updatePlaylist: 'Playlist aktualisieren',
|
||||
filterPlaylists: 'Playlists filtern…',
|
||||
playlistName: 'Name der Playlist',
|
||||
cancel: 'Abbrechen',
|
||||
save: 'Speichern',
|
||||
loadPlaylist: 'Playlist laden',
|
||||
loading: 'Lade…',
|
||||
noPlaylists: 'Keine Playlists gefunden.',
|
||||
load: 'Warteschlange ersetzen & abspielen',
|
||||
appendToQueue: 'An Warteschlange anhängen',
|
||||
delete: 'Löschen',
|
||||
deleteConfirm: 'Playlist "{{name}}" löschen?',
|
||||
clear: 'Leeren',
|
||||
shuffle: 'Warteschlange mischen',
|
||||
gapless: 'Nahtlos',
|
||||
crossfade: 'Crossfade',
|
||||
infiniteQueue: 'Endlose Warteschlange',
|
||||
autoAdded: '— Automatisch hinzugefügt —',
|
||||
radioAdded: '— Radio —',
|
||||
hide: 'Verbergen',
|
||||
hideNowPlaying: 'Wiedergabeinformationen ausblenden',
|
||||
showNowPlaying: 'Wiedergabeinformationen anzeigen',
|
||||
close: 'Schließen',
|
||||
nextTracks: 'Nächste Titel',
|
||||
shareQueue: 'Warteschlangen-Link kopieren',
|
||||
shareQueueEmpty: 'Die Warteschlange ist leer — nichts zu teilen.',
|
||||
emptyQueue: 'Die Warteschlange ist leer.',
|
||||
trackSingular: 'Titel',
|
||||
trackPlural: 'Titel',
|
||||
showRemaining: 'Restzeit anzeigen',
|
||||
showTotal: 'Gesamtzeit anzeigen',
|
||||
showEta: 'Endzeit anzeigen',
|
||||
replayGain: 'ReplayGain',
|
||||
rgTrack: 'T {{db}} dB',
|
||||
rgAlbum: 'A {{db}} dB',
|
||||
rgPeak: 'Peak {{pk}}',
|
||||
sourceOffline: 'Wiedergabe aus der Offline-Bibliothek',
|
||||
sourceHot: 'Wiedergabe aus dem Cache',
|
||||
sourceStream: 'Wiedergabe aus dem Netzwerkstream',
|
||||
clearCachedLoudnessWaveform: 'Clear cached loudness and waveform, then re-analyze this track',
|
||||
recalculatingLoudnessWaveform: 'Recalculating loudness and waveform for this track…',
|
||||
};
|
||||
Reference in New Issue
Block a user