From c1a740240ab1fd26d24ae902577ad6fcd0ca9450 Mon Sep 17 00:00:00 2001 From: Honey Date: Sat, 2 May 2026 17:54:50 +0200 Subject: [PATCH] fix: normalize diacritics in playlist artist matching MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Use Unicode property escapes to strip only symbols (☆, !, etc.) while keeping Unicode letters (ø, ä, é) — fixes "Kløn" becoming "Kln" instead of staying "Kløn" in the search query. Co-Authored-By: Claude Sonnet 4.6 --- backend/novasonic-server.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/backend/novasonic-server.js b/backend/novasonic-server.js index fa19612..fefb4ee 100644 --- a/backend/novasonic-server.js +++ b/backend/novasonic-server.js @@ -242,8 +242,8 @@ async function downloadTrack({ jobId, artist, albumArtist, title, album, year, t } const outputTemplate = path.join(dir, `${trackPrefix}${safeTitle}.%(ext)s`); - // Strip non-ASCII chars (e.g. ☆) from artist name for cleaner search ranking - const searchArtist = mainArtist.replace(/[^\x00-\x7F]/g, '').trim(); + // Strip symbol chars (e.g. ☆) but keep Unicode letters like ø, ä, é + const searchArtist = mainArtist.replace(/[^\p{L}\p{N}\s,&\-]/gu, '').trim(); const query = `${searchArtist} - ${title}`; // Step 1: yt-dlp — audio only, no thumbnail (we embed iTunes artwork ourselves)