From e0a666ada64eed49cd67650a932848391ef310f5 Mon Sep 17 00:00:00 2001 From: Andy Date: Fri, 21 Nov 2025 19:22:20 +0000 Subject: [PATCH] fix(utilities): make space-hyphen-space handling conditional on scene_naming --- unshackle/core/utilities.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/unshackle/core/utilities.py b/unshackle/core/utilities.py index d0ace5f..5aaf6f0 100644 --- a/unshackle/core/utilities.py +++ b/unshackle/core/utilities.py @@ -127,7 +127,8 @@ def sanitize_filename(filename: str, spacer: str = ".") -> str: # remove or replace further characters as needed filename = "".join(c for c in filename if unicodedata.category(c) != "Mn") # hidden characters filename = filename.replace("/", " & ").replace(";", " & ") # e.g. multi-episode filenames - filename = re.sub(r" - ", spacer, filename) # title separators to spacer (avoids .-. pattern) + if spacer == ".": + filename = re.sub(r" - ", spacer, filename) # title separators to spacer (avoids .-. pattern) filename = re.sub(r"[:; ]", spacer, filename) # structural chars to (spacer) filename = re.sub(r"[\\*!?¿,'\"" "()<>|$#~]", "", filename) # not filename safe chars filename = re.sub(rf"[{spacer}]{{2,}}", spacer, filename) # remove extra neighbouring (spacer)s