Skip to main content


Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Library Tree (Read 44641 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Re: Library Tree

Reply #75
^ That report is for v2.1.2. The issue should be fixed in the current version (v2.1.3).

Re: Library Tree

Reply #76
Thanks for this very nice script!
It works really well, however I've noticed that there seems to be an issue with sorting in "View by Folder-Structure" (using v2.1.3):
  • if I drag-and-drop an album with more than 10 tracks to a playlist using "View by Album" the resulting sort-order
     with respect to the track-numbers is fine, e.g.         1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 ...

  • if I do the same thing with "View by Folder-Structure", i get:  20, 10, 11, 21, 01, 02, 22, 12, ....

Re: Library Tree

Reply #78


I suspect its because the track number isn't padded in the filename.
i.e. they're 1, 2, 3, 10, 11 etc as opposed to 01, 02, 03, 10, 11 etc
I could see the issue. DUI album list behaves the same way.

The order is determined by OrderByRelativePath() which I have no control over.

%tracknumber% that's used in view by album automatically pads.

Library Tree also does a display sort for displayed text strings which has full numeric handling and so all displays in the actual tree correctly. But using that string sort on the whole library instead of OrderByRelativePath() doubles the initialisation time and likely wouldn't be compatible with the condensed style that OrderByRelativePath() produces.

I always pad track numbers in filenames.


Thanks. It looks nice!

Re: Library Tree

Reply #80
Well I reproduced it with 1.3.1 beta...

Re: Library Tree

Reply #81
@WilB, osenboz's problem was the following: 10, 11 ... 20, 21 was sorted as 10, 20, 11, 21 ..., which was caused by a bug in SMP v1.2.3 that resulted in the first character of path to be ignored during sort.
`OrderByRelativePath` (bugs aside) uses the same algorithm as Windows file explorer (hence the usual 1, 10, 11... problem).

[EDIT]: Judging by the bug report, osenboz actually has a proper padding for track numbers, so they won't be affected by Windows sorting problem either =)

Re: Library Tree

Reply #82
@TheQwertiest @WilB
Thanks a lot for your updates! (since my file-namings are properly padded, updating to SpiderMonkey Panel v1.3.1 solved the problem!)

Re: Library Tree

Reply #83
Thank you for this component, it's very fast! I love the now playing filter feature.

Feature idea/request: allow specifying multiple tags at the same branch level that will create multiple entries. This is a feature of Facets. For example the first tree level could be %<artist>%OR%<album artist>%, where OR is some divider. Then under the The Beatles node, for example, you will see albums where album artist = The Beatles, and also any tracks where artist=The Beatles from other albums (without duplicate entries where album artist == artist == The Beatles)

Re: Library Tree

Reply #84
Hi @WilB , testing Library Tree right now :)
So far so good, but I have noticed a glitch maybe :
In Panel Properties, if I change _CUSTOM COLOURS/FONTS : USE from False to True, all results disappear, regardless of what I put in _CUSTOM COLOURS/FONTS : EMPTY = DEFAULT (e.g. 255-0-0). Playing a new track doesn't solve the issue.

My goal would be to keep the same font, but change its color and make it bold instead of regular. Is that possible ?
Also, I would like to know if I can rename the "All Music" to something else. Thanks !

Re: Library Tree

Reply #85
It should work. I tested & it seemed fine.

All the custom handling has changed in the next version anyway & so it will be much easier to change.

Options > root node > view name enables use of the 'view name' which is configurable. Again all this will be much easier in the next version.

Re: Library Tree

Reply #87
No reply yet, but here's a new question about Library Tree. This code doesn't seem to work as a custom filter :

Code: [Select]
$nowplaying{$meta(comment,0)} HAS artist

@WilB , could you tell me why it doesn't work?
The goal would be to find other tracks where the artist would be mentioned in the %comment% field of the current playing track.
That's because some of my tracks have a %comment% field that says : "This track has a small sample taken from this other track : ARTIST / TITLE".
In that case I'd like Library Tree to help me fetch that other track.

Re: Library Tree

Reply #88
Code: [Select]
comment HAS $nowplaying{$meta(artist,0)}

I don't have a definitive eta. All release scripts have had a significant upgrade. Ini file has gone from bio plus all scripts now have proper settings dialog. Additionally, there's a bunch of new features mostly eluded to here or there. Code changes are mostly done now. Code clean up and testing needed tho...

Re: Library Tree

Reply #89
New Version: Library Tree

Spider Monkey Panel 1.4.1+
IE8 or later

Please post discussion here


IMPORTANT: If updating from v2.1.3, and you wish to retain settings, export panel properties before installing the new version. Import them after installation.

This version has to be installed as a package.
1) Add a spider monkey panel to foobar2000.
1) Right click the spider monkey panel while pressing the windows key + shift. Choose configure panel.
2) On the script tab choose package.
3) Click the import button and import the library tree package.

Please note that the package manager is a new feature of spider monkey panel. If you experience issues with the spider monkey panel installer follow the guide in the spoiler here. If you wish to do a manual install as in the guide, just change the master folder to {E85C9EF0-778B-46DD-AF20-F4BE831360DD}

Re: Library Tree

Reply #90
Nice new version. Thanks.

Having a problem with updating a playlist that has ONLY the disable remove playlist lock. It doesn't update until I remove all locks. I would have thought that the playlist should update - as far as the user is concerned it's not being removed, it's being updated. But it's no big deal, I'm sure we can live with it.

Re: Library Tree

Reply #91
Code: [Select]
comment HAS $nowplaying{$meta(artist,0)}
Thanks WilB. I see your point. That doesn't work in my case, but maybe there's no solution for what I'm trying to achieve.
I'm using Library Tree to retrieve songs that are similar to the currently playing song, and put them into a special playlist.
That works for songs that have the same title for example.
But sometimes my comment field has info that looks like this : "This song contains a sample from {Song title} by {Song artist}".
In that case, I'd like to retrieve {Song title} by {Song artist} in my library and add it to the special playlist. Can that be achieved ?

Currently my query is :
Code: [Select]
title IS $nowplaying{$if2($meta(original title,0),$meta(title,0))}
OR original title IS $nowplaying{$meta(title,0)}
OR comment HAS $nowplaying{$meta(artist,0)}

Re: Library Tree

Reply #92
^ moved to correct location in main discussion thread

Re: Library Tree

Reply #93
New Version: Library Tree v2.2.0

Spider Monkey Panel 1.5.0+
IE8 or later

Please post discussion here


This version has to be installed as a package.

If UPDATING consider exporting panel properties to back-up settings (right click the panel while pressing the windows key + shift)
    - REQUIRED if updating from v2.1.3 or earlier & you wish to retain panel settings. Import them after installation.
    - OPTIONAL if updating a package, as settings should automatically be retained. Recommended as good practice, if you've done significant customization, in case the unexpected happens.

New install or update:
1) Add a spider monkey panel to foobar2000 if required
2) Close any instances of windows explorer using foobar2000 folders or subfolders
3) Right click the spider monkey panel while pressing the windows key + shift
4) Choose configure panel
5) On the script tab ensure package is selected
6) Open package manager if it doesn't open automatically
7) Import the package

SimplePortal 1.0.0 RC1 © 2008-2021