From cf7f76948ba04c99c56df1c46ddd5145cc08ea05 Mon Sep 17 00:00:00 2001 From: Mathis Maquenne <124215603+mathismqn@users.noreply.github.com> Date: Tue, 9 Sep 2025 23:47:33 +0200 Subject: [PATCH] chore(tags): add the version of a track to the title tag --- internal/downloader/client.go | 13 +++++++------ internal/tags/flac.go | 2 +- internal/tags/id3v2.go | 2 +- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/internal/downloader/client.go b/internal/downloader/client.go index 3110df0..1c11e37 100644 --- a/internal/downloader/client.go +++ b/internal/downloader/client.go @@ -98,12 +98,13 @@ func (c *Client) Run(ctx context.Context, opts Options, id string) error { return ctx.Err() } + songTitle := song.GetTitle() trackProgress := fmt.Sprintf("[%d/%d]", i+1, len(songs)) sp := spinner.New(spinner.CharSets[14], 100*time.Millisecond) sp.Writer = os.Stdout sp.Prefix = trackProgress + " " - sp.Suffix = fmt.Sprintf(" Downloading: %s - %s", song.Artist, song.Title) + sp.Suffix = fmt.Sprintf(" Downloading: %s - %s", song.Artist, songTitle) sp.Start() warnings, err := c.downloadSong(ctx, resource, song, opts, resourceOutputDir) @@ -116,13 +117,13 @@ func (c *Client) Run(ctx context.Context, opts Options, id string) error { if path, ok := IsSkipError(err); ok { skipped++ - fmt.Printf("%s ↷ Skipped: %s - %s\n Already exists at: %s\n", trackProgress, song.Artist, song.Title, path) + fmt.Printf("%s ↷ Skipped: %s - %s\n Already exists at: %s\n", trackProgress, song.Artist, songTitle, path) continue } failed++ - c.Logger.Errorf("Failed to download %s - %s: %v\n", song.Artist, song.Title, err) - fmt.Printf("%s ✖ Failed: %s - %s:\n Error: %v\n", trackProgress, song.Artist, song.Title, err) + c.Logger.Errorf("Failed to download %s - %s: %v\n", song.Artist, songTitle, err) + fmt.Printf("%s ✖ Failed: %s - %s:\n Error: %v\n", trackProgress, song.Artist, songTitle, err) continue } @@ -133,8 +134,8 @@ func (c *Client) Run(ctx context.Context, opts Options, id string) error { } downloaded++ - c.Logger.Infof("Downloaded %s - %s\n", song.Artist, song.Title) - fmt.Printf("%s %s Downloaded: %s - %s\n", trackProgress, symbol, song.Artist, song.Title) + c.Logger.Infof("Downloaded %s - %s\n", song.Artist, songTitle) + fmt.Printf("%s %s Downloaded: %s - %s\n", trackProgress, symbol, song.Artist, songTitle) for _, w := range warnings { c.Logger.Warnf("Warning: %s\n", w) diff --git a/internal/tags/flac.go b/internal/tags/flac.go index f0d313f..9556f80 100644 --- a/internal/tags/flac.go +++ b/internal/tags/flac.go @@ -34,7 +34,7 @@ func (t *flacTagger) addTags(resource deezer.Resource, song *deezer.Song, cover } t.addTag("ARTIST", strings.Join(song.Contributors.MainArtists, ", ")) - t.addTag("TITLE", song.Title) + t.addTag("TITLE", song.GetTitle()) t.addTag("COMPOSER", strings.Join(song.Contributors.Composers, ", ")) t.addTag("LYRICIST", strings.Join(song.Contributors.Authors, ", ")) t.addTag("REPLAYGAIN_TRACK_GAIN", song.Gain) diff --git a/internal/tags/id3v2.go b/internal/tags/id3v2.go index c50d5cf..d3fdcd8 100644 --- a/internal/tags/id3v2.go +++ b/internal/tags/id3v2.go @@ -34,7 +34,7 @@ func (t *id3v2Tagger) addTags(resource deezer.Resource, song *deezer.Song, cover } t.addTag("TPE1", strings.Join(song.Contributors.MainArtists, ", ")) - t.addTag("TIT2", song.Title) + t.addTag("TIT2", song.GetTitle()) t.addTag("TCOM", strings.Join(song.Contributors.Composers, ", ")) t.addTag("TEXT", strings.Join(song.Contributors.Authors, ", ")) t.addTag("TLEN", song.Duration)