Giter VIP home page Giter VIP logo

retroarch-playlist-editor's People

Contributors

marcmax avatar marcrobledo avatar robloach avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

retroarch-playlist-editor's Issues

Export options db_name must be left as-is so that thumbnails are shown for mixed system playlist (cross-platform or cross-folder ROMs)

The web app as hosted as of 2022-02-14 transforms db_name to that of the playlist name.

  • That is wrong. But no wonder, because the user documentation on this was wrong!
    • Which I found out by experimentation, and meanwhile already updated the user docs accordingly.
    • My version is here for reference and meanwhile it was already accepted to the official user docs
  • The key finding, which is relevant for this issue:

The db_name attribute entry must be the ROM's corresponding Exact Game Platform Playlists Name.lpl (e.g. Nintendo - Game Boy.lpl) in order to be associated with the correct metadata and thumbnails.

  • Here is a screenshot which shows that db_name gets set to Name of the new playlist.lpl which will result in thumbnails and metadata not being found in your custom created playlist:
    Playlist v1 5 and how its exported as v1

Chokes on playlist files containing JSON comments

Reproduction

  • Import a LPL file in JSON format which has some comments in it

Actual

  • Playlist Editor as of 2022-02-14 chokes on them, you get a broken list.

Expected

  • Minimum fix: Drop all comments during import.
    • Machine produced playlists likely not contain them.
    • But you never know, maybe some playlist apps use comments to add proprietary tags or user comments that way.
    • Or users put manual remarks their.
  • Better: Drop all comments which are on their own lines. Hard to determine to which part the supposedly belong too, when reordering items. But keep the comments which are at the end of a line after the respective key/value pair. Clear that it belongs their. Not necessary. If do-able without too much effort maybe a convenient options, if some users may keep remarks regarding ROMs like this.
  • Best: Keep all comments. But requires some logic. Overkill IMHO.

Screenshot

Playlist Editor chokes on playlist files with JSON comments

Sample file Playlist-with-comments.lpl

{
  "version": "1.5",
  "label_display_mode": 3,
  "right_thumbnail_mode": 0,
  "left_thumbnail_mode": 0,
  "sort_mode": 0,
  "items": [
    {
      "path": "1",            // Comment after the key/value pair.
      "label": "Game 1",           // Comment after the key/value pair.
      "core_path": "/data/user/0/com.retroarch.aarch64/cores/duckstation_libretro_android.so",
      "core_name": "Sony - PlayStation (DuckStation)",
      "crc32": "1",           // Comment after the key/value pair.
      "db_name": "Sony - PlayStation.lpl"
    },
    {
      "path": "2",
      "label": "Game 2",
      "core_path": "/data/user/0/com.retroarch.aarch64/cores/duckstation_libretro_android.so",
      "core_name": "Sony - PlayStation (DuckStation)",
      "crc32": "2",
      "db_name": "Sony - PlayStation.lpl"
    },

      // Comment on its own line. Not so easy to determine to which JSON element it belongs.

    {
      "path": "7",
      "label": "Game 3",
      "core_path": "/data/user/0/com.retroarch.aarch64/cores/mupen64plus_next_gles3_libretro_android.so",
      "core_name": "Nintendo - Nintendo 64 (Mupen64Plus-Next)",
      "crc32": "",
      "db_name": "Nintendo - Nintendo 64.lpl"
    },
    {
      "path": "8",
      "label": "Game 4",
      "core_path": "/data/user/0/com.retroarch.aarch64/cores/duckstation_libretro_android.so",
      "core_name": "Sony - PlayStation (DuckStation)",
      "crc32": "8",
      "db_name": "Sony - PlayStation.lpl"
    }
  ]
}

Offer export option "Keep core as-is" (core_path and core_name remain unchanged)

  • In case of someone just merging playlists, it's best to just keep it as is!
  • Instead of trying to normalize, but instead break it, which is the case in your hosted web app of 2022-02-14.
  • So please at least just offer the option "Keep core as-is"
  • Currently you only offer concrete core-schemes or DETECT, but no "keep as-is" option.

Playlist export option core as Android

Playlist export option core as DETECT

Playlist v1 5 and how its exported as v1

Reordering elements

Would it be possible to add the ability to reorder elements? There are some titles that should theoretically appear before another but do not.

For example:

Mega Man 2: The Power Fighters
Mega Man: The Power Battle

In instances like this, it would be most preferable to easily be able to reorder the items so that Mega Man: The Power Battle would appear first.

Rename thumbnails match to the playlist name

Hello, thanks you for your awesome tool! can you add feature to rename thumbnails match to playlist name? my thumbnail match to roms name, but retroarch read the playlist name to display thumbnails, need to rename one by one will be pain, thank you in advance

