Al ordenar per desarrollador, agrupa els desarrolladors que comencen per numero en la carpeta "0-9"
This commit is contained in:
@@ -365,13 +365,15 @@ def get_final_destination_folder(title, year, developer):
|
|||||||
>>> get_final_destination_folder("Nintendo", 1985, "Super Mario")
|
>>> get_final_destination_folder("Nintendo", 1985, "Super Mario")
|
||||||
'by_developer/N/Nintendo/1985/Super Mario'
|
'by_developer/N/Nintendo/1985/Super Mario'
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
# Compone el nombre de la carpeta de destino del juego
|
||||||
|
game_folder_name = f"{title} ({year})" if SHOULD_SORT_BY_DEVELOPER else f"{title} ({year})({developer})"
|
||||||
|
game_folder_name = normalize_path(game_folder_name)
|
||||||
|
|
||||||
# Carpeta basada en los años de vida comercial del spectrum o el tipo de agrupación
|
# Carpeta basada en los años de vida comercial del spectrum o el tipo de agrupación
|
||||||
folder1 = ""
|
folder1 = ""
|
||||||
if SHOULD_SPLIT_MODERN_AND_CLASSIC:
|
if SHOULD_SPLIT_MODERN_AND_CLASSIC:
|
||||||
if year == "none" or year is None or year > LAST_CLASSIC_YEAR:
|
folder1 = "modern" if year == "none" or year is None or year > LAST_CLASSIC_YEAR else "classics"
|
||||||
folder1 = "modern"
|
|
||||||
else:
|
|
||||||
folder1 = "classics"
|
|
||||||
elif SHOULD_SORT_BY_DEVELOPER:
|
elif SHOULD_SORT_BY_DEVELOPER:
|
||||||
folder1 = "by_developer"
|
folder1 = "by_developer"
|
||||||
elif SHOULD_SORT_BY_YEAR:
|
elif SHOULD_SORT_BY_YEAR:
|
||||||
@@ -381,23 +383,17 @@ def get_final_destination_folder(title, year, developer):
|
|||||||
folder2 = ""
|
folder2 = ""
|
||||||
if SHOULD_SORT_BY_DEVELOPER:
|
if SHOULD_SORT_BY_DEVELOPER:
|
||||||
developer = developer or ""
|
developer = developer or ""
|
||||||
folder2 = os.path.join(developer[0].upper(), developer)
|
folder2 = os.path.join("0-9", developer) if developer[0].isdigit() else os.path.join(developer[0].upper(), developer)
|
||||||
|
|
||||||
# Carpeta basada en el año de lanzamiento
|
# Carpeta basada en el año de lanzamiento
|
||||||
folder3 = ""
|
folder3 = ""
|
||||||
if SHOULD_SORT_BY_YEAR:
|
if SHOULD_SORT_BY_YEAR:
|
||||||
folder3 = str(year) if year not in [None, "none"] else "unknown"
|
folder3 = str(year) if year not in [None, "none"] else "unknown"
|
||||||
|
|
||||||
# Carpeta basada en la primera letra del nombre de la carpeta raíz
|
# Carpeta basada en la primera letra del nombre de la carpeta de destino del juego
|
||||||
folder4 = ""
|
folder4 = ""
|
||||||
if SHOULD_SORT_BY_LETTER:
|
if SHOULD_SORT_BY_LETTER:
|
||||||
if game_folder_name[0].isdigit():
|
folder4 = "0-9" if game_folder_name[0].isdigit() else game_folder_name[0].upper()
|
||||||
folder4 = "0-9"
|
|
||||||
else:
|
|
||||||
folder4 = game_folder_name[0].upper()
|
|
||||||
|
|
||||||
# Compone el nombre de la carpeta de destino del juego
|
|
||||||
game_folder_name = f"{title} ({year})" if SHOULD_SORT_BY_DEVELOPER else f"{title} ({year})({developer})"
|
|
||||||
|
|
||||||
# Combina los prefijos y la carpeta raíz para obtener la carpeta de destino final
|
# Combina los prefijos y la carpeta raíz para obtener la carpeta de destino final
|
||||||
return os.path.join(folder1, folder2, folder3, folder4, game_folder_name)
|
return os.path.join(folder1, folder2, folder3, folder4, game_folder_name)
|
||||||
@@ -515,7 +511,7 @@ def normalize_path(path):
|
|||||||
|
|
||||||
Comportamiento:
|
Comportamiento:
|
||||||
- Reemplaza los caracteres ilegales en la cadena de texto con un carácter vacío.
|
- Reemplaza los caracteres ilegales en la cadena de texto con un carácter vacío.
|
||||||
- Los caracteres ilegales incluyen: <, >, :, ", /, \, |, ?, *.
|
- Los caracteres ilegales incluyen: <, >, :, ", /, \\, |, ?, *.
|
||||||
- Utiliza la función unidecode para manejar caracteres Unicode.
|
- Utiliza la función unidecode para manejar caracteres Unicode.
|
||||||
|
|
||||||
Ejemplo:
|
Ejemplo:
|
||||||
@@ -528,6 +524,7 @@ def normalize_path(path):
|
|||||||
path = unidecode(path.replace(char, replace_with))
|
path = unidecode(path.replace(char, replace_with))
|
||||||
return path
|
return path
|
||||||
|
|
||||||
|
|
||||||
def remove_empty_directories(path):
|
def remove_empty_directories(path):
|
||||||
"""
|
"""
|
||||||
Elimina los subdirectorios vacíos.
|
Elimina los subdirectorios vacíos.
|
||||||
|
|||||||
Reference in New Issue
Block a user