Mp3tag won't replace \\\ with \ in tag Genre

How stupid is that?
Any thoughts?

see e.g. /t/15285/1

Although your support request does not show any practical example, I want to try an answer.
Because you see doubled backslashes in the tagfield GENRE, this tagfield might be a so called "multi-value" tagfield, ...
with the meaning of having two or more genre values in this one GENRE tagfield.
Because Mp3tag uses the double-backslash '\\' as the separator symbol between multi values in one tagfield, ... then a sequence of three backslashes '\' points to a probably writing error within this tagfield.

In case of a list view column "Genre" is configured to display the value $meta_sep(GENRE,'\\') ...
and the list view cell displays the string "Blues\\Rock" ...
then there are stored two GENRE values ... "Blues" and "\Rock".

Apply the dialog "View/Extended Tags...", and you will see two values regarding GENRE:
GENRE=Blues
GENRE=\Rock

Note the leading backslash at the second GENRE value.

You can heal this erroneous situation by replacing the text sequence '\' with '\\' ...
GENRE <== $replace($meta_sep(GENRE,'\\'),'\','\\')

DD.20170824.1124.CEST

Is there a way to keep for example multiple artist instead in a form like this

Band feat. Some Vocalist & Some Other Guitaristin a form like this    Band \\\\ Some Vocalist \\\\ Some Other Guitaristbut also see all of those three in Winamp?

Right now if I implement the double-backslash in the ARTIST tag field, all I see in Winamp is just the first one [the >>Band <<]

Note: your example string shows bad written Mp3tag syntax and will create additional space characters, giving the string values: 'Band ', ' Some Vocalist ', ' Some Other Guitarist'.

This sounds as Winamp does not support multi-value tagfields.
Sorry, no further answer possible, because I have no Winamp at hand.

DD.20170824.1652.CEST

That is precisely what I want. Such pauses amplify clearness of the clear view in the Mp3tag

Because I am willing to abandon denotations like "feat.", as long as the replacements will be way more distinctive [and work both in Mp3tag and Winamp]

Yes it does

I just went here first with this issue. If no solution / answer will be provided on Mp3tg forum, I will go to Winamp community with this

.

.

I know what I will do, I will export the metadata to Excel and create a vbscript to replace
the \\ with .
That should fix the issue, troublesome but doable.

Using a DB (SAS) I was able to create the below script (just a few samples):

Dim iTunesApp
Dim playlist
Dim FullPath
Dim tracks
Dim track

Set iTunesApp = CreateObject("iTunes.Application.1")
Set FSO = CreateObject("Scripting.FileSystemObject")

Set playlist = iTunesApp.LibrarySource.Playlists.ItemByName("AAA_Update_Genre")
If playlist is Nothing Then
iTunesApp.CreatePlaylist("AAA_Update_Genre")
Set playlist = iTunesApp.LibrarySource.Playlists.ItemByName("AAA_Update_Genre")
Else
playlist.delete
iTunesApp.CreatePlaylist("AAA_Update_Genre")
Set playlist = iTunesApp.LibrarySource.Playlists.ItemByName("AAA_Update_Genre")
End If

On error resume next
count_Artist = 0
count_Name = 0
count_AlbumArtist = 0
count_Album = 0
count_Genre = 0
count_Year = 0
count_Rating = 0
count_PlayedCount = 0
count_SkippedCount = 0
Obs = 0

If FSO.FileExists("D:\MP3\Favorites\2 Brothers On The 4th Floor - Fly.mp3") Then
Obs = Obs+1
playlist.AddFile("D:\MP3\Favorites\2 Brothers On The 4th Floor - Fly.mp3")
WScript.Echo "Track " & Obs & " - " & "D:\MP3\Favorites\2 Brothers On The 4th Floor - Fly.mp3"
Set track = playlist.Tracks.Item(Obs)
Set Artobj = track.Artwork
If Artobj.Count>0 Then
Has_Art = True
Else
Has_Art = False
End If

WScript.Echo "Can't set Artist to blank"

WScript.Echo "Can't set Name to blank"

WScript.Echo "Can't set AlbumArtist to blank"

WScript.Echo "Can't set Album to blank"

If true and (True) and track.Genre<>"Favorite\Fast\Dance\90s" Then
WScript.Echo "Changing Genre"
track.Genre = "Favorite\Fast\Dance\90s"
count_Genre = count_Genre+1
Else
WScript.Echo "Not changing Genre"
End If

WScript.Echo "Can't set Year to blank"

WScript.Echo "Can't set Rating to blank"

WScript.Echo "Can't set PlayedCount to blank"

WScript.Echo "Can't set SkippedCount to blank"

WScript.Echo "Can't add Genre"

WScript.Echo
End If

If FSO.FileExists("D:\MP3\favorites\2 in a room - she's got me going crazy.mp3") Then
Obs = Obs+1
playlist.AddFile("D:\MP3\favorites\2 in a room - she's got me going crazy.mp3")
WScript.Echo "Track " & Obs & " - " & "D:\MP3\favorites\2 in a room - she's got me going crazy.mp3"
Set track = playlist.Tracks.Item(Obs)
Set Artobj = track.Artwork
If Artobj.Count>0 Then
Has_Art = True
Else
Has_Art = False
End If

WScript.Echo "Can't set Artist to blank"

WScript.Echo "Can't set Name to blank"

WScript.Echo "Can't set AlbumArtist to blank"

WScript.Echo "Can't set Album to blank"

If true and (True) and track.Genre<>"Favorite\Fast\Rare Vinyl House\Porn" Then
WScript.Echo "Changing Genre"
track.Genre = "Favorite\Fast\Rare Vinyl House\Porn"
count_Genre = count_Genre+1
Else
WScript.Echo "Not changing Genre"
End If

WScript.Echo "Can't set Year to blank"

WScript.Echo "Can't set Rating to blank"

WScript.Echo "Can't set PlayedCount to blank"

WScript.Echo "Can't set SkippedCount to blank"

WScript.Echo "Can't add Genre"

WScript.Echo
End If

If FSO.FileExists("D:\MP3\Favorites\2 Live Crew - Me So Horny.mp3") Then
Obs = Obs+1
playlist.AddFile("D:\MP3\Favorites\2 Live Crew - Me So Horny.mp3")
WScript.Echo "Track " & Obs & " - " & "D:\MP3\Favorites\2 Live Crew - Me So Horny.mp3"
Set track = playlist.Tracks.Item(Obs)
Set Artobj = track.Artwork
If Artobj.Count>0 Then
Has_Art = True
Else
Has_Art = False
End If

WScript.Echo "Can't set Artist to blank"

WScript.Echo "Can't set Name to blank"

WScript.Echo "Can't set AlbumArtist to blank"

WScript.Echo "Can't set Album to blank"

If true and (True) and track.Genre<>"Favorite\Fast\Rap\Porn" Then
WScript.Echo "Changing Genre"
track.Genre = "Favorite\Fast\Rap\Porn"
count_Genre = count_Genre+1
Else
WScript.Echo "Not changing Genre"
End If

WScript.Echo "Can't set Year to blank"

WScript.Echo "Can't set Rating to blank"

WScript.Echo "Can't set PlayedCount to blank"

WScript.Echo "Can't set SkippedCount to blank"

WScript.Echo "Can't add Genre"

WScript.Echo
End If

A single \ does not lead to a multivalue field.
But once you have replaced a \ with \\ you get a multivalue field.
You have to join the fields again with an action of the type "Merge duplicate fields" (http://help.mp3tag.de/options_format.html#merge) in which you choose the \ as separator.
So actually, there is no need to use external program help.

Guess who? :rolleyes:

You can, but nobody is interested in your rants here. They only add noise. I'm really surprised that anyone feels invited to answer your posts at all.

Please remain on the topic, keep your rants to yourself and focus on solving the issues you're experiencing.

Well, you have to learn, in Mp3tag there is the standard way to define and store data into a multi-value tag, by using the text sequence '\\' (double-backslash) as the separator or connector between the single values.

Hmm, you may doing it this way, no problem anyway.

Hmm, yes, you have to avoid bad coding.

Note: once you have created a double-backslash string '\\' within a tag-field, then while saving, Mp3tag tries to create a so called multi-value tag-field.

Once you know this, then you can change your behaviour when changing a tag-field content in the right way, as you need it.
Note: When removing an element from a list, you have always to remove one superfluous separator.

Example:
You have a tag-field GENRE with the value ...
GENRE = 'Blues\Rock\Pop'

Remove the value 'Pop' ....
Formatstring: $trimRight($replace(%GENRE%'','Pop',),'')
Result: GENRE = 'Blues\Rock'

Additional remove the value 'Blues' ....
Formatstring: $trimRight($replace(%GENRE%'','Blues',),'')
Result: GENRE = 'Rock'

DD.20170825.1220.CEST

But it does not mean you should

What you should do is to appreciate a distributed for free piece of software, than looks simple on the surface but in reality can be adapted to various needs. Calling Mp3tag dumb makes look dumb not the software

Can't you just switch from using \ or \\ to also something even more distinctive like ## or @; keeping all of values in one field?

I'm sorry for my rant, I use your program a lot, and it'd be very unfair from me to criticize it.
Sorry, if I could erase what I said, I would.