Comments
-
Greg Hurrell
Thanks for the report David. I purposely left it that way because I wasn't sure what to do. You'll notice that within the Genres and Artist menus the submenus are all alphabetically sorted. But when it comes to sorting actual track names it's a little harder to know what to do. (For now Synergy Advance just sticks them in the menus in the order in which iTunes returns them.)
For example. I have an album like which has names like this "01 A track", "02 Another track" (in other words, the song title has the track number in it). If I sort them alphabetically then they come out in the right order.
In other albums, however, the tracks might not have track numbers in the titles and if they appear on the album in order "A, D, C, B" and I sort them alphabetically then I'll get "A", "B", "C", "D" which is alphabetically correct (good) but doesn't match the order of things on the album (bad).
I think that the best solution would be to do a fairly complex sorting operation, but it will slow things down a fair bit. Basically, for each song added to the submenu, I would have to look at not only its name, but also its album name, track number, disc number and artist. The exact sorting criteria would depend on which submenu is being sorted.
For example, in the submenu "Artists" -> "Sting" -> "All albums", I could sort by:
1. Album 2. Disc number 3. Track Number 4. Track Title
Some other submenus are not so easy to decide. For example, in the "Genres" -> "All" submenu, what do I sort by?
1. Genre 2. Artist 3. Album 4. Disc number 5. Track number
This produces non-alphabetical listing, could be confusing. But sorting by alphabetical order could lead to some pretty ugly side effects (like all tracks beginning with "01" being bunched together, for example). I could clean it up by putting in separators between the genres and I think this is a good idea. (The other question is, how far do I carry that idea? It clearly makes sense to put this kind of separator in a long menu like the "All Genres" submenu, but what about a shorter menu like an "All albums" menu for an artist where there are only two albums for that artist?)
I am going to leave this bug report open so that people can leave their comments and suggestions, seeing as I am not sure exactly how to proceed. This is not like an NSTableView (like you see in apps with Finder-like windows) where you can sort stuff by clicking on a column header. There are a very small number of apps out there which provide advanced sorting functionality in table views where you can specify not only the primary search criterion but a bunch of secondary criteria as well. Doing it for table views is one thing but for menus is another matter entirely. I *could* provide a user interface in the preferences for determining the sort order but I can't think of a way to make such an interface that is not cluttered, complicated and ugly, so I won't do it. Basically I'd like to figure the best/most intuitive/correct way to sort and apply it automatically.
-
David Ameeti
My gut reaction: you're way overthinking this problem. Let's go back to the basics. If I'm looking at the Artists submenu and I select "All" sub-submenu, I'm not trying to do anything complicated -- I'm just trying to list some songs performed by that artist so I can play one (since, by definition, if I select by All songs by that artist, aren't I'm trying to ignore the enclosing album relationship?). The simple answer: I'm not looking for albums, I'm not looking for song/title relationships -- I'm looking for a title so I can hear the pretty song. Period.
Given that, give me a list of titles by that artist and I'm happy. Once you get to that simplistic realization, then sorting alphabetically seems like the only one that sounds reasonable (and no subsorting by album/date/etc. would seem to be necessary).
As far as within an album (i.e., the submenus below the All submenu), I would carry the same logic forward -- if I need to see it by track number (or any other complex title/artist/album relationship), I go to the program (iTunes) and do my fancy lookups there. That's where you do the complex stuff -- and *you* do what you do best: "control the player" and play the funky music. :-)
When I'm viewing them through your program, I *just* want to see the titles so I can pick a pretty song to hear it. I would still use the same logic as above: namely sort them in title order so I can pick a pretty song to play. Sometimes simple is the very best logic you can use.
Think of it this way: when I'm at a jukebox and I'm looking for a song to play, I'm not looking through all the song titles with some complex thought about "I want the 4th title on the 2rd album" -- no, I just want "White Christmas" by Bing Crosby... so I look for "White Christmas" and press the buttons on the jukebox.
As far as track numbers being prefixed to the song title, I don't understand that concept. iTunes can already sort by track number (w/o changing the song titles) so if someone wants them in order (within iTunes), wouldn't they just click on the track number column? I'm completely at a loss as to why would anyone modify the song title (but I accept that they do) so that they could never display the songs in true alphabetical order ever again -- they've lost that ability forever. (Just like why would someone put the employee ID's in front of the name in an employee roster? It just sounds odd to me.) I say let the program do what it does well (sort by various criteria) and don't modify the data to do the same job.
However... given that some people do actually that, if you want to be nice to those people, then look at the first two characters and if you see 3+ entries in a row that are "dd aaaaaaaaa" format, then drop the first two characters from any entry in that format (for sorting purposes only) and *then* sort it (in name order). Later (as an option in the future) you can allow the user to always ignore or always respect the extra prefix characters as a preference. That would be my vote.
-
Greg Hurrell
(In reply to comment #2)
My gut reaction: you're way overthinking this problem.
Hehe. Now that you've written that essay I think you're overthinking too! But that's good; "overthinking" is necessary if you want software that's professional and polished (and I do). Thanks for the suggestions.
As far as track numbers being prefixed to the song title, I don't understand that concept. iTunes can already sort by track number (w/o changing the song titles) so if someone wants them in order (within iTunes), wouldn't they just click on the track number column? I'm completely at a loss as to why would anyone modify the song title (but I accept that they do) so that they could never display the songs in true alphabetical order ever again -- they've lost that ability forever.
I agree. They shouldn't do it, but some people do. And if people download a lot of mp3s then the chances of getting poorly tagged files with silly naming convention are increased. I just wanted to point out that it's something that can and does happen, even if it is a bad idea.
Anyway, like I said. Thanks for the comments.
-
Greg Hurrell
Changing assignment to reflect my new email address.
https://wincent.dev/a/news/archives/2006/05/change_of_email.php
Add a comment
Comments are now closed for this issue.