mirror of
https://github.com/kilyabin/psysonic.git
synced 2026-07-22 06:25:41 +00:00
feat: v1.20.0 — FLAC Seek Fix, Genres, Genre Filter, Chinese, W10 Theme
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
+100
-90
@@ -10,7 +10,6 @@ const enTranslation = {
|
||||
allAlbums: 'All Albums',
|
||||
randomAlbums: 'Random Albums',
|
||||
artists: 'Artists',
|
||||
playlists: 'Playlists',
|
||||
randomMix: 'Random Mix',
|
||||
favorites: 'Favorites',
|
||||
nowPlaying: 'Now Playing',
|
||||
@@ -25,6 +24,7 @@ const enTranslation = {
|
||||
updateLink: 'Go to release →',
|
||||
downloadingTracks: 'Caching {{n}} tracks…',
|
||||
offlineLibrary: 'Offline Library',
|
||||
genres: 'Genres',
|
||||
},
|
||||
home: {
|
||||
starred: 'Personal Favorites',
|
||||
@@ -161,6 +161,18 @@ const enTranslation = {
|
||||
title: 'Random Albums',
|
||||
refresh: 'Refresh',
|
||||
},
|
||||
genres: {
|
||||
title: 'Genres',
|
||||
genreCount: 'Genres',
|
||||
albumCount_one: '{{count}} album',
|
||||
albumCount_other: '{{count}} albums',
|
||||
loading: 'Loading genres…',
|
||||
empty: 'No genres found.',
|
||||
albumsLoading: 'Loading albums…',
|
||||
albumsEmpty: 'No albums found for this genre.',
|
||||
loadMore: 'Load more',
|
||||
back: 'Back',
|
||||
},
|
||||
randomMix: {
|
||||
title: 'Random Mix',
|
||||
remix: 'Remix',
|
||||
@@ -191,22 +203,6 @@ const enTranslation = {
|
||||
filterPanelTitle: 'Filters',
|
||||
genreClickHint: 'Click a genre tag to add it\nas a filter keyword.\nMatches genre, title, album & artist.',
|
||||
},
|
||||
playlists: {
|
||||
title: 'Playlists',
|
||||
loading: 'Loading playlists…',
|
||||
empty: 'No playlists found.\nUse the queue to create playlists.',
|
||||
play: 'Play',
|
||||
deleteTooltip: 'Delete',
|
||||
confirmDelete: 'Really delete playlist "{{name}}"?',
|
||||
minutes: 'min.',
|
||||
track_one: '{{count}} Track',
|
||||
track_other: '{{count}} Tracks',
|
||||
filterPlaceholder: 'Filter playlists…',
|
||||
colName: 'Name',
|
||||
colTracks: 'Tracks',
|
||||
colDuration: 'Duration',
|
||||
noResults: 'No playlists match your filter.',
|
||||
},
|
||||
albums: {
|
||||
title: 'All Albums',
|
||||
sortByName: 'A–Z (Album)',
|
||||
@@ -282,6 +278,10 @@ const enTranslation = {
|
||||
chooseDownloadFolder: 'Choose download folder',
|
||||
noFolderSelected: 'No folder selected',
|
||||
rememberDownloadFolder: 'Remember this folder',
|
||||
filterGenre: 'Genre Filter',
|
||||
filterSearchGenres: 'Search genres…',
|
||||
filterNoGenres: 'No genres match',
|
||||
filterClear: 'Clear',
|
||||
},
|
||||
settings: {
|
||||
title: 'Settings',
|
||||
@@ -358,6 +358,8 @@ const enTranslation = {
|
||||
aboutVersion: 'Version',
|
||||
aboutBuiltWith: 'Built with Tauri · React · TypeScript · Rust/rodio',
|
||||
aboutAiCredit: 'Developed with the support of Claude Code by Anthropic',
|
||||
aboutContributorsLabel: 'Contributors',
|
||||
aboutContributors: 'jiezhuo — Chinese translation',
|
||||
changelog: 'Changelog',
|
||||
randomMixTitle: 'Random Mix',
|
||||
randomMixBlacklistTitle: 'Custom Filter Keywords',
|
||||
@@ -434,7 +436,7 @@ const enTranslation = {
|
||||
q12: 'How do I change the theme?',
|
||||
a12: 'Settings → Theme. Choose from 47 themes across 7 groups: Psysonic Themes, Psysonic Mediaplayer, Operating Systems, Games, Movies, Series, and Open Source Classics (Catppuccin, Nord, Gruvbox).',
|
||||
q13: 'How do I change the language?',
|
||||
a13: 'Settings → Language. English, German, French, and Dutch are supported.',
|
||||
a13: 'Settings → Language. English, German, French, Dutch, and Chinese are supported.',
|
||||
q15: 'How do I set a download folder?',
|
||||
a15: 'Settings → App Behavior → Download Folder. Pick any folder — downloaded albums are saved there as ZIP files. Without a custom folder, your browser\'s default downloads location is used.',
|
||||
s5: 'Scrobbling',
|
||||
@@ -578,7 +580,6 @@ const deTranslation = {
|
||||
allAlbums: 'Alle Alben',
|
||||
randomAlbums: 'Zufallsalben',
|
||||
artists: 'Künstler',
|
||||
playlists: 'Playlists',
|
||||
randomMix: 'Zufallsmix',
|
||||
favorites: 'Favoriten',
|
||||
nowPlaying: 'Now Playing',
|
||||
@@ -593,6 +594,7 @@ const deTranslation = {
|
||||
updateLink: 'Zum Release →',
|
||||
downloadingTracks: '{{n}} Tracks werden gecacht…',
|
||||
offlineLibrary: 'Offline-Bibliothek',
|
||||
genres: 'Genres',
|
||||
},
|
||||
home: {
|
||||
starred: 'Persönliche Favoriten',
|
||||
@@ -729,6 +731,18 @@ const deTranslation = {
|
||||
title: 'Zufallsalben',
|
||||
refresh: 'Neu laden',
|
||||
},
|
||||
genres: {
|
||||
title: 'Genres',
|
||||
genreCount: 'Genres',
|
||||
albumCount_one: '{{count}} Album',
|
||||
albumCount_other: '{{count}} Alben',
|
||||
loading: 'Genres werden geladen…',
|
||||
empty: 'Keine Genres gefunden.',
|
||||
albumsLoading: 'Alben werden geladen…',
|
||||
albumsEmpty: 'Keine Alben in diesem Genre gefunden.',
|
||||
loadMore: 'Mehr laden',
|
||||
back: 'Zurück',
|
||||
},
|
||||
randomMix: {
|
||||
title: 'Zufallsmix',
|
||||
remix: 'Neu mixen',
|
||||
@@ -759,22 +773,6 @@ const deTranslation = {
|
||||
filterPanelTitle: 'Filter',
|
||||
genreClickHint: 'Genre-Tag anklicken,\num es als Filter-Keyword hinzuzufügen.\nPrüft Genre, Titel, Album & Künstler.',
|
||||
},
|
||||
playlists: {
|
||||
title: 'Playlists',
|
||||
loading: 'Lade Playlists…',
|
||||
empty: 'Keine Playlists gefunden.\nNutze die Warteschlange, um Playlists zu erstellen.',
|
||||
play: 'Abspielen',
|
||||
deleteTooltip: 'Löschen',
|
||||
confirmDelete: 'Playlist "{{name}}" wirklich löschen?',
|
||||
minutes: 'Min.',
|
||||
track_one: '{{count}} Track',
|
||||
track_other: '{{count}} Tracks',
|
||||
filterPlaceholder: 'Playlists filtern…',
|
||||
colName: 'Name',
|
||||
colTracks: 'Tracks',
|
||||
colDuration: 'Dauer',
|
||||
noResults: 'Keine Playlists entsprechen dem Filter.',
|
||||
},
|
||||
albums: {
|
||||
title: 'Alle Alben',
|
||||
sortByName: 'A–Z (Album)',
|
||||
@@ -850,6 +848,10 @@ const deTranslation = {
|
||||
chooseDownloadFolder: 'Download-Ordner wählen',
|
||||
noFolderSelected: 'Kein Ordner ausgewählt',
|
||||
rememberDownloadFolder: 'Ordner merken',
|
||||
filterGenre: 'Genre-Filter',
|
||||
filterSearchGenres: 'Genres suchen…',
|
||||
filterNoGenres: 'Keine Genres gefunden',
|
||||
filterClear: 'Zurücksetzen',
|
||||
},
|
||||
settings: {
|
||||
title: 'Einstellungen',
|
||||
@@ -926,6 +928,8 @@ const deTranslation = {
|
||||
aboutVersion: 'Version',
|
||||
aboutBuiltWith: 'Gebaut mit Tauri · React · TypeScript · Rust/rodio',
|
||||
aboutAiCredit: 'Mit freundlicher Unterstützung von Claude Code by Anthropic',
|
||||
aboutContributorsLabel: 'Mitwirkende',
|
||||
aboutContributors: 'jiezhuo — Chinesische Übersetzung',
|
||||
changelog: 'Changelog',
|
||||
randomMixTitle: 'Zufallsmix',
|
||||
randomMixBlacklistTitle: 'Eigene Filter-Keywords',
|
||||
@@ -1002,7 +1006,7 @@ const deTranslation = {
|
||||
q12: 'Wie ändere ich das Theme?',
|
||||
a12: 'Einstellungen → Design. 47 Designs in 7 Gruppen: Psysonic Themes, Psysonic Mediaplayer, Betriebssysteme, Spiele, Filme, Serien und Open-Source-Classics (Catppuccin, Nord, Gruvbox).',
|
||||
q13: 'Wie ändere ich die Sprache?',
|
||||
a13: 'Einstellungen → Sprache. Englisch, Deutsch, Französisch und Niederländisch werden unterstützt.',
|
||||
a13: 'Einstellungen → Sprache. Englisch, Deutsch, Französisch, Niederländisch und Chinesisch werden unterstützt.',
|
||||
q15: 'Wie lege ich einen Download-Ordner fest?',
|
||||
a15: 'Einstellungen → App-Verhalten → Download-Ordner. Beliebigen Ordner wählen — heruntergeladene Alben werden dort als ZIP gespeichert. Ohne eigenen Ordner landet alles im Standard-Downloads-Ordner.',
|
||||
s5: 'Scrobbling',
|
||||
@@ -1146,7 +1150,6 @@ const frTranslation = {
|
||||
allAlbums: 'Tous les albums',
|
||||
randomAlbums: 'Albums aléatoires',
|
||||
artists: 'Artistes',
|
||||
playlists: 'Listes de lecture',
|
||||
randomMix: 'Mix aléatoire',
|
||||
favorites: 'Favoris',
|
||||
nowPlaying: 'En cours',
|
||||
@@ -1161,6 +1164,7 @@ const frTranslation = {
|
||||
updateLink: 'Voir la version →',
|
||||
downloadingTracks: '{{n}} pistes en cache…',
|
||||
offlineLibrary: 'Bibliothèque hors ligne',
|
||||
genres: 'Genres',
|
||||
},
|
||||
home: {
|
||||
starred: 'Favoris personnels',
|
||||
@@ -1297,6 +1301,18 @@ const frTranslation = {
|
||||
title: 'Albums aléatoires',
|
||||
refresh: 'Actualiser',
|
||||
},
|
||||
genres: {
|
||||
title: 'Genres',
|
||||
genreCount: 'genres',
|
||||
albumCount_one: '{{count}} album',
|
||||
albumCount_other: '{{count}} albums',
|
||||
loading: 'Chargement des genres…',
|
||||
empty: 'Aucun genre trouvé.',
|
||||
albumsLoading: 'Chargement des albums…',
|
||||
albumsEmpty: 'Aucun album trouvé pour ce genre.',
|
||||
loadMore: 'Charger plus',
|
||||
back: 'Retour',
|
||||
},
|
||||
randomMix: {
|
||||
title: 'Mix aléatoire',
|
||||
remix: 'Remixer',
|
||||
@@ -1327,22 +1343,6 @@ const frTranslation = {
|
||||
filterPanelTitle: 'Filtres',
|
||||
genreClickHint: 'Cliquez sur un tag de genre pour l\'ajouter\ncomme mot-clé de filtre.\nCorrespond au genre, titre, album et artiste.',
|
||||
},
|
||||
playlists: {
|
||||
title: 'Listes de lecture',
|
||||
loading: 'Chargement des listes…',
|
||||
empty: 'Aucune liste de lecture.\nUtilisez la file d\'attente pour en créer.',
|
||||
play: 'Lire',
|
||||
deleteTooltip: 'Supprimer',
|
||||
confirmDelete: 'Supprimer la liste « {{name}} » ?',
|
||||
minutes: 'min.',
|
||||
track_one: '{{count}} piste',
|
||||
track_other: '{{count}} pistes',
|
||||
filterPlaceholder: 'Filtrer les listes…',
|
||||
colName: 'Nom',
|
||||
colTracks: 'Pistes',
|
||||
colDuration: 'Durée',
|
||||
noResults: 'Aucune liste ne correspond au filtre.',
|
||||
},
|
||||
albums: {
|
||||
title: 'Tous les albums',
|
||||
sortByName: 'A–Z (Album)',
|
||||
@@ -1418,6 +1418,10 @@ const frTranslation = {
|
||||
chooseDownloadFolder: 'Choisir le dossier de téléchargement',
|
||||
noFolderSelected: 'Aucun dossier sélectionné',
|
||||
rememberDownloadFolder: 'Mémoriser ce dossier',
|
||||
filterGenre: 'Filtre genre',
|
||||
filterSearchGenres: 'Rechercher des genres…',
|
||||
filterNoGenres: 'Aucun genre trouvé',
|
||||
filterClear: 'Effacer',
|
||||
},
|
||||
settings: {
|
||||
title: 'Paramètres',
|
||||
@@ -1494,6 +1498,8 @@ const frTranslation = {
|
||||
aboutVersion: 'Version',
|
||||
aboutBuiltWith: 'Construit avec Tauri · React · TypeScript · Rust/rodio',
|
||||
aboutAiCredit: 'Développé avec le soutien de Claude Code par Anthropic',
|
||||
aboutContributorsLabel: 'Contributeurs',
|
||||
aboutContributors: 'jiezhuo — traduction chinoise',
|
||||
changelog: 'Journal des modifications',
|
||||
randomMixTitle: 'Mix aléatoire',
|
||||
randomMixBlacklistTitle: 'Mots-clés de filtre personnalisés',
|
||||
@@ -1570,7 +1576,7 @@ const frTranslation = {
|
||||
q12: 'Comment changer le thème ?',
|
||||
a12: 'Paramètres → Thème. 47 thèmes en 7 groupes : Psysonic Themes, Psysonic Mediaplayer, Systèmes d\'exploitation, Jeux, Films, Séries et Open Source Classics (Catppuccin, Nord, Gruvbox).',
|
||||
q13: 'Comment changer la langue ?',
|
||||
a13: 'Paramètres → Langue. L\'anglais, l\'allemand, le français et le néerlandais sont pris en charge.',
|
||||
a13: 'Paramètres → Langue. L\'anglais, l\'allemand, le français, le néerlandais et le chinois sont pris en charge.',
|
||||
q15: 'Comment définir un dossier de téléchargement ?',
|
||||
a15: 'Paramètres → Comportement → Dossier de téléchargement. Les albums téléchargés y sont enregistrés en ZIP.',
|
||||
s5: 'Scrobbling',
|
||||
@@ -1714,7 +1720,6 @@ const nlTranslation = {
|
||||
allAlbums: 'Alle albums',
|
||||
randomAlbums: 'Willekeurige albums',
|
||||
artists: 'Artiesten',
|
||||
playlists: 'Afspeellijsten',
|
||||
randomMix: 'Willekeurige mix',
|
||||
favorites: 'Favorieten',
|
||||
nowPlaying: 'Nu bezig',
|
||||
@@ -1729,6 +1734,7 @@ const nlTranslation = {
|
||||
updateLink: 'Naar release →',
|
||||
downloadingTracks: '{{n}} nummers worden gecached…',
|
||||
offlineLibrary: 'Offline bibliotheek',
|
||||
genres: 'Genres',
|
||||
},
|
||||
home: {
|
||||
starred: 'Persoonlijke favorieten',
|
||||
@@ -1865,6 +1871,18 @@ const nlTranslation = {
|
||||
title: 'Willekeurige albums',
|
||||
refresh: 'Vernieuwen',
|
||||
},
|
||||
genres: {
|
||||
title: 'Genres',
|
||||
genreCount: 'genres',
|
||||
albumCount_one: '{{count}} album',
|
||||
albumCount_other: '{{count}} albums',
|
||||
loading: 'Genres laden…',
|
||||
empty: 'Geen genres gevonden.',
|
||||
albumsLoading: 'Albums laden…',
|
||||
albumsEmpty: 'Geen albums gevonden voor dit genre.',
|
||||
loadMore: 'Meer laden',
|
||||
back: 'Terug',
|
||||
},
|
||||
randomMix: {
|
||||
title: 'Willekeurige mix',
|
||||
remix: 'Opnieuw mixen',
|
||||
@@ -1895,22 +1913,6 @@ const nlTranslation = {
|
||||
filterPanelTitle: 'Filters',
|
||||
genreClickHint: 'Klik op een genre-tag om het\ntoe te voegen als filtertrefwoord.\nVergelijkt genre, titel, album & artiest.',
|
||||
},
|
||||
playlists: {
|
||||
title: 'Afspeellijsten',
|
||||
loading: 'Afspeellijsten laden…',
|
||||
empty: 'Geen afspeellijsten gevonden.\nGebruik de wachtrij om afspeellijsten aan te maken.',
|
||||
play: 'Afspelen',
|
||||
deleteTooltip: 'Verwijderen',
|
||||
confirmDelete: 'Afspeellijst "{{name}}" echt verwijderen?',
|
||||
minutes: 'min.',
|
||||
track_one: '{{count}} nummer',
|
||||
track_other: '{{count}} nummers',
|
||||
filterPlaceholder: 'Afspeellijsten filteren…',
|
||||
colName: 'Naam',
|
||||
colTracks: 'Nummers',
|
||||
colDuration: 'Duur',
|
||||
noResults: 'Geen afspeellijsten komen overeen met het filter.',
|
||||
},
|
||||
albums: {
|
||||
title: 'Alle albums',
|
||||
sortByName: 'A–Z (Album)',
|
||||
@@ -1986,6 +1988,10 @@ const nlTranslation = {
|
||||
chooseDownloadFolder: 'Downloadmap kiezen',
|
||||
noFolderSelected: 'Geen map geselecteerd',
|
||||
rememberDownloadFolder: 'Deze map onthouden',
|
||||
filterGenre: 'Genre-filter',
|
||||
filterSearchGenres: 'Genres zoeken…',
|
||||
filterNoGenres: 'Geen genres gevonden',
|
||||
filterClear: 'Wissen',
|
||||
},
|
||||
settings: {
|
||||
title: 'Instellingen',
|
||||
@@ -2062,6 +2068,8 @@ const nlTranslation = {
|
||||
aboutVersion: 'Versie',
|
||||
aboutBuiltWith: 'Gebouwd met Tauri · React · TypeScript · Rust/rodio',
|
||||
aboutAiCredit: 'Ontwikkeld met ondersteuning van Claude Code door Anthropic',
|
||||
aboutContributorsLabel: 'Bijdragers',
|
||||
aboutContributors: 'jiezhuo — Chinese vertaling',
|
||||
changelog: 'Wijzigingslog',
|
||||
randomMixTitle: 'Willekeurige mix',
|
||||
randomMixBlacklistTitle: 'Aangepaste filtertrefwoorden',
|
||||
@@ -2138,7 +2146,7 @@ const nlTranslation = {
|
||||
q12: 'Hoe verander ik het thema?',
|
||||
a12: 'Instellingen → Thema. 47 thema\'s in 7 groepen: Psysonic Themes, Psysonic Mediaplayer, Besturingssystemen, Games, Films, Series en Open Source Classics (Catppuccin, Nord, Gruvbox).',
|
||||
q13: 'Hoe verander ik de taal?',
|
||||
a13: 'Instellingen → Taal. Engels, Duits, Frans en Nederlands worden momenteel ondersteund.',
|
||||
a13: 'Instellingen → Taal. Engels, Duits, Frans, Nederlands en Chinees worden momenteel ondersteund.',
|
||||
q15: 'Hoe stel ik een downloadmap in?',
|
||||
a15: 'Instellingen → App-gedrag → Downloadmap. Gedownloade albums worden daar opgeslagen als ZIP-bestanden.',
|
||||
s5: 'Scrobbling',
|
||||
@@ -2282,7 +2290,6 @@ const zhTranslation = {
|
||||
allAlbums: '全部专辑',
|
||||
randomAlbums: '随机专辑',
|
||||
artists: '艺术家',
|
||||
playlists: '播放列表',
|
||||
randomMix: '随机混音',
|
||||
favorites: '收藏夹',
|
||||
nowPlaying: '正在播放',
|
||||
@@ -2297,6 +2304,7 @@ const zhTranslation = {
|
||||
updateLink: '前往发布页面 →',
|
||||
downloadingTracks: '正在缓存 {{n}} 首歌曲…',
|
||||
offlineLibrary: '离线音乐库',
|
||||
genres: '流派',
|
||||
},
|
||||
home: {
|
||||
starred: '个人收藏',
|
||||
@@ -2433,6 +2441,18 @@ const zhTranslation = {
|
||||
title: '随机专辑',
|
||||
refresh: '刷新',
|
||||
},
|
||||
genres: {
|
||||
title: '流派',
|
||||
genreCount: '个流派',
|
||||
albumCount_one: '{{count}} 张专辑',
|
||||
albumCount_other: '{{count}} 张专辑',
|
||||
loading: '正在加载流派…',
|
||||
empty: '未找到流派。',
|
||||
albumsLoading: '正在加载专辑…',
|
||||
albumsEmpty: '未找到该流派的专辑。',
|
||||
loadMore: '加载更多',
|
||||
back: '返回',
|
||||
},
|
||||
randomMix: {
|
||||
title: '随机混音',
|
||||
remix: '重新混音',
|
||||
@@ -2463,22 +2483,6 @@ const zhTranslation = {
|
||||
filterPanelTitle: '过滤器',
|
||||
genreClickHint: '点击流派标签将其添加为过滤关键词。\\n匹配流派、标题、专辑和艺术家。',
|
||||
},
|
||||
playlists: {
|
||||
title: '播放列表',
|
||||
loading: '正在加载播放列表…',
|
||||
empty: '未找到播放列表。\\n使用播放队列创建播放列表。',
|
||||
play: '播放',
|
||||
deleteTooltip: '删除',
|
||||
confirmDelete: '确定要删除播放列表 "{{name}}" 吗?',
|
||||
minutes: '分钟',
|
||||
track_one: '{{count}} 首曲目',
|
||||
track_other: '{{count}} 首曲目',
|
||||
filterPlaceholder: '筛选播放列表…',
|
||||
colName: '名称',
|
||||
colTracks: '曲目',
|
||||
colDuration: '时长',
|
||||
noResults: '没有匹配的播放列表。',
|
||||
},
|
||||
albums: {
|
||||
title: '全部专辑',
|
||||
sortByName: '按名称排序 (A-Z)',
|
||||
@@ -2554,6 +2558,10 @@ const zhTranslation = {
|
||||
chooseDownloadFolder: '选择下载文件夹',
|
||||
noFolderSelected: '未选择文件夹',
|
||||
rememberDownloadFolder: '记住此文件夹',
|
||||
filterGenre: '流派筛选',
|
||||
filterSearchGenres: '搜索流派…',
|
||||
filterNoGenres: '未找到匹配流派',
|
||||
filterClear: '清除',
|
||||
},
|
||||
settings: {
|
||||
title: '设置',
|
||||
@@ -2630,6 +2638,8 @@ const zhTranslation = {
|
||||
aboutVersion: '版本',
|
||||
aboutBuiltWith: '使用 Tauri · React · TypeScript · Rust/rodio 构建',
|
||||
aboutAiCredit: '在 Anthropic 的 Claude Code 支持下开发',
|
||||
aboutContributorsLabel: '贡献者',
|
||||
aboutContributors: 'jiezhuo — 中文翻译',
|
||||
changelog: '更新日志',
|
||||
randomMixTitle: '随机混音',
|
||||
randomMixBlacklistTitle: '自定义过滤关键词',
|
||||
@@ -2706,7 +2716,7 @@ const zhTranslation = {
|
||||
q12: '如何更改主题?',
|
||||
a12: '设置 → 主题。从 7 个分组共 47 个主题中选择:Psysonic 主题、Psysonic 媒体播放器、操作系统、游戏、电影、电视剧,以及开源经典(Catppuccin、Nord、Gruvbox)。',
|
||||
q13: '如何更改语言?',
|
||||
a13: '设置 → 语言。支持英语、德语、法语和荷兰语。',
|
||||
a13: '设置 → 语言。支持英语、德语、法语、荷兰语和中文。',
|
||||
q15: '如何设置下载文件夹?',
|
||||
a15: '设置 → 应用行为 → 下载文件夹。选择任意文件夹 — 下载的专辑将以 ZIP 文件形式保存在那里。未设置自定义文件夹时,将使用浏览器的默认下载位置。',
|
||||
s5: '歌曲记录',
|
||||
|
||||
Reference in New Issue
Block a user