There may be various ways to go within Mp3tag, but at first in a simple way you can setup a group of actions, ... having one action for each case.
Set up a group of actions,name the group as you want.Fill the group with actions.1.Action "Format value"Field ......: GENREFormatstring:$if($eql($lower(%ARTIST%),'pink floyd'),'Progressive',%GENRE%)2.Action "Format value"Field ......: GENREFormatstring:$if($eql($lower(%ARTIST%),'metallica'),'Heavy Metal',%GENRE%)3.and so on ...
Apply the group of actions against one or more selected files.
If you do not want to check for artist names, written entirely in lowercase, ...
but want to check for artist names in mixed case, ...
then you can remove the function $lower() from the formatstring.
This will not work ...$if($eql($lower(%ARTIST%),'The Pretenders'),'Rock',%GENRE%)... or ...$if($eql($upper(%ARTIST%),'The Pretenders'),'Rock',%GENRE%)This will work ...$if($eql(%ARTIST%,'The Pretenders'),'Rock',%GENRE%)... or ...$if($eql($lower(%ARTIST%),'the pretenders'),'Rock',%GENRE%)... or ...$if($eql($upper(%ARTIST%),'THE PRETENDERS'),'Rock',%GENRE%)... or ...$if($eql($lower(%ARTIST%),$lower('The Pretenders')),'Rock',%GENRE%)... or ...$if($eql($upper(%ARTIST%),$upper('The Pretenders')),'Rock',%GENRE%)... or ...$if($eql($upper(%ARTIST%),$upper('ThE preTenderS')),'Rock',%GENRE%)... or ...$if($eql($lower(%ARTIST%),$lower('ThE preTenderS')),'Rock',%GENRE%)To be more error free,then remove special characters from the artist names ...$if($eql($replace($lower(%ARTIST%),'',,'&',,'#',,'-',,'`',),$replace($lower('Frank Zappa & The Mothers'),'',,'&',,'#',,'-',,'`',)),'Rock',%GENRE%)
The export format and the import format have to match.
If you use the tab character (char 9) as separator, you have to input that somehow for the import mask - very tricky to do as TAB usually navigates to the next element in the dialogue.
You would have to use a printable character, not a control character for the export, e.g. ";" or "_"
Please explain in your words what you want to achieve with the report output.
Note: When importing data, Mp3tag's base target element is the single track.
Therefore you have to address each file when importing data.
If you want to output data from tracks into report text file, ...
and afterwards you want to import data, then you have to address each track solely.
While exporting this can be done by using the %_path% variable in a $loop() command.
When importing, the exported %_path% data is the binding relation between data and target file.
i have a thousands of audio files (i have around 150 different genres for all my artists)
when i add a new album with an artist i already had tag, i do not want to open old audio files to look at the (genre) i already tagged
It is why i followed the steps your posted yesterday and it do not work corrctly (syntax error)
i tried another way (export some fields of all my artists by genre) but my export fields do not work corrctly
I only want to save time and have a bank of Artist by genre
How do you then know which artist you already have? I mean, without looking it up?
I most certainly do not know how I tagged certain artists.
And in general I doubt that the rule "one artist = one genre" applies. I think that more or less any artist is good for several genres. The artist Sting, e.g. has released pop albums as well as (almost) classical music/musical ... Same applies to Herbie Hancock (jazz, electronic) and many more.
Back to the technical side: I think that you have to create one export for each artist-genre combination (perhaps filename = %artist%) with just one line in it, the genre.
You then select the files of the artist and import that file with the single line (record) in it.
You could just as easy create an action for that...