Preserve playlist options

Reproduction

  1. Import a playlist in version 1.5 format which also has playlist options like this:
{
  "version": "1.5",
  "default_core_path": "",
  "default_core_name": "",
  "label_display_mode": 5,
  "right_thumbnail_mode": 0,
  "left_thumbnail_mode": 0,
  "sort_mode": 0,
  "items": [
    {}, {}, {},  # Playlist items
  ]
}
  1. Perform your playlist operations.
  2. Click "Save playlist".
  3. Inspect the resulting playlist.

Actual

  • The playlist options are lost on export.

Expected

  • The playlist options (in the JSON "header" before the "items" array) is preserved in the export.

  • If you drag-n-drop multiple playlists (consecutively) onto Playlist Editor, it takes the options of the first playlist that was dropped. Otherwise you would need to take care of how to unite the options, which would need quite some logic or user intervention.

  • As soon as the second playlist is dropped, throw a toast message (of severity "info", the ones which disappear by themselves after a timeout) like this:

    Imported more than 1 playlist

    • ROM items from multiple playlists got merged successfully.
    • But playlist options are only considered from the first playlist.

Workaround

  • Export playlist. Then re-insert the header snippet from a backup of the playlist. Save.

Screenshot

Playlist v1.5 and how its exported as v1

New cores support

Since RetroArch started to support new cores such as Final Burn Neo, could you please add these cores to the editor? Thanks!

Thanks for this very useful tool!

I thought I will do my playlist editing in a spreadsheet app and already searched for json2csv and csv2json tools.

So nice to get a readymade solution!

Great that you can very easily merge content of files just by dropping them consecutively.

Thanks! I will check the RetroArch docs/wiki and see whether it mentions your tool.

If not there I will try to add it there as a recommended helper tool.

Playlists has no icons and only black squares when I load them

The playlists just have black squares and no icons when load them in RetroArch on my Nvidia Shield TV. The auto generated playlists made from scanning the directories have the right monocrome icons but these just get black boxes. It is not very pleasant and quite annoying. Is this something I can fix on my own or is this a problem with this great editor?

Importing content creates cut-off filepaths

Essentially whenever I import content the filepath is entered as say ./roms/ instead of the actual filepath of D:games/retroarch/roms/game.etc. Oddly enough this worked for SD cards and my Wii-U but not my plain old PC.

image

Add select / checkbox for regions

For example I would like split games by playlist for each region ( Europe / USA/ japan)

Other solution would be create custom priority of removing dupes, for example I would like have first Europe, if exist, then USA, and only then JP, now it takes what first found

More keyboard commands

A pre-requirement for both mouse-based or keyboard-based selection to work efficiently is #23

As soon as this is implemented I propose to add more keyboard commands for selection and moving selection:

  • Move focus up/down by ArrowKeyUp/ArrowKeyDown
  • Extend selection with shift + ArrowKeyUp/ArrowKeyDown
  • Move up with alt + ArrowKeyUp/ArrowKeyUp (as in many text editors, IDEs)

More advanced ones:

  • Select all items with ctrl-A (cmd-A on Mac)
  • Extend selection to top item with ctrl-up (cmd-up on Mac)
  • Extend selection to bottom item with ctrl-down (cmd-down on Mac)

Edit content shall only open on double click (pointer devices) or long-press (touch devices)

  • As of 2022-02-14 the "Edit Content" dialog opens on single click.
  • This assumes that "Edit content" is the main and only function of Playlist Editor.
  • Which it is not!

Selecting to then move or delete is as important!

  • And in order to do this you currently always have to click, then close the dialog by mouse or ESC. Only then resume.
  • Quite cumbersome

Proposal

  • Single click only selects
  • Double click (on pointer devices) or long-press (on touch devices) opens the "Edit Content" dialog

games do not load

I have been trying to make a SNES playlist to use on my switch. I was able to make one for my PSX games but i cant get my SNES roms to load in the list it just tells me content can not be loaded. My SNES roms are zipped if that makes a difference. I set the file path just like i did for the PSX games so i dont thing i messed up there.

Allow to extend selection by clicked item

Reproduction

  • You have an active selection (possibly by help of #24)
  • You want to extend it by certain single non-consecutive items

Actual: Not possible

Expected: Click with modifier-key down (cmd on Mac, ctrl on Window/Linux)

User Rationale: Select multiple items to move or delete, a quite frequently used function in any playlist editor

JSON syntax error, missing escape character

json_escape

Specifying default core path in RetroArch Playlist Editor strips escape characters from the default_core_path. A syntax error will occur and all entries will be lost. The lpl below was created within RetroArch.

Can't import content by folder

Can only import individual files not entire folders.
I'm using android and the drag and drop feature is not applicable.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.