Some may not agree but Amarok lacks a convenient tagging solution. Below I'd like to sketch a proposal for another tagging solution, arguably a better one.
There may be a rollout block just bellow the playlist with the following fields:
and two buttons: Rename (Alt+Enter), Undo. Both Filename match pattern and Filename replace pattern should apply to complete filenames (including path).
Filename match pattern should accept regular expressions and provide a user with the parts that were matched against (I mean those that were in brackets in the regular expression), name them %1, %2, ...
The program should provide a user with the tags, name them %a, %t, ...
Also there should be something like %0, %00, %000 for automatic numbering (that starts from 1 and increments with every call).
Tag fields as well as Filename replace pattern should accept %1, %2, ... as well as %a, %t, ... and %0, %00, %000.
When rename is clicked, selected files (selected in the playlist) are matched against Filename match pattern and for every file that is matched its filename and all the tags are changed according to the correspondent fields. Default values for patterns may be:
When a set of files is selected in the playlist, if a tag has the same value for all the files, then this value is shown in the correspondent field, if not then % notation is used, say %t for title when tracks have different titles.
I think in this way the interface is not going to be overloaded, it will be the same for different tagging operations and yet quite powerfull.
I see only two drawback here: