[X] Tag -> Filename: Creating subfolders and no space between artists


first of all, thank you for this really nice software!

Sadly, I just wanted to use Tag -> Filename function, but I encountered 2 bugs using it.

1. SOLVED: Creating Subfolders: MP3TAG is creating subfolders for some artists. E.g. there is the artist called "Axwell /\ Ingrosso" and for that mp3tag creates the folder "Axwell" in which the file is without the "Axwell" in the filename. Please fix that.

Solution: Wrong artist name.

2. SOLVED: Multiple Artists space: Sadly, if there are more than one artist, mp3tag just writes them without any space, for example "AviciiNicky Romero" instead of "Avicii, Nicky Romero". It would be nice to have them comma seperated in the file name.

Solution: $validate(%artist%,', ') instead of just "%artist%" as format string.

Thanks in advance!

Edit: Just noticed, dass es ja auch einen deutschen Bereich gibt. Hoffe, es ist so okay. :slight_smile:

There is a spelling error within the name "Axwell /<!--colorc--> Ingrosso", ...
see also ... https://de.wikipedia.org/wiki/Axwell_%CE%9B_Ingrosso

Note: The character "Λ" within the name of the artist is not a simple addition of the two characters "/" plus "".
It is the Greek letter "Lambda": Λ (uppercase Λ, lowercase λ), and it is allowed within a filename or foldername..
The symbol "Λ" stands also for the boolean operator AND.

The slash "/" and the backslash "" are reserved characters on computer systems, see also ...

You have to replace the bad string '/' with the good character 'Λ'.


There is no problem to create a filename from a tag-field, which contain the character "comma".
On which operation within in Mp3tag did you see this behaviour?


Oh, thanks for clarifying. I just used the name I found on Spotify too, which is "/".

You are right though, I'm gonna change that. Thank you!

This is what I mean:

The MP3 Tags include more than one artist which Mp3tag also detects, but the Tag->Filename function is not. It is just writing them side by side, without any slashes, commas or something like that.

The "/" is an illegal character so it is left out.
If you want to get a special treatment of the problematic characters, enclose the field or the whole format string in the function $validate() and set a preferred replacement character.

Alternatively, you can use $replace() for specific pairs to be replaced.
see also: /t/18803/1

It seems like you did not understand my problem.
The "/" is not part of the name.
To clarify:

The mp3 tag contains multiple artists, that's just the way they are displayed I assume.
Windows Explorer and Media Player are setting ";" there, while VLC is setting "/" there, just like Mp3tag.

Multi-value fields in MP3tag are usually shown by \\

It is true that WMP treats "; " as separator for several artists, yet the data resides in just one field of the type ARTIST. Check this with the extended tags dialogue in MP3tag (Alt-T): you will probably see just one field of the type ARTIST.

If you want to get a real multi-value field, then use the "new" button in the extended tags dialogue, select ARTIST as field and enter a further artist name.
You will then see in MP3tag that the added artist name is shown as "old/artist\\new artist".

Will other programs see the other artists then too? And does that also work when there are more than 2 artists?

As my music library is really big: Is there a possibility to do this automatically?
I dont really understand why this is a problem as clearly players are able to realize that there is more than one artist.

The only problem I have is the way Mp3tag displays this information if it seems like it is saved in the same field? Cant we just change the seperator like WMP does?
I also have another program with a fancy player in it which is adding an "and" between the artists, so it's clearly detectable and not just a single "/" or am I wrong?

You have to see that separately: what is actually in a tag field and what a player makes of it.
MP3tag shows you accurately the data in the field.
As far as I understand it, you have data in a field that also shows a slash.
It is up to the player to interpret that (or not).
Coming back to the original problem: if you attempt to create a filename with illegal characters in a field, MP3tag is nice enough to remove that character.
Or you can setup your own set of replacements and replace the / with a comma.

About the question of "will other players..." I cannot give any guarantee.
WMP can cope with multi-value fields and the separator "; "
iTunes can cope with multi-value fields but not the separator "; "

You have to try it. And once you have found a feasible constellation, then MP3tag will help you to adapt your tags.

Thank you very much for your fast answers and your patience.
One last question: I did not really find any tutorial on how to create such a replacement-rule. Where exactly can I create such a thing, how and will it affect the whole program, just the artist field or even just the renaming-module?

I do have some knowledge on Java, C and Swift, so if that helps a bit and saves your time just tell me. :slight_smile:

see this thread on examples for replacing characters in filenames:

You use the function only for one specific format string either in the Convert>Tag-Filename function or in an action of the type ""format value" for _FILENAME.
There is no sideeffect unless you call the same function with the same format string again.

Edit: just thought of it: band names like AC/DC, Colourbox M/A/R/R/S, De/Vision will look strange in the players that take the / as separator between artists.

Thanks, worked flawlessly! :slight_smile:

You can close this thread now if you want, I posted my solution in the first post too so if anyone comes across the same error they have the solution right there. :slight_smile:

You should check this again with regard to the applied function.


This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.