diff --git a/src/calibre/gui2/convert/metadata.py b/src/calibre/gui2/convert/metadata.py index 2ab1eb8301..8200f466c5 100644 --- a/src/calibre/gui2/convert/metadata.py +++ b/src/calibre/gui2/convert/metadata.py @@ -6,14 +6,14 @@ __license__ = 'GPL v3' __copyright__ = '2009, Kovid Goyal ' __docformat__ = 'restructuredtext en' -import os, uuid +import os, uuid, re from PyQt4.Qt import QPixmap, SIGNAL from calibre.gui2 import choose_images, error_dialog from calibre.gui2.convert.metadata_ui import Ui_Form from calibre.ebooks.metadata import authors_to_string, string_to_authors, \ - MetaInformation + MetaInformation, authors_to_sort_string from calibre.ebooks.metadata.opf2 import metadata_to_opf from calibre.ptempfile import PersistentTemporaryFile from calibre.gui2.convert import Widget @@ -53,8 +53,16 @@ class MetadataWidget(Widget, Ui_Form): self.initialize_options(get_option, get_help, db, book_id) self.connect(self.cover_button, SIGNAL("clicked()"), self.select_cover) + def deduce_author_sort(self, *args): + au = unicode(self.author.currentText()) + au = re.sub(r'\s+et al\.$', '', au) + authors = string_to_authors(au) + self.author_sort.setText(authors_to_sort_string(authors)) + + def initialize_metadata_options(self): self.initialize_combos() + self.author.editTextChanged.connect(self.deduce_author_sort) mi = self.db.get_metadata(self.book_id, index_is_id=True) self.title.setText(mi.title) diff --git a/src/calibre/library/server.py b/src/calibre/library/server.py index cfe81486cf..e5e2fe8941 100644 --- a/src/calibre/library/server.py +++ b/src/calibre/library/server.py @@ -853,14 +853,20 @@ def stop_threaded_server(server): server.thread = None def option_parser(): - return config().option_parser('%prog '+ _('[options]\n\nStart the calibre content server.')) + parser = config().option_parser('%prog '+ _('[options]\n\nStart the calibre content server.')) + parser.add_option('--with-library', default=None, + help=_('Path to the library folder to serve with the content server')) + return parser + def main(args=sys.argv): parser = option_parser() opts, args = parser.parse_args(args) cherrypy.log.screen = True from calibre.utils.config import prefs - db = LibraryDatabase2(prefs['library_path']) + if opts.with_library is None: + opts.with_library = prefs['library_path'] + db = LibraryDatabase2(opts.with_library) server = LibraryServer(db, opts) server.start() return 0 diff --git a/src/calibre/translations/calibre.pot b/src/calibre/translations/calibre.pot index 6ad58d7025..c209f9b628 100644 --- a/src/calibre/translations/calibre.pot +++ b/src/calibre/translations/calibre.pot @@ -5,8 +5,8 @@ msgid "" msgstr "" "Project-Id-Version: calibre 0.6.31\n" -"POT-Creation-Date: 2009-12-27 16:02+MST\n" -"PO-Revision-Date: 2009-12-27 16:02+MST\n" +"POT-Creation-Date: 2009-12-31 10:50+MST\n" +"PO-Revision-Date: 2009-12-31 10:50+MST\n" "Last-Translator: Automatically generated\n" "Language-Team: LANGUAGE\n" "MIME-Version: 1.0\n" @@ -103,9 +103,9 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:121 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:128 #: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:21 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:99 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:124 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:107 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:132 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:134 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:548 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:557 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:775 @@ -132,7 +132,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/library/server.py:645 #: /home/kovid/work/calibre/src/calibre/library/server.py:717 #: /home/kovid/work/calibre/src/calibre/library/server.py:764 -#: /home/kovid/work/calibre/src/calibre/utils/localization.py:107 +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:108 #: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:45 #: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:63 #: /home/kovid/work/calibre/src/calibre/utils/podofo/__init__.py:77 @@ -389,6 +389,10 @@ msgstr "" msgid "Comma separated list of directories to send e-books to on the device. The first one that exists will be used" msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/binatone/driver.py:17 +msgid "Communicate with the Binatone Readme eBook reader." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/blackberry/driver.py:12 msgid "Communicate with the Blackberry smart phone." msgstr "" @@ -407,7 +411,7 @@ msgstr "" msgid "Communicate with the Cybook Opus eBook reader." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:23 +#: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:24 msgid "Communicate with the EB600 eBook reader." msgstr "" @@ -427,6 +431,10 @@ msgstr "" msgid "Communicate with the BOOX eBook reader." msgstr "" +#: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:17 +msgid "Communicate with the Hanvon N520 eBook reader." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/devices/iliad/driver.py:16 msgid "Communicate with the IRex Iliad eBook reader." msgstr "" @@ -576,7 +584,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:853 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:232 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:132 #: /home/kovid/work/calibre/src/calibre/library/database2.py:1065 #: /home/kovid/work/calibre/src/calibre/library/database2.py:1069 #: /home/kovid/work/calibre/src/calibre/library/database2.py:1403 @@ -1344,7 +1352,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1041 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1101 #: /home/kovid/work/calibre/src/calibre/gui2/status.py:96 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:132 msgid "Tags" msgstr "" @@ -1352,7 +1360,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:171 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:360 #: /home/kovid/work/calibre/src/calibre/gui2/status.py:95 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:132 msgid "Series" msgstr "" @@ -2067,7 +2075,7 @@ msgid "Limit max simultaneous jobs to number of CPUs" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:127 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:439 msgid "Copied" msgstr "" @@ -2325,9 +2333,9 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:267 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:269 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:270 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:332 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:334 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:336 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:342 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:340 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:74 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:79 msgid "..." @@ -2573,33 +2581,33 @@ msgstr "" msgid "Set the metadata. The output file will contain as much of this metadata as possible." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:160 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:99 msgid "Choose cover for " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:167 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:106 msgid "Cannot read" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:160 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:168 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:107 msgid "You do not have permission to read the file: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:115 msgid "Error reading file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:177 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:116 msgid "

