I first mentioned this idea on the Reading List thread, but have since decided it should be released as a standalone plugin.
The basic premise behind it is a 3-step wizard to allow users to import a list
of books into calibre. Once you have configured a list source, you can match it against books in your library, creating empty books as needed. Finally the list can then be placed on a "Reading List" plugin list and/or just displayed directly in calibre.
A list could be:
- Pasted from the clipboard, such as from recommendations in a forum post or copied from a simple web page. Use regular expressions to convert into title/optional author pairs, either from a predefined convenience dropdown or your own
- Read from a CSV file, such as an export from a website like Goodreads, a catalog from calibre or any file source. Specify the delimiter, pick the columns for your title/author and job done.
- Imported from a web page. I'm ultimately hoping to include predefined settings for a number of web sources such as various top 50/top 100 lists, Goodreads popular pages, new release pages etc from sites people suggest. Uses xpath expressions to identify the book data in the page.
There is save/import/export capability for configuration settings to allow you to minimise repeated effort and share with other plugin users.
To minimise the manual effort of reconciling book titles/authors against your library, I have implemented a fuzzy logic auto-matching mechanism, using some principles from the Find Duplicates plugin. Once you have the raw list data and move to step 2 of the wizard, the plugin performs a progression of permutation of identical, similar and slightly fuzzy matches of title and author to find a match for you. You can step through the remaining unmatched books and either directly search your library for a match, create an empty book if you don't have it or remove it from the list if it isn't of interest to you.
Here are some screenshots as it exists right now. I'm still making additions but if there is any initial reaction I would *love* to hear from you. Whether it is questions about the UI/behaviour or just suggestions for website pages to see included...
I will likely post a beta on this thread in the next few days.