diff --git a/tidal_dl_ng/helper/path.py b/tidal_dl_ng/helper/path.py index 4be06e7..3d72cdf 100644 --- a/tidal_dl_ng/helper/path.py +++ b/tidal_dl_ng/helper/path.py @@ -155,6 +155,14 @@ def format_str_media(name: str, media: Track | Album | Playlist | UserPlaylist | case "track_volume_num": if isinstance(media, Track | Video): result = str(media.volume_num) + case "track_volume_num_optional": + if isinstance(media, Track | Video): + num_volumes: int = media.album.num_volumes if hasattr(media, "album") else 1 + result = "" if media.volume_num is num_volumes else str(media.volume_num) + case "track_volume_num_optional_CD": + if isinstance(media, Track | Video): + num_volumes: int = media.album.num_volumes if hasattr(media, "album") else 1 + result = "" if media.volume_num is num_volumes else f"CD{media.volume_num!s}" except Exception as e: # TODO: Implement better exception logging. print(e) diff --git a/tidal_dl_ng/model/cfg.py b/tidal_dl_ng/model/cfg.py index 17a8464..2c00438 100644 --- a/tidal_dl_ng/model/cfg.py +++ b/tidal_dl_ng/model/cfg.py @@ -26,7 +26,8 @@ class Settings: quality_audio: Quality = Quality.low_320k quality_video: QualityVideo = QualityVideo.P480 format_album: str = ( - "Albums/{album_artist} - {album_title}{album_explicit}/{album_track_num}. {artist_name} - {track_title}" + "Albums/{album_artist} - {album_title}{album_explicit}/{track_volume_num_optional}" + "{album_track_num}. {artist_name} - {track_title}" ) format_playlist: str = "Playlists/{playlist_name}/{artist_name} - {track_title}" format_mix: str = "Mix/{mix_name}/{artist_name} - {track_title}"