Thanks chaley/Kovid for the replies.
Originally Posted by kovidgoyal
The only use I can see for this functionality is to have plugins that populate custom columns. And a better solution for that, IMO, is to use a plugboards type functionality which allows the user to tell a standard metadata download plugin to copy/move some metadata from a standard field to a custom field.
Until chaley posted I wasn't aware that you could set custom columns on a Metadata object. I had looked at the print output and saw nothing. Looking again I believe the get_user_metadata and set_user_metadata methods are what I should have spotted.
If you can do that, then in theory you should be able to do most of what I want with a metadata download plugin (custom columns set on an mi returned by the API will get saved right?).
So I think it requires a few things:
(1) user control over which plugin to run. By user control I don't mean the chore of drilling into the plugin preferences dialog and enabling/disabling plugins. Instead a simple right-click to execute a particular metadata download or cover download plugin that you have installed.
(2) Enhanced versions of the metadata download plugins to retrieve more data than just the "standard" fields they do currently. So for instance an example by the OP in the thread I referenced above was getting the price for a book. The enhanced metadata download plugin would need to scrape all the data it can that might be "interesting" for the user to choose from?
(3) Configuration to grab the data and assign it to columns for that plugin. As you have said a plugboard type approach could be used, but I don't think that just the "standard" metadata fields would be sufficient?