There was an error reading from file:
" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:184 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:124 msgid " is not a valid picture" msgstr "" @@ -2795,7 +2803,7 @@ msgid "RB Output" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:77 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1513 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1510 msgid "Choose the format to view" msgstr "" @@ -3300,7 +3308,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:350 #: /home/kovid/work/calibre/src/calibre/gui2/status.py:93 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:132 msgid "Formats" msgstr "" @@ -3403,7 +3411,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:475 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:819 #: /home/kovid/work/calibre/src/calibre/gui2/ui.py:158 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1186 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1183 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "" @@ -3473,12 +3481,12 @@ msgid "Access log:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:674 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:635 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:634 msgid "Failed to start content server" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:698 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:520 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:549 msgid "Select location for books" msgstr "" @@ -3612,7 +3620,7 @@ msgid "&Saving books" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:499 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:368 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:366 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:173 msgid "Preferences" msgstr "" @@ -4067,7 +4075,7 @@ msgid "Choose formats for " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:137 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:947 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:944 msgid "Books" msgstr "" @@ -4967,135 +4975,135 @@ msgstr "" msgid "try deleting the file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:333 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:331 msgid "calibre" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:333 msgid "Advanced search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:335 msgid "Alt+S" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:338 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:336 msgid "&Search:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:339 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:338 msgid "

Search the list of books by title, author, publisher, tags, comments, etc.

Words separated by spaces are ANDed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:341 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:339 msgid "Reset Quick Search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:343 -msgid "Match any" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:344 -msgid "Match all" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:345 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:341 msgid "Sort by &popularity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:342 +msgid "Match any" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:343 +msgid "Match all" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:344 msgid "Add books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:347 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:345 msgid "A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:349 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:347 msgid "Remove books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:348 msgid "Del" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:349 msgid "Edit meta information" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:350 msgid "E" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:351 msgid "Send to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:352 #: /home/kovid/work/calibre/src/calibre/gui2/ui.py:304 msgid "Save to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:355 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:353 msgid "S" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:354 msgid "Fetch news" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:355 msgid "F" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:356 msgid "Convert E-books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:357 msgid "C" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:360 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:358 #: /home/kovid/work/calibre/src/calibre/gui2/ui.py:314 msgid "View" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:359 msgid "V" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:360 msgid "Open containing folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:361 msgid "Show book details" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:362 msgid "Books by same author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:363 msgid "Books in this series" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:364 msgid "Books by this publisher" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:365 msgid "Books with the same tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:367 msgid "Configure calibre" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:368 msgid "Ctrl+P" msgstr "" @@ -5207,11 +5215,11 @@ msgstr "" msgid "Click to browse books by tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:132 msgid "Authors" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:125 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:132 msgid "Publishers" msgstr "" @@ -5327,7 +5335,7 @@ msgid "Save to disk in a single directory" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/ui.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1621 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1618 msgid "Save only %s format to disk" msgstr "" @@ -5373,36 +5381,36 @@ msgid "Bad database location" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/ui.py:471 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:528 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:557 msgid "Calibre Library" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/ui.py:481 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1767 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1774 msgid "Choose a location for your ebook library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:678 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:677 msgid "Browse by covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:795 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:792 msgid "Device: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:797 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:794 msgid " detected." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:821 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:818 msgid "Connected " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:833 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:830 msgid "Device database corrupted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:834 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:831 msgid "" "\n" "

