trackdb: Add discnumber to the tracknumber field

This is inspired by how Musicbrainz Picard lists tracks during scanning

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
This commit is contained in:
Anna Schumaker 2021-07-23 11:40:25 -04:00
parent cd94100c22
commit f7b2383ff4
2 changed files with 5 additions and 3 deletions

View File

@ -94,9 +94,9 @@ class TestTrack(unittest.TestCase):
def test_track_tracknumber(self):
trak = track.Track(1, test_tracks / "01 - Test Track.ogg", self.lib)
self.assertEqual(trak.tracknumber, 1)
self.assertEqual(trak["tracknumber"], "01")
self.assertEqual(trak["tracknumber"], "1-01")
trak.tracknumber = 10
self.assertEqual(trak["tracknumber"], "10")
self.assertEqual(trak["tracknumber"], "1-10")
def test_track_year(self):
trak = track.Track(1, test_tracks / "01 - Test Track.ogg", self.lib)

View File

@ -32,8 +32,10 @@ class Track:
if item == "length":
(m, s) = divmod(tag, 60)
return f"{m}:{s:02}"
elif item in ("discnumber", "tracknumber"):
elif item == "discnumber":
return f"{tag:02}"
elif item == "tracknumber":
return f"{self.discnumber}-{tag:02}"
elif item == "lastplayed":
return "Never" if tag == None else str(tag)
elif item == "genres":