Releases: regorxxx/Playlist-Manager-SMP
v1.0.0-beta.8 - Internal changes + UI fixes
Script should be installed as package, using the package manager at the SMP Configuration window. Old method is still supported anyway.
REQUIRES SMP OR JSPLITTER
Download below clicking at '[...]-package.zip'. Check installation instructions here.
See full changelog here.
1.0.0-beta.8 - 2026-01-12
Added
Changed
- Settings: internal changes at properties for future releases. This update MUST be installed before any possible future release to ensure settings are not lost on upgrading.
- UI: all settings mentioning transparency have been changed to opacity, some properties will be lost on update as result.
- UI: smooth scrolling improvements.
- UI: performance improvements on tooltip processing for playlist elements.
- UI: cut lines length on playlist tooltips if it exceeds 1024 chars in total, to comply with SMP limits. See here.
Removed
Fixed
- UI: mouse cursor being shown as hand when over left/right buttons even if they were not shown while using statistics modes.
- UI: button repainting glitch (also affecting tooltip) if mouse moved from a button to the scrollbar without leaving the panel is some cases.
- UI: smooth scrolling fixes.
v1.0.0-beta.7 - Hotfix
Script should be installed as package, using the package manager at the SMP Configuration window. Old method is still supported anyway.
REQUIRES SMP OR JSPLITTER
Download below clicking at '[...]-package.zip'. Check installation instructions here.
See full changelog here.
1.0.0-beta.7 - 2025-12-23
Added
- Importing file: added codepage popup when imported file is detected as a non UTF-8 file by Windows/SMP, so the user can force an specific codepage or rely on the detected one. See here.
- Exporting Playlists: added new menu to export any playlist file to any writable format, both in lite and non-lite mode.
Changed
- UI: improvements on dynamic colors handling in some extreme cases with main and secondary colors being almost equal.
- UI: improvements to dynamic colors handling for background and server-color sources. Added warning when trying to activate both at the same time.
Removed
Fixed
- Importing file: added missing example file.
- Importing file: fixed errors with remapped fields by foobar2000 (artist, track, filename, ...).
- UI: mouse wheel scaling of UI elements not working for any element but global font size.
- Relative paths: fix path protocol handling for non-portable foobar2000 installations. If somehow dead tracks are encountered due to this issue, batch replace all 'file://' or 'file:\' strings to '' (i.e. remove it) in all the affected playlists.
v1.0.0-beta.6 - JSplitter fix
Script should be installed as package, using the package manager at the SMP Configuration window. Old method is still supported anyway.
REQUIRES SMP OR JSPLITTER
Download below clicking at '[...]-package.zip'. Check installation instructions here.
See full changelog here.
1.0.0-beta.6 - 2025-12-12
Added
Changed
Removed
Fixed
v1.0.0-beta.5 - Resizable UI using mouse wheel
Script should be installed as package, using the package manager at the SMP Configuration window. Old method is still supported anyway.
REQUIRES SMP OR JSPLITTER
Download below clicking at '[...]-package.zip'. Check installation instructions here.
See full changelog here.
1.0.0-beta.5 - 2025-11-25
Added
- UI: UI elements are now resizable using Alt + Ctrl + Mouse wheel. Like the 'Font scaling' submenu, the scale change is applied depending on the mouse position.
- UI: added mouse wheel actions (data and resizing) to statistics mode.
Changed
Removed
Fixed
- Statistics: minor fixes.
v1.0.0-beta.4 - Foobar v2.25 support - relative paths protocol
Script should be installed as package, using the package manager at the SMP Configuration window. Old method is still supported anyway.
REQUIRES SMP OR JSPLITTER
Download below clicking at '[...]-package.zip'. Check installation instructions here.
See full changelog here.
1.0.0-beta.4 - 2025-11-19
- Search: added configurable tags for query creation at track drag n' drop into search input box. By default it uses TITLE and ALBUM ARTIST (the previous behavior). Similar to Library Tree mode feature.
- Paths: added support for compressed files in playlists. They can now reference tracks within zipped files like 'B:\The better life.zip\The better life\02 - Loser.mp3'.
Changed
- Exporting Playlists: changed TF expression for 'FiiO (playlists folder)' preset to better handle non latin chars.
- UI: tooltip on search input box will now show the entire expression along some info about the current search.
Removed
- Playlist locks: removed workaround (introduced at 0.16.0) for bugged SMP playlists locks for newest marc2003's SMP mod versions since it was fixed at the component level. 'ExecuteDefaultAction' lock is now available. See here.
Fixed
- UI: replaced offline font awesome cheatsheet link at some places. See Issue 89.
- Search: fix crash using search in some cases along folders.
- Search: fix crash using search in some cases with queries disabled.
- Search: fix invalid queries using search in cases where tag values were empty for drag n' drop query tags.
- Relative paths: fix relative path protocol handling on foobar2000 v2.25+. Mostly an internal rewrite. 2 warnings: paths will be written as absolute paths on playlists unless specified otherwise at the settings. And when using relative paths for playlists, the actual path written to files will be relative to the playlist folder (not to foobar2000 executable), otherwise playlist would be broken when loaded as file on any software.
v1.0.0-beta.3 - Internal fixes and improvements
Script should be installed as package, using the package manager at the SMP Configuration window. Old method is still supported anyway.
REQUIRES SMP OR JSPLITTER
Download below clicking at '[...]-package.zip'. Check installation instructions here.
See full changelog here.
1.0.0-beta.3 - 2025-10-28
Added
- Configuration: new setting (at 'Settings\Integration') to auto-delete playlists at startup (both UI-only playlists and playlist files) by name or RegExp. See here.
Changed
- Saving: popup which warns about saving before changing the playlist format to the default one now offers the possibility to do so, keep the current one or abort saving.
- Configuration: global support for %fb2k_component_path%, %fb2k_profile_path% and %fb2k_path% in any input asking for paths.
- Configuration: improved handling of user definition files found at '[FOOBAR PROFILE FOLDER]\js_data\presets\global' in case they got corrupted. The corrupted file will be backed up at the same folder and a new one created. Popups will warn about it, no longer requiring user actions. See here.
- Export settings: now uses '[FOOBAR PROFILE FOLDER]\js_data\export' folder at exporting.
Removed
- Playlist locks: removed workaround (introduced at 0.16.0) for bugged SMP playlists locks for JSplitter since it was fixed at the component level. 'ExecuteDefaultAction' lock is now available.
Fixed
- XSPF: fixed situation where an empty .xspf playlist loaded, without foo_xspf1 present, resulted in a playlist within UI with the playlist file handle loaded as track (instead of an empty playlist).
- UI: fix crash when setting columns width to anything other than auto (0).
- UI: fix crash when pressing 'END' or 'HOME' keys to scroll in some cases.
- UI: smooth scrolling fixes.
- UI: fix wrong order of some init methods due to usage of 'listen to color-servers' setting which resulted on tag filtering not being properly applied.
- UI: fix crash using dynamic colors on pseudo-transparent panels.
- Fix crash renaming/moving files in some cases.
v1.0.0-beta.2 - Hotfix + UI improvements
Script should be installed as package, using the package manager at the SMP Configuration window. Old method is still supported anyway.
REQUIRES SMP OR JSPLITTER
Download below clicking at '[...]-package.zip'. Check installation instructions here.
See full changelog here.
1.0.0-beta.2 - 2025-09-29
Added
Changed
- UI: color extraction from background art is now done before blur is applied. Done after blur returned gray tones in so many unintended cases.
- UI: tweaked how default colors -if not specified by user- are applied according to background and dynamic colors (from artwork). Standard playlists, UI-only playlists and folders should now have more predictable dark/light grey tones and dynamically adjust to background and standard text color.
Removed
- Installation: fonts are no longer bundled at '_resources' folder, but found at: https://github.com/regorxxx/foobar2000-assets/tree/main/Fonts
Fixed
- Auto-update: fix error including a file when enabling auto-updates if it was previously disabled.
v1.0.0-beta.1 - .fpl support + Queue + Search improvements
Script should be installed as package, using the package manager at the SMP Configuration window. Old method is still supported anyway.
REQUIRES SMP OR JSPLITTER
Download below clicking at '[...]-package.zip'. Check installation instructions here.
See full changelog here.
[1.0.0-beta.1] - 2025-09-25
Added
- AutoTags: new 'bMirrorChanges' tag which forces playlists reloading (if playlist was already loaded on UI) when the manager refreshes due to external changes. It may be used to mirror any change on files due to external software. Note this behavior may clash with changes made to playlists within foobar2000, since external changes always take precedence. There is not any kind of specific changes comparison, only the last modified date is checked.
- Search: new setting to search within queries by string matching. i.e. you can look for 'Rock' within all AutoPlaylists queries, and display those which use that word.
- Sorting: new entry at 'Filter and sorting' button menu to apply current panel sorting to playlist tabs. Not available unless UI-only playlists are tracked. Note it follows the folder tree (if folders are present), thus respecting the sorting within (sub)folders. For ex. if there is a folder named 'UI' which is the last one alphabetically, and it contains two playlists named '3', '2', etc. these playlist will be the last one at tabs, since they belong to 'UI' parent. Thus, for items in panel being shown as '4', 'My pls', 'UI'['2',3'], it would result in a sorting for the playlist tabs as '4', 'My pls', '2', '3' instead of '2', '3', '4', 'My pls' (if folders were not considered). Note flat/folder view may easily be switched pressing Ctrl + B. Benefits of this feature over other approaches (as shown here), apart from following folder tree, include being able to sort with any other method supported by the panel. i.e. not only alphabetically, but also by playlist size, date, etc.
- Sorting: new entry at 'Filter and sorting' button menu to alphabetically sort playlist tabs no matter if UI-only playlists are tracked or not (as shown here). Pressing shift while clicking the menu entry will invert order.
- AutoPlaylist: new submenu with AutoPlaylists presets at 'List menu' ('+' button). It has both standard presets and some based on current selection. For ex. 'Rated >3 tracks by selected artist' which outputs a different AutoPlaylist every-time you change the selection. Both query and playlist names are dynamically adjusted. This is based on Dynamic Queries, but entries are not configurable (use my other scripts for that). Feel free to suggest additional default entries though.
- AutoPlaylist: UI-only AutoPlaylists have a new menu entry to show the native AutoPlaylist properties window.
- Playlists maintenance tools: new entries to check for duplicates by TF for AutoPlaylists and standard playlists.
- Queue: new entry for folders, multiple and single selection to add playlist(s) contents to queue. See related thread. If any of the playlist is already present on UI, the tracks are sent from them, thus having queue idx associated (which may be used via TF on playlist viewers).
- Installation: new panel menu, accessed through 'Ctrl + Win + R. Click' (which works globally on any script and panel, at any position), used to export/import panel settings and any other associated data. These entries may be used to fully backup the panel data, help when moving between different JS components (JSplitter <-> SMP) or even foobar2000 installations, without needing to manually backup the panel properties or other external files (like .json, playlists, etc.).
- UI: new menu entry to share current UI settings across all available Playlist Manager panels within foobar2000. It can be found at the settings menu 'Panel UI' submenu. Every other panel will be highlighted and show a popup asking to import the new settings or ignore them.
- UI: new menu entry to close a playlist on the contextual menu.
- UI: new menu entries to add new playlists by specified extension (and not only the panel's default one).
- UI: new setting to force quick-searching by name instead of being associated current sorting method (by category, size, etc.). It's enabled by default.
- UI: added multiple popups and info related to the use of non-tracked items on library and files with subsongs (.cue, .iso, etc.).
- UI: settings button tooltip now shows 'Shift + Win + R. Click' shortcut to open SMP/JSpliter panel menu (which works globally on any script and panel, at any position).
- UI: quick help popup also shows the 'Shift + Win + R. Click' shortcut (see above).
- UI: settings to selectively chose what playlist metadata is shown on the tooltip.
- UI: created and last modified date can now be shown on tooltip.
- UI: new settings exposed for scrolling: smooth scrolling, reverse and rows per step. Smooth scrolling displays the animation within intermediate steps. Auto setting for rows per step will dynamically adjust the steps to the current size of the list.
- UI: new settings to control font scaling for different UI elements.
- UI: exposed color settings via window.NotifyOthers() method for themes/multi-panel support. You may pass a color scheme -size 6 recommended- (output from GetColourScheme()) at 'Colors: set color scheme' (applies to all compatible panels) or 'Playlist Manager: set color scheme' (applies only to this script), which will set appropriate colors following panel's color logic; alternatively you may set direct color settings at 'Playlist Manager: set colors' which needs an array of 5 colors or an object {toolbar, text, button, hover, active}. Panel has also independent settings to listen to colors from other panels (but not for sending colors as a color-server to others). See this and this.
- Playlists maintenance tools: new entry to check for subsong items in AutoPlaylists and Smart Playlists.
- Statistics: X-Axis shown values at display menu now allows any custom value.
- Statistics: Y-Axis filter at display menu now allows any custom value for 'greater than'/'lower than' filters.
- Statistics: option to filter data between 2 custom values on Y-Axis at display menu.
- XSP: added support for foo_playcount_2003 tags in Smart Playlists. i.e. '%2003_ADDED%', '%2003_LAST_PLAYED%', '%2003_PLAYCOUNT%' and '%2003_RATING%'.
- FPL: new settings to control .fpl playlists behavior, found at 'Playlist behavior\FPL playlists'. This submenu now exposes some previously hidden settings and also new ones related to JSplitter/marc2003's SMP mod.
- Exporting Playlists: 'Export and convert' presets have an additional option (at 'Playlist format' submenu) for .m3u and .m3u8 formats to switch Extended M3U usage. By default is set to true (previous behavior). It can be disabled for devices which can't parse comments prefaced by '#' (like Fiio devices). Fiio default preset has been updated with this setting.
- Console: additional logging options at settings menu.
Changed
- Installation: added support for foobar v2.25+ file-relative protocols.
- Installation: script may now be installed at any path within the foobar profile folder, no longer limited to '[FOOBAR PROFILE FOLDER]\scripts\SMP\xxx-scripts' folder. Obviously it may still be installed at such place, which may be preferred if updating an older version.
- Installation: multiple improvements to path handling for portable and non-portable installations. By default scripts will always try to use only relative paths to the profile folder, so scripts will work without any change when exporting the profile to any other installation. This change obviously doesn't apply to already existing installations unless restoring defaults.
- Installation: added popup warnings when scripts are installed outside foobar2000 profile folder. These checks can be tweaked at globSettings.json.
- Playlists maintenance tools: better handling of asynchronous processing, should work now better on slow HDDs when checking physical files (dead items, etc.).
- XSPF: revamped .xspf playlist loading for links and non-tracked files. It will now filter dead items and also there are multiple settings to control if non-tracked files should be loaded (they must exist) and how it's done. Added compatibility with foo_xspf1 as fallback loader, which may be specially useful to load single tracks from non-tracked cue files or other containers; without the component is not possible to do so, unless the container file is tracked (the manager handles it) since native foobar2000 is unable to load tracks by subsongs from external files.
- Playlist formats: already saved tracks file size and duration values will be rounded to 2 decimals on first init (after updating).
- Exporting Playlists: pressing SHIFT when clicking on any of the 'Export and convert' menu entries will skip tracks conversion and exporting and only process the playlist file. The submenu shows now this tip at the header. Issue 86.
- Exporting Playlists: 'Export and convert' action on folders or multi-selection will now collect all tracks first and fire a single converter thread for them, instead of one converter window per play...
v0.19.0 - JSplitter (SMP and x64) support
Script should be installed as package, using the package manager at the Spider Monkey Panel/JSplitter Configuration window. Old method -as file- is still supported anyway.
The package is the file named '*-SMP-X-X-X-package.zip ' fond -at assets section- at bottom.
REQUIRES SMP 1.6.1+ or JSplitter 3.6.1.0+.
(SMP mod version attached -at assets- on this page has some improvements by marc23)
See full changelog here.
0.19.0 - 2024-10-09
Added
- Auto-saving: new setting at 'Playlist saving\Skip overwriting Playlists on file loading' submenu to avoid overwriting the active playlist when sending selections from the album list or loading a folder or file(s). In such case, auto-saving may also overwrite the associated playlist file which may be undesirable or happen without the user noticing it. When this option is enabled, the playlist will be restored back to the previous state automatically and no saving will be performed. Note playback will start anyway with the selected track(s) although now they will not be visible on any playlist. This "overwrite lock" safeguard is only applied to playlists with a playlist file associated, not to UI-only playlists. Also, if enabled, some extra garbage logging may be produced when manually applying undo on a playlist (which can not be avoided since every undo action counts -internally- as deleting the entire playlist).
Changed
- UI: 'Export and convert' presets can now be cloned or moved into another position.
- UI: 'Export and convert' presets are now removed directly using every preset submenu instead of the 'Remove preset' submenu.
- UI: filter/sorting bottom toolbar can now be hidden.
- UI: reset filters button is now renamed to 'Filter and sorting' button, and has a dual purpose allowing to clear all filters or set sorting and filtering options via menus (replacing the bottom filter toolbar if desired). Note, however, the filter/sorting bottom toolbar has an advantage since it allows setting 2 filters at the same time.
- UI: header buttons list is now sorted by order of appeareance at the 'UI elements' submenu.
- UI: cleanup of quick help popup.
- Configuration: changed the remove duplicates bias to prefer tracks containing 'BEST' within a 'TRACKDSP' tag.
- JSplitter (SMP) support and ES2021 compatibility.
- Helpers: in case saving a file throws an error due to long paths (+255 chars) a warning popup will be shown.
- Helpers: updated helpers.
Removed
- UI: categories and tags submenu on settings menu is now hidden if there is a 'Filter and sorting' button on UI, since both offer the same functionalit
Fixed
- Auto-saving: fix for playlist update debouncing while panel was busy and tracks were deleted.
v0.18.1 - Bugfix
Script should be installed as package, using the package manager at the Spider Monkey Panel Configuration window. Old method is still supported anyway.
REQUIRES SMP 1.6.1 (mod version attached has some improvements by marc23)
See full changelog here.
0.18.1 - 2024-08-13
Added
Changed
- Helpers: updated helpers.
Removed
Fixed
- Subsongs: fixed path handling for tracks with subsongs when using 'Export and convert'. Indexes were being added at the output playlist (like my track.mp3,16), instead of being removed (since the converted tracks are always individual files). Seems to be a long time bug, which was not fixed previously and went unnoticed because the tracks were converted fine with proper paths (but the playlist did not point to the file).
- Playlists maintenance tools: fixed handling of files with tags showing '.' as value at Playlist revive tool, being reported as exact matches in some cases.
- Playlist Manager Path: disk checking not working properly when setting the playlists folder via menus.
- Relative paths: relative path handling not working properly -on saving- if tracks were not on the same disk than the playlist file. Now it uses absolute paths in such cases.
- API: updated with latest ListenBrainz API changes.