The database of books on the reader is corrupted. Try the following:\n" @@ -5413,277 +5421,281 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:895 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:892 msgid "How many empty books?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:896 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:893 msgid "How many empty books should be added?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:940 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:987 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:937 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:984 msgid "Uploading books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:948 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:945 msgid "EPUB Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:949 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:946 msgid "LRF Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:950 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:947 msgid "HTML Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:951 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:948 msgid "LIT Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:952 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:949 msgid "MOBI Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:953 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:950 msgid "Text books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:954 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:951 msgid "PDF Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:955 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:952 msgid "Comics" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:956 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:953 msgid "Archives" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:960 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:957 msgid "Supported books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:996 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:993 msgid "Failed to read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:997 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:994 msgid "Failed to read metadata from the following" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1016 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1013 msgid "Cannot delete" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1019 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1507 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1526 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1016 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1504 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1523 msgid "No book selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1029 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1026 msgid "Choose formats to be deleted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1045 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1042 msgid "Choose formats not to be deleted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1081 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1078 msgid "The selected books will be permanently deleted and the files removed from your computer. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1108 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1105 msgid "Deleting books from device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1139 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1136 msgid "Cannot download metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1140 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1197 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1230 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1255 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1368 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1137 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1194 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1227 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1252 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1365 msgid "No books selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1155 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1152 msgid "social metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1157 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1154 msgid "covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1157 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1154 msgid "metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1159 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1156 msgid "Downloading %s for %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1181 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1178 msgid "Failed to download some metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1182 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1179 msgid "Failed to download metadata for the following:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1182 msgid "Failed to download metadata:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1196 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1229 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1193 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1226 msgid "Cannot edit metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1254 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1251 msgid "Cannot save to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1257 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1254 msgid "Choose destination directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1284 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1281 msgid "Error while saving" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1285 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1282 msgid "There was an error while saving." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1292 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1293 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1289 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1290 msgid "Could not save some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1294 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1291 msgid "Click the show details button to see which ones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1313 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1310 msgid "Fetching news from " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1327 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1324 msgid " fetched." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1367 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1364 msgid "Cannot convert" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1396 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1393 msgid "Starting conversion of %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1507 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1563 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1504 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1560 msgid "Cannot view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1525 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1522 msgid "Cannot open folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1547 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1544 msgid "Multiple Books Selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1548 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1545 msgid "You are attempting to open %d books. Opening too many books at once can be slow and have a negative effect on the responsiveness of your computer. Once started the process cannot be stopped until complete. Do you wish to continue?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1564 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1561 msgid "%s has no available formats." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1605 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1602 msgid "Cannot configure" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1606 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1603 msgid "Cannot configure while there are running jobs." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1649 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1646 msgid "No detailed info available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1650 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1647 msgid "No detailed information is available for books on the device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1705 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1702 msgid "Error talking to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1706 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1703 msgid "There was a temporary error talking to the device. Please unplug and reconnect the device and or reboot." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1729 -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1747 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1726 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1754 msgid "Conversion Error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1730 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1727 msgid "

Could not convert: %s

It is a DRMed book. You must first remove the DRM using third party tools." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1748 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1740 +msgid "Recipe Disabled" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1755 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1776 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1783 msgid "Invalid library location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1777 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1784 msgid "Could not access %s. Using %s as the library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1825 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1832 msgid "is the result of the efforts of many volunteers from all over the world. If you find it useful, please consider donating to support its development." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1850 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1857 msgid "There are active jobs. Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1853 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1860 msgid "" " is communicating with the device!
\n" " Quitting may cause corruption on the device.
\n" " Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1857 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1864 msgid "WARNING: Active jobs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1909 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1916 msgid "will keep running in the system tray. To close it, choose Quit in the context menu of the system tray." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1928 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1935 msgid "Latest version: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1936 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1943 msgid "Update available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1937 +#: /home/kovid/work/calibre/src/calibre/gui2/ui.py:1944 msgid "%s has been updated to version %s. See the new features. Visit the download page?" msgstr "" @@ -6138,40 +6150,40 @@ msgstr "" msgid "Title Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:301 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:330 msgid "If you use the WordPlayer e-book app on your Android phone, you can access your calibre book collection directly on the device. To do this you have to turn on the content server." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:305 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:334 msgid "Remember to leave calibre running as the server only runs as long as calibre is running." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:307 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:336 msgid "You have to add the URL http://myhostname:8080 as your calibre library in WordPlayer. Here myhostname should be the fully qualified hostname or the IP address of the computer calibre is running on." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:413 msgid "Moving library..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:400 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:401 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:429 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:430 msgid "Failed to move library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:455 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:484 msgid "Invalid database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:456 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:485 msgid "

