diff --git a/manual/gui.rst b/manual/gui.rst index a51ced54d3..98954ebabd 100755 --- a/manual/gui.rst +++ b/manual/gui.rst @@ -537,6 +537,8 @@ Calibre has several keyboard shortcuts to save you time and mouse movement. Thes - Merge selected records, keeping originals * - :kbd:`O` - Open containing folder + * - :kbd:`P` + - Polish books * - :kbd:`S` - Save to Disk * - :kbd:`V` diff --git a/src/calibre/customize/builtins.py b/src/calibre/customize/builtins.py index e715cdb84e..72a42e6adb 100644 --- a/src/calibre/customize/builtins.py +++ b/src/calibre/customize/builtins.py @@ -790,11 +790,11 @@ class ActionConvert(InterfaceActionBase): actual_plugin = 'calibre.gui2.actions.convert:ConvertAction' description = _('Convert books to various ebook formats') -# class ActionPolish(InterfaceActionBase): -# name = 'Polish Books' -# actual_plugin = 'calibre.gui2.actions.polish:PolishAction' -# description = _('Fine tune your ebooks') -# +class ActionPolish(InterfaceActionBase): + name = 'Polish Books' + actual_plugin = 'calibre.gui2.actions.polish:PolishAction' + description = _('Fine tune your ebooks') + class ActionDelete(InterfaceActionBase): name = 'Remove Books' actual_plugin = 'calibre.gui2.actions.delete:DeleteAction' @@ -930,7 +930,7 @@ class ActionPluginUpdater(InterfaceActionBase): plugins += [ActionAdd, ActionFetchAnnotations, ActionGenerateCatalog, ActionConvert, ActionDelete, ActionEditMetadata, ActionView, - ActionFetchNews, ActionSaveToDisk, ActionQuickview, #ActionPolish, + ActionFetchNews, ActionSaveToDisk, ActionQuickview, ActionPolish, ActionShowBookDetails,ActionRestart, ActionOpenFolder, ActionConnectShare, ActionSendToDevice, ActionHelp, ActionPreferences, ActionSimilarBooks, ActionAddToLibrary, ActionEditCollections, ActionChooseLibrary, diff --git a/src/calibre/ebooks/oeb/polish/main.py b/src/calibre/ebooks/oeb/polish/main.py index fd3c2311b5..0c83e477fe 100644 --- a/src/calibre/ebooks/oeb/polish/main.py +++ b/src/calibre/ebooks/oeb/polish/main.py @@ -95,6 +95,9 @@ def polish(file_map, opts, log, report): def gui_polish(data): files = data.pop('files') + if not data.pop('metadata'): + data.pop('opf') + data.pop('cover') file_map = {x:x for x in files} opts = ALL_OPTS.copy() opts.update(data) diff --git a/src/calibre/gui2/actions/polish.py b/src/calibre/gui2/actions/polish.py index a2d6f70e9d..471f993bb4 100644 --- a/src/calibre/gui2/actions/polish.py +++ b/src/calibre/gui2/actions/polish.py @@ -36,6 +36,13 @@ class Polish(QDialog): 'polish': _('
This will update all metadata and covers in the' + ' ebook files to match the current metadata in the' + ' calibre library.
Note that most ebook' + ' formats are not capable of supporting all the' + ' metadata in calibre.
'), } self.l = l = QGridLayout() @@ -47,6 +54,7 @@ class Polish(QDialog): count = 0 self.actions = OrderedDict([ ('subset', _('Subset all embedded fonts')), + ('metadata', _('Update metadata in book files')), ]) for name, text in self.actions.iteritems(): count += 1