View Single Post
Old 06-09-2013, 07:30 AM   #1
davidfor
Wizard
davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.
 
Posts: 4,916
Karma: 4798550
Join Date: Jul 2011
Location: Australia
Device: Kobo Touch, Kobo Glo
[GUI Plugin] Kobo Utilities

The Kobo Utilities Plugin adds extra function to calibre for working with Kobo WiFi, Touch, Glo, Mini, Aura and Aura HD eReaders. This will allow changes on the eReaders that either cannot otherwise be made or will make them easier to do.

The current functions of the plugin are:
  • Set/Remove font settings for specific books.
  • Dismiss tiles from new home on Glo or Aura HD.
  • Update metadata directly to the database on the device.
  • Change the reading status.
  • Manage series info for books on the device. This is mainly for books not in the calibre library including kepubs.
  • Store/record current reading position for ePubs. This can be done manually or automatically when the Kobo ereader is connected.
  • Upload/Remove covers for all books in the library. This includes kepubs.
  • A couple of annotations options that I'm not happy with.
  • List the books missing from the device database. This only lists the books that calibre thinks should be in the database.
  • Backup the device database.
  • Run integrity check on the database. It doesn't fix anything, but it tells you if the database is OK or not.
  • Clean up duplicate shelves.

Warning
  • Almost all the functions of this plugin directly update the database on the Kobo device. If anything goes wrong, the database could get corrupted. It shouldn't happen, but it could. Before using any function of the plugin, it is recommended that you backup the database.
  • The plugin has been created by reverse engineering the function of the Kobo eReaders. This has been done by examining the database on the Touch and Glo and experimenting with it and the interface. There is a good chance that my conclusions from this are wrong. This is unlikely to damage the device, but it could result in the need to reset it.

Installation Steps:
  • Download the attached zip file and install the plugin/add to context menu or toolbar/restart Calibre as described in the Introduction to plugins thread.

Configuration
  • Before use, some configuration of the plugin is needed. Pressing the toolbar button will display the configuration options, or it can be reached from the menu. Several custom columns are needed for the full function of the plugin. Pressing the help link will display the help for the plugin. This includes a full description of the columns needed.

Usage
  • Once installed, the usage for most functions is to select one or more books in the library or device list and select an option from the plugins menu. A dialog will be displayed to set options for the action. Pressing OK will run the actions and when finished display a message showing the results.
  • The functions available depend on whether you are looking at the library or the device list.
  • A full description of each function is available in the help. This can be seen by pressing the help link in the top right of corner of each dialog.

Acknowledgements
  • A large chunk of the code is borrowed from the plugins written by kiwidude. Without his work, this would have been a lot harder to do.
  • A few people have tried the beta versions of the plugin. Their reports, suggestions and encouragement have been important in getting it working.

Version History
Spoiler:
Version 1.7.1 - 5 July 2014
  • Fix: Error in metadata update when setting series and using plugboard

Version 1.7.0 - 16 June 2014
  • Change: Changed the series shelf ordering to allow ordering of other shelves and different sorting.
Version 1.6.9 - 21 May 2014
  • Fix: Commented out job logging as it was causing problems.
Version 1.6.8 - 13 May 2014
  • Fix: Fix the problem with Series management and metadata updating properly.
Version 1.6.7 - 12 May 2014
  • Fix: Series management from device list was not updated for new options in metadata updating.
  • Change: Background job logging as seem to be blowing the size of a buffer.
Version 1.6.6 - 10 May 2014
  • Change: When storing book status, use the status from the furtherest along copy if there are multiple copies. This is latest status, date or percent read.
  • Change: Make jobs DeviceJobs so they won't get run at same time as initial device jobs.
Version 1.6.5 - 22 April 2014
  • Fix: Debug statement had reference to "newmi" when it should have been "book"
Version 1.6.4 - 20 April 2014
  • Fix: Hard coded number of values in line spacing spin button.
  • Update: Line spacings changed with 3.2.0
  • Update: If store has "Not finished in library" selected, only fetch status for books that haven't been finished.
Version 1.6.3 - 12 April 2014
  • Fix: Setting reading status from device list was not updated for new options in metadata updating.
Version 1.6.2 - 29 March 2014
  • Fix: Older devices had the MAC address in the serial number field of the version file. Strip the colons from this so it can be used in the backup file name.
Version 1.6.1 - 22 March 2014
  • Fix: Removed a debug line that meant the database backup was named incorrectly.
Version 1.6.0 - 22 March 2014
  • New: Added tiles: "Release Note", "Categories"
  • New: Firmware check and download
  • New: Automatic backup of the device database
  • New: After batch reading position store, display list of changes.
  • Changed: Added options for using sort versions of title and author or the plugboard when updating metadata.
  • New: Spanish translation.
  • Fix: Clean images directory handles new images storage in FW2.9.0 and later
Version 1.5.0 - 18 December 2013
  • Update: Change reading location store to not update library if no changes.
  • New: Add auto store when device detected.
  • New: Added progress bars when creating store jobs and updating library
  • New: Added dismissing "In the cloud" tiles
  • New: If click button and no device connected, open configuration
Version 1.4.4 - 30 November 2013
  • Fix: Error displaying sizes after a database compression
Version 1.4.3 - 22 November 2013
  • Fix: Bad string handling in a debug statement.
Version 1.4.2 - 20 November 2013
  • New: Added code needed for internationalization
  • Fix: Issue with format of timestamps in device database. Needed to add timezone info.
Version 1.4.1 - 28 October 2013
  • Update: Option added when ordering series shelf to update shelf sorting in config file
Version 1.4.0 - 15 October 2013
  • New: For shelves that match a series name, change the date added to order by series order.
  • New: Add "Lock margins" checkbox to reader settings to set the right margin the same as the left
  • New: Add "Update config file" checkbox to reader settings to write the options to the "Kobo eReader.conf"
Version 1.3.0 - 3 October 2013
  • Update: Handling of line heights
  • New: Fix Duplicate shelves
Version 1.2.7 - 22 September 2013
  • Fix handling of older database versions with no ratings table.
Version 1.2.5 - 07 September 2013
  • New: Support for Kobo WiFi
  • Fix: Check for support of TIMESTAMP_STRING in device driver
  • Fix: Extra space after "false" in tile dismiss SQL
Version 1.2.3 - 08 August 2013
  • New: Add function to create trigger to remove AnalyticEvents
  • Fix: Spelling error in tooltip on Dismiss Tiles dialog
  • New: Add dismissing of new and finished books
  • Fix: Error when restoring reading location for kepubs
  • New: Changes to handle new db engine
Version 1.2.2 - 22 July 2013
  • Fix: Error in image directory checking of no SD card
Version 1.2.1 - 18 July 2013
  • Fix: Wasn't getting reading state from device for books that had been marked as read but never opened.
Version 1.2.0 - 16 July 2013
  • New: Change store to have option of background job
  • New: Check covers directory for extra image files
  • New: Added compress device database
  • Fix: Had "Gil Sans" instead of "Gill Sans"
Version 1.1.0 - 18 June 2013
  • New: Create/delete database trigger for dismissing tiles.
  • Update: Support sideloaded kepubs for reading location.
  • Fix: If rating wasn't set, attempted to divide None by 2.
  • Fix: Keep reference for all menu items to solve problem with OSX.
Version 1.0.0 - 9 June 2013
Initial release
Attached Files
File Type: zip KoboUtilities.zip (161.2 KB, 612 views)

Last edited by davidfor; 07-04-2014 at 10:10 PM. Reason: Update to version 1.7.1
davidfor is online now   Reply With Quote