An invalid library already exists at %s, delete it before trying to move the existing library.
Error: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:496 msgid "Could not move library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:624 msgid "welcome wizard" msgstr "" @@ -6719,6 +6731,10 @@ msgid "" "Start the calibre content server." msgstr "" +#: /home/kovid/work/calibre/src/calibre/library/server.py:858 +msgid "Path to the library folder to serve with the content server" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/utils/config.py:48 msgid "" "%sUsage%s: %s\n" @@ -6837,14 +6853,18 @@ msgid "English (CY)" msgstr "" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:104 -msgid "German (AT)" +msgid "English (PK)" msgstr "" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:105 -msgid "Dutch (NL)" +msgid "German (AT)" msgstr "" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:106 +msgid "Dutch (NL)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/utils/localization.py:107 msgid "Dutch (BE)" msgstr "" @@ -6878,99 +6898,99 @@ msgstr "" msgid "Untitled article" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/input.py:18 +#: /home/kovid/work/calibre/src/calibre/web/feeds/input.py:21 msgid "Download periodical content from the internet" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/input.py:33 +#: /home/kovid/work/calibre/src/calibre/web/feeds/input.py:36 msgid "Useful for recipe development. Forces max_articles_per_feed to 2 and downloads at most 2 feeds." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/input.py:36 +#: /home/kovid/work/calibre/src/calibre/web/feeds/input.py:39 msgid "Username for sites that require a login to access content." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/input.py:39 +#: /home/kovid/work/calibre/src/calibre/web/feeds/input.py:42 msgid "Password for sites that require a login to access content." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/input.py:43 -msgid "Download latest version of builtin recipes" +#: /home/kovid/work/calibre/src/calibre/web/feeds/input.py:46 +msgid "Do not download latest version of builtin recipes from the calibre server" msgstr "" #: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:40 msgid "Unknown News Source" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:513 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:520 msgid "The \"%s\" recipe needs a username and password." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:599 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:606 msgid "Download finished" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:601 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:608 msgid "Failed to download the following articles:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:607 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:614 msgid "Failed to download parts of the following articles:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:609 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:616 msgid " from " msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:611 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:618 msgid "\tFailed links:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:692 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:699 msgid "Could not fetch article. Run with -vv to see the reason" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:713 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:720 msgid "Fetching feeds..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:718 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:725 msgid "Got feeds from index page" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:724 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:731 msgid "Trying to download cover..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:782 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:789 msgid "Starting download [%d thread(s)]..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:798 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:805 msgid "Feeds downloaded to %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:808 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:815 msgid "Could not download cover: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:815 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:827 msgid "Downloading cover from %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:941 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:962 msgid "Untitled Article" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1012 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1033 msgid "Article downloaded: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1023 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1044 msgid "Article download failed: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1040 +#: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1061 msgid "Fetching feed" msgstr "" diff --git a/src/calibre/web/feeds/news.py b/src/calibre/web/feeds/news.py index 2778c1c5e9..60943de806 100644 --- a/src/calibre/web/feeds/news.py +++ b/src/calibre/web/feeds/news.py @@ -828,13 +828,15 @@ class BasicNewsRecipe(Recipe): with nested(open(cpath, 'wb'), closing(self.browser.open(cu))) as (cfile, r): cfile.write(r.read()) if ext.lower() == 'pdf': - from calibre.ebook.metadata.pdf import get_metadata + from calibre.ebooks.metadata.pdf import get_metadata stream = open(cpath, 'rb') mi = get_metadata(stream) cpath = None if mi.cover_data and mi.cover_data[1]: - cpath = os.path.join(self.output_dir, 'cover.png') - open(cpath, 'wb').write(mi.cover_data[1]) + cpath = os.path.join(self.output_dir, + 'cover.'+mi.cover_data[0]) + with open(cpath, 'wb') as f: + f.write(mi.cover_data[1]) self.cover_path = cpath