I have an idea on how to enhance the Music Collection (MMC) sorting capabilities and at the same time make it more flexible and intuitive to use. I will list three proposals on how this can be accomplished, each a bit more involved than the previous one. You can jump right to the section below titled "3. Enhanced sorting in MMC" to see the proposals. I would appreciate feedback, and of course Spoon’s thoughts on how doable this is.
1. Sorting possibilities
1a. Simple (1st) and secondary (2nd) sorting (see 2. below) are very nice and are already implemented in MMC, but sometimes it is really cool to have tertiary (3rd) and higher sorting. An example: 1st-sort by Preferences. Then 2nd-sort by Artist. Then I want to 3rd –sort by song Title. Or, I want then to 3rd-sort by Album, then 4th-sort by Title. See the possibilities?
1b. It would also be nice to plainly see what the list of songs in MMC is sorted by, at any time. Right now, in particular if I use the "Collection 2nd Sort" sub-menu, sometimes I forget what the current sorting setup is, especially after I have closed MMC and then, hours or days later, I open MMC again.
2. Current state of MMC sorting
2a. Simple sorting:
You can do a simple sort by any column displayed (Artist, Title, Album, etc.) by left-clicking on the column title bar. OK, everyone knows that and it is pretty obvious, so enough about it.
2b. Secondary (2nd) sorting:
When you do 1st-sorting, actually there is also a 2nd-sort that happens where songs, after being sorted by 1st-sort tag, are now sorted by a second tag within each item of the 1st-sort. Example: If you have the “Smart” option set for 2nd-sort (see below), then if you 1st-sort by Artist, additionally you get, for each Artist, a 2nd-sort by [song] Title. If you want 1st-sort by Artist, and 2nd-sort by Preference instead, you need to explicitly set “Collection 2nd sort”(see 2c. below) to “Preference”. Trouble is, unless you change it back again immediately after that, you are stuck with 2nd-sort by Preference regardless of what other subsequent 1st-sorts you want to do.
2c. “Smart” sorting
There is a pull-down sub-menu in the Collection->Preferences window called "Collection 2nd Sort". Typically it would be set to "Smart". "Smart" is a set of presets, i.e. particular pairs of 1st and 2nd sort. Here's what I think "Smart" presets are, depending on what you sorted by first:
If you 1st-sorted by:
A. Artist, then 2nd sort is by Track
B. Track, then 2nd sort is by Artist
C. Genre, then 2nd sort is by Artist
D. Album, then 2nd sort is by Track number
E. Preferences, then 2nd sort is by Artist
3. Enhanced sorting in MMC
Here are three successive proposals for enhancing the sorting capabilities in MMC, each a little more complex and building on the previous one. I would of course like to see all three implemented :-)
Stage 1: Make current sorting state plainly visible
Each column in MMC has its name/tag written in a little title bar on top – “Artist ”, “Track ”, “Album ”, and the writing is left-justified. How about reserving a square space (not larger than the typical icons that show the format (mp3, ape, etc.) before each title name in each title bar space, and when a particular column is 1st-sorted, we get a “1” written in that reserved space. If a column is 2nd-sorted, we get a “2” written in the space in the title bar of that particular column. And so on. I also thought about colour-coding it, but it may become confusing, so perhaps simple numbers are enough.
So the title bars of sorted columns would look like this: “1 Artist “, or “2 Artist “, or “1 Title “, etc. and thus the current sorting state is immediately obvious and visible all the time.
Stage 2: Make sorting more flexible
After Stage 1 is implemented and it is now obvious at any time which columns a Music Collection is sorted by, we still have the restriction of having either particular pairs of “Smart” presets, or a fixed 2nd-sort regardless of what the 1st-sort is by. And these are not very easy to change quickly or often.
How about making it possible to change the 2nd sort on the fly? Here’s how it could be done:
Right now to do 1st-sort you left-click on the title bar of a particular column. Right-clicking on the title bar does not really do anything (it brings up the same menu as if you clicked on a song except you haven’t clicked on a song). I think right-clicking a column title bar can be used to change “2nd sort” on the fly. The algorithm would be as follows:
- left-clicking on any MMC column title bar performs a 1st-sort for that column, and additionally, just like before, would do a 2nd-sort of some other column depending on the settings of “Collection 2nd Sort” sub-menu. Remember that these two columns would also get “1” and “2” in the left corner of their title bars.
- right-clicking on a different column would perform a 2nd-sort on that column, keeping the 1st-sort as before and over-riding the previous 2nd sort. So this in effect is like instantly changing what to 2nd-sort by.
Note that
- if you right-click on 1st-sorted column nothing happens
- if you right-lick on 2nd-sorted column, the 2nd-sort on that column is repeated and (if Stage 3 is implemented – see below) all higher sorting info is lost and higher-sorted title bar indicators reset to unsorted.
- if you left-click on 1st-sorted column or on 2nd-sorted column, or any unsorted column it works just like before – a 1st sort is performed on that column, and then a 2nd-sort is done depending on the setting of “Collection 2nd sort”.
As a result, one keeps all the existing functionality and control of sorting in MMC, but adds additional flexibility by making it possible to do different 2nd-sorts on the fly, while at the same time “Collection 2nd Sort” settings are still in effect whenever one does another left-click to do a 1st-sort.
Stage 3: Make deeper sorting possible (3rd- and 4th- sorting)
Here’s how to add to all of the above, to do easy 3rd and 4th sorting:
Let’s say we have sorted already by “1 Preference” and “2 Artist”. Now to do an additional sort on the album title for that Artist and preference, we need a 3rd-sort by Album.
So we double-click on the column title bar “Album”. Since that column wasn’t sorted before, a 3rd-sort is performed, and we get “3 Album” in the title bar. Now what if we also want to sort alphabetically within each album on top of that?
Well, we double-click on the column title bar “Title”. Since that column wasn’t sorted before (and the program remembers how many sorts N we have so far: N=3), an N+1-sort is performed , i.e. a 4th-sort is performed on title and “4 Title” appears in that column’s title bar.
One can in principle add more sorts that way, although more than 4 are probably never needed. You just keep double-clicking on the title bars of columns in MMC that have not been sorted already.
Let’s review all the mouse clicks and sorting actions:
- left-click on any column title bar, including any already sorted, performs a 1st-sort of that column, and performs a 2nd-sort on another column as per the setting in “Collection 2nd Sort”. Also, it resets the number of sorts performed to N=2. and MMC remembers (of course) which column is sorted-1 and which is sorted-2 and adds the numbers in the title bars of these columns.
- right-click on any unsorted column title bar performs a 2nd-sort on that column, keeping the 1st-sort as before and over-riding the previous 2nd-sort (and over-riding all higher sorts done previously). This is like a shortcut for going and changing the “Collection 2nd Sort” setting just for that sorting event. The number of sorts is [re]set to N=2.
- right-click on sorted-1 does nothing.
- right-click on sorted-2 column repeats the 2nd-sort of that column AND all higher-sorting information is lost/reset, and the higher-sorted title bars are reset to unsorted (no numbers to the left in the title bars). Also N is reset back to N=2.
- double-click on any unsorted column title bar performs an N+1-sort of that column, where N is the number of previously-sorted columns. The numbers are added to the title bars, and N is updated.
- double-click on sorted-1 and sorted-2 does nothing.
- double-click on sorted-3 repeats the 3rd-sort of that column AND all higher-sorting information is lost/reset, and the higher-sorted title bars are reset to unsorted (no numbers to the left in the title bars). Also N is reset back to N=3.
- double-click on sorted-4 does nothing, OR, if we have even higher sorting capabilities, then it repeats the 4th-sort of that column AND all higher-sorting information is lost/reset, and the higher-sorted title bars are reset to unsorted (no numbers to the left in the title bars). Also N is reset back to N=4.
What do you think? Please let me know if you would find any of this useful for your MMC collection.
P.S. The example I have given for up to 4th-sorting may not make sense to some, but you can easily see other scenarios where 3rd and 4th sorting is desired. I have a lot of tango music in MMC, and in tango a lot of bands may cover the same songs, and the year when issued is also important, so for me it would be very useful to do a 1st-sort by Genre to separate the tangos from milongas and valses (these are three types of tango songs), then do a 2nd-sort by Artist, then do a 3rd-sort by Title to see all tangos alphabetically by a particular artist, then do a 4th-sort by year because some have recorded the same song several times in their career. Or I can do a 3rd-sort by Year and then 4th-sort by Title to see an alphabetical list of tangos by that Artist for each year. With 3rd-sorting possibilities are even more – in fact I regularly find myself needing and wishing to have at least 3rd-sort capability.