Nice to hear you have a strong opinion about how someone should write FREE software.
BTW. what's wrong with the $meta_ function family?
I can't express my frustration?
The Meta family, from my testing, has the same issue than the non-meta. $meta(artist) returns the same thing as %artist% if the field is empty. It follows the same hierarchy if one is empty: artist > album artist > composer > performer.
From the reddit thread, the person who replied posted this:
$if($and($meta(album artist),$not($strcmp($meta(artist),$meta(album artist)))),[$meta(artist)],)
If the original artist field is empty, it just goes into the "else" of the if.
After coding some custom tags checking into the box (since that's working, not going into it), I spent several hours writing and debugging to find out that:
https://wiki.hydrogenaud.io/index.php?title=Foobar2000:Title_Formatting_Reference#Remapped_metadata_fields , there you go. For queries you are also free to search for
artist HAS Sabbath
rather than
%artist% HAS Sabbath
if that better matches what you want.
If you read further, I mention this:
Yes, everything I've said here is in the Title Formatting Syntax document easily available in the Help menu.
I didn't mention it but I *did* try to search for solution but found absolutely nothing. And those "remapped" fields are just the same as those found in the help menu...
So, basically, for the artist it's...
$puts(artist-check,$meta(artist)) //put the value foobar finds for "artist" into variable)
$if($stricmp($get(artist-check),%performer%),Artist Field Empty Found Performer, //Check to see if we found performer in variable, otherwise, proceed to next check.
$if($stricmp($get(artist-check),%composer%),Artist Field Empty Found Composer, //Check to see if we found composer in variable, otherwise, proceed to next check
$if($stricmp($get(artist-check),%album artist%),Artist Field Empty Found Album Artist, //Check to see if we found Album Artist in variable, proceed to next check
$if($stricmp($get(artist-check),%artist%),Actual Track Artist Found And Exists,Error)))) //Finally, we are sure we have the artist of the track after checking all the fallbacks
Why do we have to check all that?? I just want to know the track's artist is present or not, not the album artist, the composer or the performer. That's my point. I repeat: both %artist% and $meta(artist) return the same value for me.
And this code only checks what the variable has, there's no code for my textbox in it which increase difficulty of understanding what I'm doing...