This is a Perl script designed to rename files in a proper English title format:
The script can also use id3v2 to tag mp3s with the information extracted from the filename.
titlefixid3 "12 Front 242 - One - With The Fire.mp3"
results in (debug on):
renaming "12 Front 242 - One - With The Fire.mp3" to "12 Front 242 - One - With the Fire.mp3" DEBUG: dashpos: 12 DEBUG: tn: 12 DEBUG: art: Front 242 DEBUG: tt: One - With the Fire id3v2 -T "12" -a "Front 242" -t "One - With the Fire" "12 Front 242 - One - With the Fire.mp3"
Currently (at least as of Winamp 5.04), Winamp uses a single dash (the last instance of one) to distinguish track name from artist using the filename (when no ID3 tags exist). Furthermore, if there is more than one dash in the filename, it will take the artist name to be everything before the first dash and track name to be everything after the last dash, so information is lost in between. The id3v2 feature of titlefix is designed to address that, so Winamp gets the correct information from the ID3 tag.
Dangling prepositions (i.e. "To" or "At" at the end, e.g. "Do You Know Where You're Going To" or "Where It's At"), while grammatically incorrect but used with artistic license, will be kept as "To" and "At" because they're at the end.
The list (so far; believed to be complete) of lowercased words is:
articles: | a | an | the | |||||||
conjuctions: | and | for | nor | or | ||||||
prepositions: | as | at | by | for | from | in | of | on | to | with |
Spanish and French: | de | du | en | por | y |
For downloads and other stuff, see the SourceForge project page for titlefix.