RetroArch icon indicating copy to clipboard operation
RetroArch copied to clipboard

(Menu) Organize/re-order Playlists in the XMB

Open klepp0906 opened this issue 6 years ago • 13 comments

A little organization goes a long way. Alphabetical works fine for romlists - and sorting roms manually would be too impractical anyhow, RA would benefit from a means to organize playlists in the XMB.

If trying to stick to the libretro naming conventions (which you obviously should if/where you can, or at least I do) you'll end up with things like PS2 coming before PSP which comes before PS1. Or 3DS coming before DS etc.

If you want to group your playlists with handhelds before consoles or vice versa. Or have PS1 before PS2 before PS3 etc. You dont really have a means to do so at the moment.

klepp0906 avatar Aug 01 '19 15:08 klepp0906

If I'm reading you correctly, you'd like an option in Playlist Management to set the order of the playlists in the menu?

Something like "Playlist Management->Sort Playlists" with your playlists being shown and then having a way to move each one up or down in the list. When you hit the OK button on a playlist give the options "Move to Top", "Move Up", "Move Down", and "Move to Bottom". That's how I'm envisioning it at the moment.

It seems doable, although I don't know how we should save the setting.

tmtvl avatar Aug 07 '19 21:08 tmtvl

yes, that sounds plenty feasible. ultimately the exact implementation is up to you to decide, taking into account the difficulty of course.

As far as saving goes, I imagine it would have to be a section of retroarch.cfg right? Unless a separate file was made for it in and of itself. Or perhaps a numbering in the playlist.lpl - similar to how the new "label_display_mode": # works. With a number corresponding with where it falls on the playlist left to right or something.

klepp0906 avatar Aug 07 '19 21:08 klepp0906

That would be great! If it’s not possible to have a 100% custom order, in my opinion also a group of basic settings could be OK. For example: order by consolle release date, alphabetical, manufacture, etc.

illando avatar Aug 18 '19 00:08 illando

A feature to sort playlists still doesn't exist, am i right? I feel like the ability to manually order consoles and the games on each playlist is the last big step to make retroarch the definitive digital library for videogame preservation. And it is kinda baffling to me, since there so many minor options for customization.

MastartP avatar Jul 14 '20 07:07 MastartP

Adding to this feature request: currently playlists are ordered Alphabetically, and this sorting behavior can only be achieved by renaming them, which breaks the naming conventions and any associated dynamic wallpapers/icons/etc. Doing it this way is functional, but "dirty" and not a real solution. But the fact it works on all menu drivers currently does show that supporting arbitrary orders is quite possible at least. I feel like this request should be renamed now as Ozone has taken over as the primary Menu Driver, but this will improve both. @RobLoach would this be possible?

Having the playlist order offer some defaults other than (A-Z) such as (Console/Handheld/Arcade) in various orders, (by Console Generation), or (by release year) would be good defaults to have I think, as well as allowing a (Custom Order) reference that simply name-matches to the order in a separate .cfg file.

Ideally building this functionality into the Desktop Menu and the Ozone/XMB interfaces for nice visual feedback would be ideal, but short term to get the feature in a simple .cfg reference would be fantastic.

jedinjapan avatar May 06 '21 05:05 jedinjapan

I'd suggest a few things...

  1. Use Explore feature. It lets you search and browse nicely.
  2. Disable Sort Playlists Automatically
  3. Edit the .json files directly, or use an external tool
  4. Would be great to have this editing in the Desktop UI. I think it's a lot to ask for in a couchtop setting like XMB or Ozone.

RobLoach avatar May 06 '21 06:05 RobLoach

Thanks for the reply. I apologize as I tagged you with the hopes of renaming this issue as it is currently labeled as an XMB specific issue/request but applies to most menu drivers. I also think the goal was made unclear: Playlists can be created/edited using the Desktop UI or external tools and with sorting off can have custom orders. But the console/system sort order when using the menu driver cannot be changed unless breaking Retroarch naming conventions, as System sort is always 100% Alphabetical and cannot be disabled. Making a new playlist called "1. Genesis" will place it at the top of the sort, but looks bad and breaks the UI icon naming conventions as well, losing the icons for the Sega Genesis system. There exists no setting to change this alphabetization behavior yet, nor any re-ordering function in the Menu drivers or Desktop UI.

  1. Explore is fantastic, but less so when looking to browse favored groups instead of finding a specific title. While no one wants Retroarch to become a "netflix" style interface, being able to pin favored systems like NES, Genesis, Saturn, and other personal favorites to the top of the sort order positions would make casually browsing your library easier, especially when dealing with small-to-medium sized collections. In short, this is a fantastic feature, but one that serves a separate, parallel purpose. I do not often play Atari for example, but it is always near the top.

  2. This can disable Alphabetical sorting within specific playlists and allow editing with external tools, but this is a separate sorting concern. This does not affect the order of appearance of the system playlists on the Menu driver. What if I want History enabled, but to come last on the list, as I rarely use it?

3 & 4. These are great options for sorting items within said playlists and with Sort Playlists turned off allows moving items to a custom layout. I think for couchtop UI we would be hoping for something akin to re-ordering pinned libraries on a Plex server (link below), which is very remote/controller friendly. Keeping the UI burden down, the user could press or hold a menu hotkey on the system to be given the option to "move Playlist" and re-order them, for example. This could be done within the UI, or could even have a note that once reordered: (Retroarch must be restarted to reflect changes). Etc. https://support.plex.tv/articles/navigating-the-big-screen-apps/

In my mind this would be similar to how search was recently mapped to a retropad button. Having an option to map a dedicated "sort" button hotkey (I would use the X or Triangle position myself), users could short press sort to "grab" a menu item within a playlist (if auto-sort is disabled, otherwise the short press does nothing), or hold sort to grab the playlist itself (if auto-sort systems (a new setting) is disabled, otherwise long-press does nothing). With the relative positions of the systems being written to a new .json file as well.

The above is a complex request however. In lieu of anything that grand, I would suggest if possible adding a very basic implementation first to help those looking for the feature and to build on by storing the system sort order to a json file and adding a setting to toggle system auto sort or use the custom .json. That would still require the user to use outside editors/tools to reorder the .json file, but would give us a start.

jedinjapan avatar May 06 '21 07:05 jedinjapan

I would also love this feature. As described, currently there's no way to achieve this without renaming and breaking icon and database association. It's very messy specially now that the History playlist also allows to have icons on it.

Something as simple as a "sort" integer on the .lpl playlist file would suffice.

nfp0 avatar Mar 12 '22 16:03 nfp0

Would be nice to have. I think 1.13 for me had the truncate option by default, which completely messed up the playlists by manufacturer. Not sure why that setting would be default. New users wouldn't know where to go to find it, and I feel manufacturer works best on sorting playlists.

Khronikos avatar Nov 20 '22 20:11 Khronikos

@Khronikos Correct me if I'm wrong, but I believe playlists are still sorted the old way by default, even if the manufacturer name is not displayed by default.

My defaults look like this: ozone_sort_after_truncate_playlist_name = "false"

But I see where your confusion (and probably many other users) is coming from. The default changed to false on 1.13.0 It seems the default was true before, so people upgrading are inheriting the true value from their current configs and have their sort order all messed up until they find the setting.

nfp0 avatar Dec 05 '22 03:12 nfp0

Has there been any intent or progress on implementing this?

I tried this but without success: https://github.com/libretro/RetroArch/pull/10636#issuecomment-2707282091

This is a basic feature (not easy, I know) I wish would be implemented on RetroArch even if through a somewhat hacky way.

nfp0 avatar Mar 07 '25 19:03 nfp0

Yeah, this would be a really big improvement to the UI. To my eye, this is a real mess.

Image

edit: moved text in to separate comment for clarity.

mr-falafel avatar May 26 '25 13:05 mr-falafel

Since it's already possible to optionally sort by manufacturer, it seems to me (probably ignorantly) that release date could be added in a similar way? Perhaps default playlist names could be updated to something like, "Sega - 1995 - Saturn", with an option to truncate the date away but keep the sorting. Similar to the current option for manufacturer. Can anyone with more understanding of retroarch/libretro chime in on that?

mr-falafel avatar May 26 '25 14:05 mr-falafel

I'd suggest a few things...

1. Use Explore feature. It lets you search and browse nicely.

2. Disable Sort Playlists Automatically

3. Edit the .json files directly, or use an external tool

4. Would be great to have this editing in the Desktop UI. I think it's a lot to ask for in a couchtop setting like XMB or Ozone.

Since this thread was bumped for some reason, Rob, is there any way you can push through the 32X box art pull request I have barring any issues? It's just remastered box art done on a calibrated OLED, not that much different than what I put through before. But the old ones really annoy me. Overall, it's a lot more balanced. Was also going to do a SegaCD request, too, because it's not in great shape. Unless you guys don't do this anymore. Anyway, thanks.

Khronikos avatar Jul 28 '25 15:07 Khronikos

I'm still wondering where this feature is as well. Though I'll admit I haven't delved too much into Retroarch's code, I do not think that this feature would be much of an issue to add at all. It's honestly I tiny bit frustrating. I can deal with it obviously but its confusing how something so simple could be this neglected (not to be negative).

graingermc avatar Dec 02 '25 23:12 graingermc