github regorxxx/Playlist-Tools-SMP v4.0.0
v4.0.0 - UI revamp + Selection/playlist manipulation improvements

latest releases: v5.1.1, v5.1.0, v5.0.0...
22 months ago

There may be a SMP's bug on installation. See wiki.
REQUIRES SMP 1.6.1 (mod version attached has some improvements by marc23)

WARNING:
Changed filename for 'buttons_others_device_selector.js' to 'buttons_device_selector.js' and 'buttons_others_main_menu.js' to 'buttons_utils_main_menu.js'. Before updating, rename all instances of these names at '[foobar2000 profile]\js_data\buttons_XXXXX.json' with the new names. 'buttons_XXXXX.json' are all json button toolbar files.

See full changelog here.

4.0.0 - 2024-02-28

Added

  • Last.fm: added caching to YouTube links lookup, which can now be configured by date (or disabled setting it to zero). Pressing Shift + Click on any menu entry will also bypass the cache.
  • Selection manipulation\Advanced sort...: new harmonic mixing entries to repeat patterns in small cycles (30 tracks) instead of applying a pattern for the entire selection (which results in too many consecutive tracks with same key for big selections).
  • Playlist manipulation\Harmonic mix: new harmonic mixing entries to repeat patterns in small cycles. See above.
  • Selection manipulation\Advanced sort...: new harmonic mixing entry to apply a semi-random pattern.
  • Playlist manipulation\Harmonic mix: new harmonic mixing entry. See above.
  • Selection manipulation\Expand...: added 'By Album Artist', 'By Decade', 'By Protocol' and 'By File/Url' entries.
  • Selection manipulation\Jump...: added 'By Album Artist', 'By Decade', 'By Protocol' and 'By File/Url' entries.
  • Playlist manipulation\Query filtering: added 'Not links' and 'Same decade' entries.
  • Other Tools\Check tags: new option to also check if genre/styles exist at the Music Graph from Search-By-Distance-SMP.
  • Macros: custom macro button now has a menu entry to edit the button name (which was previously only editable on first init).
  • Buttons: added more icons to Playlist Tools submenu custom button.
  • Toolbar: new settings for text (or icon) position: left, right (default), top and bottom. These settings mimic CUI options at the buttons bar.
  • Toolbar: new settings for text scale (now independent of button and icon scale).
  • Toolbar: new settings for icon scale (now independent of button and text scale).
  • Quicksearch: added new option 'Partially includes' which uses 'HAS' instead of 'IS' to find matches at any place of a tag.
  • Configuration: added COMPOSER to the list of global tags.
  • Configuration: added LOCALE LAST.FM to the list of global tags.
  • Configuration: added integrity checks to global user settings files, found at '[FOOBAR PROFILE FOLDER]\js_data\presets\global[...].json'. In particular queries are now check to ensure they are valid and will throw a popup at init otherwise. Other settings are check to ensure they contain valid values too.
  • Configuration: expanded user configurable file at '[FOOBAR PROFILE FOLDER]\js_data\presets\global\globSettings.json' with a new setting to output to console profiling logs at script init. They work globally. Disabled by default.

Changed

  • Selection manipulation\Expand...: greatly enhanced performance for large selections.
  • Selection manipulation\Jump...: greatly enhanced performance for large selections.
  • Other Tools\Write tags: checks now if the tracks exist (as file) before processing and will skip those being a link or dead. This should have been handled by the external tools but it produced errors on some cases.
  • Other Tools\Check tags: list of excluded values is now checked after using and rewritten in case there are duplicate tag keys with different casing (STYLE vs style) or duplicated tag values.
  • Search same by: default entries now use the global tags set.
  • Search same by: if an entry tag matches one at global tags, the entry is named as its key (instead of using the TF expression). For ex. using '$year(%DATE%)' as TF, will be shown as 'Date' on the menu entries.
  • 'Other tools\Check tags': composer check now uses the vale at global tags.
  • Pools: .xspf playlists now follow the complete specification, allowing multiple locations per track. In case one is not found, the next one is used. Previously only one location per track was allowed. Content resolution via tags has not changed since that was already implemented.
  • Quicksearch: 'Partial match' and 'Begins with' options now formats the tag values with lower case to retrieve more matches.
  • Configuration: changed the remove duplicates bias to prefer tracks with higher play-counts and positive feedback tag (love/hate).
  • Helpers: updated helpers.
  • Console: improved log file formatting on windows text editors which parse new lines only with CR+LF instead of LF.
  • Buttons: changed filename for 'buttons_others_device_selector.js' to 'buttons_device_selector.js' and 'buttons_others_main_menu.js' to 'buttons_utils_main_menu.js'. Before updating, rename all instances of these names at '[foobar2000 profile]\js_data\buttons_XXXXX.json' with the new names. 'buttons_XXXXX.json' are all json button toolbar files.
  • Code cleanup.

Removed

Fixed

  • Macros: fixed macros button and custom macro button to work with the latest changes to macros on 3.7.0.
  • Other tools\Import track list: error setting custom path.
  • Other Tools\Check tags: fixed regression with value comparison not working in some cases.
  • Toolbar: buttons' size not restored back to normal height after disabling 'Full size buttons' without reloading the panel.
  • Pools: in .xspf playlists, identifier tag was not working properly at the content resolution step (usually used for MUSICBRAINZ_TRACKID).
  • Pools: .xspf playlists not loading properly when content resolution was used in some cases.
  • UI: wrong parsing of png masks on unix systems (currently, it only affected the ListenBrainz icon when changing the font color).
  • Most played tracks at: last.fm listens are now deduplicated within a 30 seconds range to ensure tracks are not counted twice in some cases where the timestamp differs by some second.
  • Minor fixes.

Don't miss a new Playlist-Tools-SMP release

NewReleases is sending notifications on new releases.