last.tag is a tag editor for the last.fm online music service. last.tag can tag albums, artists, and tracks given on the command line, or it can read them from a configuration file.
All command-line switches are optional. If ran without arguments, all needed information will be read from your config file ('~/.lasttag/config.xml' by default). Your tags will be read from your tag config file ('~/.lasttag/tags.xml' by default), and added to any tags you specify as positional arguments. You will be prompted for your username if not found in your config file or on the command line, and your password as well (unless given on the command line with the '-p' switch). Note that your password is never stored as plaintext in memory unless you use the '-p' switch, in which
case it is immediatly encrypted and the plaintext discarded.
Most of the time you will be running the program without arguments, and the program will read all the needed information from your config file. Read the comments at the top of this file and edit it to your liking. Note that all
special characters and symbols must be given as character
entities (eg. '&' for '&'). The program will then log you into last.fm, and check to see which items have been tagged before, and setting them to use 'append mode', so as to not overwrite any previous tags. It will then go about it's business, tagging the items you requested, and exit when done. Note that sometimes last.fm's servers throttle connections after an excessive ammount of requests, so beware when tagging a large ammount of items. I am working on an
auto-reconnect feature to remedy this.
One last thing to note: in the event that you have specified the items to tag both on the command line and in your config file, the items will be added together, and they will all be tagged. I am working on a feature to enable you to tell last.tag to ignore the config file, and just take what appears on the command line. The same goes for tags, as stated above. I am also working on a builder for config files. It will probably take a plaintext list of artists/
albums/tracks, and use this to build the proper xml-based config file. I also have planned an auto-delete feature for the future (ie. the program will automagically delete an item from your config file after it is tagged, to prevent it from being tagged again). A complete list of planned features can
be found in the TODO file.