sampsyo/beets — pull request #62 by mk-fg (2012-10-20 17:25:11+00:00)
Title: Unified presentation format in ui commands

Suppose one has typed a `beet mod 'Zimmer' 'albumartist=Hans Zimmer'` command, and then gets presented with following:

Hans Zimmer & Klaus Badelt - Driving
albumartist: Various Artists -> Hans Zimmer
Really modify and write tags (Y/n)?

It's really hard to say (lacking the proposed patches) whether it's a track from "soundtrack album X", "soundtrack album Y" (from a different year) or a "compilation Z" (which got there by one's filtering mistake, and shouldn't be updated).
Prehaps a bit more confusing is why beets defy the user's configuration like that, presenting most ambiguous fields available when one specifically hand-picked the less-ambiguous format possible.

Patches will make ui commands other than list (which is already using configurable format) use `-f/--format` cli switch and user configuration, so one might avoid cases like the one presented above (by setting format to, say, "$artist :: $year $album :: $title") or, lacking foresight to do that, use -f option to make beets produce non-ambiguous output.

First patch implements formatting according to configuration and the latter one adds `-f/--format` command-line options to all commands that can use them.

Not sure if it's the best way to do it, just that it works for my use-case in the presented form, so feel free to suggest a better approach to implementing this or maybe completely different way to resolve such ambiguity.