That being said, let's say I want to create a custom column in a playlist, that says "that song has been played X days ago". I guess I can't do that yet. Because I could read the custom %played on% tag for each track, but if there's no $today() or $now() function outside of the masstagger, then I can't calculate the date difference [ %now% MINUS %played on% ], right ?
(Ah, but that was not your question, otherwise I would have continued...)
Fortunately foobar has plug-ins! You can use foo_dynfil (Dynamic Fields) for exactly that. It even has a handy function to save on math. So for example, once installed, go File > Preferences > Media Library > Dynamic Fields. Click the green plus to make a new field -
Name: Days since played
Aggregation: Min/Avg/Max
Title formatting: $if(%last_played%,$date_diff(%last_played%))
Aesthetic note: The reason I name the field in sentence form ('Days since played') is to match the other tech info fields under Properties > Details tab or the Selection Properties panel, but use whatever name you want.
This example is using the %last_played% date from Playback Statistics, which you can swap for your custom %played_on% tag (also below). FYI, I tried before to see if Masstagger would update that %last_played% field, but no luck, so custom tag would be the way.
Then, in your playlist column you can put something like -
$if(%last_played%,$ifgreater(%_Days since played%,1,%_Days since played% days,$ifgreater(%_Days since played%,0,%_Days since played% day,today)),never)
Which would look like: 2 days, 1 day, today, never. I guess you could add years, though that would require math. (Hey if anyone else can be bothered...)
Cheers