Is there a way to create a compact "tag OK" column?

When looking at a file list, a bad tag in the Tag column can be hard to see. The Tag column is also quite wide and screen width is valuable.

The content of the columns can be modified... we can even make our own new columns, which is great.

But I don't yet see how I might be able to do something like this, where the good state is blank and the bad state is filled in. This would make it very easy to notice if there was a malformed tag.

Has anyone figured out how to make a compact tag health indicator with the existing tools?

Replying to myself...

Using this as the Value for a new column we can show either the ID3 version or the string "BAD" if the returned tag data has "BAD" in it.

$regexp(%_tag%,^(.?)(\bBAD\b)(.)$,BAD)

Not quite there yet ... a blank return for a good tag would be better... but progress. Clearly I need to learn more about regular expressions.

I thought about using an if(x,y,z) to say "if the field is 'BAD' then keep it otherwise print a ' ' " but as far as I can see the regular expression is not a boolean, it always returns true even if the match fails.

Is there a way to use the regex to look for text and return true/false?

best I can do for now:

image

You need an expression like $if($eql(Term1,term2),output for true,output for false)
See the help on scripting functions.

Please note that the orginal tag type display also caters for tags in files like flac, wav, mp3 - which might be interesting to know as e.g. mp4 tags do not allow padding with zeros in the track number. Also, you may discover flac files with stacked ID3 tags (which should be reduced to the voribs comments).

I would run the whole collection through both tools, mp3val and mp3diags, and then treat errored files accordingly.

Yes, but I can't figure out how to make the test in the first $if argument return true if the %tag% string contains "BAD". Regex does not do it and none of the boolean functions let me search for a substring.

True, but if you scan through the page of scripting functions, you will also find string functions like $strstr() that return the position of a string. So a test with $ifgreater() would return whether the substring is there or not.

Maybe this topic will give you some ideas?

1 Like

Oh, that does look promising, thanks!