Renaming directory from mp3 metadata

@Xyzzy: This one is exactly doing what you want.

It uses a VBScript-based Button from leo, inspired by my request.

You should read more about it here: Sort music files and go to the target folder

I modified the Button using the second solution of Scred.
After the Folder is created it moves the whole content of the old Folder there, deletes the empty Sourcefolder and sets the Focus of the Source-Lister to the new Path.

Here' the Code:

Rename Parent Folder based on mp3 metadata.

@noexpandenv
@runmode hide
@set OriginalSource={sourcepath$|noterm}

Rename "{Filepath}" TO "{filepath|..\..|noterm}\{mp3artist} - {mp3album}\{file}" FILEINFO
Copy MOVE * TO "%RENAME_TARGET%"
Go PATH "%RENAME_TARGET%"
Delete {$OriginalSource}

@script vbscript
Option Explicit

Dim fs
Set fs = CreateObject("Scripting.FileSystemObject")

Dim Shell
Set Shell = CreateObject("WScript.Shell")

Dim EnvVars
Set EnvVars = Shell.Environment("PROCESS")
EnvVars("RENAME_TARGET") = "zzzzz:\"

Function Rename_GetNewName(strFileName, strFilePath, fIsFolder, strOldName, ByRef strNewName)

   ' Fix any double \ chars resulting from empty tags (e.g. no genre).
   ' If we don't do this, things can get confused about the destination path.

   strNewName = Replace(strNewName, "\\", "\")

   ' Set the %RENAME_TARGET% environment variable to the folder we're moving the file to.
   ' This can be used in the main command above to go to the folder.
   ' Note that we use "@noexpandenv" at the top of the command; if we didn't then %RENAME_TARGET%
   ' would be expanded *before* this script had run, which obviously would not work.

   EnvVars("RENAME_TARGET") = fs.GetParentFolderName(strNewName)

End Function