configure to allow updating artist separators

+ remove ampersand from default
+ misc
This commit is contained in:
mungai-njoroge
2023-08-25 20:09:50 +03:00
parent 71cab5f5ea
commit 9972f64e8c
7 changed files with 20 additions and 10 deletions
+13 -4
View File
@@ -208,9 +208,18 @@ def set_setting():
sdb.set_setting(key, value)
if mapp[key] is not False:
flag = mapp[key]
set_flag(flag, value)
reload_all_for_set_setting()
flag = mapp[key]
if key == "artist_separators":
value = str(value).split(",")
value = set(value)
set_flag(flag, value)
reload_all_for_set_setting()
# if value is a set, convert it to a string
# (artist_separators)
if type(value) == set:
value = ",".join(value)
return {"result": value}
+1 -1
View File
@@ -26,7 +26,7 @@ CREATE TABLE IF NOT EXISTS settings (
id integer PRIMARY KEY,
root_dirs text NOT NULL,
exclude_dirs text,
artist_separators text NOT NULL default '/,;,&',
artist_separators text NOT NULL default '/,;',
extract_feat integer NOT NULL DEFAULT 1,
remove_prod integer NOT NULL DEFAULT 1,
clean_album_title integer NOT NULL DEFAULT 1,
+1 -1
View File
@@ -137,7 +137,7 @@ def load_settings():
db_separators = db_separators.replace(" ", "")
separators = db_separators.split(",")
separators = set(db_separators)
separators = set(separators)
FromFlags.ARTIST_SEPARATORS = separators
# boolean settings
+1 -1
View File
@@ -288,7 +288,7 @@ class UpdateAppSettingsTable(Migration):
id integer PRIMARY KEY,
root_dirs text NOT NULL,
exclude_dirs text,
artist_separators text NOT NULL default '/,;,&',
artist_separators text NOT NULL default '/,;',
extract_feat integer NOT NULL DEFAULT 1,
remove_prod integer NOT NULL DEFAULT 1,
clean_album_title integer NOT NULL DEFAULT 1,
+1 -1
View File
@@ -168,7 +168,7 @@ class FromFlags:
PERIODIC_SCAN_INTERVAL = 300 # seconds
MERGE_ALBUM_VERSIONS = False
ARTIST_SEPARATORS = {",", "/", ";", "&"}
ARTIST_SEPARATORS = set()
# TODO: Find a way to eliminate this class without breaking typings
+1 -1
View File
@@ -38,7 +38,7 @@ class AlbumStore:
albumhashes = set(t.albumhash for t in TrackStore.tracks)
for albumhash in tqdm(albumhashes, desc=f"Loading {instance_key}"):
for albumhash in tqdm(albumhashes, desc=f"Loading albums"):
if instance_key != ALBUM_LOAD_KEY:
return
+2 -1
View File
@@ -8,7 +8,8 @@ def split_artists(src: str):
"""
Splits a string of artists into a list of artists.
"""
separators = get_flag(ParserFlags.ARTIST_SEPARATORS)
separators: set = get_flag(ParserFlags.ARTIST_SEPARATORS)
separators = separators.union({","})
for sep in separators:
src = src.replace(sep, "߸")