View Single Post
Old 07-02-2020, 08:27 AM   #447
capink
Wizard
capink ought to be getting tired of karma fortunes by now.capink ought to be getting tired of karma fortunes by now.capink ought to be getting tired of karma fortunes by now.capink ought to be getting tired of karma fortunes by now.capink ought to be getting tired of karma fortunes by now.capink ought to be getting tired of karma fortunes by now.capink ought to be getting tired of karma fortunes by now.capink ought to be getting tired of karma fortunes by now.capink ought to be getting tired of karma fortunes by now.capink ought to be getting tired of karma fortunes by now.capink ought to be getting tired of karma fortunes by now.
 
Posts: 1,203
Karma: 1995558
Join Date: Aug 2015
Device: Kindle
Version 1.4.7

New Version 1.4.7

Update: Support for different encodings in csv tab.
Update: Changes to make the plugin translatable.
Update: Option to automatically map fields in csv tabs by reading header names if present.
Update: Add match by identifier to web tab.
Update: Add a scrollbar to controls in web tab.
Refactoring the code for match by identifier into one class in tab_common.py.

The new encodings combobox includes only three encodings by default (utf-8, utf-16, iso-8859-1), but has an add/remove option to add more encodings from a popup dialog. The feature to auto-map columns by reading csv headers is useful when exporting data using calibre's catalogue option, and then re-importing the data again.

I do not have the time or the necessary knowledge to offer long time support, but if there is problem related to changes I made, I will be happy to look at it, with no guarantees I will be able to fix or offer support.

Before using this version for your day to day use, it is better to test it first on a backup library.

Note to past/future maintainer(s) of this plugin:
I'm trying to keep the changes to this plugin as separate as much as possible from the original code. In line with this:
  • I moved the code for match by identifier feature into one class in tabs_common.py module. This also made it easier to add the same feature to the web tab without code duplication.
  • Also the code for encoding support is all in one separate module.
  • Wherever I made a additions in the middle of the original code I made sure it is clearly marked by preceding them with (#{ Update: "update details ... ") and placing (#}) after.
Attached Thumbnails
Click image for larger version

Name:	1.png
Views:	207
Size:	277.9 KB
ID:	180327   Click image for larger version

Name:	4.png
Views:	190
Size:	291.7 KB
ID:	180328   Click image for larger version

Name:	5.png
Views:	194
Size:	300.0 KB
ID:	180329  

Last edited by capink; 08-13-2020 at 11:31 AM. Reason: remove dropbox link.
capink is offline   Reply With Quote