From e03675cf9de61102f87df6d29ae3c9092387e945 Mon Sep 17 00:00:00 2001 From: Translators <> Date: Sat, 10 Oct 2009 07:53:30 +0100 Subject: [PATCH 01/41] Launchpad automatic translations update. --- src/calibre/translations/ar.po | 640 ++++++++++++++--------------- src/calibre/translations/de.po | 634 ++++++++++++++--------------- src/calibre/translations/es.po | 634 ++++++++++++++--------------- src/calibre/translations/hr.po | 632 ++++++++++++++--------------- src/calibre/translations/hu.po | 634 ++++++++++++++--------------- src/calibre/translations/it.po | 640 ++++++++++++++--------------- src/calibre/translations/nb.po | 634 ++++++++++++++--------------- src/calibre/translations/nl.po | 642 +++++++++++++++--------------- src/calibre/translations/pl.po | 640 ++++++++++++++--------------- src/calibre/translations/ru.po | 632 ++++++++++++++--------------- src/calibre/translations/zh_CN.po | 632 ++++++++++++++--------------- 11 files changed, 3552 insertions(+), 3442 deletions(-) diff --git a/src/calibre/translations/ar.po b/src/calibre/translations/ar.po index dc1e603b55..961d769809 100644 --- a/src/calibre/translations/ar.po +++ b/src/calibre/translations/ar.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2009-10-02 05:30+0000\n" -"PO-Revision-Date: 2009-10-02 05:09+0000\n" +"POT-Creation-Date: 2009-10-10 02:36+0000\n" +"PO-Revision-Date: 2009-10-09 23:31+0000\n" "Last-Translator: Kovid Goyal \n" "Language-Team: Arabic \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-03 06:44+0000\n" +"X-Launchpad-Export-Date: 2009-10-10 06:52+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 @@ -26,8 +26,9 @@ msgstr "لا يفعل شيءً" #: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:53 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:58 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:199 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:703 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:706 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:730 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:733 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:177 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:410 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:65 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 @@ -95,22 +96,22 @@ msgstr "لا يفعل شيءً" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:29 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:217 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:261 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:273 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:120 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:127 #: /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/device.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:765 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:768 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:769 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:772 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:106 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:431 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:42 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:391 @@ -527,25 +528,25 @@ msgstr "" msgid "Unable to mount main memory (Error code: %d)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:643 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:645 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:670 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:672 msgid "The reader has no storage card in this slot." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:647 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:674 msgid "Selected slot: %s is not supported." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:671 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:698 msgid "There is insufficient free space in main memory" msgstr "لا توجد مساحة كافية في الذاكرة الرئيسية" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:673 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:675 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:700 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:702 msgid "There is insufficient free space on the storage card" msgstr "لا توجد مساحة كافية في بطاقة التخزين" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:686 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:713 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:434 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 #: /home/kovid/work/calibre/src/calibre/library/database2.py:1007 @@ -1114,7 +1115,7 @@ msgid "" "disables the generation of this cover." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:122 +#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:124 #: /home/kovid/work/calibre/src/calibre/ebooks/pml/pmlml.py:111 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:77 @@ -1471,7 +1472,7 @@ msgstr "المنتج" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:71 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:64 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:349 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:92 msgid "Comments" msgstr "التعليقات" @@ -1480,7 +1481,7 @@ msgstr "التعليقات" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:338 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1012 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1072 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:94 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Tags" msgstr "الوسوم" @@ -1488,7 +1489,7 @@ msgstr "الوسوم" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:372 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:166 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:354 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:93 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Series" msgstr "السلسلة" @@ -2202,15 +2203,15 @@ msgstr "" msgid "Copied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy to Clipboard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:386 msgid "Choose Files" msgstr "" @@ -2235,7 +2236,7 @@ msgid "The specified directory could not be processed." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:482 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:486 msgid "No books" msgstr "" @@ -2444,14 +2445,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:501 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:128 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:131 @@ -2651,38 +2652,38 @@ msgid "" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:96 msgid "Choose cover for " msgstr "إختار الغلاف لـ " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:159 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:102 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 msgid "Cannot read" msgstr "لا يمكن القراءة" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:104 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/dialogs/metadata_single.py:111 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 msgid "Error reading file" msgstr "خطأ في قراءة الملف" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:113 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/dialogs/metadata_single.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:121 msgid " is not a valid picture" msgstr " ليست صورة صالحة" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 msgid "Book Cover" msgstr "غلاف الكتاب" @@ -2691,28 +2692,28 @@ msgid "Use cover from &source file" msgstr "استخدم غلاف من المصدر&" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 msgid "Change &cover image:" msgstr "تغيير صورة الغلاف&:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 msgid "Browse for an image to use as the cover of this book." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 msgid "&Title: " msgstr ":ال&عنوان " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 msgid "Change the title of this book" msgstr "تغيير عنوان هذا الكتاب" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:135 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 msgid "&Author(s): " msgstr "ال&مؤلف: " @@ -2728,18 +2729,18 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:143 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 msgid "&Publisher: " msgstr "&الناشر: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 msgid "Ta&gs: " msgstr "الو&سوم: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:145 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

They can be any words or phrases, separated by commas." @@ -2749,7 +2750,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:150 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 msgid "&Series:" msgstr "&سلسلات:" @@ -2757,13 +2758,13 @@ msgstr "&سلسلات:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:151 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:372 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 msgid "List of known series. You can add new series." msgstr "قائمة السلسلات المعروفة. بإمكانك إضافة سلسلات جديدة." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 msgid "Book " msgstr "الكتاب " @@ -2878,7 +2879,7 @@ msgid "RB Output" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1329 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 msgid "Choose the format to view" msgstr "" @@ -2957,12 +2958,12 @@ msgid "Footer regular expression:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:56 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:72 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 msgid "Invalid regular expression" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:74 msgid "Invalid regular expression: %s" msgstr "" @@ -3176,188 +3177,188 @@ msgstr "" msgid "Device no longer connected." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:199 msgid "Get device information" msgstr "احصل على معلومات الجهاز" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:210 msgid "Get list of books on device" msgstr "احصل على قائمة الكتب على الجهاز" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:219 msgid "Send metadata to device" msgstr "ارسل الميتاداتا إلى الجهاز" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:228 msgid "Upload %d books to device" msgstr "رفع %d كتاب إلى الجهاز" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:243 msgid "Delete books from device" msgstr "حذف كتب من الجهاز" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:260 msgid "Download books from device" msgstr "تنزيل الكتب من الجهاز" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "View book on device" msgstr "عرض كتاب على الجهاز" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:273 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:277 msgid "and delete from library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:298 msgid "Set default send to device action" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:299 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:303 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:310 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:312 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:314 msgid "Email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:321 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:328 -msgid "Send to main memory" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:323 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:330 -msgid "Send to storage card A" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 +msgid "Send to main memory" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:334 +msgid "Send to storage card A" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 msgid "Send to storage card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 msgid "Send specific format to main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:341 msgid "Send specific format to storage card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:343 msgid "Send specific format to storage card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:487 msgid "selected to send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:492 msgid "Choose format to send to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:495 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 msgid "No device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 msgid "Cannot send: No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:507 msgid "No card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:504 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:508 msgid "Cannot send: Device has no storage card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:546 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 msgid "E-book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:553 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:554 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:177 msgid "by" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:555 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:568 msgid "Sending email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:594 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:601 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:806 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:813 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:696 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:817 msgid "No suitable formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:599 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:621 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:625 msgid "Failed to email books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 msgid "Failed to email the following books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:630 msgid "Sent by email:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:653 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:657 msgid "News:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:658 msgid "Attached is the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:665 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 msgid "Sent news to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:693 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:807 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:697 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:811 msgid "Auto convert the following books before uploading to the device?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:728 msgid "Sending news to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:776 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:780 msgid "Sending books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:814 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:818 msgid "" "Could not upload the following books to the device, as no suitable formats " "were found. Convert the book(s) to a format supported by your device first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 msgid "No space on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:863 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:867 msgid "" "

Cannot upload books to device there is no more free space available " msgstr "" @@ -3375,7 +3376,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:86 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:345 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1007 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:90 msgid "Path" msgstr "المسار" @@ -3385,7 +3386,7 @@ msgstr "المسار" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:344 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:91 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Formats" msgstr "التهيئات" @@ -3493,7 +3494,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:461 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:788 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:140 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1032 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "خطأ" @@ -3564,7 +3565,7 @@ msgid "Access log:" msgstr "سجل النفاذ:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:645 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:576 msgid "Failed to start content server" msgstr "فشل في تشغيل خادم المحتوى" @@ -4081,7 +4082,7 @@ msgid "Edit Meta information" msgstr "تحرير معلومات الميتا" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 msgid "Meta information" msgstr "معلومات الميتا" @@ -4094,26 +4095,26 @@ msgid "Author s&ort: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:138 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 msgid "&Rating:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:140 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:141 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Rating of this book. 0-5 stars" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:142 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 msgid " stars" msgstr " نجمة" @@ -4123,8 +4124,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:146 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:147 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 msgid "Open Tag Editor" msgstr "فتح محرر الوسوم" @@ -4140,157 +4141,170 @@ msgstr "قائمة من الوسوم مفرقة بالفاصلة لحذفها م msgid "Remove &format:" msgstr "حذف الت&هيئة:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 msgid "Not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:133 +msgid "Choose formats for " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:134 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:872 +msgid "Books" +msgstr "كتب" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:160 +msgid "You do not have permission to read the following files:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 msgid "No format selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 msgid "Could not read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 msgid "Could not read metadata from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:224 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:247 msgid "Could not read cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:242 msgid "Could not read cover from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:248 msgid "The cover in the %s format is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:285 msgid "Abort the editing of all remaining books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:488 msgid "Downloading cover..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:479 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:484 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:511 msgid "Cannot fetch cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:480 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:491 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:512 msgid "Could not fetch cover.
" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:502 msgid "The download timed out." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:506 msgid "Could not find cover for this book. Try specifying the ISBN first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:497 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:518 msgid "Bad cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:498 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:519 msgid "The cover is not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:538 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 msgid "Cannot fetch metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:539 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 msgid "You must specify at least one of ISBN, Title, Authors or Publisher" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:612 msgid "Permission denied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:613 msgid "Could not open %s. Is it being used by another program?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 msgid "Edit Meta Information" msgstr "تحرير معلومات الميتا" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 msgid "Swap the author and title" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 msgid "Author S&ort: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 msgid "" "Automatically create the author sort entry based on the current author entry" msgstr "ينشئ مدخل ترتيب المؤلف حسب مدخل المؤلف الحالي" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 msgid "Remove unused series (Series that have no books)" msgstr "حذف سلسلات غير مستخدمة (سلسلات التي لا تحتوي على كتب)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 msgid "IS&BN:" msgstr "IS&BN:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Publishe&d:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 msgid "dd MMM yyyy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 msgid "&Date:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 msgid "&Comments" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 msgid "&Fetch metadata from server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Available Formats" msgstr "التهيئات المتوفرة" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 msgid "Add a new format for this book to the database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 msgid "Remove the selected formats for this book from the database." msgstr "حذف التهيئات المختارة لهذا الكتاب من قاعدة البيانات." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 msgid "Set the cover for the book from the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 msgid "Update metadata from the metadata in the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 msgid "Reset cover to default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 msgid "Download &cover" msgstr "" @@ -4804,11 +4818,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:79 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:83 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:88 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:93 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:96 msgid "No match" msgstr "" @@ -4902,7 +4916,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:343 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:408 msgid "None" msgstr "بدون" @@ -5034,121 +5048,121 @@ msgstr "" msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "Edit metadata individually" msgstr "تحرير الميتاداتا فردياً" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 msgid "Edit metadata in bulk" msgstr "تحرير الميتاداتا جملةً" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 msgid "Download metadata and covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:232 msgid "Download only metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:233 msgid "Download only covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 msgid "Add books from a single directory" msgstr "إضافة كتب من دليل واحد" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:237 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:240 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:243 msgid "Add Empty book. (Book entry with no formats)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:278 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:353 msgid "Save to disk" msgstr "حفظ إلى القرص" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 msgid "Save to disk in a single directory" msgstr "حفظ إلى القرص في دليل واحد" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1431 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:282 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 msgid "Save only %s format to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:290 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:359 msgid "View" msgstr "عرض" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "View specific format" msgstr "عرض تهيئة معينة" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:315 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:317 msgid "Convert individually" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:316 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:318 msgid "Bulk convert" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:333 msgid "Run welcome wizard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:367 msgid "Similar books..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:425 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:426 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 msgid "Bad database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:430 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:478 msgid "Calibre Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:438 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1603 msgid "Choose a location for your ebook library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:619 msgid "Browse by covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 msgid "Device: " msgstr "الجهاز: " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:728 msgid " detected." msgstr " تم كشفه." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:748 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:750 msgid "Connected " msgstr "متصل " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:760 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:762 msgid "Device database corrupted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:763 msgid "" "\n" "

The database of books on the reader is corrupted. Try the " @@ -5164,170 +5178,166 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:837 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:907 msgid "Uploading books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:845 -msgid "Books" -msgstr "كتب" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:846 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:873 msgid "EPUB Books" msgstr "كتب EPUB" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:847 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:874 msgid "LRF Books" msgstr "كتب LRF" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:848 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:875 msgid "HTML Books" msgstr "كتب HTML" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:849 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:876 msgid "LIT Books" msgstr "كتب LIT" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:850 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:877 msgid "MOBI Books" msgstr "كتب MOBI" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:851 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:878 msgid "Text books" msgstr "كتب نصّية" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:852 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:879 msgid "PDF Books" msgstr "كتب PDF" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 msgid "Comics" msgstr "الرسومات" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:854 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:881 msgid "Archives" msgstr "أرشيفات" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:916 msgid "Failed to read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:917 msgid "Failed to read metadata from the following" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:909 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 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/main.py:936 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:963 msgid "Deleting books from device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:967 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:994 msgid "Cannot download metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:968 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1016 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1049 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1074 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1186 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1043 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1101 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1213 msgid "No books selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1006 msgid "Downloading %s for %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1000 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1027 msgid "Failed to download some metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1001 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1028 msgid "Failed to download metadata for the following:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1031 msgid "Failed to download metadata:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1015 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1048 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1075 msgid "Cannot edit metadata" msgstr "لا يمكن تحرير الميتاداتا" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1073 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1100 msgid "Cannot save to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 msgid "Choose destination directory" msgstr "إختيار دليل الوجهة" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1130 msgid "Error while saving" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1104 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1131 msgid "There was an error while saving." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1111 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1112 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1138 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1139 msgid "Could not save some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1140 msgid "Click the show details button to see which ones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1132 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1159 msgid "Fetching news from " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1145 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1172 msgid " fetched." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 msgid "Cannot convert" msgstr "لا يمكن تحويله" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1241 msgid "Starting conversion of %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1342 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1371 msgid "No book selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1373 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1402 msgid "Cannot view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1341 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1370 msgid "Cannot open folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1387 msgid "Multiple Books Selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1359 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1388 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 " @@ -5335,149 +5345,149 @@ msgid "" "continue?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1374 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1403 msgid "%s has no available formats." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1415 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1444 msgid "Cannot configure" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1416 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1445 msgid "Cannot configure while there are running jobs." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1459 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1488 msgid "No detailed info available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1489 msgid "No detailed information is available for books on the device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1512 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1541 msgid "Error talking to device" msgstr "خطأ في الاتصال بالجهاز" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1513 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1542 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/main.py:1536 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1554 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1565 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 msgid "Conversion Error" msgstr "خطأ في التحويل" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1537 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1566 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/main.py:1555 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1612 msgid "Invalid library location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1613 msgid "Could not access %s. Using %s as the library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1631 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1660 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/main.py:1655 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1684 msgid "There are active jobs. Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1658 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1687 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/main.py:1662 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1691 msgid "WARNING: Active jobs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1713 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1742 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/main.py:1732 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 msgid "" "Latest version: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1740 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1769 msgid "Update available" msgstr "تحديث متوفر" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1741 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1770 msgid "" "%s has been updated to version %s. See the new features. " "Visit the download page?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1759 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1788 msgid "Use the library located at the specified path." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1790 msgid "Start minimized to system tray." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1763 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1792 msgid "Log debugging information to console" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1765 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1794 msgid "Do not check for updates" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1813 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1842 msgid "If you are sure it is not running" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1815 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1844 msgid "Cannot Start " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1816 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1845 msgid "%s is already running." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1819 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1848 msgid "may be running in the system tray, in the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1821 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1850 msgid "upper right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1823 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1852 msgid "lower right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1826 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1855 msgid "try rebooting your computer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1828 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1840 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1857 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1869 msgid "try deleting the file" msgstr "" @@ -5631,33 +5641,33 @@ msgstr "" msgid "No matches found for this book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:60 msgid "Search" msgstr "بحث" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:149 msgid "Jobs:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:158 msgid "Click to see list of active jobs." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to browse books by their covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to turn off Cover Browsing" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:193 msgid "" "

Browsing books by their covers is disabled.
Import of pictureflow " "module failed:
" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:201 msgid "Click to browse books by tags" msgstr "" @@ -6044,67 +6054,67 @@ msgstr "" msgid "Print eBook" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 msgid "" "Library\n" "%d\n" "books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 msgid "" "Reader\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:200 msgid "" "Card A\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:201 msgid "" "Card B\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:206 msgid "Click to see the books available on your computer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:207 msgid "Click to see the books in the main memory of your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:208 msgid "Click to see the books on storage card A in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:209 msgid "Click to see the books on storage card B in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:466 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:498 msgid "Change Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:499 msgid "Upper Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:468 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:500 msgid "Lower Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:469 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:501 msgid "Swap Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:470 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:502 msgid "Title Case" msgstr "" @@ -6802,43 +6812,43 @@ msgid "" "arguments in quotation marks." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:555 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 msgid "Path to the database in which books are stored" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:557 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 msgid "Pattern to guess metadata from filenames" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 msgid "Access key for isbndb.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 msgid "Default timeout for network operations (seconds)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 msgid "Path to directory in which your library of books is stored" msgstr "المسار إلى الدليل الذي تحفظ فيها مكتبة كتبك" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:569 msgid "The language in which to display the user interface" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 msgid "The default output format for ebook conversions." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 msgid "Ordered list of formats to prefer for input." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:573 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:577 msgid "Read metadata from files" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:579 msgid "The priority of worker processes" msgstr "" diff --git a/src/calibre/translations/de.po b/src/calibre/translations/de.po index bd65201de6..e1fe0b277f 100644 --- a/src/calibre/translations/de.po +++ b/src/calibre/translations/de.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: de\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-10-02 05:30+0000\n" -"PO-Revision-Date: 2009-10-05 21:31+0000\n" -"Last-Translator: S. Dorscht \n" +"POT-Creation-Date: 2009-10-10 02:36+0000\n" +"PO-Revision-Date: 2009-10-09 23:33+0000\n" +"Last-Translator: Kovid Goyal \n" "Language-Team: American English \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-06 06:44+0000\n" +"X-Launchpad-Export-Date: 2009-10-10 06:52+0000\n" "X-Generator: Launchpad (build Unknown)\n" "Generated-By: pygettext.py 1.5\n" @@ -27,8 +27,9 @@ msgstr "Mach absolut garnichts" #: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:53 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:58 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:199 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:703 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:706 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:730 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:733 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:177 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:410 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:65 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 @@ -96,22 +97,22 @@ msgstr "Mach absolut garnichts" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:29 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:217 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:261 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:273 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:120 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:127 #: /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/device.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:765 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:768 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:769 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:772 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:106 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:431 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:42 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:391 @@ -557,25 +558,25 @@ msgstr "" msgid "Unable to mount main memory (Error code: %d)" msgstr "Konnte Hauptspeicher nicht mounten (Error code: %d)" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:643 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:645 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:670 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:672 msgid "The reader has no storage card in this slot." msgstr "Das Gerät hat keine Speicherkarte in diesem Laufwerk." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:647 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:674 msgid "Selected slot: %s is not supported." msgstr "Gewählter Slot: %s wird nicht unterstützt." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:671 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:698 msgid "There is insufficient free space in main memory" msgstr "Nicht genügend freier Spreicherplatz im Hauptspeicher" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:673 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:675 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:700 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:702 msgid "There is insufficient free space on the storage card" msgstr "Nicht genügend freier Speicherplatz auf der Speicherkarte" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:686 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:713 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:434 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 #: /home/kovid/work/calibre/src/calibre/library/database2.py:1007 @@ -1312,7 +1313,7 @@ msgstr "" "erstellt. Diese Einstellung schaltet die Erstellung dieses Umschlagbildes " "aus." -#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:122 +#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:124 #: /home/kovid/work/calibre/src/calibre/ebooks/pml/pmlml.py:111 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:77 @@ -1704,7 +1705,7 @@ msgstr "Produzent" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:71 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:64 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:349 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:92 msgid "Comments" msgstr "Bemerkung" @@ -1713,7 +1714,7 @@ msgstr "Bemerkung" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:338 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1012 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1072 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:94 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Tags" msgstr "Etiketten" @@ -1721,7 +1722,7 @@ msgstr "Etiketten" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:372 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:166 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:354 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:93 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Series" msgstr "Reihe" @@ -2590,15 +2591,15 @@ msgstr "Maximale Anzahl der Arbeitsprozesse in der Warteschlange" msgid "Copied" msgstr "Kopiert" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy" msgstr "Kopieren" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy to Clipboard" msgstr "In die Zwischenablage kopieren" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:386 msgid "Choose Files" msgstr "Dateien wählen" @@ -2623,7 +2624,7 @@ msgid "The specified directory could not be processed." msgstr "Das angegebene Verzeichnis konnte nicht bearbeitet werden." #: /home/kovid/work/calibre/src/calibre/gui2/add.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:482 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:486 msgid "No books" msgstr "Keine Bücher" @@ -2842,14 +2843,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:501 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:128 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:131 @@ -3055,38 +3056,38 @@ msgstr "" "enthalten." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:96 msgid "Choose cover for " msgstr "Wählen Sie das Umschlagbild für " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:159 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:102 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 msgid "Cannot read" msgstr "Lesen nicht möglich" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:104 msgid "You do not have permission to read the file: " msgstr "Sie haben nicht die nötigen Rechte, um diese Datei zu lesen: " #: /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/dialogs/metadata_single.py:111 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 msgid "Error reading file" msgstr "Fehler beim Lesen der Datei" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:113 msgid "

There was an error reading from file:
" msgstr "

Es trat ein Fehler beim Lesen dieser Datei auf:
" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:121 msgid " is not a valid picture" msgstr " ist kein gültiges Bild" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 msgid "Book Cover" msgstr "Umschlagbild" @@ -3095,28 +3096,28 @@ msgid "Use cover from &source file" msgstr "Um&schlagbild der Quelldatei verwenden" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 msgid "Change &cover image:" msgstr "&Umschlagbild ändern:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 msgid "Browse for an image to use as the cover of this book." msgstr "Nach Umschlagbild durchsuchen..." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 msgid "&Title: " msgstr "&Titel: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 msgid "Change the title of this book" msgstr "Titel dieses Buches ändern" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:135 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 msgid "&Author(s): " msgstr "&Autor(en): " @@ -3134,18 +3135,18 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:143 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 msgid "&Publisher: " msgstr "&Herausgeber: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 msgid "Ta&gs: " msgstr "&Etiketten: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:145 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

They can be any words or phrases, separated by commas." @@ -3156,7 +3157,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:150 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 msgid "&Series:" msgstr "&Reihen:" @@ -3164,13 +3165,13 @@ msgstr "&Reihen:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:151 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:372 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 msgid "List of known series. You can add new series." msgstr "Liste der bekannten Reihen. Sie können neue Reihen hinzufügen." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 msgid "Book " msgstr "Buch " @@ -3285,7 +3286,7 @@ msgid "RB Output" msgstr "RB Ausgabe" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1329 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 msgid "Choose the format to view" msgstr "Format zur Vorschau wählen" @@ -3370,12 +3371,12 @@ msgid "Footer regular expression:" msgstr "Regulärer Ausdruck Fußzeile:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:56 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:72 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 msgid "Invalid regular expression" msgstr "Ungültiger regulärer Ausdruck" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:74 msgid "Invalid regular expression: %s" msgstr "Ungültiger regulärer Ausdruck: %s" @@ -3605,181 +3606,181 @@ msgstr "Keine weiteren Informationen verfügbar." msgid "Device no longer connected." msgstr "Gerät ist nicht mehr verbunden." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:199 msgid "Get device information" msgstr "Geräteinformationen erstellen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:210 msgid "Get list of books on device" msgstr "Liste der Bücher auf dem Gerät erstellen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:219 msgid "Send metadata to device" msgstr "Metadaten zum Gerät senden" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:228 msgid "Upload %d books to device" msgstr "%d Bücher auf das Gerät laden" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:243 msgid "Delete books from device" msgstr "Bücher vom Gerät löschen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:260 msgid "Download books from device" msgstr "Bücher vom Gerät herunterladen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "View book on device" msgstr "Buch auf dem Gerät ansehen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:273 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:277 msgid "and delete from library" msgstr "und aus der Datenbank löschen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:298 msgid "Set default send to device action" msgstr "Geben Sie die voreingestellte Übertragungsart an" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:299 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:303 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:310 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:312 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:314 msgid "Email to" msgstr "eMail an" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:321 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:328 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 msgid "Send to main memory" msgstr "An Hauptspeicher senden" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:323 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:330 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:334 msgid "Send to storage card A" msgstr "An Speicherkarte A senden" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 msgid "Send to storage card B" msgstr "An Speicherkarte B senden" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 msgid "Send specific format to main memory" msgstr "Gewähltes Format an Hauptspeicher übertragen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:341 msgid "Send specific format to storage card A" msgstr "Bestimmtes Format an Speicherkarte A senden" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:343 msgid "Send specific format to storage card B" msgstr "Bestimmtes Format an Speicherkarte B senden" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:487 msgid "selected to send" msgstr "zum Übertragen ausgewählt" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:492 msgid "Choose format to send to device" msgstr "Format wählen, das ans Gerät geschickt wird" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:495 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 msgid "No device" msgstr "Kein Gerät" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 msgid "Cannot send: No device is connected" msgstr "Übertragung schlug fehl: Kein Gerät verbunden" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:507 msgid "No card" msgstr "Keine Speicherkarte" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:504 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:508 msgid "Cannot send: Device has no storage card" msgstr "Übertragung schlug fehl: Keine Speicherkarte im Gerät" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:546 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 msgid "E-book:" msgstr "eBook:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:553 msgid "Attached, you will find the e-book" msgstr "Im Anhang finden Sie das eBook" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:554 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:177 msgid "by" msgstr "von" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:555 msgid "in the %s format." msgstr "im %s Format." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:568 msgid "Sending email to" msgstr "Sende eMail an" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:594 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:601 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:806 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:813 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:696 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:817 msgid "No suitable formats" msgstr "Keine geeigneten Formate" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:599 msgid "Auto convert the following books before sending via email?" msgstr "" "Die folgenden Bücher vor dem Versenden per eMail automatisch konvertieren?" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" "Konnte die folgenden Bücher nicht versenden, da geeignete Formate fehlen:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:621 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:625 msgid "Failed to email books" msgstr "Senden der Bücher schlug fehl" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 msgid "Failed to email the following books:" msgstr "Senden der folgenden Bücher schlug fehl:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:630 msgid "Sent by email:" msgstr "Per eMail versendet:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:653 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:657 msgid "News:" msgstr "Nachrichten:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:658 msgid "Attached is the" msgstr "Im Anhang ist" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:665 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 msgid "Sent news to" msgstr "Nachrichten senden an" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:693 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:807 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:697 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:811 msgid "Auto convert the following books before uploading to the device?" msgstr "" "Die folgenden Bücher vor dem Laden auf das Gerät automatisch konvertieren?" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:728 msgid "Sending news to device." msgstr "Sende Nachrichten an das Gerät." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:776 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:780 msgid "Sending books to device." msgstr "Sende Bücher an das Gerät." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:814 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:818 msgid "" "Could not upload the following books to the device, as no suitable formats " "were found. Convert the book(s) to a format supported by your device first." @@ -3788,11 +3789,11 @@ msgstr "" "fehlen. Konvertieren Sie die Bücher zuerst in ein von Ihrem Gerät " "unterstütztes Format." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 msgid "No space on device" msgstr "Gerätespeicher voll" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:863 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:867 msgid "" "

Cannot upload books to device there is no more free space available " msgstr "" @@ -3812,7 +3813,7 @@ msgstr "Unterverzeichnisse verwenden" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:86 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:345 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1007 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:90 msgid "Path" msgstr "Pfad" @@ -3822,7 +3823,7 @@ msgstr "Pfad" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:344 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:91 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Formats" msgstr "Formate" @@ -3936,7 +3937,7 @@ msgstr "Neue eMail Adresse" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:461 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:788 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:140 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1032 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "Fehler" @@ -4011,7 +4012,7 @@ msgid "Access log:" msgstr "Zugriffs-Protokolldatei:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:645 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:576 msgid "Failed to start content server" msgstr "Content Server konnte nicht gestartet werden" @@ -4583,7 +4584,7 @@ msgid "Edit Meta information" msgstr "Meta-Informationen bearbeiten" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 msgid "Meta information" msgstr "Meta-Informationen" @@ -4596,7 +4597,7 @@ msgid "Author s&ort: " msgstr "S&ortierung nach Autor: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:138 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." @@ -4605,19 +4606,19 @@ msgstr "" "Dickens\" zum Beispiel als \"Dickens, Charles\"." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 msgid "&Rating:" msgstr "&Bewertung:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:140 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:141 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Rating of this book. 0-5 stars" msgstr "Bewertung dieses Buches: 0-5 Sterne" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:142 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 msgid " stars" msgstr " Sterne" @@ -4627,8 +4628,8 @@ msgstr "Etiketten hinzufü&gen: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:146 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:147 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 msgid "Open Tag Editor" msgstr "Etiketten-Editor öffnen" @@ -4646,162 +4647,175 @@ msgstr "" msgid "Remove &format:" msgstr "&Format entfernen:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 msgid "Not a valid picture" msgstr "Kein gültiges Bild." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:133 +msgid "Choose formats for " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:134 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:872 +msgid "Books" +msgstr "Bücher" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:160 +msgid "You do not have permission to read the following files:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 msgid "No format selected" msgstr "Kein Format gewählt" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 msgid "Could not read metadata" msgstr "Konnte Metadaten nicht lesen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 msgid "Could not read metadata from %s format" msgstr "Konnte Metadaten des Formats %s nicht lesen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:224 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:247 msgid "Could not read cover" msgstr "Konnte Umschlagbild nicht lesen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:242 msgid "Could not read cover from %s format" msgstr "Konnte Umschlagbild des Formats %s nicht lesen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:248 msgid "The cover in the %s format is invalid" msgstr "Das Umschlagbild im Format %s ist ungültig" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:285 msgid "Abort the editing of all remaining books" msgstr "Editieren aller verbleibenden Bücher abbrechen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:488 msgid "Downloading cover..." msgstr "Lade Umschlagbild..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:479 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:484 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:511 msgid "Cannot fetch cover" msgstr "Kann kein Umschlagbild abrufen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:480 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:491 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:512 msgid "Could not fetch cover.
" msgstr "Konnte kein Umschlagbild abrufen.
" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:502 msgid "The download timed out." msgstr "Der Download timed out." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:506 msgid "Could not find cover for this book. Try specifying the ISBN first." msgstr "" "Konnte kein Umschlagbild für dieses Buch finden. Geben Sie zuerst die ISBN " "an." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:497 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:518 msgid "Bad cover" msgstr "Falsches Umschlagbild" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:498 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:519 msgid "The cover is not a valid picture" msgstr "Das Umschlagbild ist kein gültiges Bild" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:538 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 msgid "Cannot fetch metadata" msgstr "Konnte Metadaten nicht abrufen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:539 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 msgid "You must specify at least one of ISBN, Title, Authors or Publisher" msgstr "Sie müssen wenigstens ISBN, Titel, Autor oder Herausgeber angeben" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:612 msgid "Permission denied" msgstr "Zugriff verweigert" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:613 msgid "Could not open %s. Is it being used by another program?" msgstr "" "Konnte %s nicht öffnen. Wird es von einem anderen Programm verwendet?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 msgid "Edit Meta Information" msgstr "Meta-Informationen bearbeiten" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 msgid "Swap the author and title" msgstr "Tausche Autor und Titel" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 msgid "Author S&ort: " msgstr "S&ortierung nach Autor: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 msgid "" "Automatically create the author sort entry based on the current author entry" msgstr "" "Automatisch den Eintrag für die Sortierung nach Autor basierend auf dem " "aktuellen Autor erstellen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 msgid "Remove unused series (Series that have no books)" msgstr "Unbenutzte Reihen entfernen (Reihen ohne Bücher)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 msgid "IS&BN:" msgstr "IS&BN:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Publishe&d:" msgstr "Veröffentlichun&g:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 msgid "dd MMM yyyy" msgstr "TT MMM YYYY" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 msgid "&Date:" msgstr "&Datum:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 msgid "&Comments" msgstr "&Bemerkungen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 msgid "&Fetch metadata from server" msgstr "Metadaten vom Server abru&fen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Available Formats" msgstr "Verfügbare Formate" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 msgid "Add a new format for this book to the database" msgstr "Ein neues Format für dieses Buch zur Datenbank hinzufügen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 msgid "Remove the selected formats for this book from the database." msgstr "Markierte Formate dieses Buches aus der Datenbank löschen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 msgid "Set the cover for the book from the selected format" msgstr "Umschlagbild des Buches aus dem gewählten Format festlegen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 msgid "Update metadata from the metadata in the selected format" msgstr "Metadaten durch die Metadaten im angegebenen Format aktualisieren" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 msgid "Reset cover to default" msgstr "Umschlagbild auf Voreinstellung zurücksetzen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 msgid "Download &cover" msgstr "Ums&chlagbild laden" @@ -5366,11 +5380,11 @@ msgstr "Regulärer Ausdruck (?P<title>)" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:79 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:83 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:88 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:93 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:96 msgid "No match" msgstr "Kein Treffer" @@ -5464,7 +5478,7 @@ msgstr "Bewertung" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:343 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:408 msgid "None" msgstr "Keine" @@ -5600,31 +5614,31 @@ msgstr "" msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" msgstr "%s: %s von Kovid Goyal %%(version)s
%%(device)s

" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "Edit metadata individually" msgstr "Metadaten einzeln bearbeiten" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 msgid "Edit metadata in bulk" msgstr "Metadaten auf einmal bearbeiten" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 msgid "Download metadata and covers" msgstr "Metadaten und Umschlagbilder laden" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:232 msgid "Download only metadata" msgstr "Nur Metadaten laden" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:233 msgid "Download only covers" msgstr "Nur Umschlagbilder laden" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 msgid "Add books from a single directory" msgstr "Bücher aus einem einzelnen Verzeichnis hinzufügen" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:237 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" @@ -5633,7 +5647,7 @@ msgstr "" "Buch pro Verzeichnis, jede eBook Datei im Verzeichnis ist dasselbe Buch in " "verschiedenen Formaten)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:240 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" @@ -5641,85 +5655,85 @@ msgstr "" "Bücher aus Verzeichnissen hinzufügen, inklusive Unterverzeichnissen " "(verschiedene Bücher im Verzeichnis, jede eBook Datei ist ein anderes Buch)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:243 msgid "Add Empty book. (Book entry with no formats)" msgstr "Leeres Buch hinzufügen. (Buch Eintrag ohne Formate)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:278 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:353 msgid "Save to disk" msgstr "Auf Festplatte speichern" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 msgid "Save to disk in a single directory" msgstr "Auf Festplatte in ein einziges Verzeichnis speichern" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1431 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:282 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 msgid "Save only %s format to disk" msgstr "Nur das %s Format auf Festplatte speichern" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:290 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:359 msgid "View" msgstr "Vorschau" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "View specific format" msgstr "Spezielles Format ansehen" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:315 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:317 msgid "Convert individually" msgstr "Einzeln konvertieren" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:316 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:318 msgid "Bulk convert" msgstr "Auf einmal konvertieren" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:333 msgid "Run welcome wizard" msgstr "Willkommens-Assistenten ausführen" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:367 msgid "Similar books..." msgstr "Ähnliche Bücher..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:425 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:426 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 msgid "Bad database location" msgstr "Schlechter Datenbank Standort" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:430 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:478 msgid "Calibre Library" msgstr "Calibre Bibliothek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:438 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1603 msgid "Choose a location for your ebook library." msgstr "Wählen Sie einen Speicherort für Ihre eBook Bibliothek." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:619 msgid "Browse by covers" msgstr "Umschlagbilder durchsuchen" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 msgid "Device: " msgstr "Gerät: " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:728 msgid " detected." msgstr " gefunden." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:748 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:750 msgid "Connected " msgstr "Angeschlossen: " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:760 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:762 msgid "Device database corrupted" msgstr "Gerätedatenbank ist beschädigt" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:763 msgid "" "\n" "

The database of books on the reader is corrupted. Try the " @@ -5750,60 +5764,56 @@ msgstr "" " \n" " " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:837 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:907 msgid "Uploading books to device." msgstr "Lade Bücher auf das Gerät." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:845 -msgid "Books" -msgstr "Bücher" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:846 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:873 msgid "EPUB Books" msgstr "EPUB Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:847 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:874 msgid "LRF Books" msgstr "LRF Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:848 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:875 msgid "HTML Books" msgstr "HTML Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:849 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:876 msgid "LIT Books" msgstr "LIT Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:850 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:877 msgid "MOBI Books" msgstr "MOBI Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:851 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:878 msgid "Text books" msgstr "Text Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:852 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:879 msgid "PDF Books" msgstr "PDF Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 msgid "Comics" msgstr "Comics" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:854 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:881 msgid "Archives" msgstr "Archive" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:916 msgid "Failed to read metadata" msgstr "Lesen der Metadaten schlug fehl" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:917 msgid "Failed to read metadata from the following" msgstr "Lesen der Metadaten schlug fehl bei folgenden" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:909 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 msgid "" "The selected books will be permanently deleted and the files removed " "from your computer. Are you sure?" @@ -5811,112 +5821,112 @@ msgstr "" "Die gewählten Bücher werden dauerhaft gelöscht und die Dateien vom " "Computer entfernt. Sicher?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:963 msgid "Deleting books from device." msgstr "Lösche Bücher vom Gerät." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:967 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:994 msgid "Cannot download metadata" msgstr "Konnte Metadaten nicht laden" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:968 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1016 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1049 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1074 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1186 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1043 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1101 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1213 msgid "No books selected" msgstr "Keine Bücher ausgewählt" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "covers" msgstr "Umschlagbilder" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "metadata" msgstr "Metadaten" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1006 msgid "Downloading %s for %d book(s)" msgstr "Lade %s für %d Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1000 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1027 msgid "Failed to download some metadata" msgstr "Das Laden der Metadaten schlug teilweise fehl" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1001 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1028 msgid "Failed to download metadata for the following:" msgstr "Das Laden der Metadaten schlug für folgende Bücher fehl:" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1031 msgid "Failed to download metadata:" msgstr "Laden der Metadaten schlug fehl:" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1015 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1048 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1075 msgid "Cannot edit metadata" msgstr "Kann Metadaten nicht bearbeiten" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1073 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1100 msgid "Cannot save to disk" msgstr "Speichern auf Festplatte nicht möglich" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 msgid "Choose destination directory" msgstr "Zielverzeichnis auswählen" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1130 msgid "Error while saving" msgstr "Fehler während des Speicherns" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1104 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1131 msgid "There was an error while saving." msgstr "Es gab einen Fehler während des Speicherns." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1111 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1112 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1138 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1139 msgid "Could not save some books" msgstr "Konnte einige Bücher nicht speichern" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1140 msgid "Click the show details button to see which ones." msgstr "" "Klicken Sie auf die Schaltfläche Details zeigen, um zu sehen, welche es gibt." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1132 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1159 msgid "Fetching news from " msgstr "Rufe Nachrichten ab von " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1145 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1172 msgid " fetched." msgstr " abgerufen." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 msgid "Cannot convert" msgstr "Konvertierung nicht möglich" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1241 msgid "Starting conversion of %d book(s)" msgstr "Starte Konvertierung von %d Büchern" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1342 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1371 msgid "No book selected" msgstr "Kein Buch ausgewählt" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1373 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1402 msgid "Cannot view" msgstr "Ansehen nicht möglich" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1341 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1370 msgid "Cannot open folder" msgstr "Konnte Verzeichnis nicht öffnen" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1387 msgid "Multiple Books Selected" msgstr "Mehrere Bücher ausgewählt" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1359 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1388 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 " @@ -5928,32 +5938,32 @@ msgstr "" "Rechners haben. Einmal gestartet kann der Prozess nicht beendet werden, " "bevor er abgeschlossen ist. Möchten Sie fortfahren?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1374 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1403 msgid "%s has no available formats." msgstr "%s hat keine verfügbaren Formate." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1415 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1444 msgid "Cannot configure" msgstr "Konfiguration nicht möglich" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1416 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1445 msgid "Cannot configure while there are running jobs." msgstr "Konfiguration nicht möglich während Aufträge abgearbeitet werden." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1459 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1488 msgid "No detailed info available" msgstr "Es sind keine genaueren Informationen verfügbar" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1489 msgid "No detailed information is available for books on the device." msgstr "" "Es sind keine weitere Informationen über Bücher auf dem Gerät verfügbar" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1512 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1541 msgid "Error talking to device" msgstr "Fehler in der Kommunikation zum Gerät" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1513 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1542 msgid "" "There was a temporary error talking to the device. Please unplug and " "reconnect the device and or reboot." @@ -5961,12 +5971,12 @@ msgstr "" "Es trat ein Fehler in der Kommunikation mit dem Gerät auf. Bitte entfernen " "und schließen Sie das Gerät wieder an und - oder starten Sie neu." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1536 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1554 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1565 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 msgid "Conversion Error" msgstr "Konvertierungsfehler" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1537 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1566 msgid "" "

Could not convert: %s

It is a DRMed book. You must " "first remove the DRM using third party tools." @@ -5975,19 +5985,19 @@ msgstr "" "href=\"%s\">DRM geschütztes Buch. Sie müssen zuerst das DRM mit Hilfe " "anderer Programme entfernen." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1555 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 msgid "Failed" msgstr "Misslungen" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1612 msgid "Invalid library location" msgstr "Ungültiger Ort der Bibliothek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1613 msgid "Could not access %s. Using %s as the library." msgstr "Konnte nicht auf %s zugreifen. Verwende %s als Bibliothek." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1631 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1660 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." @@ -5996,12 +6006,12 @@ msgstr "" "Falls Sie es nützlich finden, sollten Sie eine Spende zur Unterstützung " "seiner Entwicklung in Betracht ziehen." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1655 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1684 msgid "There are active jobs. Are you sure you want to quit?" msgstr "" "Es bestehen aktive Aufträge. Sind Sie sicher, dass sie es beenden wollen?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1658 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1687 msgid "" " is communicating with the device!
\n" " Quitting may cause corruption on the device.
\n" @@ -6012,11 +6022,11 @@ msgstr "" "verursachen.
\n" " Sind Sie sicher, dass sie beenden möchten?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1662 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1691 msgid "WARNING: Active jobs" msgstr "WARNUNG: Aktive Aufträge" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1713 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1742 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -6024,7 +6034,7 @@ msgstr "" "wird im System Tray weiter laufen. Zum Schließen wählen Sie Beenden " "im Kontextmenü des System Tray." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1732 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 msgid "" "Latest version: %s" @@ -6032,11 +6042,11 @@ msgstr "" "Letzte Version: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1740 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1769 msgid "Update available" msgstr "Neue Version verfügbar" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1741 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1770 msgid "" "%s has been updated to version %s. See the new features. " @@ -6046,52 +6056,52 @@ msgstr "" "href=\"http://calibre.kovidgoyal.net/wiki/Changelog\">neuen Features an. " "Möchten Sie die Download Seite besuchen?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1759 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1788 msgid "Use the library located at the specified path." msgstr "Die im angegebenen Pfad sich befindende Bibliothek verwenden" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1790 msgid "Start minimized to system tray." msgstr "Minimiert im Systembereich der Kontrollleiste starten." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1763 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1792 msgid "Log debugging information to console" msgstr "Informationen zur Fehlersuche in Konsole aufzeichnen" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1765 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1794 msgid "Do not check for updates" msgstr "Nicht nach Updates suchen" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1813 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1842 msgid "If you are sure it is not running" msgstr "Wenn Sie sicher sind, dass es nicht gestartet ist" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1815 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1844 msgid "Cannot Start " msgstr "Start nicht möglich " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1816 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1845 msgid "%s is already running." msgstr "%s ist schon gestartet." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1819 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1848 msgid "may be running in the system tray, in the" msgstr "kann im Systemtray gestartet sein, im" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1821 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1850 msgid "upper right region of the screen." msgstr "oberen rechten Bereich des Bildschirms." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1823 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1852 msgid "lower right region of the screen." msgstr "unteren rechten Bereich des Bildschirms." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1826 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1855 msgid "try rebooting your computer." msgstr "Versuchen Sie Ihren Rechner neu zu starten." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1828 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1840 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1857 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1869 msgid "try deleting the file" msgstr "Versuche Sie die Datei zu löschen" @@ -6251,27 +6261,27 @@ msgstr "Buch hat weder Titel noch ISBN" msgid "No matches found for this book" msgstr "Keine Treffer für dieses Buch" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:60 msgid "Search" msgstr "Suche" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:149 msgid "Jobs:" msgstr "Aufträge:" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:158 msgid "Click to see list of active jobs." msgstr "Aktive Aufträge anzeigen" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to browse books by their covers" msgstr "Bücher in der Cover-Ansicht durchsuchen" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to turn off Cover Browsing" msgstr "Cover-Ansicht ausschalten" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:193 msgid "" "

Browsing books by their covers is disabled.
Import of pictureflow " "module failed:
" @@ -6279,7 +6289,7 @@ msgstr "" "

Die Cover-Ansicht ist gesperrt.
Der Import des Pictureflow Moduls " "schlug fehl:
" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:201 msgid "Click to browse books by tags" msgstr "Bücher anhand von Etiketten durchsuchen" @@ -6681,7 +6691,7 @@ msgstr "Drucken" msgid "Print eBook" msgstr "eBook drucken" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 msgid "" "Library\n" "%d\n" @@ -6691,7 +6701,7 @@ msgstr "" "%d\n" "Bücher" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 msgid "" "Reader\n" "%s\n" @@ -6701,7 +6711,7 @@ msgstr "" "%s\n" "verfügbar" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:200 msgid "" "Card A\n" "%s\n" @@ -6711,7 +6721,7 @@ msgstr "" "%s\n" "verfügbar" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:201 msgid "" "Card B\n" "%s\n" @@ -6721,42 +6731,42 @@ msgstr "" "%s\n" "verfügbar" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:206 msgid "Click to see the books available on your computer" msgstr "Liste der auf dem Computer vorhandenen Bücher anzeigen" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:207 msgid "Click to see the books in the main memory of your reader" msgstr "" "Liste der auf dem Hauptspeicher des Gerätes vorhandenen Bücher anzeigen" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:208 msgid "Click to see the books on storage card A in your reader" msgstr "" "Liste der auf der Speicherkarte A des Gerätes vorhandenen Bücher anzeigen" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:209 msgid "Click to see the books on storage card B in your reader" msgstr "" "Liste der auf der Speicherkarte B des Gerätes vorhandenen Bücher anzeigen" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:466 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:498 msgid "Change Case" msgstr "Groß-/Kleinschreibung ändern" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:499 msgid "Upper Case" msgstr "Großschreibung" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:468 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:500 msgid "Lower Case" msgstr "Kleinschreibung" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:469 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:501 msgid "Swap Case" msgstr "Groß-/Kleinschreibung vertauschen" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:470 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:502 msgid "Title Case" msgstr "Wortanfänge groß schreiben" @@ -7618,44 +7628,44 @@ msgstr "" "Wann immer Sie Argumente an %prog weitergeben, die Leerzeichen beinhalten, " "setzen Sie diese Argumente in Anführungsstriche." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:555 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 msgid "Path to the database in which books are stored" msgstr "Pfad zur Datenbank in der die Bücher gespeichtert sind" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:557 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 msgid "Pattern to guess metadata from filenames" msgstr "Verhaltensmuster zum Erraten der Metadaten aus den Dateinamen" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 msgid "Access key for isbndb.com" msgstr "Zugangsschlüssel für isbndb.com" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 msgid "Default timeout for network operations (seconds)" msgstr "" "Voreinstellung der Zeitüberschreitung bei Netzwerkverbindungen (in Sekunden)" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 msgid "Path to directory in which your library of books is stored" msgstr "Pfad zum Verzeichnis, in dem die Bibliothek gespeichert ist" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:569 msgid "The language in which to display the user interface" msgstr "Sprache, in der die Benutzer-Oberfläche dargestellt wird" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 msgid "The default output format for ebook conversions." msgstr "Das voreingestellte Ausgabeformat für eBook Konvertierungen." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 msgid "Ordered list of formats to prefer for input." msgstr "Geordnete Liste der Formate, die bei der Eingabe bevorzugt werden." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:573 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:577 msgid "Read metadata from files" msgstr "Metadaten aus Dateien lesen" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:579 msgid "The priority of worker processes" msgstr "Priorität der Arbeitsaufträge" diff --git a/src/calibre/translations/es.po b/src/calibre/translations/es.po index 339e25c187..9c7810add5 100644 --- a/src/calibre/translations/es.po +++ b/src/calibre/translations/es.po @@ -10,14 +10,14 @@ msgid "" msgstr "" "Project-Id-Version: es\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-10-02 05:30+0000\n" -"PO-Revision-Date: 2009-10-02 08:05+0000\n" -"Last-Translator: Jellby \n" +"POT-Creation-Date: 2009-10-10 02:36+0000\n" +"PO-Revision-Date: 2009-10-09 23:33+0000\n" +"Last-Translator: Kovid Goyal \n" "Language-Team: Spanish\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-03 06:45+0000\n" +"X-Launchpad-Export-Date: 2009-10-10 06:53+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 @@ -29,8 +29,9 @@ msgstr "No hacer nada en absoluto" #: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:53 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:58 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:199 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:703 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:706 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:730 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:733 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:177 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:410 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:65 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 @@ -98,22 +99,22 @@ msgstr "No hacer nada en absoluto" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:29 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:217 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:261 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:273 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:120 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:127 #: /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/device.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:765 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:768 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:769 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:772 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:106 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:431 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:42 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:391 @@ -561,25 +562,25 @@ msgstr "" msgid "Unable to mount main memory (Error code: %d)" msgstr "No se pudo montar la memoria principal (Código de error: %d)" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:643 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:645 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:670 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:672 msgid "The reader has no storage card in this slot." msgstr "El lector no tiene tarjeta de almacenamiento en esta ranura." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:647 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:674 msgid "Selected slot: %s is not supported." msgstr "La ranura seleccionada: %s no está soportada." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:671 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:698 msgid "There is insufficient free space in main memory" msgstr "No hay suficiente espacio libre en la memoria principal" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:673 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:675 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:700 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:702 msgid "There is insufficient free space on the storage card" msgstr "No hay suficiente espacio libre en la tarjeta de almacenamiento" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:686 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:713 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:434 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 #: /home/kovid/work/calibre/src/calibre/library/database2.py:1007 @@ -1301,7 +1302,7 @@ msgstr "" "se generará una portada con el título, autores, etc. Esta opción desactiva " "la generación de esta portada." -#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:122 +#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:124 #: /home/kovid/work/calibre/src/calibre/ebooks/pml/pmlml.py:111 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:77 @@ -1684,7 +1685,7 @@ msgstr "Productor" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:71 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:64 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:349 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:92 msgid "Comments" msgstr "Comentarios" @@ -1693,7 +1694,7 @@ msgstr "Comentarios" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:338 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1012 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1072 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:94 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Tags" msgstr "Etiquetas" @@ -1701,7 +1702,7 @@ msgstr "Etiquetas" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:372 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:166 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:354 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:93 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Series" msgstr "Serie" @@ -2561,15 +2562,15 @@ msgstr "Númera máximo de procesos en espera" msgid "Copied" msgstr "Copiado" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy" msgstr "Copiar" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy to Clipboard" msgstr "Copiar al portapapeles" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:386 msgid "Choose Files" msgstr "Escoger ficheros" @@ -2594,7 +2595,7 @@ msgid "The specified directory could not be processed." msgstr "El directorio especificado no se puede procesar." #: /home/kovid/work/calibre/src/calibre/gui2/add.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:482 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:486 msgid "No books" msgstr "Sin libros" @@ -2813,14 +2814,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:501 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:128 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:131 @@ -3025,38 +3026,38 @@ msgstr "" "sea posible." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:96 msgid "Choose cover for " msgstr "Elegir portada para " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:159 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:102 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 msgid "Cannot read" msgstr "No se puede leer" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:104 msgid "You do not have permission to read the file: " msgstr "No tiene permiso de lectura para el fichero: " #: /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/dialogs/metadata_single.py:111 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 msgid "Error reading file" msgstr "Error leyendo el fichero" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:113 msgid "

There was an error reading from file:
" msgstr "

Hubo un error leyendo el fichero:
" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:121 msgid " is not a valid picture" msgstr " no es una imagen válida" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 msgid "Book Cover" msgstr "Portada" @@ -3065,28 +3066,28 @@ msgid "Use cover from &source file" msgstr "Usar portada del fichero de &origen" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 msgid "Change &cover image:" msgstr "Cambia la imagen de &portada:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 msgid "Browse for an image to use as the cover of this book." msgstr "Localizar una imagen para utilizar como portada de este libro." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 msgid "&Title: " msgstr "&Título: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 msgid "Change the title of this book" msgstr "Cambiar el título del libro" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:135 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 msgid "&Author(s): " msgstr "&Autor(es): " @@ -3104,18 +3105,18 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:143 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 msgid "&Publisher: " msgstr "&Editorial: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 msgid "Ta&gs: " msgstr "Eti&quetas: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:145 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

They can be any words or phrases, separated by commas." @@ -3125,7 +3126,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:150 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 msgid "&Series:" msgstr "&Serie:" @@ -3133,13 +3134,13 @@ msgstr "&Serie:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:151 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:372 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 msgid "List of known series. You can add new series." msgstr "Lista de series conocidas. Se pueden añadir nuevas series." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 msgid "Book " msgstr "Libro " @@ -3254,7 +3255,7 @@ msgid "RB Output" msgstr "Salida RB" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1329 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 msgid "Choose the format to view" msgstr "Elija el formato para visualizar" @@ -3339,12 +3340,12 @@ msgid "Footer regular expression:" msgstr "Expresión regular para pies de página:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:56 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:72 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 msgid "Invalid regular expression" msgstr "Expresión regular no válida" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:74 msgid "Invalid regular expression: %s" msgstr "Expresión regular no valida: %s" @@ -3571,184 +3572,184 @@ msgstr "No hay detalles disponibles." msgid "Device no longer connected." msgstr "El dispositivo ya no esta conectado." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:199 msgid "Get device information" msgstr "Obtener información del dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:210 msgid "Get list of books on device" msgstr "Obtener lista de libros en el dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:219 msgid "Send metadata to device" msgstr "Enviar metadatos al dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:228 msgid "Upload %d books to device" msgstr "Pasar %d libros al dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:243 msgid "Delete books from device" msgstr "Borrar libros del dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:260 msgid "Download books from device" msgstr "Obtener libros del dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "View book on device" msgstr "Ver libro en el dispositvo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:273 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:277 msgid "and delete from library" msgstr "y borrar de la biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:298 msgid "Set default send to device action" msgstr "Asignar acción de enviar al dispositivo por defecto" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:299 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:303 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:310 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:312 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:314 msgid "Email to" msgstr "Enviar por correo electrónico a" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:321 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:328 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 msgid "Send to main memory" msgstr "Enviar a la memoria principal" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:323 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:330 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:334 msgid "Send to storage card A" msgstr "Enviar a la tarjeta de memoria A" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 msgid "Send to storage card B" msgstr "Enviar a la tarjeta de memoria B" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 msgid "Send specific format to main memory" msgstr "Enviar un formato específico a la memoria principal" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:341 msgid "Send specific format to storage card A" msgstr "Enviar un formato específico a la tarjeta de memoria A" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:343 msgid "Send specific format to storage card B" msgstr "Enviar un formato específico a la tarjeta de memoria B" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:487 msgid "selected to send" msgstr "elegido para enviar" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:492 msgid "Choose format to send to device" msgstr "Elige el formato para enviar al dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:495 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 msgid "No device" msgstr "Sin dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 msgid "Cannot send: No device is connected" msgstr "No se pudo enviar: no hay ningún dispositivo conectado" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:507 msgid "No card" msgstr "Sin tarjeta" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:504 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:508 msgid "Cannot send: Device has no storage card" msgstr "No se pudo enviar: el dispositivo no tiene tarjeta de memoria" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:546 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 msgid "E-book:" msgstr "Libro electrónico:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:553 msgid "Attached, you will find the e-book" msgstr "El libro electrónico está adjunto" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:554 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:177 msgid "by" msgstr "por" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:555 msgid "in the %s format." msgstr "en el formato %s." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:568 msgid "Sending email to" msgstr "Enviando correo electrónico a" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:594 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:601 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:806 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:813 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:696 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:817 msgid "No suitable formats" msgstr "No hay formatos adecuados" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:599 msgid "Auto convert the following books before sending via email?" msgstr "" "¿Convertir automáticamente los siguientes libros antes de enviar por correo " "electrónico?" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" "No se pudieron enviar por correo electrónico los siguientes libros porque no " "se encontraron formatos compatibles:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:621 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:625 msgid "Failed to email books" msgstr "Fallo al enviar libros por correo electrónico" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 msgid "Failed to email the following books:" msgstr "Fallo al enviar por correo electrónico los siguientes libros:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:630 msgid "Sent by email:" msgstr "Enviado por correo electrónico:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:653 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:657 msgid "News:" msgstr "Noticias:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:658 msgid "Attached is the" msgstr "Adjunto está el" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:665 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 msgid "Sent news to" msgstr "Enviar noticias a" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:693 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:807 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:697 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:811 msgid "Auto convert the following books before uploading to the device?" msgstr "" "¿Convertir automáticamente los siguientes libros antes de pasarlos al " "dispositivo?" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:728 msgid "Sending news to device." msgstr "Enviando noticias al dispositivo." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:776 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:780 msgid "Sending books to device." msgstr "Enviando libros al dispositivo." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:814 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:818 msgid "" "Could not upload the following books to the device, as no suitable formats " "were found. Convert the book(s) to a format supported by your device first." @@ -3757,11 +3758,11 @@ msgstr "" "encontraron formatos adecuados. Convierta el(los) libro(s) a un formato " "soportado por su dispositivo antes de volver a intentarlo." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 msgid "No space on device" msgstr "No hay espacio en el dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:863 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:867 msgid "" "

Cannot upload books to device there is no more free space available " msgstr "" @@ -3783,7 +3784,7 @@ msgstr "Usar subdirectorios" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:86 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:345 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1007 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:90 msgid "Path" msgstr "Ruta" @@ -3793,7 +3794,7 @@ msgstr "Ruta" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:344 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:91 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Formats" msgstr "Formatos" @@ -3910,7 +3911,7 @@ msgstr "nueva dirección de correo electrónico" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:461 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:788 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:140 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1032 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "Error" @@ -3984,7 +3985,7 @@ msgid "Access log:" msgstr "Registro de accesos:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:645 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:576 msgid "Failed to start content server" msgstr "Fallo al iniciar el servidor de contenidos" @@ -4550,7 +4551,7 @@ msgid "Edit Meta information" msgstr "Editar metainformación" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 msgid "Meta information" msgstr "Metainformación" @@ -4563,7 +4564,7 @@ msgid "Author s&ort: " msgstr "&Orden de autor: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:138 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." @@ -4572,19 +4573,19 @@ msgstr "" "ordena Miguel de Cervantes como Cervantes, Miguel de." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 msgid "&Rating:" msgstr "&Valoración:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:140 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:141 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Rating of this book. 0-5 stars" msgstr "Valoración de este libro: 0-5 estrellas" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:142 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 msgid " stars" msgstr " estrellas" @@ -4594,8 +4595,8 @@ msgstr "Añadir eti&quetas: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:146 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:147 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 msgid "Open Tag Editor" msgstr "Abrir editor de etiquetas" @@ -4612,166 +4613,179 @@ msgstr "" msgid "Remove &format:" msgstr "Eliminar &formato:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 msgid "Not a valid picture" msgstr "No es una imagen válida" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:133 +msgid "Choose formats for " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:134 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:872 +msgid "Books" +msgstr "Libros" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:160 +msgid "You do not have permission to read the following files:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 msgid "No format selected" msgstr "No se ha seleccionado ningún formato" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 msgid "Could not read metadata" msgstr "No se pudieron leer los metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 msgid "Could not read metadata from %s format" msgstr "No se pudieron leer los metadatos del formato %s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:224 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:247 msgid "Could not read cover" msgstr "No se pudo leer la portada" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:242 msgid "Could not read cover from %s format" msgstr "No se pudo leer la portada del formato %s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:248 msgid "The cover in the %s format is invalid" msgstr "La portada del formato %s no es válida" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:285 msgid "Abort the editing of all remaining books" msgstr "Abortar la edición de todos los libros restantes" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:488 msgid "Downloading cover..." msgstr "Descargando portada..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:479 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:484 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:511 msgid "Cannot fetch cover" msgstr "No se pudo descargar la portada" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:480 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:491 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:512 msgid "Could not fetch cover.
" msgstr "No se pudo descargar la portada.
" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:502 msgid "The download timed out." msgstr "El tiempo de descarga ha vencido." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:506 msgid "Could not find cover for this book. Try specifying the ISBN first." msgstr "" "No se pudo encontrar la portada de este libro. Inténtelo de nuevo " "especificando primero el ISBN." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:497 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:518 msgid "Bad cover" msgstr "Portada incorrecta" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:498 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:519 msgid "The cover is not a valid picture" msgstr "La portada no es una imagen válida" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:538 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 msgid "Cannot fetch metadata" msgstr "No se pudieron obtener los metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:539 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 msgid "You must specify at least one of ISBN, Title, Authors or Publisher" msgstr "" "Debe especificar al menos uno de entre ISBN, título, autores o editorial" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:612 msgid "Permission denied" msgstr "Permiso denegado" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:613 msgid "Could not open %s. Is it being used by another program?" msgstr "No se pudo abrir %s. ¿Lo está usando algún otro programa?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 msgid "Edit Meta Information" msgstr "Editar metainformación" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 msgid "Swap the author and title" msgstr "Intercambiar autor y título" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 msgid "Author S&ort: " msgstr "&Orden de autor: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 msgid "" "Automatically create the author sort entry based on the current author entry" msgstr "" "Crear automáticamente la entrada de orden de autor basada en la entrada de " "autor actual" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 msgid "Remove unused series (Series that have no books)" msgstr "" "Eliminar series que no están en uso (series que no tienen ningún libro " "asociado)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 msgid "IS&BN:" msgstr "&ISBN:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Publishe&d:" msgstr "Publica&do:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 msgid "dd MMM yyyy" msgstr "dd MMM yyyy" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 msgid "&Date:" msgstr "&Fecha:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 msgid "&Comments" msgstr "Co&mentarios" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 msgid "&Fetch metadata from server" msgstr "&Obtener metadatos del servidor" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Available Formats" msgstr "Formatos disponibles" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 msgid "Add a new format for this book to the database" msgstr "Añadir un nuevo formato para este libro en la base de datos" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 msgid "Remove the selected formats for this book from the database." msgstr "" "Elimina los formatos seleccionados para este libro de la base de datos." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 msgid "Set the cover for the book from the selected format" msgstr "Asignar la portada del formato seleccionado como portada del libro" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 msgid "Update metadata from the metadata in the selected format" msgstr "" "Actualizar metadatos a partir de los metadatos del formato seleccionado" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 msgid "Reset cover to default" msgstr "Volver a la portada por defecto" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 msgid "Download &cover" msgstr "Des&cargar portada" @@ -5334,11 +5348,11 @@ msgstr "Expresión regular (?P<title>)" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:79 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:83 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:88 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:93 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:96 msgid "No match" msgstr "No hay coincidencias" @@ -5432,7 +5446,7 @@ msgstr "Valoración" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:343 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:408 msgid "None" msgstr "Ninguno" @@ -5569,31 +5583,31 @@ msgstr "" msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" msgstr "%s: %s por Kovid Goyal %%(version)s
%%(device)s

" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "Edit metadata individually" msgstr "Editar metadatos por separado" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 msgid "Edit metadata in bulk" msgstr "Edita metadatos en bloque" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 msgid "Download metadata and covers" msgstr "Descargar metadatos y portadas" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:232 msgid "Download only metadata" msgstr "Descargar sólo los metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:233 msgid "Download only covers" msgstr "Descargar sólo las portadas" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 msgid "Add books from a single directory" msgstr "Añadir libros desde un único directorio" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:237 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" @@ -5602,7 +5616,7 @@ msgstr "" "directorio, se asume que cada fichero de libro electrónico es el mismo libro " "en diferente formato." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:240 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" @@ -5611,85 +5625,85 @@ msgstr "" "por directorio, se asume que cada fichero de libro electrónico es un libro " "diferente." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:243 msgid "Add Empty book. (Book entry with no formats)" msgstr "Añadir libro en blanco. (Entrada de libro sin ningún formato)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:278 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:353 msgid "Save to disk" msgstr "Guardar en el disco" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 msgid "Save to disk in a single directory" msgstr "Guardar en el disco, en un único directorio" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1431 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:282 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 msgid "Save only %s format to disk" msgstr "Guardar solamente el formato %s en disco" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:290 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:359 msgid "View" msgstr "Mostrar" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "View specific format" msgstr "Mostrar un formato específico" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:315 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:317 msgid "Convert individually" msgstr "Convertir por separado" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:316 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:318 msgid "Bulk convert" msgstr "Convertir en bloque" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:333 msgid "Run welcome wizard" msgstr "Ejecutar el asistente de bienvenida" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:367 msgid "Similar books..." msgstr "Libros similares..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:425 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:426 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 msgid "Bad database location" msgstr "Ubicación de la base de datos incorrecta" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:430 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:478 msgid "Calibre Library" msgstr "Biblioteca de calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:438 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1603 msgid "Choose a location for your ebook library." msgstr "Elija otra ubicación para la biblioteca de libros electrónicos." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:619 msgid "Browse by covers" msgstr "Explorar por portadas" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 msgid "Device: " msgstr "Dispositivo: " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:728 msgid " detected." msgstr " detectado." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:748 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:750 msgid "Connected " msgstr "Conectado " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:760 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:762 msgid "Device database corrupted" msgstr "Base de datos del dispositivo corrupta" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:763 msgid "" "\n" "

The database of books on the reader is corrupted. Try the " @@ -5719,60 +5733,56 @@ msgstr "" " \n" " " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:837 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:907 msgid "Uploading books to device." msgstr "Enviando libros al dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:845 -msgid "Books" -msgstr "Libros" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:846 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:873 msgid "EPUB Books" msgstr "Libros en EPUB" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:847 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:874 msgid "LRF Books" msgstr "Libros en LRF" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:848 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:875 msgid "HTML Books" msgstr "Libros en HTML" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:849 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:876 msgid "LIT Books" msgstr "Libros en LIT" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:850 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:877 msgid "MOBI Books" msgstr "Libros en MOBI" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:851 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:878 msgid "Text books" msgstr "Libros en formato texto" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:852 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:879 msgid "PDF Books" msgstr "Libros en PDF" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 msgid "Comics" msgstr "Cómics" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:854 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:881 msgid "Archives" msgstr "Archivos" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:916 msgid "Failed to read metadata" msgstr "Fallo leyendo metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:917 msgid "Failed to read metadata from the following" msgstr "Fallo leyendo metadatos de" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:909 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 msgid "" "The selected books will be permanently deleted and the files removed " "from your computer. Are you sure?" @@ -5780,111 +5790,111 @@ msgstr "" "Los libros seleccionados serán eliminados permanentemente y los " "ficheros borrados del equipo. ¿Está seguro?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:963 msgid "Deleting books from device." msgstr "Eliminando libros del dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:967 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:994 msgid "Cannot download metadata" msgstr "No se pueden descargar los metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:968 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1016 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1049 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1074 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1186 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1043 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1101 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1213 msgid "No books selected" msgstr "No hay libros seleccionados" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "covers" msgstr "portadas" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "metadata" msgstr "metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1006 msgid "Downloading %s for %d book(s)" msgstr "Descargando %s para %d libro(s)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1000 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1027 msgid "Failed to download some metadata" msgstr "No se pudieron descargar algunos metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1001 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1028 msgid "Failed to download metadata for the following:" msgstr "No se pudieron descargar metadatos para:" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1031 msgid "Failed to download metadata:" msgstr "No se pudieron descargar metadatos:" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1015 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1048 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1075 msgid "Cannot edit metadata" msgstr "No se pueden editar los metadatos" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1073 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1100 msgid "Cannot save to disk" msgstr "No se puede guardar en disco" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 msgid "Choose destination directory" msgstr "Elegir directorio de destino" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1130 msgid "Error while saving" msgstr "Error al guardar" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1104 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1131 msgid "There was an error while saving." msgstr "Hubo un error al guardar." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1111 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1112 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1138 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1139 msgid "Could not save some books" msgstr "No se pudieron guardar algunos libros" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1140 msgid "Click the show details button to see which ones." msgstr "Pulse el botón \"Mostrar detalles\" para ver cuáles." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1132 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1159 msgid "Fetching news from " msgstr "Obteniendo noticias de " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1145 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1172 msgid " fetched." msgstr " obtenidas." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 msgid "Cannot convert" msgstr "No se puede convertir" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1241 msgid "Starting conversion of %d book(s)" msgstr "Iniciando la conversión de %d libro(s)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1342 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1371 msgid "No book selected" msgstr "No hay libros seleccionados" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1373 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1402 msgid "Cannot view" msgstr "No se puede visualizar" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1341 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1370 msgid "Cannot open folder" msgstr "No se puede abrir la carpeta" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1387 msgid "Multiple Books Selected" msgstr "Varios libros seleccionados" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1359 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1388 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 " @@ -5896,32 +5906,32 @@ msgstr "" "equipo. Una vez comenzado el proceso no puede deterse hasta que se complete. " "¿Desea continuar?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1374 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1403 msgid "%s has no available formats." msgstr "%s no tiene formatos disponibles." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1415 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1444 msgid "Cannot configure" msgstr "No se puede configurar" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1416 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1445 msgid "Cannot configure while there are running jobs." msgstr "No se puede configurar mientras haya tareas en ejecución." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1459 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1488 msgid "No detailed info available" msgstr "No hay información detallada disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1489 msgid "No detailed information is available for books on the device." msgstr "" "No hay información detallada disponible para los libros en el dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1512 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1541 msgid "Error talking to device" msgstr "Error de comunicación con el dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1513 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1542 msgid "" "There was a temporary error talking to the device. Please unplug and " "reconnect the device and or reboot." @@ -5929,12 +5939,12 @@ msgstr "" "Hubo un error de comunicación con el dispositivo. Desconecte y vuelva a " "conectar el dispositivo o reinicie la aplicación." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1536 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1554 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1565 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 msgid "Conversion Error" msgstr "Error de conversión" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1537 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1566 msgid "" "

Could not convert: %s

It is a DRMed book. You must " "first remove the DRM using third party tools." @@ -5943,19 +5953,19 @@ msgstr "" "href=\"%s\">DRM. Debe eliminar primero el DRM con herramientas de " "terceros." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1555 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 msgid "Failed" msgstr "Fallo" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1612 msgid "Invalid library location" msgstr "Ubicación de la biblioteca no válida" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1613 msgid "Could not access %s. Using %s as the library." msgstr "No se puede acceder a %s. Usando %s como biblioteca." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1631 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1660 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." @@ -5964,11 +5974,11 @@ msgstr "" "lo encuentra útil, por favor, considere donar dinero para apoyar su " "desarrollo." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1655 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1684 msgid "There are active jobs. Are you sure you want to quit?" msgstr "Hay tareas activas. ¿Está seguro de que quiere salir?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1658 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1687 msgid "" " is communicating with the device!
\n" " Quitting may cause corruption on the device.
\n" @@ -5979,11 +5989,11 @@ msgstr "" "de datos en el dispositivo.
\n" " ¿Está seguro de que desea salir?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1662 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1691 msgid "WARNING: Active jobs" msgstr "AVISO: Tareas activas" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1713 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1742 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -5991,7 +6001,7 @@ msgstr "" "continuará ejecutándose en la bandeja del sistema. Para cerrarlo, elija " "Salir en el menú de contexto de la bandeja del sistema." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1732 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 msgid "" "Latest version: %s" @@ -5999,11 +6009,11 @@ msgstr "" "Última versión: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1740 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1769 msgid "Update available" msgstr "Actualización disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1741 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1770 msgid "" "%s has been updated to version %s. See the new features. " @@ -6013,52 +6023,52 @@ msgstr "" "href=\"http://calibre.kovidgoyal.net/wiki/Changelog\">nuevas " "características. ¿Visitar la página de descarga?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1759 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1788 msgid "Use the library located at the specified path." msgstr "Usar la biblioteca de la ruta especificada." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1790 msgid "Start minimized to system tray." msgstr "Iniciar el programa minimizado en la bandeja del sistema" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1763 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1792 msgid "Log debugging information to console" msgstr "Dirigir registro de depuración a la consola" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1765 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1794 msgid "Do not check for updates" msgstr "No comprobar actualizaciones" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1813 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1842 msgid "If you are sure it is not running" msgstr "Si está seguro de que no está en ejecución" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1815 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1844 msgid "Cannot Start " msgstr "No se puede iniciar " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1816 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1845 msgid "%s is already running." msgstr "%s ya está ejecutándose." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1819 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1848 msgid "may be running in the system tray, in the" msgstr "puede estar en ejecución en la bandeja del sistema, en la" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1821 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1850 msgid "upper right region of the screen." msgstr "zona superior derecha de la pantalla." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1823 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1852 msgid "lower right region of the screen." msgstr "zona inferior derecha de la pantalla." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1826 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1855 msgid "try rebooting your computer." msgstr "inténtelo después de reiniciar el equipo." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1828 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1840 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1857 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1869 msgid "try deleting the file" msgstr "pruebe a borrar el fichero" @@ -6218,27 +6228,27 @@ msgstr "El libro no tiene ni título ni ISBN" msgid "No matches found for this book" msgstr "No se ha encontrado el libro" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:60 msgid "Search" msgstr "Buscar" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:149 msgid "Jobs:" msgstr "Tareas:" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:158 msgid "Click to see list of active jobs." msgstr "Pulse para ver las tareas activas." -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to browse books by their covers" msgstr "Pulse para explorar los libros por sus portadass" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to turn off Cover Browsing" msgstr "Pulse para desactivar la exploración de portadas" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:193 msgid "" "

Browsing books by their covers is disabled.
Import of pictureflow " "module failed:
" @@ -6246,7 +6256,7 @@ msgstr "" "

La exploración de los libros por sus portadas está desactivada.
No se " "pudo importar el módulo pictureflow:
" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:201 msgid "Click to browse books by tags" msgstr "Pulse para explorar los libros por etiquetas" @@ -6648,7 +6658,7 @@ msgstr "Imprimir" msgid "Print eBook" msgstr "Imprimir libro electrónico" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 msgid "" "Library\n" "%d\n" @@ -6658,7 +6668,7 @@ msgstr "" "%d\n" "libros" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 msgid "" "Reader\n" "%s\n" @@ -6668,7 +6678,7 @@ msgstr "" "%s\n" "disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:200 msgid "" "Card A\n" "%s\n" @@ -6678,7 +6688,7 @@ msgstr "" "%s\n" "disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:201 msgid "" "Card B\n" "%s\n" @@ -6688,39 +6698,39 @@ msgstr "" "%s\n" "disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:206 msgid "Click to see the books available on your computer" msgstr "Pulsar para ver los libros disponibles en el equipo" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:207 msgid "Click to see the books in the main memory of your reader" msgstr "Pulsar para ver los libros en la memoria principal del lector" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:208 msgid "Click to see the books on storage card A in your reader" msgstr "Pulsar para ver los libros en la tarjeta de memoria A del lector" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:209 msgid "Click to see the books on storage card B in your reader" msgstr "Pulsar para ver los libros en la tarjeta de memoria B del lector" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:466 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:498 msgid "Change Case" msgstr "Cambiar mayúsculas/minúsculas" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:499 msgid "Upper Case" msgstr "Mayúsculas" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:468 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:500 msgid "Lower Case" msgstr "Minúsculas" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:469 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:501 msgid "Swap Case" msgstr "Invertir mayúsculas/minúsculas" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:470 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:502 msgid "Title Case" msgstr "Formato de título (todas las iniciales en mayúscula)" @@ -7585,44 +7595,44 @@ msgstr "" "Cuando alguno de los argumentos de %prog contenga espacios, póngalo entre " "comillas." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:555 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 msgid "Path to the database in which books are stored" msgstr "Ruta de la base de datos en la que se almacenan los libros" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:557 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 msgid "Pattern to guess metadata from filenames" msgstr "Patrón para extraer metadatos de los nombres de fichero" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 msgid "Access key for isbndb.com" msgstr "Clave de acceso a isbndb.com" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 msgid "Default timeout for network operations (seconds)" msgstr "Tiempo de vencimiento por defecto para operaciones de red (segundos)" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 msgid "Path to directory in which your library of books is stored" msgstr "Ruta al directorio en el que está almacenada la biblioteca de libros" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:569 msgid "The language in which to display the user interface" msgstr "El idioma en que se muestra la interfaz de usuario" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 msgid "The default output format for ebook conversions." msgstr "" "El formato de salida por defecto de las conversiones de libros electrónicos." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 msgid "Ordered list of formats to prefer for input." msgstr "Lista por orden de preferencia de formatos de entrada." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:573 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:577 msgid "Read metadata from files" msgstr "Leer metadatos de ficheros" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:579 msgid "The priority of worker processes" msgstr "La prioridad de los procesos en ejecución" diff --git a/src/calibre/translations/hr.po b/src/calibre/translations/hr.po index 97ec82dd9d..9e0d82d0a9 100644 --- a/src/calibre/translations/hr.po +++ b/src/calibre/translations/hr.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2009-10-02 05:30+0000\n" -"PO-Revision-Date: 2009-10-05 00:35+0000\n" +"POT-Creation-Date: 2009-10-10 02:36+0000\n" +"PO-Revision-Date: 2009-10-10 02:52+0000\n" "Last-Translator: Miro Glavić \n" "Language-Team: Croatian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-05 06:43+0000\n" +"X-Launchpad-Export-Date: 2009-10-10 06:53+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 @@ -26,8 +26,9 @@ msgstr "Uopće ne funkcionira" #: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:53 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:58 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:199 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:703 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:706 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:730 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:733 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:177 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:410 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:65 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 @@ -95,22 +96,22 @@ msgstr "Uopće ne funkcionira" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:29 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:217 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:261 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:273 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:120 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:127 #: /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/device.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:765 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:768 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:769 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:772 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:106 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:431 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:42 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:391 @@ -555,25 +556,25 @@ msgstr "" msgid "Unable to mount main memory (Error code: %d)" msgstr "Nemoguće organizirati glavnu memoriju (Kod greške: %d)" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:643 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:645 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:670 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:672 msgid "The reader has no storage card in this slot." msgstr "Čitač nema memorijsku karticu u ovom ležištu." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:647 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:674 msgid "Selected slot: %s is not supported." msgstr "Odabrano ležište: %s nije podržano." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:671 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:698 msgid "There is insufficient free space in main memory" msgstr "Glavna memorija nema dovoljno slobodnog prostora" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:673 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:675 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:700 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:702 msgid "There is insufficient free space on the storage card" msgstr "Memorijska kartica nema dovoljno slobodnog prostora" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:686 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:713 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:434 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 #: /home/kovid/work/calibre/src/calibre/library/database2.py:1007 @@ -1281,7 +1282,7 @@ msgstr "" "omot je generiran sa naslovom, autorima itd. Ova opcija onemogućuje " "generiranje ovog omota." -#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:122 +#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:124 #: /home/kovid/work/calibre/src/calibre/ebooks/pml/pmlml.py:111 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:77 @@ -1661,7 +1662,7 @@ msgstr "Proizvođač" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:71 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:64 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:349 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:92 msgid "Comments" msgstr "Komentari" @@ -1670,7 +1671,7 @@ msgstr "Komentari" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:338 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1012 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1072 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:94 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Tags" msgstr "Tagovi" @@ -1678,7 +1679,7 @@ msgstr "Tagovi" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:372 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:166 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:354 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:93 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Series" msgstr "Serije" @@ -2523,15 +2524,15 @@ msgstr "Maksimalan broj radnih procesa na čekanju" msgid "Copied" msgstr "Kopirano" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy" msgstr "Kopiraj" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy to Clipboard" msgstr "Kopiraj u međuspremnik" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:386 msgid "Choose Files" msgstr "Odaberi Daoteke" @@ -2556,7 +2557,7 @@ msgid "The specified directory could not be processed." msgstr "Specificirani direktorij nije mogao biti procesiran." #: /home/kovid/work/calibre/src/calibre/gui2/add.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:482 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:486 msgid "No books" msgstr "Nema knjiga" @@ -2773,14 +2774,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:501 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:128 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:131 @@ -2985,38 +2986,38 @@ msgstr "" "ovih metapodataka." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:96 msgid "Choose cover for " msgstr "Odaberi omot za " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:159 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:102 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 msgid "Cannot read" msgstr "Nemoguće čitati" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:104 msgid "You do not have permission to read the file: " msgstr "Vi nemate dozvole da čitate datoeku: " #: /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/dialogs/metadata_single.py:111 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 msgid "Error reading file" msgstr "Greška kod čitanja datoteke" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:113 msgid "

There was an error reading from file:
" msgstr "

Imate grešku čitanja iz datoteke:
" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:121 msgid " is not a valid picture" msgstr " nije važeća slika" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 msgid "Book Cover" msgstr "Omot Knjige" @@ -3025,28 +3026,28 @@ msgid "Use cover from &source file" msgstr "Koristi omot iz &izvorne datoteke" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 msgid "Change &cover image:" msgstr "Promijeni sliku &omota:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 msgid "Browse for an image to use as the cover of this book." msgstr "Pretraži za sliku koju bi upotrijebili kao omot knjige." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 msgid "&Title: " msgstr "&Naslov: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 msgid "Change the title of this book" msgstr "Promijeni naslov ove knjige" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:135 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 msgid "&Author(s): " msgstr "&Autor(i): " @@ -3064,18 +3065,18 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:143 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 msgid "&Publisher: " msgstr "&Izdavač: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 msgid "Ta&gs: " msgstr "Ta&govi: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:145 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

They can be any words or phrases, separated by commas." @@ -3085,7 +3086,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:150 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 msgid "&Series:" msgstr "&Serije:" @@ -3093,13 +3094,13 @@ msgstr "&Serije:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:151 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:372 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 msgid "List of known series. You can add new series." msgstr "Lista poznatih serija. Vi možete dodati nove serije." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 msgid "Book " msgstr "Knjiga " @@ -3214,7 +3215,7 @@ msgid "RB Output" msgstr "RB Izlaz" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1329 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 msgid "Choose the format to view" msgstr "Odaberi format za pregled" @@ -3296,12 +3297,12 @@ msgid "Footer regular expression:" msgstr "Regularni izraz podnožja:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:56 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:72 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 msgid "Invalid regular expression" msgstr "Nevažeći regularni izraz" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:74 msgid "Invalid regular expression: %s" msgstr "Nevažeći regularni izraz: %s" @@ -3527,180 +3528,180 @@ msgstr "Detalji nisu raspoloživi." msgid "Device no longer connected." msgstr "Uređaj nije više priključen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:199 msgid "Get device information" msgstr "Uzmi podatke o uređaju" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:210 msgid "Get list of books on device" msgstr "Uzmi listu knjiga na uređaju" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:219 msgid "Send metadata to device" msgstr "Pošalji metapodatke na uređaj" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:228 msgid "Upload %d books to device" msgstr "Pošalji %d knjige na uređaj" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:243 msgid "Delete books from device" msgstr "Izbriši knjige sa uređaja" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:260 msgid "Download books from device" msgstr "Skini knjige sa uređaja" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "View book on device" msgstr "Pregledaj knjigu na uređaju" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:273 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:277 msgid "and delete from library" msgstr "i izbriši iz biblioteke" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:298 msgid "Set default send to device action" msgstr "Postavi zadanu akciju slanja na uređaj" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:299 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:303 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:310 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:312 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:314 msgid "Email to" msgstr "Email" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:321 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:328 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 msgid "Send to main memory" msgstr "Pošalji u glavnu memoriju" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:323 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:330 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:334 msgid "Send to storage card A" msgstr "Pošalji na memorijsku karticu A" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 msgid "Send to storage card B" msgstr "Pošalji na memorijsku karticu B" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 msgid "Send specific format to main memory" msgstr "Pošalji specifičan format u glavnu memoriju" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:341 msgid "Send specific format to storage card A" msgstr "Pošalji specifični format na memorijsku karticu A" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:343 msgid "Send specific format to storage card B" msgstr "Pošalji specifični format na memorijsku karticu B" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:487 msgid "selected to send" msgstr "odabrano za slanje" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:492 msgid "Choose format to send to device" msgstr "Odaberi format za poslati na uređaj" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:495 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 msgid "No device" msgstr "Nema uređaja" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 msgid "Cannot send: No device is connected" msgstr "Nemoguće poslati: Nijedan uređaj nije priključen" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:507 msgid "No card" msgstr "Nema kartice" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:504 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:508 msgid "Cannot send: Device has no storage card" msgstr "Nemoguće poslati: Uređaj nema memorijsku karticu" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:546 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 msgid "E-book:" msgstr "E-knjiga:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:553 msgid "Attached, you will find the e-book" msgstr "Priloženo, pronaći ćete e-knjigu" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:554 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:177 msgid "by" msgstr "od" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:555 msgid "in the %s format." msgstr "u %s formatu." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:568 msgid "Sending email to" msgstr "Slanje e-pošte" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:594 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:601 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:806 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:813 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:696 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:817 msgid "No suitable formats" msgstr "Nema odgovarajućih formata" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:599 msgid "Auto convert the following books before sending via email?" msgstr "Automatski konvertiraj slijedeće knjige prije otpreme e-mailom?" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" "Nije moguće opremiti e-mailom slijedeće knjige jer nisu pronađeni " "odgovarajući formati:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:621 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:625 msgid "Failed to email books" msgstr "Neuspjelo slanje knjiga e-poštom" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 msgid "Failed to email the following books:" msgstr "Neuspjelo slanje e-poštom slijedećih knjiga" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:630 msgid "Sent by email:" msgstr "Pošalji e-poštom:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:653 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:657 msgid "News:" msgstr "Vijesti:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:658 msgid "Attached is the" msgstr "Priloženo je" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:665 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 msgid "Sent news to" msgstr "Vijesti poslane u" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:693 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:807 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:697 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:811 msgid "Auto convert the following books before uploading to the device?" msgstr "Automatski konvertiraj slijedeće knjige prije otpreme na uređaj?" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:728 msgid "Sending news to device." msgstr "Slanje vijesti na uređaj" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:776 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:780 msgid "Sending books to device." msgstr "Slanje knjiga na uređaj" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:814 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:818 msgid "" "Could not upload the following books to the device, as no suitable formats " "were found. Convert the book(s) to a format supported by your device first." @@ -3708,11 +3709,11 @@ msgstr "" "Nije moguće otpremiti slijedeće knjige na uređaj, jer odgovarajući formati " "nisu pronađeni. Prvo pretvorite knjige u format podržan od vašeg uređaja." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 msgid "No space on device" msgstr "Nema prostora na uređaju" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:863 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:867 msgid "" "

Cannot upload books to device there is no more free space available " msgstr "" @@ -3731,7 +3732,7 @@ msgstr "Koristi pod-direktorije" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:86 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:345 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1007 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:90 msgid "Path" msgstr "Put" @@ -3741,7 +3742,7 @@ msgstr "Put" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:344 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:91 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Formats" msgstr "Formati" @@ -3853,7 +3854,7 @@ msgstr "nova epoštanska adresa" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:461 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:788 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:140 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1032 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "Greška" @@ -3926,7 +3927,7 @@ msgid "Access log:" msgstr "Dnevnik pristupa:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:645 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:576 msgid "Failed to start content server" msgstr "Neuspješan start sadržajnog poslužitelja" @@ -4485,7 +4486,7 @@ msgid "Edit Meta information" msgstr "Uredi Meta informaciju" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 msgid "Meta information" msgstr "Meta informacija" @@ -4498,7 +4499,7 @@ msgid "Author s&ort: " msgstr "S&ortiranje autora: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:138 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." @@ -4507,19 +4508,19 @@ msgstr "" "Charles Dickens bi trebao biti svrstan kao Dickens, Charles." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 msgid "&Rating:" msgstr "&Rangiranje:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:140 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:141 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Rating of this book. 0-5 stars" msgstr "Rangiranje ove knjige. 0-5 zvjezdica" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:142 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 msgid " stars" msgstr " zvjezdice" @@ -4529,8 +4530,8 @@ msgstr "Dodaj oz&nake: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:146 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:147 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 msgid "Open Tag Editor" msgstr "Otvori Urednika Tagova" @@ -4546,158 +4547,171 @@ msgstr "Zarezom odvojena lista tagova za ukloniti iz knjiga. " msgid "Remove &format:" msgstr "Ukloni &format:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 msgid "Not a valid picture" msgstr "Nije važeća slika" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:133 +msgid "Choose formats for " +msgstr "Odaberite format za " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:134 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:872 +msgid "Books" +msgstr "Knjige" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:160 +msgid "You do not have permission to read the following files:" +msgstr "Vi nemate dozvolu da čitate slijedeće datoteke:" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 msgid "No format selected" msgstr "Format nije odabran" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 msgid "Could not read metadata" msgstr "Nemoguće pročitati metapodatke" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 msgid "Could not read metadata from %s format" msgstr "Nemoguće pročitati metapodatke iz %s formata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:224 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:247 msgid "Could not read cover" msgstr "Nemoguće pročitati omot" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:242 msgid "Could not read cover from %s format" msgstr "Nemoguće pročitati omot iz %s formata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:248 msgid "The cover in the %s format is invalid" msgstr "Omot u %s formatu je nevažeći" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:285 msgid "Abort the editing of all remaining books" msgstr "Prekini uređivanje svih preostalih knjiga" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:488 msgid "Downloading cover..." msgstr "Skidanje omota..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:479 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:484 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:511 msgid "Cannot fetch cover" msgstr "Nemoguće ugrabiti omot" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:480 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:491 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:512 msgid "Could not fetch cover.
" msgstr "Nemoguće ugrabiti omot.
" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:502 msgid "The download timed out." msgstr "Vrijeme skidanja isteklo." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:506 msgid "Could not find cover for this book. Try specifying the ISBN first." msgstr "Omot za ovu knjigu nije pronađen. Pokušajte prvo specificirati ISBN." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:497 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:518 msgid "Bad cover" msgstr "Loš omot" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:498 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:519 msgid "The cover is not a valid picture" msgstr "Omot nije važeća slika" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:538 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 msgid "Cannot fetch metadata" msgstr "Nemoguće ugrabiti metapodatke" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:539 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 msgid "You must specify at least one of ISBN, Title, Authors or Publisher" msgstr "Morate specificirati barem jedan od ISBN, Naslov, Autori ili Izdavač" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:612 msgid "Permission denied" msgstr "Dozvola je uskraćena" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:613 msgid "Could not open %s. Is it being used by another program?" msgstr "Nije moguće otvoriti %s. Je li korišten od drugog programa?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 msgid "Edit Meta Information" msgstr "Uredi Meta informacije" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 msgid "Swap the author and title" msgstr "Zamijeni autora i naslov" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 msgid "Author S&ort: " msgstr "S&vrstavanje autora: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 msgid "" "Automatically create the author sort entry based on the current author entry" msgstr "" "Automatski kreiraj unos svrstavanja autora na osnovu aktivnog unosa autora" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 msgid "Remove unused series (Series that have no books)" msgstr "Ukloni neiskorištene serije (Serije koje nemaju knjige)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 msgid "IS&BN:" msgstr "IS&BN:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Publishe&d:" msgstr "Objavlje&n:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 msgid "dd MMM yyyy" msgstr "dd MMM gggg" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 msgid "&Date:" msgstr "&Datum:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 msgid "&Comments" msgstr "&Komentar" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 msgid "&Fetch metadata from server" msgstr "&Ugrabi metapodatke sa poslužitelja" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Available Formats" msgstr "Raspoloživi Formati" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 msgid "Add a new format for this book to the database" msgstr "Dodaj novi format ove knjige u bazu podataka." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 msgid "Remove the selected formats for this book from the database." msgstr "Ukloni odabrane formate ove knjige iz baze podataka." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 msgid "Set the cover for the book from the selected format" msgstr "Postavi omot za knjigu iz odabranog formata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 msgid "Update metadata from the metadata in the selected format" msgstr "Ažuriraj metapodatke iz metapodataka u odabranom formatu" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 msgid "Reset cover to default" msgstr "Vrati omot u zadano stanje" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 msgid "Download &cover" msgstr "Preuzmi &omot" @@ -5257,11 +5271,11 @@ msgstr "Regularni izraz (?P<title>)" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:79 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:83 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:88 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:93 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:96 msgid "No match" msgstr "Ne odgovara" @@ -5355,7 +5369,7 @@ msgstr "Rang" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:343 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:408 msgid "None" msgstr "Nijedan" @@ -5492,31 +5506,31 @@ msgstr "" msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" msgstr "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "Edit metadata individually" msgstr "Uredi metapodatke pojedinačno" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 msgid "Edit metadata in bulk" msgstr "Uredi metapodatke grupno" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 msgid "Download metadata and covers" msgstr "Preuzmi metapodatke i omote" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:232 msgid "Download only metadata" msgstr "Preuzmi samo metapodatke" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:233 msgid "Download only covers" msgstr "Preuzmi samo omote" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 msgid "Add books from a single directory" msgstr "Dodaj knjige iz jednog direktorija" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:237 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" @@ -5525,7 +5539,7 @@ msgstr "" "direktoriju, predpostavlja da je svaka e-book datoteka ista knjiga u " "različitom formatu)." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:240 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" @@ -5533,85 +5547,85 @@ msgstr "" "Dodaj knjige iz direktorija, uključujući pod-direktorije (Više knjiga po " "direktoriju, predpostavlja da je svaka e-book datoteka različita knjiga)." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:243 msgid "Add Empty book. (Book entry with no formats)" msgstr "Dodaj Praznu knjigu. (Knjižni unos bez formata)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:278 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:353 msgid "Save to disk" msgstr "Pohrani na disk" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 msgid "Save to disk in a single directory" msgstr "Spremi na disk u zajednički direktorij." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1431 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:282 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 msgid "Save only %s format to disk" msgstr "Pohrani samo %s format na disk" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:290 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:359 msgid "View" msgstr "Pogled" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "View specific format" msgstr "Pogledaj specifičan format" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:315 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:317 msgid "Convert individually" msgstr "Pretvori pojedinačno" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:316 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:318 msgid "Bulk convert" msgstr "Pretvori grupno" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:333 msgid "Run welcome wizard" msgstr "Pokreni asistenta dobrodošlice" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:367 msgid "Similar books..." msgstr "Slične knjige..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:425 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:426 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 msgid "Bad database location" msgstr "Loša lokacija baze podataka" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:430 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:478 msgid "Calibre Library" msgstr "Calibre Biblioteka" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:438 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1603 msgid "Choose a location for your ebook library." msgstr "Odaberi lokaciju za vašu e-book biblioteku" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:619 msgid "Browse by covers" msgstr "Pretražuj po omotima" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 msgid "Device: " msgstr "Uređaj: " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:728 msgid " detected." msgstr " otkriveno." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:748 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:750 msgid "Connected " msgstr "Spojeno " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:760 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:762 msgid "Device database corrupted" msgstr "Baza podataka uređaja je korumpirana." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:763 msgid "" "\n" "

The database of books on the reader is corrupted. Try the " @@ -5639,60 +5653,56 @@ msgstr "" " \n" " " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:837 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:907 msgid "Uploading books to device." msgstr "Slanje knjiga na uređaj." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:845 -msgid "Books" -msgstr "Knjige" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:846 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:873 msgid "EPUB Books" msgstr "EPUB Knjige" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:847 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:874 msgid "LRF Books" msgstr "LRF Knjige" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:848 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:875 msgid "HTML Books" msgstr "HTML Knjige" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:849 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:876 msgid "LIT Books" msgstr "LIT Knjige" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:850 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:877 msgid "MOBI Books" msgstr "MOBI Knjige" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:851 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:878 msgid "Text books" msgstr "Tekst Knjige" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:852 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:879 msgid "PDF Books" msgstr "PDF Knjige" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 msgid "Comics" msgstr "Stripovi" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:854 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:881 msgid "Archives" msgstr "Arhive" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:916 msgid "Failed to read metadata" msgstr "Neuspjeh u čitanju metapodataka" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:917 msgid "Failed to read metadata from the following" msgstr "Neuspjeh u čitanju metapodataka iz slijedećeg" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:909 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 msgid "" "The selected books will be permanently deleted and the files removed " "from your computer. Are you sure?" @@ -5700,111 +5710,111 @@ msgstr "" "Odabrane knjige će biti permanentno izbrisane i datoteke uklonjene sa " "vašeg računala. Jeste li sigurni?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:963 msgid "Deleting books from device." msgstr "Uklanjanje knjiga sa uređaja." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:967 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:994 msgid "Cannot download metadata" msgstr "Nije moguće preuzeti metapodatke" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:968 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1016 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1049 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1074 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1186 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1043 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1101 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1213 msgid "No books selected" msgstr "Niste odabrali knjigu" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "covers" msgstr "omoti" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "metadata" msgstr "metapodaci" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1006 msgid "Downloading %s for %d book(s)" msgstr "Preuzimanje %s za %d knjige" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1000 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1027 msgid "Failed to download some metadata" msgstr "Neuspjelo preuzimanje pojedinih metapodataka:" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1001 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1028 msgid "Failed to download metadata for the following:" msgstr "Neuspjelo preuzimanje metapodataka za slijedeće:" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1031 msgid "Failed to download metadata:" msgstr "Neuspjelo preuzimanje metapodataka:" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1015 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1048 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1075 msgid "Cannot edit metadata" msgstr "Nemoguće urediti metapodatke" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1073 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1100 msgid "Cannot save to disk" msgstr "Nemoguće spremiti na disk" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 msgid "Choose destination directory" msgstr "Odaberite odredišni direktorij" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1130 msgid "Error while saving" msgstr "Greška kod spremanja" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1104 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1131 msgid "There was an error while saving." msgstr "Potkrala se greška pri spremanju." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1111 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1112 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1138 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1139 msgid "Could not save some books" msgstr "Nije moguće spremiti neke knjige" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1140 msgid "Click the show details button to see which ones." msgstr "Klikni gumb za prikaz detalja da vidiš koji." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1132 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1159 msgid "Fetching news from " msgstr "Pribavljanje vijesti sa " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1145 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1172 msgid " fetched." msgstr " pribavlljeno." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 msgid "Cannot convert" msgstr "Nemoguće pretvoriti" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1241 msgid "Starting conversion of %d book(s)" msgstr "Pokretanje konverzije %d knjige(a)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1342 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1371 msgid "No book selected" msgstr "Niste odabrali knjigu" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1373 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1402 msgid "Cannot view" msgstr "Nemoguć pregled" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1341 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1370 msgid "Cannot open folder" msgstr "Nemoguće otvoriti mapu" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1387 msgid "Multiple Books Selected" msgstr "Odabrano Više Knjiga" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1359 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1388 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 " @@ -5816,31 +5826,31 @@ msgstr "" "započet, ovaj proces se ne može zustaviti dok se ne završi. Da li želite " "nastaviti?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1374 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1403 msgid "%s has no available formats." msgstr "%s nema raspoložive formate." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1415 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1444 msgid "Cannot configure" msgstr "Nemoguće konfigurirati" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1416 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1445 msgid "Cannot configure while there are running jobs." msgstr "Nemoguće konfigurirati dok postoje aktivni poslovi." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1459 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1488 msgid "No detailed info available" msgstr "Detaljni podaci nisu raspoloživi" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1489 msgid "No detailed information is available for books on the device." msgstr "Detaljni podaci nisu raspoloživi za knjige na uređaju." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1512 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1541 msgid "Error talking to device" msgstr "Greška u razgovoru sa uređajem" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1513 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1542 msgid "" "There was a temporary error talking to the device. Please unplug and " "reconnect the device and or reboot." @@ -5848,12 +5858,12 @@ msgstr "" "Došlo je do privremene greške u komunikaciji sa uređajem. Molimo islkjučite " "i ponovo priključite uređaj ili kompletno ponovo pokrenite sustav." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1536 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1554 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1565 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 msgid "Conversion Error" msgstr "Greška u Pretvorbi" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1537 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1566 msgid "" "

Could not convert: %s

It is a DRMed book. You must " "first remove the DRM using third party tools." @@ -5861,19 +5871,19 @@ msgstr "" "

Nemoguće pretvoriti: %s

Ovo je DRMknjiga. Prvo " "morate ukloniti DRM koristeći alate drugih dobavljača." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1555 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 msgid "Failed" msgstr "Neuspjelo" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1612 msgid "Invalid library location" msgstr "Nevažeća lokacija biblioteke" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1613 msgid "Could not access %s. Using %s as the library." msgstr "Nemoguć pristup do %s. Korištenje %s kao biblioteke." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1631 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1660 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." @@ -5881,11 +5891,11 @@ msgstr "" "je rezultat napora brojnih volontera iz cijelog svijeta. Ako smatrate da je " "koristan, molimo razmislite o donaciji za podršku razvoju ovog projekta." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1655 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1684 msgid "There are active jobs. Are you sure you want to quit?" msgstr "Imate aktivne poslove. Jeste li sigurni da hoćete prekinuti?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1658 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1687 msgid "" " is communicating with the device!
\n" " Quitting may cause corruption on the device.
\n" @@ -5895,11 +5905,11 @@ msgstr "" " Prekid može prouzrokovati korupciju uređaja.
\n" " Jeste li sigurni da hoćete da prekinete?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1662 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1691 msgid "WARNING: Active jobs" msgstr "UPOZORENJE: Aktivni poslovi" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1713 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1742 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -5907,7 +5917,7 @@ msgstr "" "će nastaviti biti aktivan u sustavnom poslužavniku. Da zatvorite, odaberite " "Prekini u sadržajnom izborniku sustavnog poslužavnika." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1732 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 msgid "" "Latest version: %s" @@ -5915,11 +5925,11 @@ msgstr "" "Posljednja inačica: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1740 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1769 msgid "Update available" msgstr "Obnova raspoloživa" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1741 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1770 msgid "" "%s has been updated to version %s. See the new features. " @@ -5929,52 +5939,52 @@ msgstr "" "href=\"http://calibre.kovidgoyal.net/wiki/Changelog\">nove značajke. " "Posjetite stranicu za skidanje." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1759 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1788 msgid "Use the library located at the specified path." msgstr "Koristi biblioteku lociranu na specificiranom putu." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1790 msgid "Start minimized to system tray." msgstr "Pokretanje minimizirano na sustavni poslužavnik." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1763 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1792 msgid "Log debugging information to console" msgstr "Ubilježi informacije o uklanjanju grašaka u konzolu." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1765 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1794 msgid "Do not check for updates" msgstr "Ne provjeravaj osvježenja" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1813 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1842 msgid "If you are sure it is not running" msgstr "Ako si siguran da nije aktivan" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1815 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1844 msgid "Cannot Start " msgstr "Ne može Krenuti " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1816 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1845 msgid "%s is already running." msgstr "%s je već aktivan." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1819 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1848 msgid "may be running in the system tray, in the" msgstr "možda funkcionira u sustavnom poslužavniku, u" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1821 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1850 msgid "upper right region of the screen." msgstr "gornji desni dio zaslona." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1823 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1852 msgid "lower right region of the screen." msgstr "donji desni dio zaslona." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1826 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1855 msgid "try rebooting your computer." msgstr "probaj ponovo startati svoje računalo." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1828 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1840 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1857 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1869 msgid "try deleting the file" msgstr "probaj obrisati datoteku." @@ -6132,27 +6142,27 @@ msgstr "Knjiga nema ni naslov niti ISBN" msgid "No matches found for this book" msgstr "Nisu pronađene podudarnosti za ovu knjigu" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:60 msgid "Search" msgstr "Pretraga" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:149 msgid "Jobs:" msgstr "Poslovi:" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:158 msgid "Click to see list of active jobs." msgstr "Klikni da vidiš listu aktivnih poslova." -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to browse books by their covers" msgstr "Klikni da pretražiš knjige po njihovim omotima" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to turn off Cover Browsing" msgstr "Kliknite da isključite Pretragu Omota" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:193 msgid "" "

Browsing books by their covers is disabled.
Import of pictureflow " "module failed:
" @@ -6160,7 +6170,7 @@ msgstr "" "

Pretraga knjiga po njihovim omotima je onesposobljena.
Uvoz " "pictureflow modula nije uspio:
" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:201 msgid "Click to browse books by tags" msgstr "Klikni da pretražiš knjige po tagovima" @@ -6562,7 +6572,7 @@ msgstr "Ispis" msgid "Print eBook" msgstr "Ispiši eBook" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 msgid "" "Library\n" "%d\n" @@ -6572,7 +6582,7 @@ msgstr "" "%d\n" "knjige" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 msgid "" "Reader\n" "%s\n" @@ -6582,7 +6592,7 @@ msgstr "" "%s\n" "dostupan" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:200 msgid "" "Card A\n" "%s\n" @@ -6592,7 +6602,7 @@ msgstr "" "%s\n" "raspoloživa" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:201 msgid "" "Card B\n" "%s\n" @@ -6602,39 +6612,39 @@ msgstr "" "%s\n" "raspoloživa" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:206 msgid "Click to see the books available on your computer" msgstr "Klikni da vidiš knjige koje se nalaze na tvojem računalu" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:207 msgid "Click to see the books in the main memory of your reader" msgstr "Klikni da vidiš knjige u glavnoj memoriji tvoga čitača" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:208 msgid "Click to see the books on storage card A in your reader" msgstr "Klikni da vidiš knjige na memorijskoj kartici A u svom čitaču" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:209 msgid "Click to see the books on storage card B in your reader" msgstr "Klikni da vidiš knjige na memorijskoj kartici B u svom čitaču" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:466 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:498 msgid "Change Case" msgstr "Promijeni Veličinu Slova" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:499 msgid "Upper Case" msgstr "Velika Slova" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:468 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:500 msgid "Lower Case" msgstr "Mala Slova" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:469 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:501 msgid "Swap Case" msgstr "Zamijeni Veličinu Slova" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:470 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:502 msgid "Title Case" msgstr "Veličina Slova Naslova" @@ -7479,43 +7489,43 @@ msgstr "" "Kod slanja argumenata na %prog koji u sebi imaju razmake, zatvorite " "argumente u znake navoda." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:555 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 msgid "Path to the database in which books are stored" msgstr "Put do baze podataka u kojoj su knjige pohranjene" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:557 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 msgid "Pattern to guess metadata from filenames" msgstr "Predložak za pogoditi metapodatak iza imena datoteka" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 msgid "Access key for isbndb.com" msgstr "Pristupni ključ za isbndb.com" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 msgid "Default timeout for network operations (seconds)" msgstr "Zadana pauza za mrežne zahvate (sekunde)" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 msgid "Path to directory in which your library of books is stored" msgstr "Put do direktorija u kojem je pohranjena vaša biblioteke knjiga ." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:569 msgid "The language in which to display the user interface" msgstr "Jezik u kojem izložiti korisničko sučelje" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 msgid "The default output format for ebook conversions." msgstr "Zadani izlazni format za pretvorbu elektroničkih knjiga." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 msgid "Ordered list of formats to prefer for input." msgstr "Poredana lista formata za preferirani ulaz." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:573 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:577 msgid "Read metadata from files" msgstr "Čitaj metapodatke iz datoteka" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:579 msgid "The priority of worker processes" msgstr "Prioriteti radnih procesa" diff --git a/src/calibre/translations/hu.po b/src/calibre/translations/hu.po index f87cfefeed..dd78557545 100644 --- a/src/calibre/translations/hu.po +++ b/src/calibre/translations/hu.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2009-10-02 05:30+0000\n" -"PO-Revision-Date: 2009-10-06 05:46+0000\n" -"Last-Translator: Devilinside \n" +"POT-Creation-Date: 2009-10-10 02:36+0000\n" +"PO-Revision-Date: 2009-10-09 23:36+0000\n" +"Last-Translator: Kovid Goyal \n" "Language-Team: Hungarian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-07 06:48+0000\n" +"X-Launchpad-Export-Date: 2009-10-10 06:52+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 @@ -26,8 +26,9 @@ msgstr "Semmit nem csinál" #: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:53 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:58 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:199 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:703 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:706 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:730 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:733 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:177 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:410 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:65 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 @@ -95,22 +96,22 @@ msgstr "Semmit nem csinál" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:29 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:217 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:261 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:273 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:120 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:127 #: /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/device.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:765 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:768 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:769 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:772 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:106 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:431 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:42 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:391 @@ -553,25 +554,25 @@ msgstr "" msgid "Unable to mount main memory (Error code: %d)" msgstr "A belső memória nem felismerhető. (Hiba kód: %d)" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:643 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:645 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:670 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:672 msgid "The reader has no storage card in this slot." msgstr "Ebben csatlakozóban nincs memóriakártya" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:647 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:674 msgid "Selected slot: %s is not supported." msgstr "A következő kártyahely nem támogatott: %s" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:671 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:698 msgid "There is insufficient free space in main memory" msgstr "Nincs elég hely a fő memóriában" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:673 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:675 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:700 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:702 msgid "There is insufficient free space on the storage card" msgstr "Nincs elég hely a memóriakártyán." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:686 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:713 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:434 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 #: /home/kovid/work/calibre/src/calibre/library/database2.py:1007 @@ -1273,7 +1274,7 @@ msgstr "" "egyet, akkor egy generált borító készül a könyvhöz a címmel, szerzővel stb. " "Ez az opció letiltja ezt az automatikusan generált borítót." -#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:122 +#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:124 #: /home/kovid/work/calibre/src/calibre/ebooks/pml/pmlml.py:111 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:77 @@ -1652,7 +1653,7 @@ msgstr "Producer" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:71 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:64 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:349 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:92 msgid "Comments" msgstr "Megjegyzés" @@ -1661,7 +1662,7 @@ msgstr "Megjegyzés" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:338 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1012 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1072 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:94 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Tags" msgstr "Címkék" @@ -1669,7 +1670,7 @@ msgstr "Címkék" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:372 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:166 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:354 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:93 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Series" msgstr "Sorozatok" @@ -2507,15 +2508,15 @@ msgstr "A sorban álló műveletek maximális száma" msgid "Copied" msgstr "Másolva" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy" msgstr "Másolás" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy to Clipboard" msgstr "Másolás a vágólapra" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:386 msgid "Choose Files" msgstr "Válasszon a fájlok közül" @@ -2540,7 +2541,7 @@ msgid "The specified directory could not be processed." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:482 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:486 msgid "No books" msgstr "Nincsenek könyvek" @@ -2756,14 +2757,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:501 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:128 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:131 @@ -2965,38 +2966,38 @@ msgstr "" "ezekből." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:96 msgid "Choose cover for " msgstr "Borító választása a következőhöz: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:159 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:102 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 msgid "Cannot read" msgstr "Olvasási hiba" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:104 msgid "You do not have permission to read the file: " msgstr "Nincs megfelelő jogosultsága a következő fájl olvasásához: " #: /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/dialogs/metadata_single.py:111 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 msgid "Error reading file" msgstr "Fájl olvasási hiba" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:113 msgid "

There was an error reading from file:
" msgstr "

Hiba történt a következő fájl olvasása közben:
" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:121 msgid " is not a valid picture" msgstr " nem érvényes képformátum." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 msgid "Book Cover" msgstr "Könyvborító" @@ -3005,28 +3006,28 @@ msgid "Use cover from &source file" msgstr "A forrásfájlban tárolt borító használata" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 msgid "Change &cover image:" msgstr "Borító kép cseréje:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 msgid "Browse for an image to use as the cover of this book." msgstr "Képfájl kiválasztása és beállítása borítóként." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 msgid "&Title: " msgstr "&Cím: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 msgid "Change the title of this book" msgstr "Könyv címének megadása" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:135 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 msgid "&Author(s): " msgstr "Szerző(k) " @@ -3044,18 +3045,18 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:143 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 msgid "&Publisher: " msgstr "&Kiadó: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 msgid "Ta&gs: " msgstr "Címkék: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:145 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

They can be any words or phrases, separated by commas." @@ -3065,7 +3066,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:150 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 msgid "&Series:" msgstr "&Sorozat:" @@ -3073,13 +3074,13 @@ msgstr "&Sorozat:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:151 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:372 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 msgid "List of known series. You can add new series." msgstr "Ismert sotozatok listája. Hozzáadhat újakat is." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 msgid "Book " msgstr "Könyv " @@ -3194,7 +3195,7 @@ msgid "RB Output" msgstr "RB kimenet" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1329 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 msgid "Choose the format to view" msgstr "Válassza ki a kívánt formátumot olvasásra" @@ -3275,12 +3276,12 @@ msgid "Footer regular expression:" msgstr "Lábléc reguláris kifejezés:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:56 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:72 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 msgid "Invalid regular expression" msgstr "Érvénytelen reguláris kifejezés" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:74 msgid "Invalid regular expression: %s" msgstr "Érvénytelen reguláris kifejezés: %s" @@ -3505,184 +3506,184 @@ msgstr "Részletek nem elérhetőek." msgid "Device no longer connected." msgstr "Az eszköz már nem csatlakozik." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:199 msgid "Get device information" msgstr "Eszköz-információk lekérdezése" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:210 msgid "Get list of books on device" msgstr "Az eszközön lévő könyvek listájának letöltése" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:219 msgid "Send metadata to device" msgstr "Metaadatok küldése az eszközre" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:228 msgid "Upload %d books to device" msgstr "%d könyv feltöltése az eszközre" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:243 msgid "Delete books from device" msgstr "Könyvek törlése az eszközről" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:260 msgid "Download books from device" msgstr "Könyvek letöltése az eszközről" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "View book on device" msgstr "Könyv megnyitása ez eszközön" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:273 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:277 msgid "and delete from library" msgstr "és törlés az adatbázisból" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:298 msgid "Set default send to device action" msgstr "Alapértelmezett eszközre küldési művelet beállítása" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:299 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:303 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:310 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:312 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:314 msgid "Email to" msgstr "Email küldése" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:321 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:328 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 msgid "Send to main memory" msgstr "Küldés a belső memóriába" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:323 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:330 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:334 msgid "Send to storage card A" msgstr "Küldés az 'A' memóriakártyára" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 msgid "Send to storage card B" msgstr "Küldés a 'B' memóriakártyára" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 msgid "Send specific format to main memory" msgstr "A meghatározott formátumú változat küldése a belső memóriába" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:341 msgid "Send specific format to storage card A" msgstr "A meghatározott formátum küldése az 'A' memóriakártyára" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:343 msgid "Send specific format to storage card B" msgstr "A meghatározott formátum küldése a 'B' memóriakártyára" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:487 msgid "selected to send" msgstr "kiválasztva küldéshez" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:492 msgid "Choose format to send to device" msgstr "Az eszközre küldendő formátum kiválasztása" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:495 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 msgid "No device" msgstr "Nincs eszköz" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 msgid "Cannot send: No device is connected" msgstr "Nem tudom küldeni: nincs csatlakoztatott eszköz" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:507 msgid "No card" msgstr "Nincs memóriakártya" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:504 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:508 msgid "Cannot send: Device has no storage card" msgstr "Nem tudom küldeni: az eszközben nincs memóriakártya" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:546 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 msgid "E-book:" msgstr "E-book:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:553 msgid "Attached, you will find the e-book" msgstr "Az ebook csatolva" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:554 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:177 msgid "by" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:555 msgid "in the %s format." msgstr "%s formátumban." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:568 msgid "Sending email to" msgstr "Email küldése:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:594 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:601 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:806 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:813 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:696 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:817 msgid "No suitable formats" msgstr "Nincs megfelelő formátum" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:599 msgid "Auto convert the following books before sending via email?" msgstr "" "Az email-ben való elküldés előtt automatikusan konvertáljam a kijelölt " "könyveket?" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" "Nem lehet elküldeni a következő könyveket, mert nem léteznek a megadott " "formátumokban:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:621 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:625 msgid "Failed to email books" msgstr "A könyvek elküdése nem sikerült" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 msgid "Failed to email the following books:" msgstr "Hiba a következő könyvek email-ben való elküldése közben:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:630 msgid "Sent by email:" msgstr "Emailbe elküldve:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:653 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:657 msgid "News:" msgstr "Hírek:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:658 msgid "Attached is the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:665 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 msgid "Sent news to" msgstr "Hírek elküldve:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:693 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:807 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:697 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:811 msgid "Auto convert the following books before uploading to the device?" msgstr "" "Az eszközre való feltöltés előtt automatikusan konvertáljam a kijelölt " "könyveket?" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:728 msgid "Sending news to device." msgstr "Hírek küldése az eszközre" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:776 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:780 msgid "Sending books to device." msgstr "Könyvek küldése az eszközre." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:814 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:818 msgid "" "Could not upload the following books to the device, as no suitable formats " "were found. Convert the book(s) to a format supported by your device first." @@ -3691,11 +3692,11 @@ msgstr "" "formátumú változatuk. Konvertálja át a nem megfelelőeket valamelyik, az " "eszközöd által támogatott formátumra." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 msgid "No space on device" msgstr "Nincs elég hely az eszközön" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:863 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:867 msgid "" "

Cannot upload books to device there is no more free space available " msgstr "" @@ -3715,7 +3716,7 @@ msgstr "Almappák használata" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:86 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:345 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1007 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:90 msgid "Path" msgstr "Elérési út" @@ -3725,7 +3726,7 @@ msgstr "Elérési út" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:344 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:91 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Formats" msgstr "Formátumok" @@ -3839,7 +3840,7 @@ msgstr "új email cím" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:461 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:788 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:140 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1032 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "Hiba" @@ -3912,7 +3913,7 @@ msgid "Access log:" msgstr "Hozzáférési naplófájl:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:645 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:576 msgid "Failed to start content server" msgstr "A tartalomkiszolgáló indítása nem sikerült" @@ -4472,7 +4473,7 @@ msgid "Edit Meta information" msgstr "Metaadatok szerkesztése" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 msgid "Meta information" msgstr "Metaadat infromációk" @@ -4485,7 +4486,7 @@ msgid "Author s&ort: " msgstr "Rendezési forma: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:138 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." @@ -4494,19 +4495,19 @@ msgstr "" "Dickens, Charles-ként rendezni." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 msgid "&Rating:" msgstr "Értékelés:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:140 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:141 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Rating of this book. 0-5 stars" msgstr "A könyv értékelése. 0-5 csillag." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:142 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 msgid " stars" msgstr " csillag" @@ -4516,8 +4517,8 @@ msgstr "Címkék hozzáadása: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:146 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:147 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 msgid "Open Tag Editor" msgstr "Címke-szerkesztő megnyitása" @@ -4533,164 +4534,177 @@ msgstr "A könyvből eltávolítandó címkék vesszővel elválasztott listája msgid "Remove &format:" msgstr "Formátum eltávolítása:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 msgid "Not a valid picture" msgstr "Nem érvényes képfájl" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:133 +msgid "Choose formats for " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:134 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:872 +msgid "Books" +msgstr "Könyvek" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:160 +msgid "You do not have permission to read the following files:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 msgid "No format selected" msgstr "Nincs formátum kiválasztva" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 msgid "Could not read metadata" msgstr "Nem lehet olvasni a metaadatokat" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 msgid "Could not read metadata from %s format" msgstr "Nem lehet kiolvasni a metaadtokat a %s formátumból." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:224 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:247 msgid "Could not read cover" msgstr "Nem lehet olvasni a borítót" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:242 msgid "Could not read cover from %s format" msgstr "Nem lehet kiolvasni a borítót a %s formátumból" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:248 msgid "The cover in the %s format is invalid" msgstr "A %s formátumban lévő borító érvénytelen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:285 msgid "Abort the editing of all remaining books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:488 msgid "Downloading cover..." msgstr "Borító letöltése..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:479 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:484 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:511 msgid "Cannot fetch cover" msgstr "Nem lehet letölteni a borítót" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:480 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:491 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:512 msgid "Could not fetch cover.
" msgstr "Nem lehet letölteni a borítót.
" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:502 msgid "The download timed out." msgstr "Időtúllépés letöltés közben" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:506 msgid "Could not find cover for this book. Try specifying the ISBN first." msgstr "" "Nem található borító ehhez a könyvhöz. Próbálja meg először az ISBN-t " "meghatározni." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:497 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:518 msgid "Bad cover" msgstr "Hibás borító" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:498 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:519 msgid "The cover is not a valid picture" msgstr "A borító nem érvényes képfájl" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:538 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 msgid "Cannot fetch metadata" msgstr "Metadatok nem letölthetőek" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:539 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 msgid "You must specify at least one of ISBN, Title, Authors or Publisher" msgstr "" "Legalább az egyik adatot meg kell adnia a következők közül: ISBN, könyv " "címe, szerző vagy kiadó" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:612 msgid "Permission denied" msgstr "Hozzáférés megtagadva" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:613 msgid "Could not open %s. Is it being used by another program?" msgstr "Nem lehet megnyitni: %s. Esetleg másik program használja?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 msgid "Edit Meta Information" msgstr "Metaadatok szerkesztése" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 msgid "Swap the author and title" msgstr "A szerző és a könyvcím megcserélése" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 msgid "Author S&ort: " msgstr "Rendezési forma: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 msgid "" "Automatically create the author sort entry based on the current author entry" msgstr "" "A rendezési forma automatikus létrehozása az aktuális szerzői adatok alapján" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 msgid "Remove unused series (Series that have no books)" msgstr "" "Nem használt sorozatok törlése (Olyan sorozatok, melyekhez nem tartoznak " "könyvek)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 msgid "IS&BN:" msgstr "IS&BN:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Publishe&d:" msgstr "Kiadva:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 msgid "dd MMM yyyy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 msgid "&Date:" msgstr "&Dátum:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 msgid "&Comments" msgstr "Megjegyzések" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 msgid "&Fetch metadata from server" msgstr "Metadatok lekérdezése szerverről" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Available Formats" msgstr "Elérhető formátumok" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 msgid "Add a new format for this book to the database" msgstr "Új formátum hozzáadása az adatbázishoz" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 msgid "Remove the selected formats for this book from the database." msgstr "A kiválasztott formátumok törlése az adatbázisból." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 msgid "Set the cover for the book from the selected format" msgstr "Borító beállítása a kiválasztott formátumú könyből" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 msgid "Update metadata from the metadata in the selected format" msgstr "Metaadatok frissítése a kiválasztott formátum metaadatai alapján" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 msgid "Reset cover to default" msgstr "Alapértelmezett borító visszaállítása" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 msgid "Download &cover" msgstr "Borító letöltése" @@ -5245,11 +5259,11 @@ msgstr "Reguláris kifejezés (?P<title>)" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:79 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:83 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:88 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:93 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:96 msgid "No match" msgstr "Nincs találat" @@ -5343,7 +5357,7 @@ msgstr "Értékelés" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:343 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:408 msgid "None" msgstr "Nincs" @@ -5479,31 +5493,31 @@ msgstr "" msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" msgstr "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "Edit metadata individually" msgstr "Metaadatok szerkesztése egyenként" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 msgid "Edit metadata in bulk" msgstr "Metaadatok csoportos szerkesztése" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 msgid "Download metadata and covers" msgstr "Metaadatok és borítók letöltése" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:232 msgid "Download only metadata" msgstr "Csak a metaadatok letöltése" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:233 msgid "Download only covers" msgstr "Csak a borítók letöltése" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 msgid "Add books from a single directory" msgstr "Könyvek hozzáadása egy mappából" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:237 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" @@ -5512,7 +5526,7 @@ msgstr "" "könyv, feltételezve, hogy minden egyes fájl ugyanaz a könyv különböző " "formátumokban)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:240 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" @@ -5520,86 +5534,86 @@ msgstr "" "Könyvek hozzáadása egy, vagy több mappából, almappából (mappánként több " "könyv, feltételezve, hogy minden egyes fájl egy külön könyv)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:243 msgid "Add Empty book. (Book entry with no formats)" msgstr "" "Üres könyv hozzáadása. (Formátum nélküli könyv-bejegyzés az adatbázisban)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:278 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:353 msgid "Save to disk" msgstr "Mentés lemezre" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 msgid "Save to disk in a single directory" msgstr "Mentés lemezre egy mappába" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1431 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:282 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 msgid "Save only %s format to disk" msgstr "Csak a(z) %s formátum mentése a lemezre" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:290 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:359 msgid "View" msgstr "Olvasás" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "View specific format" msgstr "Meghatározott formátum olvasása" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:315 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:317 msgid "Convert individually" msgstr "Egy könyv konvertálása" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:316 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:318 msgid "Bulk convert" msgstr "Csoportos konvertálás" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:333 msgid "Run welcome wizard" msgstr "Beállítás Varázsló indítása" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:367 msgid "Similar books..." msgstr "Hasonló könyvek..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:425 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:426 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 msgid "Bad database location" msgstr "Hibás adatbázis elérési útvonal" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:430 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:478 msgid "Calibre Library" msgstr "Calibre Library" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:438 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1603 msgid "Choose a location for your ebook library." msgstr "Válasszon elérési utat az adatbázisod számára" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:619 msgid "Browse by covers" msgstr "Böngészés borítók alapján" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 msgid "Device: " msgstr "Eszköz: " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:728 msgid " detected." msgstr " felismerve" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:748 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:750 msgid "Connected " msgstr "Csatlakozva: " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:760 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:762 msgid "Device database corrupted" msgstr "Az eszköz adatbázis hibás" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:763 msgid "" "\n" "

The database of books on the reader is corrupted. Try the " @@ -5628,60 +5642,56 @@ msgstr "" " \n" " " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:837 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:907 msgid "Uploading books to device." msgstr "Könyvek feltöltése az eszközre." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:845 -msgid "Books" -msgstr "Könyvek" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:846 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:873 msgid "EPUB Books" msgstr "EPUB könyvek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:847 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:874 msgid "LRF Books" msgstr "LRF könyvek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:848 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:875 msgid "HTML Books" msgstr "HTML könyvek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:849 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:876 msgid "LIT Books" msgstr "LIT könyvek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:850 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:877 msgid "MOBI Books" msgstr "MOBI könyvek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:851 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:878 msgid "Text books" msgstr "Text könyvek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:852 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:879 msgid "PDF Books" msgstr "PDF könyvek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 msgid "Comics" msgstr "Képregény" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:854 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:881 msgid "Archives" msgstr "Archívumok" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:916 msgid "Failed to read metadata" msgstr "Hiba történt a metaadatok olvasása közben" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:917 msgid "Failed to read metadata from the following" msgstr "Nem sikerült a metaadatok olvasása a következőből:" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:909 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 msgid "" "The selected books will be permanently deleted and the files removed " "from your computer. Are you sure?" @@ -5689,111 +5699,111 @@ msgstr "" "A kiválasztott könyvek véglegesen törölve lesznek a számítógépedről. " "Biztosan törölni akarja?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:963 msgid "Deleting books from device." msgstr "Könyvek törlése az eszközről." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:967 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:994 msgid "Cannot download metadata" msgstr "Nem lehet letölteni a metaadatokat" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:968 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1016 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1049 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1074 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1186 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1043 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1101 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1213 msgid "No books selected" msgstr "Nincs könyv kiválasztva." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "covers" msgstr "borítók" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "metadata" msgstr "metaadatok" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1006 msgid "Downloading %s for %d book(s)" msgstr "%s letöltése %d könyvhöz" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1000 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1027 msgid "Failed to download some metadata" msgstr "Néhány metaadatot nem sikerült letölteni" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1001 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1028 msgid "Failed to download metadata for the following:" msgstr "Hiba történt a metaadatok letöltése közben a következőhöz:" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1031 msgid "Failed to download metadata:" msgstr "Nem sikerült metaadatokat letölteni:" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1015 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1048 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1075 msgid "Cannot edit metadata" msgstr "Metaadat nem szerkeszthető" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1073 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1100 msgid "Cannot save to disk" msgstr "Nem lehet lemezre menteni" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 msgid "Choose destination directory" msgstr "Válassza ki a célkönyvtárt" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1130 msgid "Error while saving" msgstr "Mentési hiba" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1104 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1131 msgid "There was an error while saving." msgstr "Hiba történt mentés közben." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1111 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1112 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1138 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1139 msgid "Could not save some books" msgstr "Néhány könyvet nem sikerült menteni" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1140 msgid "Click the show details button to see which ones." msgstr "Kattintson a 'Részletek megjelenítése' gombra" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1132 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1159 msgid "Fetching news from " msgstr "Hírek letöltése: " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1145 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1172 msgid " fetched." msgstr " letöltve" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 msgid "Cannot convert" msgstr "Nem lehet konvertálni" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1241 msgid "Starting conversion of %d book(s)" msgstr "%d könyv konvertálása" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1342 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1371 msgid "No book selected" msgstr "Nincs könyv kiválasztva" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1373 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1402 msgid "Cannot view" msgstr "Nem lehet a könyvet olvasni" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1341 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1370 msgid "Cannot open folder" msgstr "A mappát nem lehet megnyitni" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1387 msgid "Multiple Books Selected" msgstr "Több könyv is ki van választva" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1359 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1388 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 " @@ -5804,31 +5814,31 @@ msgstr "" "lelassíthatja a gépedet. Ha a művelet elindult, már nem lehet leállítani. " "Biztosan folytatja?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1374 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1403 msgid "%s has no available formats." msgstr "Nincs elérhető formátum a következőhöz: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1415 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1444 msgid "Cannot configure" msgstr "Beállítás nem lehetséges" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1416 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1445 msgid "Cannot configure while there are running jobs." msgstr "Művelet végrehajtása közben nem lehet a beállításokat változtatni" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1459 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1488 msgid "No detailed info available" msgstr "Nincs részletes információ" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1489 msgid "No detailed information is available for books on the device." msgstr "A könyvekhez nincsenek részletes információk az eszközön." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1512 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1541 msgid "Error talking to device" msgstr "Hiba a kapcsolatban" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1513 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1542 msgid "" "There was a temporary error talking to the device. Please unplug and " "reconnect the device and or reboot." @@ -5836,12 +5846,12 @@ msgstr "" "Hiba az eszközkapcsolatban. Válassza le majd csatlakoztassa újra az eszközt " "és/vagy indítssa újra az eszközt, esetleg a programot." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1536 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1554 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1565 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 msgid "Conversion Error" msgstr "Konvertálási hiba" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1537 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1566 msgid "" "

Could not convert: %s

It is a DRMed book. You must " "first remove the DRM using third party tools." @@ -5851,19 +5861,19 @@ msgstr "" "egy külső program segítségével a DRM-et (Digital Rights Management) el kell " "távolítania." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1555 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 msgid "Failed" msgstr "Nem sikerült" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1612 msgid "Invalid library location" msgstr "Érvénytelen adatbázis elérési útvonal" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1613 msgid "Could not access %s. Using %s as the library." msgstr "Nem elérhető: %s. Helyette %s lesz az adatbázis." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1631 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1660 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." @@ -5871,11 +5881,11 @@ msgstr "" "sok önkéntes erőfeszítéseinek eredménye a világ minden tájáról. Ha " "hasznosnak találja, kérem, támogassa a fejlesztést." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1655 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1684 msgid "There are active jobs. Are you sure you want to quit?" msgstr "Folyamatban van néhány művelet végrehajtása. Megszakítja?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1658 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1687 msgid "" " is communicating with the device!
\n" " Quitting may cause corruption on the device.
\n" @@ -5885,11 +5895,11 @@ msgstr "" " A kilépés adatvesztést okozhat az eszközön.
\n" " Biztos, hogy ki akarsz lépni??" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1662 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1691 msgid "WARNING: Active jobs" msgstr "FIGYELEM: Aktív műveletek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1713 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1742 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -5897,7 +5907,7 @@ msgstr "" "tovább fut a tálcán. A bezáráshoz válassza a Kilépést a tálcaikon " "menüjéből." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1732 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 msgid "" "Latest version: %s" @@ -5905,11 +5915,11 @@ msgstr "" "Legújabb verzió: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1740 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1769 msgid "Update available" msgstr "Frissítés elérhető" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1741 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1770 msgid "" "%s has been updated to version %s. See the new features. " @@ -5919,52 +5929,52 @@ msgstr "" "href=\"http://calibre.kovidgoyal.net/wiki/Changelog\">new features. " "Letöltő oldal meglátogatása?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1759 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1788 msgid "Use the library located at the specified path." msgstr "A megadott elérési úton lévő adatbázis használata." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1790 msgid "Start minimized to system tray." msgstr "A tálcára összecsukott állapotban induljon" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1763 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1792 msgid "Log debugging information to console" msgstr "HIbakeresési információk megjelenítése a konzolon" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1765 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1794 msgid "Do not check for updates" msgstr "Ne ellenőrizze a frissítéseket" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1813 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1842 msgid "If you are sure it is not running" msgstr "Ha biztos benne, hogy nem fut" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1815 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1844 msgid "Cannot Start " msgstr "Indítás nem lehetséges " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1816 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1845 msgid "%s is already running." msgstr "%s már fut." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1819 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1848 msgid "may be running in the system tray, in the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1821 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1850 msgid "upper right region of the screen." msgstr "a képernyő jobb felső sarka." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1823 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1852 msgid "lower right region of the screen." msgstr "a képernyő jobb alsó részén." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1826 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1855 msgid "try rebooting your computer." msgstr "próblja meg újraindítani a számítógépet" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1828 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1840 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1857 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1869 msgid "try deleting the file" msgstr "" @@ -6123,27 +6133,27 @@ msgstr "A könyvnek sem címe sem pedig ISBN azonosítója sincs." msgid "No matches found for this book" msgstr "Nem található ilyen könyv" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:60 msgid "Search" msgstr "Keresés" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:149 msgid "Jobs:" msgstr "Jobs:" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:158 msgid "Click to see list of active jobs." msgstr "Aktív műveletek megjelenítése" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to browse books by their covers" msgstr "Könyvek böngészése a borítók alapján" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to turn off Cover Browsing" msgstr "Borító böngésző kikapcsolása" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:193 msgid "" "

Browsing books by their covers is disabled.
Import of pictureflow " "module failed:
" @@ -6151,7 +6161,7 @@ msgstr "" "

A borító alapján történő keresés letiltva.
A képbetöltő modul hibát " "észlelt:
" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:201 msgid "Click to browse books by tags" msgstr "Könyvek böngészése a címkék szerint" @@ -6554,7 +6564,7 @@ msgstr "Nyomtatás" msgid "Print eBook" msgstr "eBook nyomtatása" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 msgid "" "Library\n" "%d\n" @@ -6564,7 +6574,7 @@ msgstr "" "%d\n" "könyv és hír" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 msgid "" "Reader\n" "%s\n" @@ -6574,7 +6584,7 @@ msgstr "" "%s\n" "szabad" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:200 msgid "" "Card A\n" "%s\n" @@ -6584,7 +6594,7 @@ msgstr "" "%s\n" "szabad" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:201 msgid "" "Card B\n" "%s\n" @@ -6594,39 +6604,39 @@ msgstr "" "%s\n" "szabad" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:206 msgid "Click to see the books available on your computer" msgstr "A számítógépen lévő könyvek megjelenítése." -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:207 msgid "Click to see the books in the main memory of your reader" msgstr "A készülék belső memóriájában lévő könyvek megjelenítése" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:208 msgid "Click to see the books on storage card A in your reader" msgstr "A könyvolvasó eszköz 'A' memóriakártyáján lévő könyvek megjelenítése" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:209 msgid "Click to see the books on storage card B in your reader" msgstr "A könyvolvasó eszköz 'B' memóriakártyáján lévő könyvek megjelenítése" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:466 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:498 msgid "Change Case" msgstr "Kisbetű - nagybetű váltás" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:499 msgid "Upper Case" msgstr "Nagybetűk" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:468 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:500 msgid "Lower Case" msgstr "Kisbetűk" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:469 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:501 msgid "Swap Case" msgstr "Kisbetű - nagybetű váltás" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:470 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:502 msgid "Title Case" msgstr "Minden Szó Nagybetűvel Kezdődik" @@ -7420,43 +7430,43 @@ msgstr "" "Ha szóközöket tartalmazó paramétereket ad meg %prog-nak, akkor a paraméterek " "idézőjelek között legyenek." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:555 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 msgid "Path to the database in which books are stored" msgstr "A könyveket tartalmazó adatbázis elérési útja" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:557 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 msgid "Pattern to guess metadata from filenames" msgstr "Minta a metaadatok kinyerésére a fájlnévből" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 msgid "Access key for isbndb.com" msgstr "Felhasználói kulcs az isbndb.com-hoz:" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 msgid "Default timeout for network operations (seconds)" msgstr "Alap időtúllépés a hálózati műveletekhez (másodpercben)" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 msgid "Path to directory in which your library of books is stored" msgstr "A könyveket tartalmazó adatbázisfájl mappájának elérési útja" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:569 msgid "The language in which to display the user interface" msgstr "A felhasználói felület nyelve:" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 msgid "The default output format for ebook conversions." msgstr "Az ebook konvertálás alapértelmezett kimeneti formátuma." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 msgid "Ordered list of formats to prefer for input." msgstr "A bementi formátum listája preferált sorrendben" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:573 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:577 msgid "Read metadata from files" msgstr "Metaadatok olvasása a fájlokból" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:579 msgid "The priority of worker processes" msgstr "Műveletek prioritási sorrendje" diff --git a/src/calibre/translations/it.po b/src/calibre/translations/it.po index 45633dc9f1..8884e07bca 100644 --- a/src/calibre/translations/it.po +++ b/src/calibre/translations/it.po @@ -8,14 +8,14 @@ msgid "" msgstr "" "Project-Id-Version: calibre_calibre-it\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-10-02 05:30+0000\n" -"PO-Revision-Date: 2009-10-02 21:23+0000\n" +"POT-Creation-Date: 2009-10-10 02:36+0000\n" +"PO-Revision-Date: 2009-10-09 23:36+0000\n" "Last-Translator: Filippo \n" "Language-Team: italiano\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-03 06:45+0000\n" +"X-Launchpad-Export-Date: 2009-10-10 06:52+0000\n" "X-Generator: Launchpad (build Unknown)\n" "Generated-By: pygettext.py 1.5\n" @@ -28,8 +28,9 @@ msgstr "Non fa assolutamente niente" #: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:53 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:58 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:199 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:703 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:706 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:730 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:733 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:177 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:410 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:65 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 @@ -97,22 +98,22 @@ msgstr "Non fa assolutamente niente" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:29 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:217 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:261 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:273 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:120 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:127 #: /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/device.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:765 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:768 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:769 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:772 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:106 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:431 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:42 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:391 @@ -541,25 +542,25 @@ msgstr "" msgid "Unable to mount main memory (Error code: %d)" msgstr "Impossibile montare la memoria principale (Codice errore: %d)" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:643 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:645 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:670 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:672 msgid "The reader has no storage card in this slot." msgstr "Il reader non contiene una scheda di memoria in questo slot." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:647 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:674 msgid "Selected slot: %s is not supported." msgstr "Lo slot selezionato: %s non è supportato." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:671 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:698 msgid "There is insufficient free space in main memory" msgstr "Non c'è spazio sufficiente nella memoria principale" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:673 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:675 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:700 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:702 msgid "There is insufficient free space on the storage card" msgstr "Non c'è spazio sufficiente nella scheda di memoria" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:686 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:713 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:434 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 #: /home/kovid/work/calibre/src/calibre/library/database2.py:1007 @@ -1144,7 +1145,7 @@ msgid "" "disables the generation of this cover." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:122 +#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:124 #: /home/kovid/work/calibre/src/calibre/ebooks/pml/pmlml.py:111 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:77 @@ -1520,7 +1521,7 @@ msgstr "Produttore" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:71 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:64 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:349 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:92 msgid "Comments" msgstr "Commenti" @@ -1529,7 +1530,7 @@ msgstr "Commenti" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:338 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1012 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1072 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:94 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Tags" msgstr "Tag" @@ -1537,7 +1538,7 @@ msgstr "Tag" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:372 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:166 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:354 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:93 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Series" msgstr "Serie" @@ -2268,15 +2269,15 @@ msgstr "" msgid "Copied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy to Clipboard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:386 msgid "Choose Files" msgstr "" @@ -2301,7 +2302,7 @@ msgid "The specified directory could not be processed." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:482 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:486 msgid "No books" msgstr "" @@ -2510,14 +2511,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:501 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:128 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:131 @@ -2717,38 +2718,38 @@ msgid "" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:96 msgid "Choose cover for " msgstr "Seleziona copertina per " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:159 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:102 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 msgid "Cannot read" msgstr "Impossibile leggere" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:104 msgid "You do not have permission to read the file: " msgstr "Non si hanno i permessi per leggere il file: " #: /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/dialogs/metadata_single.py:111 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 msgid "Error reading file" msgstr "Errore nella lettura del file" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:113 msgid "

There was an error reading from file:
" msgstr "

Si è verificato un errore nella lettura del file:
" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:121 msgid " is not a valid picture" msgstr " non è un'immagine valida" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 msgid "Book Cover" msgstr "Copertina del libro" @@ -2757,29 +2758,29 @@ msgid "Use cover from &source file" msgstr "Usa copertina del file di &origine" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 msgid "Change &cover image:" msgstr "Ca&mbia l'immagine di copertina:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 msgid "Browse for an image to use as the cover of this book." msgstr "" "Sfoglia per trovare un'immagine da usare come copertina per questo libro" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 msgid "&Title: " msgstr "&Titolo: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 msgid "Change the title of this book" msgstr "Cambia il titolo di questo libro" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:135 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 msgid "&Author(s): " msgstr "A&utore(i): " @@ -2797,18 +2798,18 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:143 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 msgid "&Publisher: " msgstr "&Editore: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 msgid "Ta&gs: " msgstr "T&ag: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:145 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

They can be any words or phrases, separated by commas." @@ -2819,7 +2820,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:150 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 msgid "&Series:" msgstr "&Serie:" @@ -2827,13 +2828,13 @@ msgstr "&Serie:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:151 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:372 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 msgid "List of known series. You can add new series." msgstr "Lista di serie conosciute. È possibile aggiungere nuove serie" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 msgid "Book " msgstr "Libro " @@ -2948,7 +2949,7 @@ msgid "RB Output" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1329 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 msgid "Choose the format to view" msgstr "Scegliere il formato da leggere" @@ -3027,12 +3028,12 @@ msgid "Footer regular expression:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:56 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:72 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 msgid "Invalid regular expression" msgstr "Espressione regolare non valida" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:74 msgid "Invalid regular expression: %s" msgstr "Espressione regolare non valida: %s" @@ -3246,188 +3247,188 @@ msgstr "" msgid "Device no longer connected." msgstr "Dispositivo non più collegato." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:199 msgid "Get device information" msgstr "Ottieni informazioni sul dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:210 msgid "Get list of books on device" msgstr "Ottieni la lista dei libri del dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:219 msgid "Send metadata to device" msgstr "Invia metadati al dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:228 msgid "Upload %d books to device" msgstr "Carica %d libri nel dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:243 msgid "Delete books from device" msgstr "Cancella libri dal dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:260 msgid "Download books from device" msgstr "Scarica libri dal dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "View book on device" msgstr "Visualizza libro sul dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:273 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:277 msgid "and delete from library" msgstr "ed elimina dalla biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:298 msgid "Set default send to device action" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:299 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:303 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:310 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:312 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:314 msgid "Email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:321 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:328 -msgid "Send to main memory" -msgstr "Invia alla memoria principale" - -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:323 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:330 -msgid "Send to storage card A" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 +msgid "Send to main memory" +msgstr "Invia alla memoria principale" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:334 +msgid "Send to storage card A" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 msgid "Send to storage card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 msgid "Send specific format to main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:341 msgid "Send specific format to storage card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:343 msgid "Send specific format to storage card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:487 msgid "selected to send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:492 msgid "Choose format to send to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:495 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 msgid "No device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 msgid "Cannot send: No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:507 msgid "No card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:504 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:508 msgid "Cannot send: Device has no storage card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:546 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 msgid "E-book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:553 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:554 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:177 msgid "by" msgstr "di" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:555 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:568 msgid "Sending email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:594 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:601 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:806 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:813 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:696 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:817 msgid "No suitable formats" msgstr "Nessun formato adatto" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:599 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:621 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:625 msgid "Failed to email books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 msgid "Failed to email the following books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:630 msgid "Sent by email:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:653 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:657 msgid "News:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:658 msgid "Attached is the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:665 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 msgid "Sent news to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:693 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:807 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:697 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:811 msgid "Auto convert the following books before uploading to the device?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:728 msgid "Sending news to device." msgstr "Invio notizie al dispositivo in corso." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:776 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:780 msgid "Sending books to device." msgstr "Invio libri al dispositivo." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:814 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:818 msgid "" "Could not upload the following books to the device, as no suitable formats " "were found. Convert the book(s) to a format supported by your device first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 msgid "No space on device" msgstr "Spazio insufficiente sul dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:863 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:867 msgid "" "

Cannot upload books to device there is no more free space available " msgstr "" @@ -3447,7 +3448,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:86 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:345 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1007 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:90 msgid "Path" msgstr "Percorso" @@ -3457,7 +3458,7 @@ msgstr "Percorso" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:344 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:91 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Formats" msgstr "Formati" @@ -3566,7 +3567,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:461 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:788 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:140 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1032 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "Errore" @@ -3637,7 +3638,7 @@ msgid "Access log:" msgstr "File di log degli accessi:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:645 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:576 msgid "Failed to start content server" msgstr "Avvio del server dei contenuti fallito" @@ -4171,7 +4172,7 @@ msgid "Edit Meta information" msgstr "Modifica metadati" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 msgid "Meta information" msgstr "Metadati" @@ -4184,7 +4185,7 @@ msgid "Author s&ort: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:138 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." @@ -4193,19 +4194,19 @@ msgstr "" "esempio, Charles Dickens deve essere classificato come Dickens, Charles." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 msgid "&Rating:" msgstr "&Giudizio:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:140 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:141 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Rating of this book. 0-5 stars" msgstr "Giudizio su questo libro. 0-5 stelle" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:142 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 msgid " stars" msgstr " stelle" @@ -4215,8 +4216,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:146 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:147 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 msgid "Open Tag Editor" msgstr "Apri l'editor dei tag" @@ -4232,159 +4233,172 @@ msgstr "Lista separata da virgole dei tag da rimuovere dal libro " msgid "Remove &format:" msgstr "Rimuovi for&mato:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 msgid "Not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:133 +msgid "Choose formats for " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:134 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:872 +msgid "Books" +msgstr "Libri" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:160 +msgid "You do not have permission to read the following files:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 msgid "No format selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 msgid "Could not read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 msgid "Could not read metadata from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:224 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:247 msgid "Could not read cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:242 msgid "Could not read cover from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:248 msgid "The cover in the %s format is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:285 msgid "Abort the editing of all remaining books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:488 msgid "Downloading cover..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:479 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:484 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:511 msgid "Cannot fetch cover" msgstr "Impossibile scaricare la copertina" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:480 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:491 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:512 msgid "Could not fetch cover.
" msgstr "Impossibile scaricare la copertina
" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:502 msgid "The download timed out." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:506 msgid "Could not find cover for this book. Try specifying the ISBN first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:497 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:518 msgid "Bad cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:498 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:519 msgid "The cover is not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:538 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 msgid "Cannot fetch metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:539 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 msgid "You must specify at least one of ISBN, Title, Authors or Publisher" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:612 msgid "Permission denied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:613 msgid "Could not open %s. Is it being used by another program?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 msgid "Edit Meta Information" msgstr "Modifica metadati" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 msgid "Swap the author and title" msgstr "Scambia titolo e autore" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 msgid "Author S&ort: " msgstr "&Classificazione autore: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 msgid "" "Automatically create the author sort entry based on the current author entry" msgstr "" "Crea automaticamente la voce Classificazione autore basandosi sul contenuto " "del campo Autore." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 msgid "Remove unused series (Series that have no books)" msgstr "Rimuovi serie inutilizzate (che non hanno libri)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 msgid "IS&BN:" msgstr "IS&BN:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Publishe&d:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 msgid "dd MMM yyyy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 msgid "&Date:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 msgid "&Comments" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 msgid "&Fetch metadata from server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Available Formats" msgstr "Formati disponibili" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 msgid "Add a new format for this book to the database" msgstr "Aggiungi un nuovo formato al database per questo libro" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 msgid "Remove the selected formats for this book from the database." msgstr "Rimuovi il formato selezionato dal database per questo libro" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 msgid "Set the cover for the book from the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 msgid "Update metadata from the metadata in the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 msgid "Reset cover to default" msgstr "Ripristinare la copertina predefinita" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 msgid "Download &cover" msgstr "" @@ -4919,11 +4933,11 @@ msgstr "Espressione regolare (?P<title>)" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:79 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:83 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:88 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:93 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:96 msgid "No match" msgstr "Nessuna corrispondenza" @@ -5017,7 +5031,7 @@ msgstr "Giudizio" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:343 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:408 msgid "None" msgstr "Nessuno" @@ -5151,121 +5165,121 @@ msgstr "" msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" msgstr "%s: %s di Kovid Goyal %%(version)s
%%(device)s

" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "Edit metadata individually" msgstr "Modifica metadati individualmente" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 msgid "Edit metadata in bulk" msgstr "Modifica metadati in gruppo" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 msgid "Download metadata and covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:232 msgid "Download only metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:233 msgid "Download only covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 msgid "Add books from a single directory" msgstr "Aggiungi libri da una singola cartella" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:237 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:240 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:243 msgid "Add Empty book. (Book entry with no formats)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:278 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:353 msgid "Save to disk" msgstr "Salva su disco" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 msgid "Save to disk in a single directory" msgstr "Salva su disco in una singola cartella" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1431 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:282 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 msgid "Save only %s format to disk" msgstr "Salva sul disco solo il formato %s" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:290 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:359 msgid "View" msgstr "Leggi" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "View specific format" msgstr "Leggi uno specifico formato" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:315 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:317 msgid "Convert individually" msgstr "Converti individualmente" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:316 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:318 msgid "Bulk convert" msgstr "Converti in gruppo" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:333 msgid "Run welcome wizard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:367 msgid "Similar books..." msgstr "Libri simili..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:425 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:426 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 msgid "Bad database location" msgstr "Percorso del database sbagliato" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:430 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:478 msgid "Calibre Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:438 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1603 msgid "Choose a location for your ebook library." msgstr "Scegliere un percorso per la propria biblioteca." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:619 msgid "Browse by covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 msgid "Device: " msgstr "Dispositivo: " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:728 msgid " detected." msgstr " individuato." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:748 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:750 msgid "Connected " msgstr "Connesso " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:760 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:762 msgid "Device database corrupted" msgstr "Database del dispositivo corrotto" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:763 msgid "" "\n" "

The database of books on the reader is corrupted. Try the " @@ -5294,170 +5308,166 @@ msgstr "" " \n" " " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:837 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:907 msgid "Uploading books to device." msgstr "Caricamento libri nel dispositivo." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:845 -msgid "Books" -msgstr "Libri" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:846 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:873 msgid "EPUB Books" msgstr "Libri EPUB" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:847 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:874 msgid "LRF Books" msgstr "Libri LRF" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:848 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:875 msgid "HTML Books" msgstr "Libri HTML" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:849 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:876 msgid "LIT Books" msgstr "Libri LIT" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:850 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:877 msgid "MOBI Books" msgstr "Libri MOBI" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:851 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:878 msgid "Text books" msgstr "Libri TXT" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:852 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:879 msgid "PDF Books" msgstr "Libri PDF" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 msgid "Comics" msgstr "Fumetti" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:854 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:881 msgid "Archives" msgstr "Archivi" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:916 msgid "Failed to read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:917 msgid "Failed to read metadata from the following" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:909 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 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/main.py:936 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:963 msgid "Deleting books from device." msgstr "Cancellamento libri dal dispositivo." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:967 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:994 msgid "Cannot download metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:968 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1016 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1049 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1074 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1186 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1043 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1101 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1213 msgid "No books selected" msgstr "Nessun libro selezionato" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1006 msgid "Downloading %s for %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1000 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1027 msgid "Failed to download some metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1001 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1028 msgid "Failed to download metadata for the following:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1031 msgid "Failed to download metadata:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1015 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1048 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1075 msgid "Cannot edit metadata" msgstr "Impossibile modificare i metadati" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1073 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1100 msgid "Cannot save to disk" msgstr "Impossibile salvare sul disco" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 msgid "Choose destination directory" msgstr "Scegliere la cartella di destinazione" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1130 msgid "Error while saving" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1104 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1131 msgid "There was an error while saving." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1111 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1112 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1138 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1139 msgid "Could not save some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1140 msgid "Click the show details button to see which ones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1132 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1159 msgid "Fetching news from " msgstr "Scaricamento notizie da " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1145 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1172 msgid " fetched." msgstr " preso." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 msgid "Cannot convert" msgstr "Impossibile convertire" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1241 msgid "Starting conversion of %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1342 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1371 msgid "No book selected" msgstr "Nessun libro selezionato" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1373 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1402 msgid "Cannot view" msgstr "Impossibile leggere" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1341 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1370 msgid "Cannot open folder" msgstr "Impossibile aprire la cartella" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1387 msgid "Multiple Books Selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1359 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1388 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 " @@ -5465,33 +5475,33 @@ msgid "" "continue?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1374 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1403 msgid "%s has no available formats." msgstr "%s non ha formati disponibili" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1415 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1444 msgid "Cannot configure" msgstr "Impossibile configurare" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1416 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1445 msgid "Cannot configure while there are running jobs." msgstr "Impossibile configurare mentre ci sono lavori in esecuzione" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1459 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1488 msgid "No detailed info available" msgstr "Nessuna informazione dettagliata disponibile" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1489 msgid "No detailed information is available for books on the device." msgstr "" "Non è disponibile alcuna informazione dettagliata per i libri nel " "dispositivo." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1512 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1541 msgid "Error talking to device" msgstr "Errore di comunicazione col dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1513 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1542 msgid "" "There was a temporary error talking to the device. Please unplug and " "reconnect the device and or reboot." @@ -5499,30 +5509,30 @@ msgstr "" "Si è verificato un errore di comunicazione temporaneo col dispositivo. " "Disconnettere e riconnettere il dispositivo e/o riavviare" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1536 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1554 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1565 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 msgid "Conversion Error" msgstr "Errore di conversione" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1537 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1566 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/main.py:1555 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1612 msgid "Invalid library location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1613 msgid "Could not access %s. Using %s as the library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1631 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1660 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." @@ -5530,22 +5540,22 @@ msgstr "" "è il risultato degli sforzi di tanti volontari da tutto il mondo. Se lo " "trovi utile, puoi fare una donazione per supportare il suo sviluppo." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1655 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1684 msgid "There are active jobs. Are you sure you want to quit?" msgstr "Ci sono lavori attivi. Uscire comunque?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1658 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1687 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/main.py:1662 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1691 msgid "WARNING: Active jobs" msgstr "ATTENZIONE: Lavori attivi" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1713 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1742 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -5553,7 +5563,7 @@ msgstr "" "continuerà a lavorare nel vassoio di sistema. Per chiuderlo, selezionare " "Esci nel menu contestuale del vassoio di sistema." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1732 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 msgid "" "Latest version: %s" @@ -5561,11 +5571,11 @@ msgstr "" "Ultima versione: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1740 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1769 msgid "Update available" msgstr "Aggiornamento disponibile" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1741 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1770 msgid "" "%s has been updated to version %s. See the new features. " @@ -5575,52 +5585,52 @@ msgstr "" "href=\"http://calibre.kovidgoyal.net/wiki/Changelog\">nuove " "funzionalità. Una visita alla pagina del download?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1759 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1788 msgid "Use the library located at the specified path." msgstr "Usa la biblioteca collocata nel percorso specificato." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1790 msgid "Start minimized to system tray." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1763 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1792 msgid "Log debugging information to console" msgstr "Invia le informazioni di debug alla console" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1765 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1794 msgid "Do not check for updates" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1813 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1842 msgid "If you are sure it is not running" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1815 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1844 msgid "Cannot Start " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1816 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1845 msgid "%s is already running." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1819 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1848 msgid "may be running in the system tray, in the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1821 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1850 msgid "upper right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1823 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1852 msgid "lower right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1826 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1855 msgid "try rebooting your computer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1828 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1840 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1857 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1869 msgid "try deleting the file" msgstr "" @@ -5776,27 +5786,27 @@ msgstr "" msgid "No matches found for this book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:60 msgid "Search" msgstr "Cerca" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:149 msgid "Jobs:" msgstr "Lavori:" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:158 msgid "Click to see list of active jobs." msgstr "Fare clic per vedere una lista dei lavori attivi" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to browse books by their covers" msgstr "Fare clic per sfogliare i libri per copertine" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to turn off Cover Browsing" msgstr "Fare clic per disattivare la navigazione per copertina" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:193 msgid "" "

Browsing books by their covers is disabled.
Import of pictureflow " "module failed:
" @@ -5804,7 +5814,7 @@ msgstr "" "

La navigazione per copertina è disabilitata.
Caricamento del modulo " "pictureflow fallito:
" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:201 msgid "Click to browse books by tags" msgstr "Fare clic per sfogliare i libri per tag" @@ -6195,7 +6205,7 @@ msgstr "" msgid "Print eBook" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 msgid "" "Library\n" "%d\n" @@ -6205,7 +6215,7 @@ msgstr "" "%d\n" "libri" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 msgid "" "Reader\n" "%s\n" @@ -6215,53 +6225,53 @@ msgstr "" "%s\n" "disponibile" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:200 msgid "" "Card A\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:201 msgid "" "Card B\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:206 msgid "Click to see the books available on your computer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:207 msgid "Click to see the books in the main memory of your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:208 msgid "Click to see the books on storage card A in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:209 msgid "Click to see the books on storage card B in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:466 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:498 msgid "Change Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:499 msgid "Upper Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:468 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:500 msgid "Lower Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:469 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:501 msgid "Swap Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:470 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:502 msgid "Title Case" msgstr "" @@ -7043,43 +7053,43 @@ msgid "" "arguments in quotation marks." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:555 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 msgid "Path to the database in which books are stored" msgstr "Percorso del database in cui sono salvati i libri" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:557 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 msgid "Pattern to guess metadata from filenames" msgstr "Modelli per indovinare i metadati dai nomi dei file" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 msgid "Access key for isbndb.com" msgstr "Chiave di accesso per isbndb.com" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 msgid "Default timeout for network operations (seconds)" msgstr "Timeout predefinito per le operazioni di rete (secondi)" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 msgid "Path to directory in which your library of books is stored" msgstr "Percorso alla cartella in cui è salvata la biblioteca" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:569 msgid "The language in which to display the user interface" msgstr "La lingua in cui visualizzare l'interfaccia utente" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 msgid "The default output format for ebook conversions." msgstr "Il formato predefinito per la conversione dei libri." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 msgid "Ordered list of formats to prefer for input." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:573 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:577 msgid "Read metadata from files" msgstr "Leggi metadati dai file" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:579 msgid "The priority of worker processes" msgstr "La priorità dei processi di lavoro" diff --git a/src/calibre/translations/nb.po b/src/calibre/translations/nb.po index 549353b806..30e3dab14a 100644 --- a/src/calibre/translations/nb.po +++ b/src/calibre/translations/nb.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2009-10-02 05:30+0000\n" -"PO-Revision-Date: 2009-10-04 16:53+0000\n" -"Last-Translator: Øyvind Øritsland \n" +"POT-Creation-Date: 2009-10-10 02:36+0000\n" +"PO-Revision-Date: 2009-10-09 23:37+0000\n" +"Last-Translator: Kovid Goyal \n" "Language-Team: Norwegian Bokmal \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-05 06:43+0000\n" +"X-Launchpad-Export-Date: 2009-10-10 06:52+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 @@ -26,8 +26,9 @@ msgstr "Gjør absolutt ingenting" #: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:53 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:58 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:199 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:703 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:706 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:730 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:733 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:177 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:410 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:65 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 @@ -95,22 +96,22 @@ msgstr "Gjør absolutt ingenting" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:29 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:217 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:261 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:273 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:120 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:127 #: /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/device.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:765 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:768 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:769 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:772 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:106 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:431 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:42 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:391 @@ -555,25 +556,25 @@ msgstr "" msgid "Unable to mount main memory (Error code: %d)" msgstr "Kan ikke montere hovedminne (Feilkode: %d)" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:643 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:645 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:670 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:672 msgid "The reader has no storage card in this slot." msgstr "Leseren har ikke noe lagringskort i denne minnekortleseren." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:647 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:674 msgid "Selected slot: %s is not supported." msgstr "Valgt minnekortleser: %s er ikke støttet." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:671 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:698 msgid "There is insufficient free space in main memory" msgstr "Det er ikke nok plass i hovedminnet" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:673 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:675 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:700 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:702 msgid "There is insufficient free space on the storage card" msgstr "Det er ikke nok ledig plass på lagringskortet" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:686 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:713 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:434 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 #: /home/kovid/work/calibre/src/calibre/library/database2.py:1007 @@ -1285,7 +1286,7 @@ msgstr "" "spesifisere ett, så vil et standard omslag bli generert med tittel, " "forfatter osv. Dette valget slår av genereringen av dette omslaget." -#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:122 +#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:124 #: /home/kovid/work/calibre/src/calibre/ebooks/pml/pmlml.py:111 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:77 @@ -1669,7 +1670,7 @@ msgstr "Produsent" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:71 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:64 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:349 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:92 msgid "Comments" msgstr "Sammendrag:" @@ -1678,7 +1679,7 @@ msgstr "Sammendrag:" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:338 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1012 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1072 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:94 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Tags" msgstr "Nøkkelord" @@ -1686,7 +1687,7 @@ msgstr "Nøkkelord" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:372 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:166 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:354 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:93 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Series" msgstr "Serie" @@ -2525,15 +2526,15 @@ msgstr "Maksumum antall ventende arbeidsprosesser" msgid "Copied" msgstr "Kopiert" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy" msgstr "Kopier" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy to Clipboard" msgstr "Kopier til utklippstavlen" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:386 msgid "Choose Files" msgstr "Velg filer" @@ -2558,7 +2559,7 @@ msgid "The specified directory could not be processed." msgstr "Det spesifiserte mappen kunne ikke prossesseres" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:482 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:486 msgid "No books" msgstr "Ingen bøker" @@ -2776,14 +2777,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:501 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:128 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:131 @@ -2988,38 +2989,38 @@ msgstr "" "som mulig." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:96 msgid "Choose cover for " msgstr "Velg omslag for " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:159 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:102 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 msgid "Cannot read" msgstr "Kan ikke lese" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:104 msgid "You do not have permission to read the file: " msgstr "Du har ikke tillatelse til å lese denne filen: " #: /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/dialogs/metadata_single.py:111 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 msgid "Error reading file" msgstr "Feil under lesing av fil" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:113 msgid "

There was an error reading from file:
" msgstr "

En feil oppsto under lesing fra filen:
" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:121 msgid " is not a valid picture" msgstr " er ikke et tillatt bilde" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 msgid "Book Cover" msgstr "Bokomslag" @@ -3028,28 +3029,28 @@ msgid "Use cover from &source file" msgstr "Bruk omslag fra &kilde fil" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 msgid "Change &cover image:" msgstr "Bytt &omslagsbilde:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 msgid "Browse for an image to use as the cover of this book." msgstr "Let etter et bilde som kan benyttes som omslag for denne boken." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 msgid "&Title: " msgstr "&Tittel: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 msgid "Change the title of this book" msgstr "Forandre bokens tittel" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:135 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 msgid "&Author(s): " msgstr "&Forfatter(e): " @@ -3067,18 +3068,18 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:143 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 msgid "&Publisher: " msgstr "&Forlegger: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 msgid "Ta&gs: " msgstr "Ta&gger: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:145 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

They can be any words or phrases, separated by commas." @@ -3088,7 +3089,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:150 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 msgid "&Series:" msgstr "&Serier:" @@ -3096,13 +3097,13 @@ msgstr "&Serier:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:151 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:372 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 msgid "List of known series. You can add new series." msgstr "Liste av kjente serier. Du kan legge til nye serier." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 msgid "Book " msgstr "Bok " @@ -3217,7 +3218,7 @@ msgid "RB Output" msgstr "RB Utdata" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1329 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 msgid "Choose the format to view" msgstr "Velg format som skal vises" @@ -3299,12 +3300,12 @@ msgid "Footer regular expression:" msgstr "Bunntekst - vanlig uttrykk:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:56 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:72 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 msgid "Invalid regular expression" msgstr "Ugyldig regulæruttrykk" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:74 msgid "Invalid regular expression: %s" msgstr "Ugyldig regulæruttrykk: %s" @@ -3529,180 +3530,180 @@ msgstr "Ingen detaljer tilgjengelig." msgid "Device no longer connected." msgstr "Enheten er ikke lenger koblet til." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:199 msgid "Get device information" msgstr "Få informasjon om enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:210 msgid "Get list of books on device" msgstr "Få en liste over bøker på enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:219 msgid "Send metadata to device" msgstr "Send metadata til enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:228 msgid "Upload %d books to device" msgstr "Last opp %d bøker til enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:243 msgid "Delete books from device" msgstr "Slett bøker fra enhet" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:260 msgid "Download books from device" msgstr "Last ned bøker fra enhet" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "View book on device" msgstr "Se min bok på enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:273 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:277 msgid "and delete from library" msgstr "og slett fra biblioteket" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:298 msgid "Set default send to device action" msgstr "Sett stadart til send til enhet" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:299 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:303 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:310 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:312 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:314 msgid "Email to" msgstr "-post til" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:321 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:328 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 msgid "Send to main memory" msgstr "Send til hovedminnet" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:323 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:330 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:334 msgid "Send to storage card A" msgstr "Send til lagringskort A" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 msgid "Send to storage card B" msgstr "Send til lagringskort B" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 msgid "Send specific format to main memory" msgstr "Send spesifisert format til hovedminnet" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:341 msgid "Send specific format to storage card A" msgstr "Send spesifisert format til lagringskort A" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:343 msgid "Send specific format to storage card B" msgstr "Send spesifisert format til lagringskort B" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:487 msgid "selected to send" msgstr "Velg for å sende" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:492 msgid "Choose format to send to device" msgstr "Velg format for å sende til enhet" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:495 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 msgid "No device" msgstr "Ingen enhet" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 msgid "Cannot send: No device is connected" msgstr "Kan ikke sende: Ingen enhet er koblet til" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:507 msgid "No card" msgstr "Ingen kort" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:504 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:508 msgid "Cannot send: Device has no storage card" msgstr "Kan ikke sende: Enheten har ikke noe lagringskort" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:546 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 msgid "E-book:" msgstr "E-bok" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:553 msgid "Attached, you will find the e-book" msgstr "Vedlagt finner du e-boken" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:554 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:177 msgid "by" msgstr "av" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:555 msgid "in the %s format." msgstr "i %s format" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:568 msgid "Sending email to" msgstr "Sender e-post til" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:594 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:601 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:806 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:813 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:696 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:817 msgid "No suitable formats" msgstr "Ingen passende formater" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:599 msgid "Auto convert the following books before sending via email?" msgstr "Autokonverter de følgende bøkene før du sender dem via e-post?" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" "Kunne ikke sende følgende bøker som e-post da ingen passende formater ble " "funnet:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:621 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:625 msgid "Failed to email books" msgstr "Kunne ikke sende bøker via e-post" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 msgid "Failed to email the following books:" msgstr "Kunne ikke sende de følgende bøkene via e-post:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:630 msgid "Sent by email:" msgstr "Sent som e-post:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:653 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:657 msgid "News:" msgstr "Nyheter:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:658 msgid "Attached is the" msgstr "Vedlagt følger" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:665 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 msgid "Sent news to" msgstr "Sent nyheter til" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:693 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:807 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:697 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:811 msgid "Auto convert the following books before uploading to the device?" msgstr "Autokonverter følgende bøker før du laster dem opp til enheten?" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:728 msgid "Sending news to device." msgstr "Sender nyheter til enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:776 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:780 msgid "Sending books to device." msgstr "Sender bøker til enheten." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:814 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:818 msgid "" "Could not upload the following books to the device, as no suitable formats " "were found. Convert the book(s) to a format supported by your device first." @@ -3711,11 +3712,11 @@ msgstr "" "ble funnet. Konverter boken/bøkene til et format som er støttet av din enhet " "først." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 msgid "No space on device" msgstr "Ikke plass på enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:863 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:867 msgid "" "

Cannot upload books to device there is no more free space available " msgstr "" @@ -3735,7 +3736,7 @@ msgstr "Bruk underkataloger" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:86 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:345 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1007 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:90 msgid "Path" msgstr "Bane" @@ -3745,7 +3746,7 @@ msgstr "Bane" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:344 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:91 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Formats" msgstr "Formater" @@ -3857,7 +3858,7 @@ msgstr "ny e-postadresse" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:461 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:788 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:140 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1032 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "Feil" @@ -3931,7 +3932,7 @@ msgid "Access log:" msgstr "tilgangslogg:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:645 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:576 msgid "Failed to start content server" msgstr "Kunne ikke starte innholdsserveren" @@ -4488,7 +4489,7 @@ msgid "Edit Meta information" msgstr "Rediger metainformasjon" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 msgid "Meta information" msgstr "Metainformasjon" @@ -4501,7 +4502,7 @@ msgid "Author s&ort: " msgstr "Forfatter s&orter: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:138 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." @@ -4510,19 +4511,19 @@ msgstr "" "Charles Dickens skal sorteres som Dickens, Charles." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 msgid "&Rating:" msgstr "&Bedømning" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:140 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:141 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Rating of this book. 0-5 stars" msgstr "Bedømning av denne boken. 0-5 stjerner" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:142 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 msgid " stars" msgstr " stjerner" @@ -4532,8 +4533,8 @@ msgstr "Legg til ta&gger: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:146 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:147 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 msgid "Open Tag Editor" msgstr "Åpne Tagg-redigering" @@ -4549,159 +4550,172 @@ msgstr "Kommaseparert liste av emneord som skal fjernes fra bøkene. " msgid "Remove &format:" msgstr "Fjern &format:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 msgid "Not a valid picture" msgstr "Ikke gylding bilde" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:133 +msgid "Choose formats for " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:134 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:872 +msgid "Books" +msgstr "Bøker" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:160 +msgid "You do not have permission to read the following files:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 msgid "No format selected" msgstr "Ingen formater er valgt" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 msgid "Could not read metadata" msgstr "Kunne ikke lese metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 msgid "Could not read metadata from %s format" msgstr "Kunne ikke lese metadata fra %s formatet" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:224 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:247 msgid "Could not read cover" msgstr "Kunne ikke lese omslaget" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:242 msgid "Could not read cover from %s format" msgstr "Kunne ikke lese omslaget fra %s formatet" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:248 msgid "The cover in the %s format is invalid" msgstr "Omslaget i %s format er ikke gyldig" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:285 msgid "Abort the editing of all remaining books" msgstr "Avbryt redigering av alle gjenværende bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:488 msgid "Downloading cover..." msgstr "Laster ned omslag..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:479 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:484 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:511 msgid "Cannot fetch cover" msgstr "Kan ikke hente omslag" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:480 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:491 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:512 msgid "Could not fetch cover.
" msgstr "Kunne ikke hente omslag.
" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:502 msgid "The download timed out." msgstr "Tidsavbrudd for nedlasting." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:506 msgid "Could not find cover for this book. Try specifying the ISBN first." msgstr "" "Kunne ikke finne omslaget for denne boken. Forsøk å spesifisere ISBN først." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:497 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:518 msgid "Bad cover" msgstr "Dårlig omslag" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:498 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:519 msgid "The cover is not a valid picture" msgstr "Omslaget har ikke gyldig bilde" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:538 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 msgid "Cannot fetch metadata" msgstr "Kan ikke hente metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:539 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 msgid "You must specify at least one of ISBN, Title, Authors or Publisher" msgstr "Du må spesifisere minst en av ISBN, Tittel, Forfatter eller Forlag" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:612 msgid "Permission denied" msgstr "Ingen adgang" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:613 msgid "Could not open %s. Is it being used by another program?" msgstr "Kunne ikke åpne %s. Blir den benyttet i et annet program?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 msgid "Edit Meta Information" msgstr "Rediger metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 msgid "Swap the author and title" msgstr "Bytt mellom forfatter og tittel" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 msgid "Author S&ort: " msgstr "Forfatter S&orter: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 msgid "" "Automatically create the author sort entry based on the current author entry" msgstr "" "Lag forfattersortering automatisk basert på gjeldende forfatteroppføring" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 msgid "Remove unused series (Series that have no books)" msgstr "Fjern ubrukte serier (Serier som ikke har noen bøker)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 msgid "IS&BN:" msgstr "IS&BN:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Publishe&d:" msgstr "Publisert&t" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 msgid "dd MMM yyyy" msgstr "ddMMMyyyy" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 msgid "&Date:" msgstr "&Dato:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 msgid "&Comments" msgstr "&Sammendrag" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 msgid "&Fetch metadata from server" msgstr "&Hent metadata fra server" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Available Formats" msgstr "Tilgjengelige formater" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 msgid "Add a new format for this book to the database" msgstr "Legg et nytt format for denne boken til databasen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 msgid "Remove the selected formats for this book from the database." msgstr "Fjern det valgte formatet for denne boken fra databasen" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 msgid "Set the cover for the book from the selected format" msgstr "Legg inn omslaget for boken fra det valgte formatet" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 msgid "Update metadata from the metadata in the selected format" msgstr "Oppdater metadata fra metadata i det valgte formatet" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 msgid "Reset cover to default" msgstr "Tilbakestill omslaget til standard" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 msgid "Download &cover" msgstr "Last ned &omslag" @@ -5259,11 +5273,11 @@ msgstr "Regulære uttrykk (?P<tittel>)" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:79 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:83 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:88 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:93 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:96 msgid "No match" msgstr "Ingen treff" @@ -5357,7 +5371,7 @@ msgstr "Rangering" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:343 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:408 msgid "None" msgstr "Ingen" @@ -5493,31 +5507,31 @@ msgstr "" msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" msgstr "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "Edit metadata individually" msgstr "Rediger metadata individuelt" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 msgid "Edit metadata in bulk" msgstr "Rediger metadata samlet" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 msgid "Download metadata and covers" msgstr "Last ned metadata og omslag" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:232 msgid "Download only metadata" msgstr "Last bare ned metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:233 msgid "Download only covers" msgstr "Last bare ned omslag" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 msgid "Add books from a single directory" msgstr "Legg til bøker fra en enkelt mappe" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:237 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" @@ -5525,7 +5539,7 @@ msgstr "" "Legg til bøker fra mapper, inkludert undermapper (En bok per mappe, " "oppfattes som at alle e-bokfilene er den samme boken i forskjellige format)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:240 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" @@ -5533,85 +5547,85 @@ msgstr "" "Legg til bøker fra mappene, inkludert undermapper (Flere bøker per mappe " "oppfattes som at alle e-bokfilene er forskjellige bøker)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:243 msgid "Add Empty book. (Book entry with no formats)" msgstr "Legg til tom bok (Uformatert bokoppføring)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:278 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:353 msgid "Save to disk" msgstr "Lagre til disk" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 msgid "Save to disk in a single directory" msgstr "Lagre til disk i en enkelt mappe" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1431 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:282 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 msgid "Save only %s format to disk" msgstr "Lagre kun %s format til disken" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:290 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:359 msgid "View" msgstr "Vis" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "View specific format" msgstr "Vis spesifikt format" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:315 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:317 msgid "Convert individually" msgstr "Konverter individuelt" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:316 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:318 msgid "Bulk convert" msgstr "Samlet konvertering" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:333 msgid "Run welcome wizard" msgstr "Kjør velkomstveiviser" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:367 msgid "Similar books..." msgstr "Samsvarende bøker..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:425 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:426 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 msgid "Bad database location" msgstr "Dårlig databaselokalisering" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:430 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:478 msgid "Calibre Library" msgstr "Calibre-bibliotek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:438 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1603 msgid "Choose a location for your ebook library." msgstr "Velg en lokalisering for ditt e-bokbibliotek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:619 msgid "Browse by covers" msgstr "Søk blant omslag" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 msgid "Device: " msgstr "Enhet: " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:728 msgid " detected." msgstr " Funnet" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:748 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:750 msgid "Connected " msgstr "Tilkoblet " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:760 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:762 msgid "Device database corrupted" msgstr "Enhetens database er ødelagt" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:763 msgid "" "\n" "

The database of books on the reader is corrupted. Try the " @@ -5639,60 +5653,56 @@ msgstr "" " \n" " " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:837 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:907 msgid "Uploading books to device." msgstr "Laster opp bøker til enheten." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:845 -msgid "Books" -msgstr "Bøker" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:846 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:873 msgid "EPUB Books" msgstr "EPUB bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:847 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:874 msgid "LRF Books" msgstr "LRF bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:848 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:875 msgid "HTML Books" msgstr "HTML-bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:849 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:876 msgid "LIT Books" msgstr "LIT bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:850 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:877 msgid "MOBI Books" msgstr "MOBI bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:851 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:878 msgid "Text books" msgstr "Tekst bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:852 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:879 msgid "PDF Books" msgstr "PDF-bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 msgid "Comics" msgstr "Tegneserier" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:854 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:881 msgid "Archives" msgstr "Arkiver" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:916 msgid "Failed to read metadata" msgstr "Kunne ikke lese metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:917 msgid "Failed to read metadata from the following" msgstr "Kunne ikke lese metadata fra følgende" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:909 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 msgid "" "The selected books will be permanently deleted and the files removed " "from your computer. Are you sure?" @@ -5700,111 +5710,111 @@ msgstr "" "De valgte bøkene vil bli slettet permanent og filene vil bli fjernet " "fra datamaskinen din. Er du sikker?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:963 msgid "Deleting books from device." msgstr "Sletter bøker fra enheten." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:967 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:994 msgid "Cannot download metadata" msgstr "Kan ikke laste ned metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:968 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1016 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1049 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1074 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1186 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1043 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1101 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1213 msgid "No books selected" msgstr "Ingen bøker ble valgt" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "covers" msgstr "Omslag" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "metadata" msgstr "metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1006 msgid "Downloading %s for %d book(s)" msgstr "Laster ned %s for %d bok(bøker)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1000 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1027 msgid "Failed to download some metadata" msgstr "Klarte ikke å laste ned en del av metadataene" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1001 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1028 msgid "Failed to download metadata for the following:" msgstr "Kunne ikke laste ned metadata for følgende:" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1031 msgid "Failed to download metadata:" msgstr "Kunne ikke laste ned metadata:" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1015 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1048 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1075 msgid "Cannot edit metadata" msgstr "Kan ikke redigere metadata" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1073 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1100 msgid "Cannot save to disk" msgstr "Kan ikke lagre til disk" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 msgid "Choose destination directory" msgstr "Velg mottaksmappe" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1130 msgid "Error while saving" msgstr "Feil ved lagring" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1104 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1131 msgid "There was an error while saving." msgstr "En feil oppsto ved lagring" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1111 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1112 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1138 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1139 msgid "Could not save some books" msgstr "Kunne ikke lagre enkelte bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1140 msgid "Click the show details button to see which ones." msgstr "Klikk vis detaljer knappen for å se hvilke." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1132 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1159 msgid "Fetching news from " msgstr "Skaffer nyheter fra " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1145 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1172 msgid " fetched." msgstr " funnet." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 msgid "Cannot convert" msgstr "Kan ikke konvertere" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1241 msgid "Starting conversion of %d book(s)" msgstr "Starter konverteringen av %d boken(bøkene)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1342 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1371 msgid "No book selected" msgstr "Ingen bøker ble valgt" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1373 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1402 msgid "Cannot view" msgstr "Kan ikke vise" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1341 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1370 msgid "Cannot open folder" msgstr "Kan ikke åpne folder" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1387 msgid "Multiple Books Selected" msgstr "Flere bøker ble valgt" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1359 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1388 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 " @@ -5816,32 +5826,32 @@ msgstr "" "startet denne prosessen, kan den ikke stanses før den er fullført. Ønsker du " "å fortsette?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1374 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1403 msgid "%s has no available formats." msgstr "%s har ikke tilgjengelig formater." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1415 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1444 msgid "Cannot configure" msgstr "Kan ikke konfigurere" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1416 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1445 msgid "Cannot configure while there are running jobs." msgstr "Kan ikke konfigurere samtidig som en oppgave kjører." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1459 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1488 msgid "No detailed info available" msgstr "Ingen detaljert informasjon er tilgjengelig" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1489 msgid "No detailed information is available for books on the device." msgstr "" "Ingen detaljert informasjon er tilgjengelig for bøker på denne enheten." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1512 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1541 msgid "Error talking to device" msgstr "Feil ved komminikasjonen med enheten" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1513 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1542 msgid "" "There was a temporary error talking to the device. Please unplug and " "reconnect the device and or reboot." @@ -5849,12 +5859,12 @@ msgstr "" "En midlertidig feil oppsto ved kommunikasjonen med enheten. Vennligst plugg " "ut og plugg inn igjen enheten, eller ta en omstart." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1536 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1554 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1565 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 msgid "Conversion Error" msgstr "Feil ved konverteringen" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1537 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1566 msgid "" "

Could not convert: %s

It is a DRMed book. You must " "first remove the DRM using third party tools." @@ -5863,19 +5873,19 @@ msgstr "" "Du må først fjerne DRM beskyttelsen ved å benytte et 3.parts program med " "slike egenskaper." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1555 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 msgid "Failed" msgstr "Feilet" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1612 msgid "Invalid library location" msgstr "Ugylding biblioteklokalisering" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1613 msgid "Could not access %s. Using %s as the library." msgstr "Kunne ikke koble til %s. Ved bruk av %s som bibliotek." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1631 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1660 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." @@ -5883,11 +5893,11 @@ msgstr "" "er resultatet av innsatsen til mange frivillige fra hele verden. Dersom du " "synes programmet er godt, vennligst bidra med støtte til videre utvikling." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1655 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1684 msgid "There are active jobs. Are you sure you want to quit?" msgstr "Det finnes aktive oppgaver. Er du sikker på at du ønsker å avslutte?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1658 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1687 msgid "" " is communicating with the device!
\n" " Quitting may cause corruption on the device.
\n" @@ -5897,11 +5907,11 @@ msgstr "" " Å avslutte kan føre til feil på enheten.
\n" " Er du sikker på at du ønsker å avslutte?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1662 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1691 msgid "WARNING: Active jobs" msgstr "ADVARSEL: Aktive oppgaver" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1713 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1742 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -5909,7 +5919,7 @@ msgstr "" "vil fortsette å kjøre i systemstatusfeltet. For å stenge programmet, velg " "Stopp innholdslisten i systemstatusfeltet." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1732 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 msgid "" "Latest version: %s" @@ -5917,11 +5927,11 @@ msgstr "" "Siste versjon: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1740 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1769 msgid "Update available" msgstr "Oppdatering tilgjengelig" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1741 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1770 msgid "" "%s has been updated to version %s. See the new features. " @@ -5931,52 +5941,52 @@ msgstr "" "href=\"http://calibre.kovidgoyal.net/wiki/Changelog\">new features. " "Besøke nedlastingssiden?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1759 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1788 msgid "Use the library located at the specified path." msgstr "Bruk biblioteket lokalisert ved en spesifikk sti." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1790 msgid "Start minimized to system tray." msgstr "Start minimalisert til systemstatusfeltet." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1763 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1792 msgid "Log debugging information to console" msgstr "Logg debugging informasjon til konsollen" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1765 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1794 msgid "Do not check for updates" msgstr "Ikke søk etter oppdateringer" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1813 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1842 msgid "If you are sure it is not running" msgstr "Er du sikker på at den ikke kjører" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1815 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1844 msgid "Cannot Start " msgstr "Kan ikke Starte " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1816 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1845 msgid "%s is already running." msgstr "%s kjører allerede." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1819 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1848 msgid "may be running in the system tray, in the" msgstr "kan kjøre i systemfeltet, i" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1821 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1850 msgid "upper right region of the screen." msgstr "øvre høyre område av skjermen." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1823 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1852 msgid "lower right region of the screen." msgstr "nedre høyre område av skjermen." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1826 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1855 msgid "try rebooting your computer." msgstr "forsøk å re-starte datamaskinen" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1828 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1840 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1857 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1869 msgid "try deleting the file" msgstr "forsøk å slette filen" @@ -6134,27 +6144,27 @@ msgstr "Boken har verken tittel eller ISBN" msgid "No matches found for this book" msgstr "Ingen treff ble funnet for denne boken" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:60 msgid "Search" msgstr "Søk" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:149 msgid "Jobs:" msgstr "Oppgaver:" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:158 msgid "Click to see list of active jobs." msgstr "Klikk for å se en liste over aktive oppgaver." -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to browse books by their covers" msgstr "Klikk for å se gjennom bøker sortert etter omslag" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to turn off Cover Browsing" msgstr "Klikk for å slå av omslagsgjennomsyn" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:193 msgid "" "

Browsing books by their covers is disabled.
Import of pictureflow " "module failed:
" @@ -6162,7 +6172,7 @@ msgstr "" "

Gjennomsyn av bøker etter omslag er slått av.
Import av " "billedflytmodulen gikk galt:
" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:201 msgid "Click to browse books by tags" msgstr "Klikk for å se gjennom bøker etter emneord" @@ -6562,7 +6572,7 @@ msgstr "Utskrift" msgid "Print eBook" msgstr "Skriv ut e-bok" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 msgid "" "Library\n" "%d\n" @@ -6572,7 +6582,7 @@ msgstr "" "%d\n" "bøker" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 msgid "" "Reader\n" "%s\n" @@ -6582,7 +6592,7 @@ msgstr "" "%s\n" "tilgjengelig" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:200 msgid "" "Card A\n" "%s\n" @@ -6592,7 +6602,7 @@ msgstr "" "%s\n" "tilgjengelig" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:201 msgid "" "Card B\n" "%s\n" @@ -6602,41 +6612,41 @@ msgstr "" "%s\n" "tilgjengelig" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:206 msgid "Click to see the books available on your computer" msgstr "Klikk for å se hvilke bøker som er tilgjengelige på datamaskinen din" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:207 msgid "Click to see the books in the main memory of your reader" msgstr "Klikk for å se bøker som ligger i hovedminnet til lesplaten din" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:208 msgid "Click to see the books on storage card A in your reader" msgstr "" "Klikk for å se bøker som er lagret til lagringskort A på leseplaten din" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:209 msgid "Click to see the books on storage card B in your reader" msgstr "" "Klikk for å se bøker som er lagret til lagringskort B på leseplaten din" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:466 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:498 msgid "Change Case" msgstr "Endre mellom store og små bokstaver" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:499 msgid "Upper Case" msgstr "Store bokstaver" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:468 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:500 msgid "Lower Case" msgstr "Små bokstaver" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:469 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:501 msgid "Swap Case" msgstr "Bytt mellom store og små bokstaver" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:470 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:502 msgid "Title Case" msgstr "Store eller små bokstaver i tittelen" @@ -7468,43 +7478,43 @@ msgstr "" "Når du sender argumenter til %prog som har mellomrom i dem, ram inn " "argumentene i gåseøyne." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:555 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 msgid "Path to the database in which books are stored" msgstr "Bane til databasen der bøker lagres" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:557 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 msgid "Pattern to guess metadata from filenames" msgstr "Mønster for å vurdere metadata fra filnavnene" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 msgid "Access key for isbndb.com" msgstr "Tilgangsnøkkel for isbndb.com" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 msgid "Default timeout for network operations (seconds)" msgstr "Standard tidsavbrudd for nettverksoperasjoner (i sekunder)" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 msgid "Path to directory in which your library of books is stored" msgstr "Bane til direktoratet der ditt bibliotek av bøker er lagret." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:569 msgid "The language in which to display the user interface" msgstr "Språket som skal benyttes for å vise brukers grensesnitt" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 msgid "The default output format for ebook conversions." msgstr "Standard utdataformat for e-bok konverteringer." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 msgid "Ordered list of formats to prefer for input." msgstr "Bestilt liste av formater som foretrekkes for inndata." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:573 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:577 msgid "Read metadata from files" msgstr "Les metadata fra filer" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:579 msgid "The priority of worker processes" msgstr "Arbeidsprosessenes prioritet" diff --git a/src/calibre/translations/nl.po b/src/calibre/translations/nl.po index d7ce0e2a79..a39c284229 100644 --- a/src/calibre/translations/nl.po +++ b/src/calibre/translations/nl.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2009-10-02 05:30+0000\n" -"PO-Revision-Date: 2009-10-01 12:00+0000\n" -"Last-Translator: Robert \n" +"POT-Creation-Date: 2009-10-10 02:36+0000\n" +"PO-Revision-Date: 2009-10-09 23:38+0000\n" +"Last-Translator: Kovid Goyal \n" "Language-Team: Dutch \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-02 06:35+0000\n" +"X-Launchpad-Export-Date: 2009-10-10 06:52+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 @@ -26,8 +26,9 @@ msgstr "Doet absoluut niets." #: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:53 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:58 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:199 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:703 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:706 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:730 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:733 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:177 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:410 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:65 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 @@ -95,22 +96,22 @@ msgstr "Doet absoluut niets." #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:29 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:217 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:261 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:273 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:120 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:127 #: /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/device.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:765 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:768 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:769 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:772 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:106 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:431 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:42 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:391 @@ -543,25 +544,25 @@ msgstr "" msgid "Unable to mount main memory (Error code: %d)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:643 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:645 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:670 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:672 msgid "The reader has no storage card in this slot." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:647 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:674 msgid "Selected slot: %s is not supported." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:671 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:698 msgid "There is insufficient free space in main memory" msgstr "Er is onvoldoende vrije ruimte in het hoofdgeheugen." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:673 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:675 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:700 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:702 msgid "There is insufficient free space on the storage card" msgstr "Er is onvoldoende vrije plaats op de geheugenkaart" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:686 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:713 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:434 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 #: /home/kovid/work/calibre/src/calibre/library/database2.py:1007 @@ -1144,7 +1145,7 @@ msgid "" "disables the generation of this cover." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:122 +#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:124 #: /home/kovid/work/calibre/src/calibre/ebooks/pml/pmlml.py:111 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:77 @@ -1517,7 +1518,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:71 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:64 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:349 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:92 msgid "Comments" msgstr "Opmerkingen" @@ -1526,7 +1527,7 @@ msgstr "Opmerkingen" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:338 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1012 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1072 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:94 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Tags" msgstr "Tags" @@ -1534,7 +1535,7 @@ msgstr "Tags" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:372 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:166 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:354 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:93 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Series" msgstr "Serie" @@ -2256,15 +2257,15 @@ msgstr "" msgid "Copied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy to Clipboard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:386 msgid "Choose Files" msgstr "" @@ -2289,7 +2290,7 @@ msgid "The specified directory could not be processed." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:482 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:486 msgid "No books" msgstr "" @@ -2498,14 +2499,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:501 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:128 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:131 @@ -2705,38 +2706,38 @@ msgid "" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:96 msgid "Choose cover for " msgstr "Kies cover voor " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:159 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:102 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 msgid "Cannot read" msgstr "Kan niet lezen" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:104 msgid "You do not have permission to read the file: " msgstr "Je hebt geen permissie om het bestand te lezen: " #: /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/dialogs/metadata_single.py:111 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 msgid "Error reading file" msgstr "Fout bij het lezen van bestand" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:113 msgid "

There was an error reading from file:
" msgstr "

Er is een fout opgetreden bij het lezen van bestand:
" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:121 msgid " is not a valid picture" msgstr " is geen geldige afbeelding" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 msgid "Book Cover" msgstr "Boek Omslag" @@ -2745,28 +2746,28 @@ msgid "Use cover from &source file" msgstr "Gebruik omslag van &bron bestand" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 msgid "Change &cover image:" msgstr "Verander &Omslag Afbeelding" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 msgid "Browse for an image to use as the cover of this book." msgstr "Zoek een afbeelding om als omslag voor dit boek te gebruiken." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 msgid "&Title: " msgstr "&Titel: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 msgid "Change the title of this book" msgstr "Verander de titel van dit boek" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:135 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 msgid "&Author(s): " msgstr "&Auteur(s) " @@ -2784,18 +2785,18 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:143 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 msgid "&Publisher: " msgstr "&Uitgeverij " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 msgid "Ta&gs: " msgstr "Ta&gs " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:145 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

They can be any words or phrases, separated by commas." @@ -2806,7 +2807,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:150 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 msgid "&Series:" msgstr "&Series:" @@ -2814,13 +2815,13 @@ msgstr "&Series:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:151 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:372 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 msgid "List of known series. You can add new series." msgstr "Lijst van bekende series. Je kunt nieuwe series toevoegen." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 msgid "Book " msgstr "Boek " @@ -2935,7 +2936,7 @@ msgid "RB Output" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1329 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 msgid "Choose the format to view" msgstr "Kies het te bekijken formaat" @@ -3014,12 +3015,12 @@ msgid "Footer regular expression:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:56 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:72 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 msgid "Invalid regular expression" msgstr "Ongeldige reguliere expressie" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:74 msgid "Invalid regular expression: %s" msgstr "Ongeldige reguliere expressie: %s" @@ -3233,188 +3234,188 @@ msgstr "" msgid "Device no longer connected." msgstr "Apparaat niet meer verbonden." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:199 msgid "Get device information" msgstr "Lees apparaat informatie" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:210 msgid "Get list of books on device" msgstr "Lees boeken lijst van apparaat" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:219 msgid "Send metadata to device" msgstr "Verstuur metadata naar apparaat" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:228 msgid "Upload %d books to device" msgstr "Upload %d boeken naar apparaat" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:243 msgid "Delete books from device" msgstr "Verwijder boeken van apparaat" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:260 msgid "Download books from device" msgstr "Download boeken van apparaat" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "View book on device" msgstr "Bekijk book op apparaat" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:273 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:277 msgid "and delete from library" msgstr "en verwijder uit bibliotheek" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:298 msgid "Set default send to device action" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:299 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:303 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:310 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:312 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:314 msgid "Email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:321 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:328 -msgid "Send to main memory" -msgstr "Stuur naar hoofdgeheugen" - -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:323 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:330 -msgid "Send to storage card A" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 +msgid "Send to main memory" +msgstr "Stuur naar hoofdgeheugen" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:334 +msgid "Send to storage card A" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 msgid "Send to storage card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 msgid "Send specific format to main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:341 msgid "Send specific format to storage card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:343 msgid "Send specific format to storage card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:487 msgid "selected to send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:492 msgid "Choose format to send to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:495 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 msgid "No device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 msgid "Cannot send: No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:507 msgid "No card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:504 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:508 msgid "Cannot send: Device has no storage card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:546 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 msgid "E-book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:553 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:554 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:177 msgid "by" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:555 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:568 msgid "Sending email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:594 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:601 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:806 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:813 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:696 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:817 msgid "No suitable formats" msgstr "Geen geschikte formaten" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:599 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:621 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:625 msgid "Failed to email books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 msgid "Failed to email the following books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:630 msgid "Sent by email:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:653 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:657 msgid "News:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:658 msgid "Attached is the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:665 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 msgid "Sent news to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:693 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:807 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:697 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:811 msgid "Auto convert the following books before uploading to the device?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:728 msgid "Sending news to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:776 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:780 msgid "Sending books to device." msgstr "Boeken worden naar de lezer verzonden." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:814 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:818 msgid "" "Could not upload the following books to the device, as no suitable formats " "were found. Convert the book(s) to a format supported by your device first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 msgid "No space on device" msgstr "Geen schijfruimte op de lezer." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:863 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:867 msgid "" "

Cannot upload books to device there is no more free space available " msgstr "" @@ -3434,7 +3435,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:86 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:345 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1007 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:90 msgid "Path" msgstr "Pad" @@ -3444,7 +3445,7 @@ msgstr "Pad" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:344 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:91 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Formats" msgstr "Formaten" @@ -3550,7 +3551,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:461 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:788 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:140 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1032 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "Fout" @@ -3621,7 +3622,7 @@ msgid "Access log:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:645 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:576 msgid "Failed to start content server" msgstr "" @@ -4145,7 +4146,7 @@ msgid "Edit Meta information" msgstr "Verander Meta informatie" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 msgid "Meta information" msgstr "Meta informatie" @@ -4158,7 +4159,7 @@ msgid "Author s&ort: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:138 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." @@ -4167,19 +4168,19 @@ msgstr "" "Bijvoorbeeld: Charles Dickens moet worden gesorteerd als: Dickens, Charles" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 msgid "&Rating:" msgstr "&Rangschikking" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:140 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:141 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Rating of this book. 0-5 stars" msgstr "Rangschikking van dit boek. 0-5 sterren" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:142 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 msgid " stars" msgstr " sterren" @@ -4189,8 +4190,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:146 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:147 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 msgid "Open Tag Editor" msgstr "Open Tag Editor" @@ -4207,157 +4208,170 @@ msgstr "" msgid "Remove &format:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 msgid "Not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:133 +msgid "Choose formats for " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:134 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:872 +msgid "Books" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:160 +msgid "You do not have permission to read the following files:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 msgid "No format selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 msgid "Could not read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 msgid "Could not read metadata from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:224 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:247 msgid "Could not read cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:242 msgid "Could not read cover from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:248 msgid "The cover in the %s format is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:285 msgid "Abort the editing of all remaining books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:488 msgid "Downloading cover..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:479 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:484 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:511 msgid "Cannot fetch cover" msgstr "Kan omslag niet downloaden" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:480 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:491 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:512 msgid "Could not fetch cover.
" msgstr "Omslag kon niet worden gedownload
" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:502 msgid "The download timed out." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:506 msgid "Could not find cover for this book. Try specifying the ISBN first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:497 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:518 msgid "Bad cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:498 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:519 msgid "The cover is not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:538 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 msgid "Cannot fetch metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:539 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 msgid "You must specify at least one of ISBN, Title, Authors or Publisher" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:612 msgid "Permission denied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:613 msgid "Could not open %s. Is it being used by another program?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 msgid "Edit Meta Information" msgstr "Verander Meta Informatie" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 msgid "Swap the author and title" msgstr "Wissel auteur en titel van plaats" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 msgid "Author S&ort: " msgstr "Auteur S&ortering: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 msgid "" "Automatically create the author sort entry based on the current author entry" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 msgid "Remove unused series (Series that have no books)" msgstr "Verwijder ongebruikte series (Series die geen boeken bevatten)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 msgid "IS&BN:" msgstr "IS&BN:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Publishe&d:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 msgid "dd MMM yyyy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 msgid "&Date:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 msgid "&Comments" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 msgid "&Fetch metadata from server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Available Formats" msgstr "Beschikbare Formaten" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 msgid "Add a new format for this book to the database" msgstr "Voeg een nieuw formaat voor dit boek toe aan de database" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 msgid "Remove the selected formats for this book from the database." msgstr "Verwijder de geselecteerde formaten voor dit boek van de database." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 msgid "Set the cover for the book from the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 msgid "Update metadata from the metadata in the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 msgid "Reset cover to default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 msgid "Download &cover" msgstr "" @@ -4889,11 +4903,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:79 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:83 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:88 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:93 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:96 msgid "No match" msgstr "Geen overeenkomst" @@ -4988,7 +5002,7 @@ msgstr "Waardering" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:343 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:408 msgid "None" msgstr "Geen" @@ -5124,121 +5138,121 @@ msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" msgstr "" "%s: %s door Kovid Goyal %%(version)s
%%(device)s

" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "Edit metadata individually" msgstr "Bewerk metadata individueel" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 msgid "Edit metadata in bulk" msgstr "Bewerk metadata in groep" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 msgid "Download metadata and covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:232 msgid "Download only metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:233 msgid "Download only covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 msgid "Add books from a single directory" msgstr "Voeg boeken toe uit een enkele folder" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:237 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:240 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:243 msgid "Add Empty book. (Book entry with no formats)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:278 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:353 msgid "Save to disk" msgstr "Opslaan op schijf" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 msgid "Save to disk in a single directory" msgstr "Opslaan op schijf in een enkele folder" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1431 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:282 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 msgid "Save only %s format to disk" msgstr "Bewaar alleen %s formaat op schijf" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:290 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:359 msgid "View" msgstr "Bekijk" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "View specific format" msgstr "Bekijk specifiek formaat" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:315 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:317 msgid "Convert individually" msgstr "Converteer Individueel" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:316 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:318 msgid "Bulk convert" msgstr "Converteer Groep" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:333 msgid "Run welcome wizard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:367 msgid "Similar books..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:425 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:426 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 msgid "Bad database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:430 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:478 msgid "Calibre Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:438 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1603 msgid "Choose a location for your ebook library." msgstr "Kies een locatie voor de eboek bibliotheek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:619 msgid "Browse by covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 msgid "Device: " msgstr "Apparaat: " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:728 msgid " detected." msgstr " gedetecteerd" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:748 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:750 msgid "Connected " msgstr "Verbonden " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:760 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:762 msgid "Device database corrupted" msgstr "Apparaat Database Beschadigd" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:763 msgid "" "\n" "

The database of books on the reader is corrupted. Try the " @@ -5267,170 +5281,166 @@ msgstr "" " \n" " " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:837 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:907 msgid "Uploading books to device." msgstr "Boeken worden geupload naar de lezer." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:845 -msgid "Books" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:846 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:873 msgid "EPUB Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:847 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:874 msgid "LRF Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:848 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:875 msgid "HTML Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:849 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:876 msgid "LIT Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:850 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:877 msgid "MOBI Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:851 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:878 msgid "Text books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:852 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:879 msgid "PDF Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 msgid "Comics" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:854 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:881 msgid "Archives" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:916 msgid "Failed to read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:917 msgid "Failed to read metadata from the following" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:909 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 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/main.py:936 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:963 msgid "Deleting books from device." msgstr "Boeken worden verwijderd van de lezer." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:967 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:994 msgid "Cannot download metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:968 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1016 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1049 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1074 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1186 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1043 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1101 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1213 msgid "No books selected" msgstr "Geen boeken geselecteerd" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1006 msgid "Downloading %s for %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1000 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1027 msgid "Failed to download some metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1001 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1028 msgid "Failed to download metadata for the following:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1031 msgid "Failed to download metadata:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1015 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1048 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1075 msgid "Cannot edit metadata" msgstr "Metedata kan niet worden gewijzigd" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1073 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1100 msgid "Cannot save to disk" msgstr "Kan niet naar schijf worden opgeslagen" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 msgid "Choose destination directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1130 msgid "Error while saving" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1104 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1131 msgid "There was an error while saving." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1111 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1112 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1138 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1139 msgid "Could not save some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1140 msgid "Click the show details button to see which ones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1132 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1159 msgid "Fetching news from " msgstr "Downloading nieuws van " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1145 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1172 msgid " fetched." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 msgid "Cannot convert" msgstr "Kan niet converteren" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1241 msgid "Starting conversion of %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1342 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1371 msgid "No book selected" msgstr "Geen boek geselecteerd" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1373 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1402 msgid "Cannot view" msgstr "Kan niet bekijken" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1341 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1370 msgid "Cannot open folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1387 msgid "Multiple Books Selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1359 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1388 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 " @@ -5438,31 +5448,31 @@ msgid "" "continue?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1374 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1403 msgid "%s has no available formats." msgstr "%s heeft geen beschikbare formaten" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1415 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1444 msgid "Cannot configure" msgstr "Kan niet configureren" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1416 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1445 msgid "Cannot configure while there are running jobs." msgstr "Can niet configueren terwijl bestaande opdrachten bezig zijn" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1459 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1488 msgid "No detailed info available" msgstr "Geen details beschikbaar" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1489 msgid "No detailed information is available for books on the device." msgstr "Geen details zijn beschikbaar voor de boeken op de lezer." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1512 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1541 msgid "Error talking to device" msgstr "Fout bij communicatie met lezer" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1513 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1542 msgid "" "There was a temporary error talking to the device. Please unplug and " "reconnect the device and or reboot." @@ -5470,57 +5480,57 @@ msgstr "" "Er is een tijdelijke fout opgetreden tijdens de communicatie met de lezer. " "verwijzer de lezer en plug hem opnieuw in, of herstart." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1536 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1554 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1565 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 msgid "Conversion Error" msgstr "Converteer Fout" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1537 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1566 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/main.py:1555 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1612 msgid "Invalid library location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1613 msgid "Could not access %s. Using %s as the library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1631 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1660 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/main.py:1655 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1684 msgid "There are active jobs. Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1658 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1687 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/main.py:1662 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1691 msgid "WARNING: Active jobs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1713 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1742 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/main.py:1732 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 msgid "" "Latest version: %s" @@ -5528,11 +5538,11 @@ msgstr "" "Laatste versie: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1740 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1769 msgid "Update available" msgstr "Update beschikbaar" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1741 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1770 msgid "" "%s has been updated to version %s. See the new features. " @@ -5542,52 +5552,52 @@ msgstr "" "href=\"http://calibre.kovidgoyal.net/wiki/Changelog\">nieuwe functies " "Bezoek download pagina?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1759 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1788 msgid "Use the library located at the specified path." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1790 msgid "Start minimized to system tray." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1763 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1792 msgid "Log debugging information to console" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1765 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1794 msgid "Do not check for updates" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1813 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1842 msgid "If you are sure it is not running" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1815 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1844 msgid "Cannot Start " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1816 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1845 msgid "%s is already running." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1819 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1848 msgid "may be running in the system tray, in the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1821 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1850 msgid "upper right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1823 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1852 msgid "lower right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1826 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1855 msgid "try rebooting your computer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1828 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1840 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1857 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1869 msgid "try deleting the file" msgstr "" @@ -5743,27 +5753,27 @@ msgstr "" msgid "No matches found for this book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:60 msgid "Search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:149 msgid "Jobs:" msgstr "Opdrachten" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:158 msgid "Click to see list of active jobs." msgstr "Klik om een lijst met actieve opdrachten te zien" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to browse books by their covers" msgstr "Klik om boeken bij hun omslag te bekijken" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to turn off Cover Browsing" msgstr "Klik om zoeken op omslag uit te schakelen" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:193 msgid "" "

Browsing books by their covers is disabled.
Import of pictureflow " "module failed:
" @@ -5771,7 +5781,7 @@ msgstr "" "

Bekijken van boeken op omslag is uitgeschakeld.
Importeren van " "pictureflow module is mislukt:
" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:201 msgid "Click to browse books by tags" msgstr "" @@ -6158,67 +6168,67 @@ msgstr "" msgid "Print eBook" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 msgid "" "Library\n" "%d\n" "books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 msgid "" "Reader\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:200 msgid "" "Card A\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:201 msgid "" "Card B\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:206 msgid "Click to see the books available on your computer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:207 msgid "Click to see the books in the main memory of your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:208 msgid "Click to see the books on storage card A in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:209 msgid "Click to see the books on storage card B in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:466 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:498 msgid "Change Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:499 msgid "Upper Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:468 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:500 msgid "Lower Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:469 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:501 msgid "Swap Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:470 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:502 msgid "Title Case" msgstr "" @@ -6982,43 +6992,43 @@ msgid "" "arguments in quotation marks." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:555 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 msgid "Path to the database in which books are stored" msgstr "Pad naar de database waarin boeken zijn opgeslagen" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:557 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 msgid "Pattern to guess metadata from filenames" msgstr "Patroon om metadata uit bestandsnamen te voorspellen" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 msgid "Access key for isbndb.com" msgstr "Toegangssleutel voor isbndb.com" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 msgid "Default timeout for network operations (seconds)" msgstr "Standaard timeout voor netwerk operaties" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 msgid "Path to directory in which your library of books is stored" msgstr "Pad naar folder waarin je bibliotheek is opgeslagen" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:569 msgid "The language in which to display the user interface" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 msgid "The default output format for ebook conversions." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 msgid "Ordered list of formats to prefer for input." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:573 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:577 msgid "Read metadata from files" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:579 msgid "The priority of worker processes" msgstr "" diff --git a/src/calibre/translations/pl.po b/src/calibre/translations/pl.po index 6f655dc1d9..aef9f0920b 100644 --- a/src/calibre/translations/pl.po +++ b/src/calibre/translations/pl.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2009-10-02 05:30+0000\n" -"PO-Revision-Date: 2009-10-02 05:13+0000\n" +"POT-Creation-Date: 2009-10-10 02:36+0000\n" +"PO-Revision-Date: 2009-10-09 23:39+0000\n" "Last-Translator: Kovid Goyal \n" "Language-Team: Polish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-03 06:45+0000\n" +"X-Launchpad-Export-Date: 2009-10-10 06:53+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 @@ -26,8 +26,9 @@ msgstr "Ta opcja nic nie zmienia" #: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:53 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:58 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:199 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:703 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:706 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:730 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:733 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:177 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:410 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:65 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 @@ -95,22 +96,22 @@ msgstr "Ta opcja nic nie zmienia" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:29 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:217 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:261 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:273 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:120 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:127 #: /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/device.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:765 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:768 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:769 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:772 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:106 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:431 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:42 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:391 @@ -531,25 +532,25 @@ msgstr "" msgid "Unable to mount main memory (Error code: %d)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:643 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:645 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:670 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:672 msgid "The reader has no storage card in this slot." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:647 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:674 msgid "Selected slot: %s is not supported." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:671 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:698 msgid "There is insufficient free space in main memory" msgstr "Niewystarczająca ilość wolnej pamięci głównej" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:673 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:675 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:700 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:702 msgid "There is insufficient free space on the storage card" msgstr "Na karcie pamięci jest niewystarczająca ilość wolnego miejsca" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:686 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:713 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:434 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 #: /home/kovid/work/calibre/src/calibre/library/database2.py:1007 @@ -1122,7 +1123,7 @@ msgid "" "disables the generation of this cover." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:122 +#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:124 #: /home/kovid/work/calibre/src/calibre/ebooks/pml/pmlml.py:111 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:77 @@ -1488,7 +1489,7 @@ msgstr "Producent" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:71 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:64 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:349 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:92 msgid "Comments" msgstr "Komentarze" @@ -1497,7 +1498,7 @@ msgstr "Komentarze" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:338 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1012 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1072 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:94 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Tags" msgstr "Etykiety" @@ -1505,7 +1506,7 @@ msgstr "Etykiety" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:372 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:166 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:354 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:93 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Series" msgstr "Seria" @@ -2227,15 +2228,15 @@ msgstr "" msgid "Copied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy to Clipboard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:386 msgid "Choose Files" msgstr "" @@ -2260,7 +2261,7 @@ msgid "The specified directory could not be processed." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:482 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:486 msgid "No books" msgstr "" @@ -2469,14 +2470,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:501 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:128 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:131 @@ -2676,38 +2677,38 @@ msgid "" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:96 msgid "Choose cover for " msgstr "Wybierz okładkę dla " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:159 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:102 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 msgid "Cannot read" msgstr "Nie można odczytać" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:104 msgid "You do not have permission to read the file: " msgstr "Nie masz uprawnień do odczytu pliku: " #: /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/dialogs/metadata_single.py:111 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 msgid "Error reading file" msgstr "Błąd przy odczycie pliku" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:113 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/dialogs/metadata_single.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:121 msgid " is not a valid picture" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 msgid "Book Cover" msgstr "Okładka książki" @@ -2716,28 +2717,28 @@ msgid "Use cover from &source file" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 msgid "Change &cover image:" msgstr "Zmień grafikę &okładki:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 msgid "Browse for an image to use as the cover of this book." msgstr "Wybierz obraz, który będzie użyty jako okładka tej książki." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 msgid "&Title: " msgstr "&Tytuł: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 msgid "Change the title of this book" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:135 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 msgid "&Author(s): " msgstr "&Autor(rzy): " @@ -2753,18 +2754,18 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:143 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 msgid "&Publisher: " msgstr "&Wydawca: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 msgid "Ta&gs: " msgstr "E&tykiety: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:145 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

They can be any words or phrases, separated by commas." @@ -2772,7 +2773,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:150 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 msgid "&Series:" msgstr "&Serie:" @@ -2780,13 +2781,13 @@ msgstr "&Serie:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:151 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:372 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 msgid "List of known series. You can add new series." msgstr "Lista znanych serii. Możesz dodać nowe serie." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 msgid "Book " msgstr "Książka " @@ -2901,7 +2902,7 @@ msgid "RB Output" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1329 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 msgid "Choose the format to view" msgstr "Wybierz format do wyświetlenia" @@ -2980,12 +2981,12 @@ msgid "Footer regular expression:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:56 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:72 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 msgid "Invalid regular expression" msgstr "Nieprawidłowe wyrażenie regularne" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:74 msgid "Invalid regular expression: %s" msgstr "" @@ -3199,188 +3200,188 @@ msgstr "" msgid "Device no longer connected." msgstr "Urządzenie zostało już odłączone." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:199 msgid "Get device information" msgstr "Pobierz informacje o urządzeniach" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:210 msgid "Get list of books on device" msgstr "Pozyskaj listę książek na urządzeniu" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:219 msgid "Send metadata to device" msgstr "Prześlij metadane do urządzenia" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:228 msgid "Upload %d books to device" msgstr "Prześlij %d książek na urządzenie" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:243 msgid "Delete books from device" msgstr "Usuń książki na urządzeniu" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:260 msgid "Download books from device" msgstr "Pobierz książki z urządzenia" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "View book on device" msgstr "Zobacz ksiązki na urządzeniu" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:273 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:277 msgid "and delete from library" msgstr "i usuń z biblioteki" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:298 msgid "Set default send to device action" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:299 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:303 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:310 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:312 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:314 msgid "Email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:321 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:328 -msgid "Send to main memory" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:323 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:330 -msgid "Send to storage card A" -msgstr "" - #: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 +msgid "Send to main memory" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:334 +msgid "Send to storage card A" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 msgid "Send to storage card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 msgid "Send specific format to main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:341 msgid "Send specific format to storage card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:343 msgid "Send specific format to storage card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:487 msgid "selected to send" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:492 msgid "Choose format to send to device" msgstr "Wybierz format plików przesyłanych na urządzenie" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:495 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 msgid "No device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 msgid "Cannot send: No device is connected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:507 msgid "No card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:504 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:508 msgid "Cannot send: Device has no storage card" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:546 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 msgid "E-book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:553 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:554 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:177 msgid "by" msgstr "przez" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:555 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:568 msgid "Sending email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:594 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:601 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:806 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:813 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:696 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:817 msgid "No suitable formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:599 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:621 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:625 msgid "Failed to email books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 msgid "Failed to email the following books:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:630 msgid "Sent by email:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:653 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:657 msgid "News:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:658 msgid "Attached is the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:665 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 msgid "Sent news to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:693 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:807 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:697 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:811 msgid "Auto convert the following books before uploading to the device?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:728 msgid "Sending news to device." msgstr "Przesyłanie aktualności na urządzenie." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:776 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:780 msgid "Sending books to device." msgstr "Wysyłanie książek do urządzenia." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:814 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:818 msgid "" "Could not upload the following books to the device, as no suitable formats " "were found. Convert the book(s) to a format supported by your device first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 msgid "No space on device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:863 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:867 msgid "" "

Cannot upload books to device there is no more free space available " msgstr "" @@ -3399,7 +3400,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:86 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:345 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1007 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:90 msgid "Path" msgstr "Ścieżka" @@ -3409,7 +3410,7 @@ msgstr "Ścieżka" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:344 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:91 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Formats" msgstr "Formaty" @@ -3515,7 +3516,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:461 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:788 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:140 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1032 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "Błąd" @@ -3586,7 +3587,7 @@ msgid "Access log:" msgstr "Dziennik dostępów:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:645 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:576 msgid "Failed to start content server" msgstr "Włączanie serwera zakończone niepowodzeniem" @@ -4111,7 +4112,7 @@ msgid "Edit Meta information" msgstr "Edytuj metadane" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 msgid "Meta information" msgstr "Metadane" @@ -4124,26 +4125,26 @@ msgid "Author s&ort: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:138 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 msgid "&Rating:" msgstr "&Ocena:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:140 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:141 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Rating of this book. 0-5 stars" msgstr "Ocena tej książki. 0-5 gwiazdek" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:142 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 msgid " stars" msgstr " gwiazdek" @@ -4153,8 +4154,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:146 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:147 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 msgid "Open Tag Editor" msgstr "Otwórz edytor etykiet" @@ -4170,158 +4171,171 @@ msgstr "" msgid "Remove &format:" msgstr "Usuń &format:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 msgid "Not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:133 +msgid "Choose formats for " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:134 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:872 +msgid "Books" +msgstr "Książki" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:160 +msgid "You do not have permission to read the following files:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 msgid "No format selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 msgid "Could not read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 msgid "Could not read metadata from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:224 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:247 msgid "Could not read cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:242 msgid "Could not read cover from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:248 msgid "The cover in the %s format is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:285 msgid "Abort the editing of all remaining books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:488 msgid "Downloading cover..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:479 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:484 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:511 msgid "Cannot fetch cover" msgstr "Nie można pobrać okładki" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:480 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:491 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:512 msgid "Could not fetch cover.
" msgstr "Nie można pobrać okładki.
" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:502 msgid "The download timed out." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:506 msgid "Could not find cover for this book. Try specifying the ISBN first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:497 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:518 msgid "Bad cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:498 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:519 msgid "The cover is not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:538 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 msgid "Cannot fetch metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:539 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 msgid "You must specify at least one of ISBN, Title, Authors or Publisher" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:612 msgid "Permission denied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:613 msgid "Could not open %s. Is it being used by another program?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 msgid "Edit Meta Information" msgstr "Edytuj metadane" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 msgid "Swap the author and title" msgstr "Zamień autora z tytułem" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 msgid "Author S&ort: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 msgid "" "Automatically create the author sort entry based on the current author entry" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 msgid "Remove unused series (Series that have no books)" msgstr "" "Usuń nieużywane serie (serie, które są nie przypisane do żadnej książki)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 msgid "IS&BN:" msgstr "IS&BN:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Publishe&d:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 msgid "dd MMM yyyy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 msgid "&Date:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 msgid "&Comments" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 msgid "&Fetch metadata from server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Available Formats" msgstr "Dostępne formaty" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 msgid "Add a new format for this book to the database" msgstr "Dodaj nowy format tej książki do bazy danych." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 msgid "Remove the selected formats for this book from the database." msgstr "Usuń zaznaczone formaty tej ksiązki z bazy danych." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 msgid "Set the cover for the book from the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 msgid "Update metadata from the metadata in the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 msgid "Reset cover to default" msgstr "Przywróć domyślną okładkę" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 msgid "Download &cover" msgstr "" @@ -4837,11 +4851,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:79 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:83 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:88 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:93 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:96 msgid "No match" msgstr "Brak wyników" @@ -4935,7 +4949,7 @@ msgstr "Ocena" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:343 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:408 msgid "None" msgstr "Brak" @@ -5071,31 +5085,31 @@ msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" msgstr "" "%s: %s stworzył Kovid Goyal %%(version)s
%%(device)s

" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "Edit metadata individually" msgstr "Edytuj metadane pojedynczo" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 msgid "Edit metadata in bulk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 msgid "Download metadata and covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:232 msgid "Download only metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:233 msgid "Download only covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 msgid "Add books from a single directory" msgstr "Dodaj książki z pojedyńczego folderu" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:237 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" @@ -5103,7 +5117,7 @@ msgstr "" "Dodaj książki z folderów, włączając w to podfoldery (Jedna książka na " "folder, zakładając, że każdy plik jest tą samą książką w innym formacie)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:240 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" @@ -5111,85 +5125,85 @@ msgstr "" "Dodaj książki z folderów, włączając w to podfoldery (Wiele książek na " "folder, zakładając, że każdy plik jest inną książką)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:243 msgid "Add Empty book. (Book entry with no formats)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:278 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:353 msgid "Save to disk" msgstr "Zapisz na dysku" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 msgid "Save to disk in a single directory" msgstr "Zapisz na dysku w pojedyńczym folderze" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1431 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:282 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 msgid "Save only %s format to disk" msgstr "Zapisz na dysku jedynie pliki w formacie %s" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:290 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:359 msgid "View" msgstr "Wyświetl" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "View specific format" msgstr "Wyświetl określony format" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:315 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:317 msgid "Convert individually" msgstr "Konwertuj pojedynczo" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:316 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:318 msgid "Bulk convert" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:333 msgid "Run welcome wizard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:367 msgid "Similar books..." msgstr "Podobne książki..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:425 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:426 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 msgid "Bad database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:430 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:478 msgid "Calibre Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:438 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1603 msgid "Choose a location for your ebook library." msgstr "Wybierz lokalizację dla twojej biblioteki książek." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:619 msgid "Browse by covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 msgid "Device: " msgstr "Urządzenie: " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:728 msgid " detected." msgstr " wykryte" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:748 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:750 msgid "Connected " msgstr "Połączone " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:760 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:762 msgid "Device database corrupted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:763 msgid "" "\n" "

The database of books on the reader is corrupted. Try the " @@ -5205,170 +5219,166 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:837 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:907 msgid "Uploading books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:845 -msgid "Books" -msgstr "Książki" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:846 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:873 msgid "EPUB Books" msgstr "Książki EPUB" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:847 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:874 msgid "LRF Books" msgstr "Książki LRF" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:848 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:875 msgid "HTML Books" msgstr "Książki HTML" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:849 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:876 msgid "LIT Books" msgstr "Książki LIT" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:850 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:877 msgid "MOBI Books" msgstr "Książki MOBI" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:851 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:878 msgid "Text books" msgstr "Książki tekstowe" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:852 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:879 msgid "PDF Books" msgstr "Książki PDF" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 msgid "Comics" msgstr "Komiksy" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:854 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:881 msgid "Archives" msgstr "Archiwa" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:916 msgid "Failed to read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:917 msgid "Failed to read metadata from the following" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:909 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 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/main.py:936 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:963 msgid "Deleting books from device." msgstr "Usuwanie książek z urządzenia." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:967 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:994 msgid "Cannot download metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:968 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1016 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1049 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1074 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1186 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1043 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1101 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1213 msgid "No books selected" msgstr "Nie wybrano ksiązek" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1006 msgid "Downloading %s for %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1000 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1027 msgid "Failed to download some metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1001 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1028 msgid "Failed to download metadata for the following:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1031 msgid "Failed to download metadata:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1015 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1048 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1075 msgid "Cannot edit metadata" msgstr "Nie można edytować metadanych" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1073 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1100 msgid "Cannot save to disk" msgstr "Nie można zapisać na dysku" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 msgid "Choose destination directory" msgstr "Wyberz folder docelowy" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1130 msgid "Error while saving" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1104 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1131 msgid "There was an error while saving." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1111 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1112 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1138 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1139 msgid "Could not save some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1140 msgid "Click the show details button to see which ones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1132 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1159 msgid "Fetching news from " msgstr "Pobieranie aktualności z " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1145 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1172 msgid " fetched." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 msgid "Cannot convert" msgstr "Nie można przekonwertować" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1241 msgid "Starting conversion of %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1342 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1371 msgid "No book selected" msgstr "Nie wybrano ksiązki" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1373 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1402 msgid "Cannot view" msgstr "Nie można wyświetlić" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1341 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1370 msgid "Cannot open folder" msgstr "Nie można otworzyć folderu" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1387 msgid "Multiple Books Selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1359 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1388 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 " @@ -5376,31 +5386,31 @@ msgid "" "continue?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1374 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1403 msgid "%s has no available formats." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1415 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1444 msgid "Cannot configure" msgstr "Nie można skonfigurować" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1416 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1445 msgid "Cannot configure while there are running jobs." msgstr "Nie można skonfigurować, gdy są aktywne jakieś zadania." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1459 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1488 msgid "No detailed info available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1489 msgid "No detailed information is available for books on the device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1512 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1541 msgid "Error talking to device" msgstr "Błąd komunikacji z urządzeniem" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1513 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1542 msgid "" "There was a temporary error talking to the device. Please unplug and " "reconnect the device and or reboot." @@ -5408,67 +5418,67 @@ msgstr "" "Wystąpił chwilowy błąd komunikacji z urządzeniem. Odłącz i podłącz je " "ponownie lub uruchom komputer ponownie." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1536 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1554 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1565 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 msgid "Conversion Error" msgstr "Błąd podczas konwersji" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1537 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1566 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/main.py:1555 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1612 msgid "Invalid library location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1613 msgid "Could not access %s. Using %s as the library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1631 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1660 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/main.py:1655 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1684 msgid "There are active jobs. Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1658 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1687 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/main.py:1662 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1691 msgid "WARNING: Active jobs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1713 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1742 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/main.py:1732 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 msgid "" "Latest version: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1740 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1769 msgid "Update available" msgstr "Aktualizacja dostępna" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1741 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1770 msgid "" "%s has been updated to version %s. See the new features. " @@ -5478,52 +5488,52 @@ msgstr "" "href=\"http://calibre.kovidgoyal.net/wiki/Changelog\">listę zmian i " "poprawek. Otworzyć stronę pobierania?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1759 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1788 msgid "Use the library located at the specified path." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1790 msgid "Start minimized to system tray." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1763 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1792 msgid "Log debugging information to console" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1765 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1794 msgid "Do not check for updates" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1813 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1842 msgid "If you are sure it is not running" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1815 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1844 msgid "Cannot Start " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1816 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1845 msgid "%s is already running." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1819 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1848 msgid "may be running in the system tray, in the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1821 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1850 msgid "upper right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1823 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1852 msgid "lower right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1826 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1855 msgid "try rebooting your computer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1828 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1840 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1857 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1869 msgid "try deleting the file" msgstr "" @@ -5677,27 +5687,27 @@ msgstr "" msgid "No matches found for this book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:60 msgid "Search" msgstr "Szukaj" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:149 msgid "Jobs:" msgstr "Zadań:" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:158 msgid "Click to see list of active jobs." msgstr "Kliknij, aby zobaczyć listę aktywnych zadań." -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to browse books by their covers" msgstr "Kliknij, aby przeglądać książki po okładkach" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to turn off Cover Browsing" msgstr "Kliknij aby wyłączyć Przeglądanie Okładek" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:193 msgid "" "

Browsing books by their covers is disabled.
Import of pictureflow " "module failed:
" @@ -5705,7 +5715,7 @@ msgstr "" "

Przeglądanie książek za pomocą ich okładek jest wyłączone.
Załadowanie " "modułu pictureflow nie powiodło się:
" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:201 msgid "Click to browse books by tags" msgstr "Kliknij, aby przeglądać ksiązki po etykietach" @@ -6092,7 +6102,7 @@ msgstr "" msgid "Print eBook" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 msgid "" "Library\n" "%d\n" @@ -6102,60 +6112,60 @@ msgstr "" "%d\n" "książek" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 msgid "" "Reader\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:200 msgid "" "Card A\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:201 msgid "" "Card B\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:206 msgid "Click to see the books available on your computer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:207 msgid "Click to see the books in the main memory of your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:208 msgid "Click to see the books on storage card A in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:209 msgid "Click to see the books on storage card B in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:466 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:498 msgid "Change Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:499 msgid "Upper Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:468 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:500 msgid "Lower Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:469 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:501 msgid "Swap Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:470 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:502 msgid "Title Case" msgstr "" @@ -6855,43 +6865,43 @@ msgid "" "arguments in quotation marks." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:555 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 msgid "Path to the database in which books are stored" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:557 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 msgid "Pattern to guess metadata from filenames" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 msgid "Access key for isbndb.com" msgstr "Klucz dostępu do isbndb.com" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 msgid "Default timeout for network operations (seconds)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 msgid "Path to directory in which your library of books is stored" msgstr "Ścieżka do katalogu w którym przechowywana jest biblioteka książek" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:569 msgid "The language in which to display the user interface" msgstr "Język wyświetlania interfejsu użytkownika" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 msgid "The default output format for ebook conversions." msgstr "Domyślny format wyjściowy dla konwersji e-książek" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 msgid "Ordered list of formats to prefer for input." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:573 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:577 msgid "Read metadata from files" msgstr "Wczytaj metadane z plików" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:579 msgid "The priority of worker processes" msgstr "" diff --git a/src/calibre/translations/ru.po b/src/calibre/translations/ru.po index 5e945e2118..ba442c775a 100644 --- a/src/calibre/translations/ru.po +++ b/src/calibre/translations/ru.po @@ -6,14 +6,14 @@ msgid "" msgstr "" "Project-Id-Version: calibre 0.4.55\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-10-02 05:30+0000\n" -"PO-Revision-Date: 2009-10-02 05:13+0000\n" +"POT-Creation-Date: 2009-10-10 02:36+0000\n" +"PO-Revision-Date: 2009-10-09 23:39+0000\n" "Last-Translator: Kovid Goyal \n" "Language-Team: American English \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-03 06:45+0000\n" +"X-Launchpad-Export-Date: 2009-10-10 06:53+0000\n" "X-Generator: Launchpad (build Unknown)\n" "X-Poedit-Country: RUSSIAN FEDERATION\n" "X-Poedit-Language: Russian\n" @@ -30,8 +30,9 @@ msgstr "Ничего не делает" #: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:53 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:58 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:199 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:703 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:706 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:730 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:733 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:177 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:410 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:65 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 @@ -99,22 +100,22 @@ msgstr "Ничего не делает" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:29 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:217 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:261 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:273 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:120 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:127 #: /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/device.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:765 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:768 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:769 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:772 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:106 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:431 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:42 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:391 @@ -547,25 +548,25 @@ msgstr "" msgid "Unable to mount main memory (Error code: %d)" msgstr "Не возможно примонтировать основную памят (Код ошибки: %d)" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:643 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:645 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:670 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:672 msgid "The reader has no storage card in this slot." msgstr "В устройство не вставлена карта памяти." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:647 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:674 msgid "Selected slot: %s is not supported." msgstr "Выбранный слот: %s не поддерживается." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:671 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:698 msgid "There is insufficient free space in main memory" msgstr "Не хватает свободного места в основной памяти" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:673 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:675 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:700 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:702 msgid "There is insufficient free space on the storage card" msgstr "Не хватает свободного места на карте памяти" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:686 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:713 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:434 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 #: /home/kovid/work/calibre/src/calibre/library/database2.py:1007 @@ -1158,7 +1159,7 @@ msgid "" "disables the generation of this cover." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:122 +#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:124 #: /home/kovid/work/calibre/src/calibre/ebooks/pml/pmlml.py:111 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:77 @@ -1530,7 +1531,7 @@ msgstr "Спонсор" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:71 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:64 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:349 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:92 msgid "Comments" msgstr "Комментарии" @@ -1539,7 +1540,7 @@ msgstr "Комментарии" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:338 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1012 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1072 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:94 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Tags" msgstr "Эпилог" @@ -1547,7 +1548,7 @@ msgstr "Эпилог" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:372 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:166 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:354 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:93 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Series" msgstr "Серия" @@ -2271,15 +2272,15 @@ msgstr "" msgid "Copied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy to Clipboard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:386 msgid "Choose Files" msgstr "" @@ -2304,7 +2305,7 @@ msgid "The specified directory could not be processed." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:482 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:486 msgid "No books" msgstr "Нет книг" @@ -2513,14 +2514,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:501 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:128 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:131 @@ -2720,38 +2721,38 @@ msgid "" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:96 msgid "Choose cover for " msgstr "Выбрать обложку " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:159 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:102 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 msgid "Cannot read" msgstr "Не читается" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:104 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/dialogs/metadata_single.py:111 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 msgid "Error reading file" msgstr "Ошибка чтения файла" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:113 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/dialogs/metadata_single.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:121 msgid " is not a valid picture" msgstr " неверное изображение" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 msgid "Book Cover" msgstr "Обложка книги" @@ -2760,28 +2761,28 @@ msgid "Use cover from &source file" msgstr "Использовать обложку из &исходного файла" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 msgid "Change &cover image:" msgstr "Заменено изображение &обложки:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 msgid "Browse for an image to use as the cover of this book." msgstr "Просмотреть изображения для обложки этой книги." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 msgid "&Title: " msgstr "&Заголовок: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 msgid "Change the title of this book" msgstr "Изменить заголовок книги" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:135 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 msgid "&Author(s): " msgstr "&Автор(ы) " @@ -2798,18 +2799,18 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:143 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 msgid "&Publisher: " msgstr "&Издательство: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 msgid "Ta&gs: " msgstr "Пометки: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:145 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

They can be any words or phrases, separated by commas." @@ -2819,7 +2820,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:150 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 msgid "&Series:" msgstr "Серии:" @@ -2827,13 +2828,13 @@ msgstr "Серии:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:151 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:372 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 msgid "List of known series. You can add new series." msgstr "Список известных серий. Вы можете добовлять новые серии." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 msgid "Book " msgstr "Книга " @@ -2948,7 +2949,7 @@ msgid "RB Output" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1329 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 msgid "Choose the format to view" msgstr "Выберете для просмотра формат" @@ -3027,12 +3028,12 @@ msgid "Footer regular expression:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:56 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:72 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 msgid "Invalid regular expression" msgstr "Неправильное регулярное выражение" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:74 msgid "Invalid regular expression: %s" msgstr "Неправильное регулярное выражение: %s" @@ -3246,188 +3247,188 @@ msgstr "" msgid "Device no longer connected." msgstr "Устройство не подключено" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:199 msgid "Get device information" msgstr "Получить информацию о устройстве" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:210 msgid "Get list of books on device" msgstr "Получить список книг на устройстве" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:219 msgid "Send metadata to device" msgstr "Отправить метаданные в устройство" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:228 msgid "Upload %d books to device" msgstr "Загружено %d книг на устройство" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:243 msgid "Delete books from device" msgstr "Удалить книги из устройства" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:260 msgid "Download books from device" msgstr "Загрузить книги из устройства" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "View book on device" msgstr "Смотреть книги на устройстве" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:273 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:277 msgid "and delete from library" msgstr "и удалите из библиотеки" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:298 msgid "Set default send to device action" msgstr "Установить действие по умолчанию для \"отправить в устройство\"" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:299 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:303 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:310 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:312 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:314 msgid "Email to" msgstr "Отправить email" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:321 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:328 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 msgid "Send to main memory" msgstr "Отправить в основную память" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:323 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:330 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:334 msgid "Send to storage card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 msgid "Send to storage card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 msgid "Send specific format to main memory" msgstr "Отослать определенный формат в устройство" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:341 msgid "Send specific format to storage card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:343 msgid "Send specific format to storage card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:487 msgid "selected to send" msgstr "Отослать выбранное" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:492 msgid "Choose format to send to device" msgstr "Выберите формат для отправки в устройство" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:495 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 msgid "No device" msgstr "Нет устройства" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 msgid "Cannot send: No device is connected" msgstr "Устройство не подсоединено" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:507 msgid "No card" msgstr "Нет карточки" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:504 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:508 msgid "Cannot send: Device has no storage card" msgstr "Не могу отослать: в устройстве нет карточки" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:546 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 msgid "E-book:" msgstr "E-book:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:553 msgid "Attached, you will find the e-book" msgstr "Прикреплено, Вы найдете e-book" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:554 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:177 msgid "by" msgstr "от" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:555 msgid "in the %s format." msgstr "в %s формате." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:568 msgid "Sending email to" msgstr "Отправка email" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:594 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:601 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:806 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:813 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:696 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:817 msgid "No suitable formats" msgstr "Нет подходящего формата" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:599 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:621 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:625 msgid "Failed to email books" msgstr "Книги не отправлены по email" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 msgid "Failed to email the following books:" msgstr "Не отправлен email со следующими книгами:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:630 msgid "Sent by email:" msgstr "Отослано email" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:653 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:657 msgid "News:" msgstr "Новости:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:658 msgid "Attached is the" msgstr "Прикреплено" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:665 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 msgid "Sent news to" msgstr "Отослать новости" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:693 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:807 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:697 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:811 msgid "Auto convert the following books before uploading to the device?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:728 msgid "Sending news to device." msgstr "Отправляются новости на устройство." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:776 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:780 msgid "Sending books to device." msgstr "Отправка книги в устройство" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:814 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:818 msgid "" "Could not upload the following books to the device, as no suitable formats " "were found. Convert the book(s) to a format supported by your device first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 msgid "No space on device" msgstr "Нет места на устройстве" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:863 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:867 msgid "" "

Cannot upload books to device there is no more free space available " msgstr "" @@ -3446,7 +3447,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:86 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:345 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1007 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:90 msgid "Path" msgstr "Путь" @@ -3456,7 +3457,7 @@ msgstr "Путь" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:344 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:91 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Formats" msgstr "Форматы" @@ -3569,7 +3570,7 @@ msgstr "новый email адрес" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:461 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:788 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:140 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1032 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "Ошибка" @@ -3641,7 +3642,7 @@ msgid "Access log:" msgstr "Лог доступа:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:645 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:576 msgid "Failed to start content server" msgstr "Сбой запуска контент-сервера" @@ -4175,7 +4176,7 @@ msgid "Edit Meta information" msgstr "Редактировать мета информацию" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 msgid "Meta information" msgstr "Мета информация" @@ -4188,7 +4189,7 @@ msgid "Author s&ort: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:138 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." @@ -4197,19 +4198,19 @@ msgstr "" "Дикенс будет сортироваться, как Дикенс, Чарлз." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 msgid "&Rating:" msgstr "Оценка:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:140 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:141 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Rating of this book. 0-5 stars" msgstr "Оценка этой книги. 0-5 звезды" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:142 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 msgid " stars" msgstr " звезды" @@ -4219,8 +4220,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:146 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:147 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 msgid "Open Tag Editor" msgstr "Открыть редактор описания" @@ -4236,159 +4237,172 @@ msgstr "Запятая разделяет список описаний удал msgid "Remove &format:" msgstr "Удалить формат:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 msgid "Not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:133 +msgid "Choose formats for " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:134 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:872 +msgid "Books" +msgstr "Книги" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:160 +msgid "You do not have permission to read the following files:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 msgid "No format selected" msgstr "Не выбран формат" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 msgid "Could not read metadata" msgstr "Не могу прочесть метаданные" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 msgid "Could not read metadata from %s format" msgstr "Не могу прочесть метаданные из %s формата" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:224 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:247 msgid "Could not read cover" msgstr "Не могу прочитать обложку" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:242 msgid "Could not read cover from %s format" msgstr "Не могу прочитать обложку из %s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:248 msgid "The cover in the %s format is invalid" msgstr "Обложка в формате %s неправильная" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:285 msgid "Abort the editing of all remaining books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:488 msgid "Downloading cover..." msgstr "Загрузка обложки..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:479 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:484 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:511 msgid "Cannot fetch cover" msgstr "Не могу получить обложку" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:480 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:491 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:512 msgid "Could not fetch cover.
" msgstr "Не могу получить обложку.
" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:502 msgid "The download timed out." msgstr "Таймаут загрузки" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:506 msgid "Could not find cover for this book. Try specifying the ISBN first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:497 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:518 msgid "Bad cover" msgstr "Плохая обложка" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:498 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:519 msgid "The cover is not a valid picture" msgstr "Обложка с неправильной картинкой" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:538 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 msgid "Cannot fetch metadata" msgstr "Не могу доставить метаданные" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:539 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 msgid "You must specify at least one of ISBN, Title, Authors or Publisher" msgstr "Нужно указаить ISBN, название, автора или издателя" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:612 msgid "Permission denied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:613 msgid "Could not open %s. Is it being used by another program?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 msgid "Edit Meta Information" msgstr "Редактирование мета информации" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 msgid "Swap the author and title" msgstr "Заменить Автора и Заглавие" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 msgid "Author S&ort: " msgstr "Сортировка по автору: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 msgid "" "Automatically create the author sort entry based on the current author entry" msgstr "" "Автоматическое создание сортировка по автору основанное на дополнительно " "введеном авторе" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 msgid "Remove unused series (Series that have no books)" msgstr "Удалить неиспользуемую серию (В серии нет книг)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 msgid "IS&BN:" msgstr "ISBN" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Publishe&d:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 msgid "dd MMM yyyy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 msgid "&Date:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 msgid "&Comments" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 msgid "&Fetch metadata from server" msgstr "Доставить метаданные с сервера" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Available Formats" msgstr "Доступные &форматы:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 msgid "Add a new format for this book to the database" msgstr "Добавить новые форматы книги в базу данных" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 msgid "Remove the selected formats for this book from the database." msgstr "Удалить выбранные форматы книги из базы данных" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 msgid "Set the cover for the book from the selected format" msgstr "Установить обложку выбранного формата" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 msgid "Update metadata from the metadata in the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 msgid "Reset cover to default" msgstr "Сбросить обложку на \"по умолчанию\"" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 msgid "Download &cover" msgstr "" @@ -4923,11 +4937,11 @@ msgstr "Обычный параметр (?P<title>)" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:79 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:83 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:88 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:93 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:96 msgid "No match" msgstr "Нет совпадений" @@ -5021,7 +5035,7 @@ msgstr "Рейтинг" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:343 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:408 msgid "None" msgstr "Ничего" @@ -5157,31 +5171,31 @@ msgstr "" msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" msgstr "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "Edit metadata individually" msgstr "Редактировать метаданные индивидуально" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 msgid "Edit metadata in bulk" msgstr "Редактировать основные метаданные" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 msgid "Download metadata and covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:232 msgid "Download only metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:233 msgid "Download only covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 msgid "Add books from a single directory" msgstr "Добавить книги из одной директории" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:237 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" @@ -5190,7 +5204,7 @@ msgstr "" "директорию, считая, что каждый файл в директории - та же самая книга в " "разных форматах)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:240 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" @@ -5198,85 +5212,85 @@ msgstr "" "Добавить книги из директорий, включая поддиректории (одна книга на " "директорию, считая, что каждый файл - отдельная книга)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:243 msgid "Add Empty book. (Book entry with no formats)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:278 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:353 msgid "Save to disk" msgstr "Сохранить на диск" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 msgid "Save to disk in a single directory" msgstr "Сохранить на диск в одну директорию" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1431 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:282 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 msgid "Save only %s format to disk" msgstr "Сохранять на диск только формат %s" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:290 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:359 msgid "View" msgstr "Вид" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "View specific format" msgstr "Просмотреть особый формат" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:315 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:317 msgid "Convert individually" msgstr "Индивидуальное преобразование" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:316 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:318 msgid "Bulk convert" msgstr "Общее преобразование" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:333 msgid "Run welcome wizard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:367 msgid "Similar books..." msgstr "Похожие книги..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:425 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:426 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 msgid "Bad database location" msgstr "Плохое расположение базы данных" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:430 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:478 msgid "Calibre Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:438 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1603 msgid "Choose a location for your ebook library." msgstr "Выбрите расположение Вашей библиотеки электронных книг." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:619 msgid "Browse by covers" msgstr "Просмотр по обложкам" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 msgid "Device: " msgstr "Устройство: " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:728 msgid " detected." msgstr " определено." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:748 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:750 msgid "Connected " msgstr "Подключено " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:760 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:762 msgid "Device database corrupted" msgstr "База данных устройства неисправна" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:763 msgid "" "\n" "

The database of books on the reader is corrupted. Try the " @@ -5306,60 +5320,56 @@ msgstr "" " \n" " " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:837 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:907 msgid "Uploading books to device." msgstr "Загрузка книг в устройство." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:845 -msgid "Books" -msgstr "Книги" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:846 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:873 msgid "EPUB Books" msgstr "Книги EPUB" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:847 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:874 msgid "LRF Books" msgstr "Книги LRF" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:848 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:875 msgid "HTML Books" msgstr "Книги HTML" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:849 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:876 msgid "LIT Books" msgstr "Книги LIT" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:850 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:877 msgid "MOBI Books" msgstr "Книги MOBI" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:851 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:878 msgid "Text books" msgstr "Текстовые книги" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:852 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:879 msgid "PDF Books" msgstr "Книги PDF" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 msgid "Comics" msgstr "Комиксы" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:854 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:881 msgid "Archives" msgstr "Архивы" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:916 msgid "Failed to read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:917 msgid "Failed to read metadata from the following" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:909 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 msgid "" "The selected books will be permanently deleted and the files removed " "from your computer. Are you sure?" @@ -5367,111 +5377,111 @@ msgstr "" "Выбранные книги будут навсегда удалены вместе с файлами с Вашего " "компьютера. Вы уверены?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:963 msgid "Deleting books from device." msgstr "Удаляются книги из устройства." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:967 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:994 msgid "Cannot download metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:968 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1016 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1049 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1074 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1186 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1043 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1101 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1213 msgid "No books selected" msgstr "Нет Выбранных книг" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1006 msgid "Downloading %s for %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1000 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1027 msgid "Failed to download some metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1001 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1028 msgid "Failed to download metadata for the following:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1031 msgid "Failed to download metadata:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1015 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1048 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1075 msgid "Cannot edit metadata" msgstr "Невозможно редактировать метаданные" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1073 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1100 msgid "Cannot save to disk" msgstr "Невозможно сохранить на диск" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 msgid "Choose destination directory" msgstr "Выберете директорию получателя" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1130 msgid "Error while saving" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1104 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1131 msgid "There was an error while saving." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1111 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1112 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1138 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1139 msgid "Could not save some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1140 msgid "Click the show details button to see which ones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1132 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1159 msgid "Fetching news from " msgstr "Вызвать новость из " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1145 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1172 msgid " fetched." msgstr " загружено." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 msgid "Cannot convert" msgstr "Не преобразуется" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1241 msgid "Starting conversion of %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1342 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1371 msgid "No book selected" msgstr "Нет выбранных книг" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1373 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1402 msgid "Cannot view" msgstr "Невозможно просмотреть" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1341 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1370 msgid "Cannot open folder" msgstr "Не могу открыть папку" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1387 msgid "Multiple Books Selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1359 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1388 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 " @@ -5479,31 +5489,31 @@ msgid "" "continue?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1374 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1403 msgid "%s has no available formats." msgstr "%s неизвестный формат." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1415 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1444 msgid "Cannot configure" msgstr "Невозможно настроить" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1416 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1445 msgid "Cannot configure while there are running jobs." msgstr "Пока запущено задание, не могу настроить" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1459 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1488 msgid "No detailed info available" msgstr "Нет доступной подробной информации" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1489 msgid "No detailed information is available for books on the device." msgstr "Не доступна подробная информация книг на устройстве" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1512 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1541 msgid "Error talking to device" msgstr "Ошибка согласования устройства" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1513 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1542 msgid "" "There was a temporary error talking to the device. Please unplug and " "reconnect the device and or reboot." @@ -5511,30 +5521,30 @@ msgstr "" "Была временная ошибка общения с устройством. Пожалуста, переподключите " "устройство или перегрузите его." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1536 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1554 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1565 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 msgid "Conversion Error" msgstr "Ошибка преобразования" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1537 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1566 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/main.py:1555 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1612 msgid "Invalid library location" msgstr "Неверное расположение библиотеки" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1613 msgid "Could not access %s. Using %s as the library." msgstr "Нет доступа к %s. Использование %s в качестве библиотеки." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1631 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1660 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." @@ -5542,22 +5552,22 @@ msgstr "" "является результато труда многих добровольцев по всему миру. Если Вы сочли " "его полезным, будьте добры пожертвовать на его развитие." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1655 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1684 msgid "There are active jobs. Are you sure you want to quit?" msgstr "Имеется активное задание. Вы все равно хотите выйти?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1658 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1687 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/main.py:1662 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1691 msgid "WARNING: Active jobs" msgstr "ПРЕДУПРЕЖДЕНИЕ: Активные задания" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1713 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1742 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -5565,7 +5575,7 @@ msgstr "" "продолжит работать в трее. Для завершения работы выберитеQuit в " "контекстном меню трея." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1732 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 msgid "" "Latest version: %s" @@ -5573,11 +5583,11 @@ msgstr "" "Последняя версия: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1740 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1769 msgid "Update available" msgstr "Доступно обновление" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1741 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1770 msgid "" "%s has been updated to version %s. See the new features. " @@ -5587,52 +5597,52 @@ msgstr "" "href=\"http://calibre.kovidgoyal.net/wiki/Changelog\">новые возможности. " "Посетить страницу?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1759 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1788 msgid "Use the library located at the specified path." msgstr "Использовать библиотеку по указанному пути." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1790 msgid "Start minimized to system tray." msgstr "Старт минимизированным в трей" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1763 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1792 msgid "Log debugging information to console" msgstr "Выводить отладочную информацию на консоль" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1765 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1794 msgid "Do not check for updates" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1813 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1842 msgid "If you are sure it is not running" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1815 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1844 msgid "Cannot Start " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1816 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1845 msgid "%s is already running." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1819 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1848 msgid "may be running in the system tray, in the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1821 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1850 msgid "upper right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1823 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1852 msgid "lower right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1826 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1855 msgid "try rebooting your computer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1828 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1840 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1857 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1869 msgid "try deleting the file" msgstr "" @@ -5789,27 +5799,27 @@ msgstr "" msgid "No matches found for this book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:60 msgid "Search" msgstr "Найти" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:149 msgid "Jobs:" msgstr "Работа:" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:158 msgid "Click to see list of active jobs." msgstr "Кликнуть для просмотра списка активных задач" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to browse books by their covers" msgstr "Кликнуть для просмотра книг по обложкам" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to turn off Cover Browsing" msgstr "Кликнуть для выключения просмотра книг по обложкам" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:193 msgid "" "

Browsing books by their covers is disabled.
Import of pictureflow " "module failed:
" @@ -5817,7 +5827,7 @@ msgstr "" "

Просмотра книг по обложкам выключен.
Импорт модуля pictureflow " "неудачен:
" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:201 msgid "Click to browse books by tags" msgstr "Кликнуть просмотра книг по тэгам" @@ -6207,7 +6217,7 @@ msgstr "" msgid "Print eBook" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 msgid "" "Library\n" "%d\n" @@ -6217,7 +6227,7 @@ msgstr "" "%d\n" "книг" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 msgid "" "Reader\n" "%s\n" @@ -6227,53 +6237,53 @@ msgstr "" "%s\n" "доступно" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:200 msgid "" "Card A\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:201 msgid "" "Card B\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:206 msgid "Click to see the books available on your computer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:207 msgid "Click to see the books in the main memory of your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:208 msgid "Click to see the books on storage card A in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:209 msgid "Click to see the books on storage card B in your reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:466 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:498 msgid "Change Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:499 msgid "Upper Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:468 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:500 msgid "Lower Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:469 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:501 msgid "Swap Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:470 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:502 msgid "Title Case" msgstr "" @@ -7046,43 +7056,43 @@ msgid "" "arguments in quotation marks." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:555 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 msgid "Path to the database in which books are stored" msgstr "Пудь к базе данных в которой хранятся книги" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:557 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 msgid "Pattern to guess metadata from filenames" msgstr "Шаблон для получения метаданных из имени файла" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 msgid "Access key for isbndb.com" msgstr "Ключ доступа к isbndb.com" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 msgid "Default timeout for network operations (seconds)" msgstr "Таймаут для сетевых операций по умолчанию (сек)" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 msgid "Path to directory in which your library of books is stored" msgstr "Пудь к директории в которой хранятся книги" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:569 msgid "The language in which to display the user interface" msgstr "Язык для отображения пользовательского интерфейса" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 msgid "The default output format for ebook conversions." msgstr "Формат книги по умолчанию после преобразования." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 msgid "Ordered list of formats to prefer for input." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:573 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:577 msgid "Read metadata from files" msgstr "Читать метаданные из файлов" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:579 msgid "The priority of worker processes" msgstr "Приоритет рабочих процессов" diff --git a/src/calibre/translations/zh_CN.po b/src/calibre/translations/zh_CN.po index 5eeb8c9854..4c921a908c 100644 --- a/src/calibre/translations/zh_CN.po +++ b/src/calibre/translations/zh_CN.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2009-10-02 05:30+0000\n" -"PO-Revision-Date: 2009-10-02 11:00+0000\n" +"POT-Creation-Date: 2009-10-10 02:36+0000\n" +"PO-Revision-Date: 2009-10-09 23:41+0000\n" "Last-Translator: Thruth Wang \n" "Language-Team: Simplified Chinese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-03 06:45+0000\n" +"X-Launchpad-Export-Date: 2009-10-10 06:53+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 @@ -26,8 +26,9 @@ msgstr "不做任何处理" #: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:53 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:58 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:199 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:703 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:706 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:730 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:733 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:177 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:410 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:65 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 @@ -95,22 +96,22 @@ msgstr "不做任何处理" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:29 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:217 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:261 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:273 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:120 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:127 #: /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/device.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:765 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:768 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:769 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:772 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:106 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:431 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:42 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:391 @@ -529,25 +530,25 @@ msgstr "无法检测到 %s 磁盘驱动器。您的内核可能正在输出已 msgid "Unable to mount main memory (Error code: %d)" msgstr "无法装载主存储器(错误代码: %d)" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:643 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:645 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:670 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:672 msgid "The reader has no storage card in this slot." msgstr "设备中未插入存储卡." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:647 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:674 msgid "Selected slot: %s is not supported." msgstr "选定的插槽:%s 未被支持。" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:671 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:698 msgid "There is insufficient free space in main memory" msgstr "设备内置存储空间不足" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:673 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:675 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:700 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:702 msgid "There is insufficient free space on the storage card" msgstr "存储卡上的空间不足" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:686 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:713 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:434 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 #: /home/kovid/work/calibre/src/calibre/library/database2.py:1007 @@ -1142,7 +1143,7 @@ msgid "" "disables the generation of this cover." msgstr "正常情况下,如果输入文件没有封面,您也未指定,会生成一个默认封面带有标题、作者等信息。选定此选项可以禁用生成默认封面。" -#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:122 +#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:124 #: /home/kovid/work/calibre/src/calibre/ebooks/pml/pmlml.py:111 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:77 @@ -1501,7 +1502,7 @@ msgstr "出品人" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:71 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:64 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:349 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:92 msgid "Comments" msgstr "注释" @@ -1510,7 +1511,7 @@ msgstr "注释" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:338 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1012 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1072 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:94 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Tags" msgstr "标签" @@ -1518,7 +1519,7 @@ msgstr "标签" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:372 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:166 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:354 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:93 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Series" msgstr "系列" @@ -2303,15 +2304,15 @@ msgstr "等待中的工作进程最大数量" msgid "Copied" msgstr "已复制" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy" msgstr "复制" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy to Clipboard" msgstr "复制到剪贴板" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:386 msgid "Choose Files" msgstr "选择文件" @@ -2336,7 +2337,7 @@ msgid "The specified directory could not be processed." msgstr "无法处理指定目录。" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:482 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:486 msgid "No books" msgstr "没有书籍" @@ -2545,14 +2546,14 @@ msgstr "选择文件夹放置调试输出。如果您选择文件夹,将在期 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:501 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:128 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:131 @@ -2752,38 +2753,38 @@ msgid "" msgstr "设置元数据。输出文件将尽可能多的携带元数据信息。" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:96 msgid "Choose cover for " msgstr "选择该书籍的封面 " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:159 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:102 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 msgid "Cannot read" msgstr "无法读取" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:104 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/dialogs/metadata_single.py:111 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 msgid "Error reading file" msgstr "读取文件出错" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:113 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/dialogs/metadata_single.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:121 msgid " is not a valid picture" msgstr " 不是合法的图片" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 msgid "Book Cover" msgstr "封面" @@ -2792,28 +2793,28 @@ msgid "Use cover from &source file" msgstr "使用该源文件作为封面(&S)" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 msgid "Change &cover image:" msgstr "改变封面图像(&C):" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 msgid "Browse for an image to use as the cover of this book." msgstr "浏览并选择图片作为书籍的封面." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 msgid "&Title: " msgstr "标题(&T): " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 msgid "Change the title of this book" msgstr "改变该书籍标题" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:135 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 msgid "&Author(s): " msgstr "作者(&A): " @@ -2829,18 +2830,18 @@ msgstr "修改书籍的作者。多作者可以用逗号分隔" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:143 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 msgid "&Publisher: " msgstr "出版商(&P):: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 msgid "Ta&gs: " msgstr "标签(&g): " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:145 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

They can be any words or phrases, separated by commas." @@ -2848,7 +2849,7 @@ msgstr "电子书籍的分类标签. 此标签对于数字搜索非常有用. Cannot upload books to device there is no more free space available " msgstr "

由于设备存储空间不足无法将书籍传送到设备上 " @@ -3484,7 +3485,7 @@ msgstr "使用子目录" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:86 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:345 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1007 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:90 msgid "Path" msgstr "路径" @@ -3494,7 +3495,7 @@ msgstr "路径" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:344 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:91 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Formats" msgstr "格式" @@ -3604,7 +3605,7 @@ msgstr "新邮件地址" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:461 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:788 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:140 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1032 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "错误" @@ -3675,7 +3676,7 @@ msgid "Access log:" msgstr "访问日志:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:645 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:576 msgid "Failed to start content server" msgstr "无法启动内容服务器" @@ -4200,7 +4201,7 @@ msgid "Edit Meta information" msgstr "编辑元信息" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 msgid "Meta information" msgstr "元信息" @@ -4213,26 +4214,26 @@ msgid "Author s&ort: " msgstr "作者排序(&O): " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:138 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." msgstr "指定如何按书籍作者姓名排序。如 Charles Dickens 会被作为 Dickens, Charles 进行排序。" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 msgid "&Rating:" msgstr "评分(&R):" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:140 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:141 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Rating of this book. 0-5 stars" msgstr "为该书评分。0-5 星" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:142 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 msgid " stars" msgstr " 星" @@ -4242,8 +4243,8 @@ msgstr "添加标签(&G): " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:146 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:147 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 msgid "Open Tag Editor" msgstr "打开标签编辑器" @@ -4259,157 +4260,170 @@ msgstr "删除多个标签, 标签列表由逗号分割. " msgid "Remove &format:" msgstr "移除格式(&R)”" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 msgid "Not a valid picture" msgstr "非有效图片" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:133 +msgid "Choose formats for " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:134 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:872 +msgid "Books" +msgstr "书籍" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:160 +msgid "You do not have permission to read the following files:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 msgid "No format selected" msgstr "未选择格式" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 msgid "Could not read metadata" msgstr "无法读取元数据" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 msgid "Could not read metadata from %s format" msgstr "无法从 %s 格式中读取元数据" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:224 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:247 msgid "Could not read cover" msgstr "无法读取封面" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:242 msgid "Could not read cover from %s format" msgstr "无法从 %s 格式中读取封面" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:248 msgid "The cover in the %s format is invalid" msgstr "%s 格式中封面无效" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:285 msgid "Abort the editing of all remaining books" msgstr "放弃编辑所有其余书籍" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:488 msgid "Downloading cover..." msgstr "正在下载封面..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:479 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:484 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:511 msgid "Cannot fetch cover" msgstr "无法抓取封面" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:480 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:491 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:512 msgid "Could not fetch cover.
" msgstr "无法抓取封面。
" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:502 msgid "The download timed out." msgstr "下载超时。" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:506 msgid "Could not find cover for this book. Try specifying the ISBN first." msgstr "无法找到书籍对应的封面。请尝试首先指定 ISBN。" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:497 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:518 msgid "Bad cover" msgstr "非法封面" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:498 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:519 msgid "The cover is not a valid picture" msgstr "封面不是有效图片" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:538 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 msgid "Cannot fetch metadata" msgstr "无法抓取元数据" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:539 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 msgid "You must specify at least one of ISBN, Title, Authors or Publisher" msgstr "您必须设定 ISBN,标题,作者或出版商中的至少一个条件" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:612 msgid "Permission denied" msgstr "权限拒绝" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:613 msgid "Could not open %s. Is it being used by another program?" msgstr "无法打开 %s。它是否被其它程序占用。" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 msgid "Edit Meta Information" msgstr "编辑元信息" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 msgid "Swap the author and title" msgstr "对调作者和标题信息" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 msgid "Author S&ort: " msgstr "作者排序:(&O) " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 msgid "" "Automatically create the author sort entry based on the current author entry" msgstr "自动根据作者项创建按作者排序的索引项" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 msgid "Remove unused series (Series that have no books)" msgstr "删除空系列(系列中没有书籍)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 msgid "IS&BN:" msgstr "ISBN(&B):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Publishe&d:" msgstr "出版于(&D):" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 msgid "dd MMM yyyy" msgstr "dd MMM yyyy" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 msgid "&Date:" msgstr "日期(&D) :" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 msgid "&Comments" msgstr "&注释" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 msgid "&Fetch metadata from server" msgstr "从服务器抓取元数据(&F)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Available Formats" msgstr "可用格式" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 msgid "Add a new format for this book to the database" msgstr "为此书添加新格式到数据库中" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 msgid "Remove the selected formats for this book from the database." msgstr "从数据库中移除此书的选定格式。" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 msgid "Set the cover for the book from the selected format" msgstr "为此书的选定格式设定封面" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 msgid "Update metadata from the metadata in the selected format" msgstr "使用来自选定格式的元数据作为元数据" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 msgid "Reset cover to default" msgstr "恢复默认封面" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 msgid "Download &cover" msgstr "下载封面(&C)" @@ -4948,11 +4962,11 @@ msgstr "正则表达式 (?P<title>)" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:79 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:83 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:88 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:93 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:96 msgid "No match" msgstr "无匹配" @@ -5046,7 +5060,7 @@ msgstr "评分" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:343 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:408 msgid "None" msgstr "无" @@ -5180,121 +5194,121 @@ msgstr "" msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" msgstr "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "Edit metadata individually" msgstr "逐个修改元数据" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 msgid "Edit metadata in bulk" msgstr "批量修改元数据" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 msgid "Download metadata and covers" msgstr "下载元数据和封面" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:232 msgid "Download only metadata" msgstr "仅下载元数据" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:233 msgid "Download only covers" msgstr "仅下载封面" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 msgid "Add books from a single directory" msgstr "从单个目录添加书籍" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:237 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" msgstr "从目录添加书籍,包含子目录(单个目录下有多本书籍,假定每一本电子书文件均为同一本书的不同格式)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:240 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" msgstr "从目录添加书籍,包含子目录(单个目录下有多本书籍,假定每一本电子书文件均为不同电子书)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:243 msgid "Add Empty book. (Book entry with no formats)" msgstr "添加空书。(无任何格式)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:278 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:353 msgid "Save to disk" msgstr "保存到磁盘" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 msgid "Save to disk in a single directory" msgstr "保存到磁盘单个目录" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1431 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:282 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 msgid "Save only %s format to disk" msgstr "仅保存 %s 到磁盘" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:290 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:359 msgid "View" msgstr "查看" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "View specific format" msgstr "查看特定格式" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:315 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:317 msgid "Convert individually" msgstr "分别转换" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:316 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:318 msgid "Bulk convert" msgstr "批量转换" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:333 msgid "Run welcome wizard" msgstr "运行欢迎向导" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:367 msgid "Similar books..." msgstr "类似书籍..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:425 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:426 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 msgid "Bad database location" msgstr "错误数据库位置" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:430 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:478 msgid "Calibre Library" msgstr "Calibre 书库" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:438 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1603 msgid "Choose a location for your ebook library." msgstr "为您的电子书库选择一个位置。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:619 msgid "Browse by covers" msgstr "用封面浏览" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 msgid "Device: " msgstr "设备: " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:728 msgid " detected." msgstr " 被检测到。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:748 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:750 msgid "Connected " msgstr "已连接 " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:760 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:762 msgid "Device database corrupted" msgstr "设备数据库损坏" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:763 msgid "" "\n" "

The database of books on the reader is corrupted. Try the " @@ -5319,170 +5333,166 @@ msgstr "" " \n" " " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:837 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:907 msgid "Uploading books to device." msgstr "正在上传书籍到设备。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:845 -msgid "Books" -msgstr "书籍" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:846 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:873 msgid "EPUB Books" msgstr "EPUB 书籍" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:847 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:874 msgid "LRF Books" msgstr "LRF 书籍" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:848 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:875 msgid "HTML Books" msgstr "HTML 书籍" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:849 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:876 msgid "LIT Books" msgstr "LIT 书籍" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:850 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:877 msgid "MOBI Books" msgstr "MOBI 书籍" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:851 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:878 msgid "Text books" msgstr "文本书籍" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:852 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:879 msgid "PDF Books" msgstr "PDF 书籍" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 msgid "Comics" msgstr "漫画" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:854 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:881 msgid "Archives" msgstr "归档" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:916 msgid "Failed to read metadata" msgstr "无法读取元数据" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:917 msgid "Failed to read metadata from the following" msgstr "无法从下列项目读取元数据" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:909 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 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/main.py:936 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:963 msgid "Deleting books from device." msgstr "从设备删除书籍。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:967 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:994 msgid "Cannot download metadata" msgstr "无法下载元数据" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:968 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1016 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1049 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1074 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1186 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1043 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1101 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1213 msgid "No books selected" msgstr "未选择书籍" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "covers" msgstr "封面" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "metadata" msgstr "元数据" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1006 msgid "Downloading %s for %d book(s)" msgstr "正在为 %d 本书下载 %s" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1000 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1027 msgid "Failed to download some metadata" msgstr "下载一些元数据失败" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1001 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1028 msgid "Failed to download metadata for the following:" msgstr "下载下列书籍元数据失败:" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1031 msgid "Failed to download metadata:" msgstr "下载元数据失败。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1015 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1048 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1075 msgid "Cannot edit metadata" msgstr "无法编辑元数据" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1073 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1100 msgid "Cannot save to disk" msgstr "无法保存到磁盘" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 msgid "Choose destination directory" msgstr "选择目标目录" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1130 msgid "Error while saving" msgstr "保存出错" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1104 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1131 msgid "There was an error while saving." msgstr "保存时出错。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1111 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1112 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1138 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1139 msgid "Could not save some books" msgstr "无法保存一些书籍" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1140 msgid "Click the show details button to see which ones." msgstr "点击显示详情按钮查看具体哪些。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1132 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1159 msgid "Fetching news from " msgstr "正在抓取新闻,来源于 " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1145 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1172 msgid " fetched." msgstr " 已抓取。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 msgid "Cannot convert" msgstr "无法转换" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1241 msgid "Starting conversion of %d book(s)" msgstr "开始转换 %d 本书" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1342 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1371 msgid "No book selected" msgstr "未选择书籍" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1373 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1402 msgid "Cannot view" msgstr "无法查看" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1341 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1370 msgid "Cannot open folder" msgstr "无法打开文件夹" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1387 msgid "Multiple Books Selected" msgstr "选定多本书籍" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1359 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1388 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 " @@ -5490,70 +5500,70 @@ msgid "" "continue?" msgstr "您正在试图打开 %d 本书籍。同时打开太多书籍可能会变慢,并对电脑响应速度有消极影响。一旦开始,需等待进程完成。是否继续?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1374 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1403 msgid "%s has no available formats." msgstr "%s 无可用格式。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1415 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1444 msgid "Cannot configure" msgstr "无法配置" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1416 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1445 msgid "Cannot configure while there are running jobs." msgstr "有正在运行任务时无法进行配置。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1459 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1488 msgid "No detailed info available" msgstr "无可用详细信息" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1489 msgid "No detailed information is available for books on the device." msgstr "设备上书籍没有详细信息可用。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1512 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1541 msgid "Error talking to device" msgstr "设备通讯错误。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1513 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1542 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/main.py:1536 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1554 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1565 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 msgid "Conversion Error" msgstr "转换错误" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1537 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1566 msgid "" "

Could not convert: %s

It is a DRMed book. You must " "first remove the DRM using third party tools." msgstr "

无法转换:%s

它是 DRM 保护书籍。您需要首先使用第三方工具去除 DRM。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1555 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 msgid "Failed" msgstr "失败" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1612 msgid "Invalid library location" msgstr "无效书库位置" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1613 msgid "Could not access %s. Using %s as the library." msgstr "无法访问 %s。使用 %s 作为书库。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1631 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1660 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/main.py:1655 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1684 msgid "There are active jobs. Are you sure you want to quit?" msgstr "仍有任务运行。您是否希望退出?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1658 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1687 msgid "" " is communicating with the device!
\n" " Quitting may cause corruption on the device.
\n" @@ -5563,28 +5573,28 @@ msgstr "" " 退出可能导致设备损坏。
\n" " 确定退出么?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1662 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1691 msgid "WARNING: Active jobs" msgstr "警告:正在运行任务" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1713 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1742 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/main.py:1732 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 msgid "" "Latest version: %s" msgstr "" "最新版本:%s" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1740 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1769 msgid "Update available" msgstr "有可用更新" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1741 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1770 msgid "" "%s has been updated to version %s. See the new features. " @@ -5593,52 +5603,52 @@ msgstr "" "%s 已更新到版本 %s。参见新功能。访问下载页么?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1759 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1788 msgid "Use the library located at the specified path." msgstr "使用指定路径的书库。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1790 msgid "Start minimized to system tray." msgstr "最小化到系统栏。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1763 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1792 msgid "Log debugging information to console" msgstr "在控制台记录调试信息" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1765 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1794 msgid "Do not check for updates" msgstr "不检测更新" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1813 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1842 msgid "If you are sure it is not running" msgstr "如果您确定它没有运行" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1815 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1844 msgid "Cannot Start " msgstr "无法开始 " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1816 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1845 msgid "%s is already running." msgstr "%s 正在运行。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1819 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1848 msgid "may be running in the system tray, in the" msgstr "可能在系统栏中运行,在" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1821 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1850 msgid "upper right region of the screen." msgstr "屏幕右上区域。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1823 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1852 msgid "lower right region of the screen." msgstr "屏幕右下区域。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1826 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1855 msgid "try rebooting your computer." msgstr "尝试重启电脑。" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1828 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1840 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1857 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1869 msgid "try deleting the file" msgstr "尝试删除文件" @@ -5792,33 +5802,33 @@ msgstr "书籍既没有标题也没有 ISBN 编号" msgid "No matches found for this book" msgstr "未找到匹配此书信息" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:60 msgid "Search" msgstr "搜索" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:149 msgid "Jobs:" msgstr "任务:" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:158 msgid "Click to see list of active jobs." msgstr "点击查看活动任务。" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to browse books by their covers" msgstr "点击浏览书籍封面" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to turn off Cover Browsing" msgstr "点击关闭封面浏览" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:193 msgid "" "

Browsing books by their covers is disabled.
Import of pictureflow " "module failed:
" msgstr "

已禁用封面浏览。
导入图片流模块失败:
" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:201 msgid "Click to browse books by tags" msgstr "点击浏览书籍标签" @@ -6208,7 +6218,7 @@ msgstr "打印" msgid "Print eBook" msgstr "打印电子书" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 msgid "" "Library\n" "%d\n" @@ -6218,7 +6228,7 @@ msgstr "" "%d\n" "本书" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 msgid "" "Reader\n" "%s\n" @@ -6228,7 +6238,7 @@ msgstr "" "%s\n" "可用" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:200 msgid "" "Card A\n" "%s\n" @@ -6238,7 +6248,7 @@ msgstr "" "%s\n" "可用" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:201 msgid "" "Card B\n" "%s\n" @@ -6248,39 +6258,39 @@ msgstr "" "%s\n" "可用" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:206 msgid "Click to see the books available on your computer" msgstr "点击查看电脑上可用书籍" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:207 msgid "Click to see the books in the main memory of your reader" msgstr "点击查看阅读区主存储中的书籍" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:208 msgid "Click to see the books on storage card A in your reader" msgstr "点击查看阅读器存储卡 A 中的书籍" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:209 msgid "Click to see the books on storage card B in your reader" msgstr "点击查看阅读器存储卡 B 中的书籍" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:466 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:498 msgid "Change Case" msgstr "大小写转换" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:499 msgid "Upper Case" msgstr "大写" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:468 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:500 msgid "Lower Case" msgstr "小写" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:469 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:501 msgid "Swap Case" msgstr "转换大小写" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:470 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:502 msgid "Title Case" msgstr "标题大写" @@ -7043,43 +7053,43 @@ msgid "" "arguments in quotation marks." msgstr "向 %prog 传递包含空格的参数时,确保使用引号。" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:555 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 msgid "Path to the database in which books are stored" msgstr "图书数据库路径" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:557 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 msgid "Pattern to guess metadata from filenames" msgstr "从文件名猜测元数据的样式" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 msgid "Access key for isbndb.com" msgstr "isbndb.com 的访问密钥" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 msgid "Default timeout for network operations (seconds)" msgstr "网络操作默认超时(秒)" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 msgid "Path to directory in which your library of books is stored" msgstr "书库存储文件夹路径" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:569 msgid "The language in which to display the user interface" msgstr "用户界面所使用语言" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 msgid "The default output format for ebook conversions." msgstr "电子数转换默认输出格式。" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 msgid "Ordered list of formats to prefer for input." msgstr "首选输入格式排序表。" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:573 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:577 msgid "Read metadata from files" msgstr "从文件读取元数据" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:579 msgid "The priority of worker processes" msgstr "工作流程优先级" From 2c330f0c2d8b101d2b265808406b3e9e8292fbf8 Mon Sep 17 00:00:00 2001 From: Translators <> Date: Sun, 11 Oct 2009 07:51:02 +0100 Subject: [PATCH 02/41] Launchpad automatic translations update. --- src/calibre/translations/de.po | 10 +++++----- src/calibre/translations/es.po | 10 +++++----- src/calibre/translations/hr.po | 2 +- src/calibre/translations/zh_CN.po | 8 ++++---- 4 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/calibre/translations/de.po b/src/calibre/translations/de.po index e1fe0b277f..1f2e169da6 100644 --- a/src/calibre/translations/de.po +++ b/src/calibre/translations/de.po @@ -8,13 +8,13 @@ msgstr "" "Project-Id-Version: de\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-10-10 02:36+0000\n" -"PO-Revision-Date: 2009-10-09 23:33+0000\n" -"Last-Translator: Kovid Goyal \n" +"PO-Revision-Date: 2009-10-10 20:52+0000\n" +"Last-Translator: S. Dorscht \n" "Language-Team: American English \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-10 06:52+0000\n" +"X-Launchpad-Export-Date: 2009-10-11 06:50+0000\n" "X-Generator: Launchpad (build Unknown)\n" "Generated-By: pygettext.py 1.5\n" @@ -4653,7 +4653,7 @@ msgstr "Kein gültiges Bild." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:133 msgid "Choose formats for " -msgstr "" +msgstr "Formate wählen für " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:134 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:872 @@ -4662,7 +4662,7 @@ msgstr "Bücher" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:160 msgid "You do not have permission to read the following files:" -msgstr "" +msgstr "Sie haben nicht die Berechtigung, die folgenden Dateien zu lesen:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 diff --git a/src/calibre/translations/es.po b/src/calibre/translations/es.po index 9c7810add5..3363b9c8f3 100644 --- a/src/calibre/translations/es.po +++ b/src/calibre/translations/es.po @@ -11,13 +11,13 @@ msgstr "" "Project-Id-Version: es\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-10-10 02:36+0000\n" -"PO-Revision-Date: 2009-10-09 23:33+0000\n" -"Last-Translator: Kovid Goyal \n" +"PO-Revision-Date: 2009-10-10 10:30+0000\n" +"Last-Translator: Jellby \n" "Language-Team: Spanish\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-10 06:53+0000\n" +"X-Launchpad-Export-Date: 2009-10-11 06:50+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 @@ -4619,7 +4619,7 @@ msgstr "No es una imagen válida" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:133 msgid "Choose formats for " -msgstr "" +msgstr "Elegir formatos para " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:134 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:872 @@ -4628,7 +4628,7 @@ msgstr "Libros" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:160 msgid "You do not have permission to read the following files:" -msgstr "" +msgstr "No tiene permiso para leer los siguientes ficheros:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 diff --git a/src/calibre/translations/hr.po b/src/calibre/translations/hr.po index 9e0d82d0a9..e67f3478b1 100644 --- a/src/calibre/translations/hr.po +++ b/src/calibre/translations/hr.po @@ -14,7 +14,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-10 06:53+0000\n" +"X-Launchpad-Export-Date: 2009-10-11 06:50+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 diff --git a/src/calibre/translations/zh_CN.po b/src/calibre/translations/zh_CN.po index 4c921a908c..44c35a141e 100644 --- a/src/calibre/translations/zh_CN.po +++ b/src/calibre/translations/zh_CN.po @@ -8,13 +8,13 @@ msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2009-10-10 02:36+0000\n" -"PO-Revision-Date: 2009-10-09 23:41+0000\n" -"Last-Translator: Thruth Wang \n" +"PO-Revision-Date: 2009-10-10 09:51+0000\n" +"Last-Translator: Kyle WANG \n" "Language-Team: Simplified Chinese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-10 06:53+0000\n" +"X-Launchpad-Export-Date: 2009-10-11 06:51+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 @@ -4275,7 +4275,7 @@ msgstr "书籍" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:160 msgid "You do not have permission to read the following files:" -msgstr "" +msgstr "您没有权限读下列文件:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 From 470f1aa4c944e6819470d3806518a4b41718fdf4 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sun, 11 Oct 2009 13:07:11 -0600 Subject: [PATCH 03/41] Fix very long search strings causing main window to become wider than screen --- src/calibre/gui2/main.py | 6 ++++++ src/calibre/gui2/main.ui | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/src/calibre/gui2/main.py b/src/calibre/gui2/main.py index b33bf3d619..14ee79d310 100644 --- a/src/calibre/gui2/main.py +++ b/src/calibre/gui2/main.py @@ -507,6 +507,7 @@ class Main(MainWindow, Ui_MainWindow, DeviceGUI): self._calculated_available_height = min(max_available_height()-15, self.height()) self.resize(self.width(), self._calculated_available_height) + self.search.setMaximumWidth(self.width()-150) if config['autolaunch_server']: @@ -523,6 +524,11 @@ class Main(MainWindow, Ui_MainWindow, DeviceGUI): self.scheduler.show_dialog) self.location_view.setCurrentIndex(self.location_view.model().index(0)) + def resizeEvent(self, ev): + MainWindow.resizeEvent(self, ev) + self.search.setMaximumWidth(self.width()-150) + + def create_device_menu(self): self._sync_menu = DeviceMenu(self) self.action_sync.setMenu(self._sync_menu) diff --git a/src/calibre/gui2/main.ui b/src/calibre/gui2/main.ui index 0be1df12df..8849c2fa07 100644 --- a/src/calibre/gui2/main.ui +++ b/src/calibre/gui2/main.ui @@ -192,6 +192,12 @@ 0 + + + 700 + 16777215 + + <p>Search the list of books by title, author, publisher, tags, comments, etc.<br><br>Words separated by spaces are ANDed From a8bf1d329ec311c9d938a0a99db650596e3e7379 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sun, 11 Oct 2009 20:26:59 -0600 Subject: [PATCH 04/41] New recipe For Business World India by Darko Miletic --- resources/images/news/businessworldin.png | Bin 0 -> 444 bytes src/calibre/web/feeds/recipes/__init__.py | 2 +- .../feeds/recipes/recipe_businessworldin.py | 77 ++++++++++++++++++ 3 files changed, 78 insertions(+), 1 deletion(-) create mode 100644 resources/images/news/businessworldin.png create mode 100644 src/calibre/web/feeds/recipes/recipe_businessworldin.py diff --git a/resources/images/news/businessworldin.png b/resources/images/news/businessworldin.png new file mode 100644 index 0000000000000000000000000000000000000000..4dd8612fd2543c53b25e9cda89d9f3206839e5cd GIT binary patch literal 444 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b zK-vS0-A-oPfdtD69Mgd`SU*F|v9*VRoTr{Hjv*GOmj*lLu^4g`fA{_;{9CO;c+W}O z35jaE?|NNUQgrI*G2{}O;PKaVk+9d2Esp|iKA$gLGV_Vuymyms^0K`PdUf|s{fj+C z^DKp4yqk0>HuD<8OmmY62BX(WdR~8)oD6N|W}c~i@;49LgRC^K^TKCx9vPgwvUrt2 zSZmh{WzHkQp;y0$GIXBKzGD1gnPZ+*#C-nv*ynvYY%FGC$u7o9w^s)+cr03U-}Z-7 zcbbBDN+R?6j+KH}_olsHZx(H_ZBg!?80|bZ!Q~C^JsE7q$L!R^o&S6{uj{2OC7#SE?>KYp88XATe8CV$^S{WPZ x8kkub80^>55<}6Do1c=IR*9^^(A>(%!phVHqG8(kWpO|a44$rjF6*2UngH;#pDzFa literal 0 HcmV?d00001 diff --git a/src/calibre/web/feeds/recipes/__init__.py b/src/calibre/web/feeds/recipes/__init__.py index b753886fc7..fe8ae80997 100644 --- a/src/calibre/web/feeds/recipes/__init__.py +++ b/src/calibre/web/feeds/recipes/__init__.py @@ -59,7 +59,7 @@ recipe_modules = ['recipe_' + r for r in ( 'intelligencer', 'theoldfoodie', 'hln_be', 'honvedelem', 'the_new_republic', 'philly', 'salon', 'tweakers', 'smashing', 'thestar', 'business_standard', 'lemonde_dip', 'javalobby', - 'serverside', 'infoworld', 'sanjosemercurynews', + 'serverside', 'infoworld', 'sanjosemercurynews', 'businessworldin', )] diff --git a/src/calibre/web/feeds/recipes/recipe_businessworldin.py b/src/calibre/web/feeds/recipes/recipe_businessworldin.py new file mode 100644 index 0000000000..99d56e850f --- /dev/null +++ b/src/calibre/web/feeds/recipes/recipe_businessworldin.py @@ -0,0 +1,77 @@ +#!/usr/bin/env python + +__license__ = 'GPL v3' +__copyright__ = '2009, Darko Miletic ' +''' +www.businessworld.in +''' + +from calibre import strftime +from calibre.web.feeds.news import BasicNewsRecipe + +class BusinessWorldMagazine(BasicNewsRecipe): + title = 'Business World Magazine' + __author__ = 'Darko Miletic' + description = 'News from India' + publisher = 'ABP Pvt Ltd Publication' + category = 'news, politics, finances, India, Asia' + delay = 1 + no_stylesheets = True + INDEX = 'http://www.businessworld.in/bw/Magazine_Current_Issue' + ROOT = 'http://www.businessworld.in' + use_embedded_content = False + encoding = 'utf-8' + language = 'en_IN' + + + conversion_options = { + 'comment' : description + , 'tags' : category + , 'publisher' : publisher + , 'language' : language + } + + def is_in_list(self,linklist,url): + for litem in linklist: + if litem == url: + return True + return False + + + def parse_index(self): + articles = [] + linklist = [] + soup = self.index_to_soup(self.INDEX) + + for item in soup.findAll('div', attrs={'class':'nametitle'}): + description = '' + title_prefix = '' + feed_link = item.find('a') + if feed_link and feed_link.has_key('href'): + url = self.ROOT + feed_link['href'] + if not self.is_in_list(linklist,url): + title = title_prefix + self.tag_to_string(feed_link) + date = strftime(self.timefmt) + articles.append({ + 'title' :title + ,'date' :date + ,'url' :url + ,'description':description + }) + linklist.append(url) + return [(soup.head.title.string, articles)] + + + keep_only_tags = [dict(name='div', attrs={'id':['register-panel','printwrapper']})] + remove_tags = [dict(name=['object','link'])] + + def print_version(self, url): + return url.replace('/bw/','/bw/storyContent/') + + def get_cover_url(self): + cover_url = None + soup = self.index_to_soup(self.INDEX) + cover_item = soup.find('img',attrs={'class':'toughbor'}) + if cover_item: + cover_url = self.ROOT + cover_item['src'] + return cover_url From b20f8ea54c88a14ef4a66cb42450f381953e6c1e Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 12 Oct 2009 00:12:27 -0600 Subject: [PATCH 05/41] calibre_mount_helper now works on NetBSD as well for mounting of reader devices --- src/calibre/devices/linux_mount_helper.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/calibre/devices/linux_mount_helper.c b/src/calibre/devices/linux_mount_helper.c index 076587c670..7399277377 100644 --- a/src/calibre/devices/linux_mount_helper.c +++ b/src/calibre/devices/linux_mount_helper.c @@ -35,6 +35,9 @@ void ensure_root() { int do_mount(const char *dev, const char *mp) { char options[1000], marker[2000]; +#ifdef __NetBSD__ + char uids[100], gids[100]; +#endif int errsv; if (!exists(dev)) { @@ -57,9 +60,19 @@ int do_mount(const char *dev, const char *mp) { } close(fd); } +#ifdef __NetBSD__ + snprintf(options, 1000, "rw,noexec,nosuid,sync,nodev"); + snprintf(uids, 100, "%d", getuid()); + snprintf(gids, 100, "%d", getgid()); +#else snprintf(options, 1000, "rw,noexec,nosuid,sync,nodev,quiet,shortname=mixed,uid=%d,gid=%d,umask=077,fmask=0177,dmask=0077,utf8,iocharset=iso8859-1", getuid(), getgid()); +#endif ensure_root(); +#ifdef __NetBSD__ + execlp("mount_msdos", "mount_msdos", "-u", uids, "-g", gids, "-o", options, dev, mp, NULL); +#else execlp("mount", "mount", "-t", "vfat", "-o", options, dev, mp, NULL); +#endif errsv = errno; fprintf(stderr, "Failed to mount with error: %s\n", strerror(errsv)); return EXIT_FAILURE; @@ -76,7 +89,11 @@ int call_eject(const char *dev, const char *mp) { if (pid == 0) { /* Child process */ ensure_root(); +#ifdef __NetBSD__ + execlp("eject", "eject", dev, NULL); +#else execlp("eject", "eject", "-s", dev, NULL); +#endif /* execlp failed */ errsv = errno; fprintf(stderr, "Failed to eject with error: %s\n", strerror(errsv)); From 6b6ed69f7bd220e38dea515f6cff0e09744e2af6 Mon Sep 17 00:00:00 2001 From: Translators <> Date: Mon, 12 Oct 2009 08:05:29 +0100 Subject: [PATCH 06/41] Launchpad automatic translations update. --- src/calibre/translations/fr.po | 662 +++++++++++++++++---------------- 1 file changed, 344 insertions(+), 318 deletions(-) diff --git a/src/calibre/translations/fr.po b/src/calibre/translations/fr.po index c5867c2076..94f6a220cd 100644 --- a/src/calibre/translations/fr.po +++ b/src/calibre/translations/fr.po @@ -6,14 +6,14 @@ msgid "" msgstr "" "Project-Id-Version: calibre 0.4.22\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-10-02 05:30+0000\n" -"PO-Revision-Date: 2009-10-02 05:11+0000\n" -"Last-Translator: Kovid Goyal \n" +"POT-Creation-Date: 2009-10-10 02:36+0000\n" +"PO-Revision-Date: 2009-10-11 08:15+0000\n" +"Last-Translator: Vincent C. \n" "Language-Team: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-03 06:44+0000\n" +"X-Launchpad-Export-Date: 2009-10-12 07:05+0000\n" "X-Generator: Launchpad (build Unknown)\n" "Generated-By: pygettext.py 1.5\n" @@ -26,8 +26,9 @@ msgstr "Ne fait strictement rien" #: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:53 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:58 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:199 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:703 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:706 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:730 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:733 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:177 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:410 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:65 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 @@ -95,22 +96,22 @@ msgstr "Ne fait strictement rien" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:29 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:217 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:261 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:273 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:120 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:127 #: /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/device.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:765 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:768 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:769 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:772 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:106 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:410 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:431 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:42 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:391 @@ -552,25 +553,25 @@ msgstr "" msgid "Unable to mount main memory (Error code: %d)" msgstr "Impossible de monter la mémoire principale (Code d'erreur: %d)" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:643 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:645 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:670 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:672 msgid "The reader has no storage card in this slot." msgstr "Le lecteur n'a aucune carte mémoire dans cette fente." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:647 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:674 msgid "Selected slot: %s is not supported." msgstr "La fente choisie %s n'est pas supportée." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:671 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:698 msgid "There is insufficient free space in main memory" msgstr "Espace insuffisant dans la mémoire principale" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:673 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:675 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:700 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:702 msgid "There is insufficient free space on the storage card" msgstr "Espace insuffisant sur la carte mémoire" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:686 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:713 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:434 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 #: /home/kovid/work/calibre/src/calibre/library/database2.py:1007 @@ -897,7 +898,7 @@ msgid "" "The line height in pts. Controls spacing between consecutive lines of text. " "By default no line height manipulation is performed." msgstr "" -"La hauteur de ligne en pts. Contrôle l'espacement entre des lignes " +"Hauteur de la ligne en pts. Contrôle l'interligne entre des lignes " "consécutives de texte. Par défaut aucune manipulation sur la hauteur de " "ligne n'est effectué." @@ -1075,6 +1076,10 @@ msgid "" "1.5em. Spacing removal will not work if the source file does not use " "paragraphs (

or

tags)." msgstr "" +"Supprimer l'interligne entre les paragraphes. Positionne aussi une " +"indentation sur les paragraphes de 1.5em. La suppression de l'interligne ne " +"fonctionnera pas si le fichier source n'utilise pas les paragraphes " +"(étiquettes

or

)." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:315 msgid "" @@ -1089,7 +1094,7 @@ msgid "" "Insert a blank line between paragraphs. Will not work if the source file " "does not use paragraphs (

or

tags)." msgstr "" -"Insérer une ligne vide entre les paragraphes. Ne fonctionnera pas si le " +"Insérer une ligne blanche entre les paragraphes. Ne fonctionnera pas si le " "fichier source n'utilise pas de paragraphes. (étiquettes

ou

)" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:328 @@ -1288,7 +1293,7 @@ msgstr "" "avez pas spécifié une, une couverture par défaut est générée avec le titre, " "les auteurs, etc. Cette option désactive la génération de cette couverture." -#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:122 +#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:124 #: /home/kovid/work/calibre/src/calibre/ebooks/pml/pmlml.py:111 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:77 @@ -1596,7 +1601,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:104 msgid "Add extra spacing below the header. Default is %default pt." msgstr "" -"Ajouter un espace supplémentaire sous l'en-tête. Par défaut : %default pt." +"Ajouter un interligne supplémentaire sous l'en-tête. Par défaut : %default " +"pt." #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:107 msgid "" @@ -1673,7 +1679,7 @@ msgstr "Producteur" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:71 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:64 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:349 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:92 msgid "Comments" msgstr "Commentaires" @@ -1682,7 +1688,7 @@ msgstr "Commentaires" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:338 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1012 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1072 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:60 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:94 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Tags" msgstr "Etiquettes" @@ -1690,7 +1696,7 @@ msgstr "Etiquettes" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:372 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:166 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:354 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:93 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Series" msgstr "Séries" @@ -2077,6 +2083,9 @@ msgid "" "Normally calibre treats blank lines as paragraph markers. With this option " "it will assume that every line represents a paragraph instead." msgstr "" +"Normalement, calibre traite les lignes blanches comme des marqueurs de " +"paragraphes. Avec cette option, il sera alors considéré que chaque ligne " +"représente un paragraphe." #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/input.py:26 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:26 @@ -2086,6 +2095,11 @@ msgid "" "spaces) represents a paragraph. Paragraphs end when the next line that " "starts with an indent is reached." msgstr "" +"Normalement, calibre traite les lignes blanches comme des marqueurs de " +"paragraphes. Avec cette option, il sera alors considéré que chaque ligne " +"débutant par une indentation (soit une tabulation ou 2 espace ou plus) " +"représente un paragraphe. Les paragraphes se terminent quand la prochaine " +"ligne qui débute avec une indentation est atteinte." #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/output.py:23 msgid "Format to use inside the pdb container. Choices are:" @@ -2406,7 +2420,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:54 msgid "Do not add a blank line between paragraphs." -msgstr "" +msgstr "Ne pas ajouter une ligne blanche entre les paragraphes" #: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:41 msgid "" @@ -2530,15 +2544,15 @@ msgstr "Nombre maximum de processus de travail en attente" msgid "Copied" msgstr "Copié" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy" msgstr "Copier" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy to Clipboard" msgstr "Copier dans le Presse-papiers" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:386 msgid "Choose Files" msgstr "" @@ -2563,7 +2577,7 @@ msgid "The specified directory could not be processed." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:195 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:482 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:486 msgid "No books" msgstr "Aucun livre" @@ -2779,14 +2793,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:501 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:128 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:131 @@ -2887,7 +2901,7 @@ msgstr "&Hauteur de la ligne:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:93 msgid "Remove &spacing between paragraphs" -msgstr "&Supprimer l'espacement entre les paragraphes" +msgstr "&Supprimer l'interligne entre les paragraphes" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:94 msgid "No text &justification" @@ -2915,7 +2929,7 @@ msgstr "&Désactiver le redimensionnement de la taille de fonte" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:100 msgid "Insert &blank line" -msgstr "Insérer une ligne vide" +msgstr "Insérer une ligne blanche" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:101 msgid "Extra &CSS" @@ -2988,38 +3002,38 @@ msgstr "" "métadonnées que possible." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:96 msgid "Choose cover for " msgstr "Choisir la couverture pour " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:159 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:102 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 msgid "Cannot read" msgstr "Impossible de lire" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:104 msgid "You do not have permission to read the file: " msgstr "Vous n'avez pas les permissions nécessaires pour lire ce fichier: " #: /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/dialogs/metadata_single.py:111 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 msgid "Error reading file" msgstr "Erreur à la lecture du fichier" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:113 msgid "

There was an error reading from file:
" msgstr "

Il y a eu une erreur à la lecture du fichier :
" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:121 msgid " is not a valid picture" msgstr " n'est pas une image vailde" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 msgid "Book Cover" msgstr "Couverture du livre" @@ -3028,28 +3042,28 @@ msgid "Use cover from &source file" msgstr "Utiliser la couverture du fichier &source" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 msgid "Change &cover image:" msgstr "Modifier l'image de la &couverture:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 msgid "Browse for an image to use as the cover of this book." msgstr "Rechercher une image à utiliser en tant que couverture du livre." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 msgid "&Title: " msgstr "&Titre : " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 msgid "Change the title of this book" msgstr "Modifie le titre du livre" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:135 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 msgid "&Author(s): " msgstr "&Auteurs : " @@ -3067,18 +3081,18 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:143 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 msgid "&Publisher: " msgstr "&Editeur : " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 msgid "Ta&gs: " msgstr "Ta&gs : " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:145 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

They can be any words or phrases, separated by commas." @@ -3088,7 +3102,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:150 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 msgid "&Series:" msgstr "&Séries :" @@ -3096,13 +3110,13 @@ msgstr "&Séries :" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:151 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:372 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 msgid "List of known series. You can add new series." msgstr "Liste de séries connues. Vous pouvez ajouter de nouvelles séries." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 msgid "Book " msgstr "Livre " @@ -3217,7 +3231,7 @@ msgid "RB Output" msgstr "Sortie RB" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1329 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 msgid "Choose the format to view" msgstr "Choisir le format à afficher" @@ -3300,12 +3314,12 @@ msgid "Footer regular expression:" msgstr "Expression régulière pour le pied de page:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:56 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:72 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 msgid "Invalid regular expression" msgstr "Expression régulière invalide" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:74 msgid "Invalid regular expression: %s" msgstr "Expression régulière invalide: %s" @@ -3535,184 +3549,184 @@ msgstr "Pas de détail disponible." msgid "Device no longer connected." msgstr "L'appareil n'est plus connecté." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:199 msgid "Get device information" msgstr "Lit les informations de l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:210 msgid "Get list of books on device" msgstr "Lire la liste de livres à partir de l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:219 msgid "Send metadata to device" msgstr "Envoie les métadonnées vers l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:228 msgid "Upload %d books to device" msgstr "Envoie le livre %d dans l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:243 msgid "Delete books from device" msgstr "Supprimer les livres dans l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:260 msgid "Download books from device" msgstr "Télécharger les livres à partir de l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "View book on device" msgstr "Afficher le livre sur l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:273 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:277 msgid "and delete from library" msgstr "et supprimer de la librairie" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:298 msgid "Set default send to device action" msgstr "Indiquer l'action par défaut pour 'envoyer au lecteur'" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:299 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:303 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:310 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:312 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:314 msgid "Email to" msgstr "Email vers" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:321 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:328 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 msgid "Send to main memory" msgstr "Envoyer vers la mémoire du lecteur" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:323 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:330 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:334 msgid "Send to storage card A" msgstr "Envoyer à la carte mémoire A" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 msgid "Send to storage card B" msgstr "Envoyer vers la carte mémoire B" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 msgid "Send specific format to main memory" msgstr "Envoyer le format spécifique vers la mémoire principale" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:341 msgid "Send specific format to storage card A" msgstr "Envoyer le format spécifique vers la carte mémoire A" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:343 msgid "Send specific format to storage card B" msgstr "Envoyer le format spécifique vers la carte mémoire B" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:487 msgid "selected to send" msgstr "sélectionné pour l'envoi" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:492 msgid "Choose format to send to device" msgstr "Choisir le format à envoyer au lecteur" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:495 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 msgid "No device" msgstr "Aucun appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 msgid "Cannot send: No device is connected" msgstr "Impossible d'envoyer: Aucun appareil connecté" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:507 msgid "No card" msgstr "Aucune carte" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:504 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:508 msgid "Cannot send: Device has no storage card" msgstr "Impossible d'envoyer: L'appareil n'a pas de carte mémoire" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:546 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 msgid "E-book:" msgstr "E-book:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:553 msgid "Attached, you will find the e-book" msgstr "En pièce jointe, vous trouverez l'ebook" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:554 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:177 msgid "by" msgstr "par" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:555 msgid "in the %s format." msgstr "dans le format %s." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:568 msgid "Sending email to" msgstr "Envoi d'un email à" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:594 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:601 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:806 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:813 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:696 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:817 msgid "No suitable formats" msgstr "Pas de format convenable" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:599 msgid "Auto convert the following books before sending via email?" msgstr "" "Convertir automatiquement les livres suivants avant de les envoyer par email " "?" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" "Impossible d'envoyer par email les livres suivants car aucun format " "convenable n'a été trouvé :" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:621 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:625 msgid "Failed to email books" msgstr "L'envoi par email des livres a échoué" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 msgid "Failed to email the following books:" msgstr "L'envoi par email des livres suivants a échoué:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:630 msgid "Sent by email:" msgstr "Envoyer par email:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:653 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:657 msgid "News:" msgstr "News:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:658 msgid "Attached is the" msgstr "Le fichier attaché est" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:665 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 msgid "Sent news to" msgstr "Envoi des News vers" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:693 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:807 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:697 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:811 msgid "Auto convert the following books before uploading to the device?" msgstr "" "Convertir automatiquement les livres suivants avant de les télécharger dans " "l'appareil ?" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:728 msgid "Sending news to device." msgstr "Envoi les News vers l'appareil." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:776 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:780 msgid "Sending books to device." msgstr "Envoie les livres dans l'appareil." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:814 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:818 msgid "" "Could not upload the following books to the device, as no suitable formats " "were found. Convert the book(s) to a format supported by your device first." @@ -3721,11 +3735,11 @@ msgstr "" "convenable n'a été trouvé. Convertissez avant le(s) livre(s) vers un format " "supporté par votre appareil." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 msgid "No space on device" msgstr "Le lecteur électronique n'a plus d'espace mémoire disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:863 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:867 msgid "" "

Cannot upload books to device there is no more free space available " msgstr "" @@ -3746,7 +3760,7 @@ msgstr "Utiliser les sous-répertoires" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:86 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:345 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1007 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:90 msgid "Path" msgstr "Chemin" @@ -3756,7 +3770,7 @@ msgstr "Chemin" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:344 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:91 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Formats" msgstr "Formats" @@ -3870,7 +3884,7 @@ msgstr "Nouvelle adresse email" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:461 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:788 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:140 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1005 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1032 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "Erreur" @@ -3945,7 +3959,7 @@ msgid "Access log:" msgstr "Journal des accès:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:645 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:576 msgid "Failed to start content server" msgstr "A échoué lors du démarrage du serveur de contenu" @@ -4518,7 +4532,7 @@ msgid "Edit Meta information" msgstr "Editer les informations de Métadonnées" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 msgid "Meta information" msgstr "Informations métadonnées" @@ -4531,7 +4545,7 @@ msgid "Author s&ort: " msgstr "Tri par auteur: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:138 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." @@ -4540,19 +4554,19 @@ msgstr "" "Dickens peut être classé comme Dickens, Charles." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 msgid "&Rating:" msgstr "&Note :" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:140 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:141 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Rating of this book. 0-5 stars" msgstr "Note de ce livre. de 0 à 5 étoiles" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:142 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 msgid " stars" msgstr " étoiles" @@ -4562,8 +4576,8 @@ msgstr "Ajouter des étiquettes: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:146 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:147 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 msgid "Open Tag Editor" msgstr "Ouvre l'éditeur de mots-clefs" @@ -4580,166 +4594,179 @@ msgstr "" msgid "Remove &format:" msgstr "Supprimer le &format:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 msgid "Not a valid picture" msgstr "N'est pas une image valide" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:133 +msgid "Choose formats for " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:134 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:872 +msgid "Books" +msgstr "Livres" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:160 +msgid "You do not have permission to read the following files:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 msgid "No format selected" msgstr "Aucun format sélectionné" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 msgid "Could not read metadata" msgstr "Impossible de lire les métadonnées" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 msgid "Could not read metadata from %s format" msgstr "Impossible de lire les métadonnées à partir du format %s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:224 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:247 msgid "Could not read cover" msgstr "Impossible de lire la couverture" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:242 msgid "Could not read cover from %s format" msgstr "Impossible de lire la couverture à partir du format %s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:248 msgid "The cover in the %s format is invalid" msgstr "La couverture du format %s est invalide" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:285 msgid "Abort the editing of all remaining books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:488 msgid "Downloading cover..." msgstr "Télécharge la couverture..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:479 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:484 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:511 msgid "Cannot fetch cover" msgstr "Erreur à la récupération de l'image de couverture" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:480 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:491 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:512 msgid "Could not fetch cover.
" msgstr "Erreur à la récupération de l'image de couverture.
" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:481 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:502 msgid "The download timed out." msgstr "Timeout lors du téléchargement." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:485 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:506 msgid "Could not find cover for this book. Try specifying the ISBN first." msgstr "" "Impossible de trouver la couverture de ce livre. Essayez déjà de spécifier " "le numéro ISBN." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:497 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:518 msgid "Bad cover" msgstr "Mauvaise couverture" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:498 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:519 msgid "The cover is not a valid picture" msgstr "La couverture n'est pas une image valide" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:538 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 msgid "Cannot fetch metadata" msgstr "Impossible de récupérer les métadonnées" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:539 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 msgid "You must specify at least one of ISBN, Title, Authors or Publisher" msgstr "" "Vous devez spécifier au moins un ISBN, un titre, des auteurs ou un éditeur" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:612 msgid "Permission denied" msgstr "Permission refusée" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:613 msgid "Could not open %s. Is it being used by another program?" msgstr "" "Impossible d'ouvrir %s. Est-il en cours d'utilisation par un autre programme " "?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 msgid "Edit Meta Information" msgstr "Editer les métadonnées" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 msgid "Swap the author and title" msgstr "Inverse l'auteur et le titre" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 msgid "Author S&ort: " msgstr "Clé de tr&i d'auteur: " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 msgid "" "Automatically create the author sort entry based on the current author entry" msgstr "" "Crée automatiquement la vedette de nom d'auteur à partir du nom d'auteur " "courant." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 msgid "Remove unused series (Series that have no books)" msgstr "" "Supprimer les séries inutilisées (Les séries qui ne possèdent aucun livres)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 msgid "IS&BN:" msgstr "I&SBN :" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Publishe&d:" msgstr "Publié:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 msgid "dd MMM yyyy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 msgid "&Date:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 msgid "&Comments" msgstr "&Commentaires" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 msgid "&Fetch metadata from server" msgstr "&Récupérer les métadonnées à partir du serveur" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Available Formats" msgstr "Formats disponibles" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 msgid "Add a new format for this book to the database" msgstr "Ajouter un nouveau format dans la base de données pour ce livre" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 msgid "Remove the selected formats for this book from the database." msgstr "Retire les formats sélectionnés de ce livre de la base de données." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 msgid "Set the cover for the book from the selected format" msgstr "Indiquer la couverture pour le livre à partir du format sélectionné" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 msgid "Update metadata from the metadata in the selected format" msgstr "" "Mettre à jour les métadonnées à partir des métadonnées du format sélectionné" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 msgid "Reset cover to default" msgstr "Revenir à la couverture par défaut" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 msgid "Download &cover" msgstr "Télécharger la &couverture" @@ -5302,11 +5329,11 @@ msgstr "Expression régulière (?P<title>)" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:79 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:83 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:88 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:93 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:96 msgid "No match" msgstr "Pas de correspondance" @@ -5401,7 +5428,7 @@ msgstr "Note" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:343 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:408 msgid "None" msgstr "Aucun" @@ -5538,31 +5565,31 @@ msgstr "" msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" msgstr "%s: %s par Kovid Goyal %%(version)s
%%(device)s

" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "Edit metadata individually" msgstr "Editer les métadonnées individuellement" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 msgid "Edit metadata in bulk" msgstr "Editer les métadonnées par lot" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 msgid "Download metadata and covers" msgstr "Télécharger les métadonnées et les couvertures" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:232 msgid "Download only metadata" msgstr "Télécharger seulement les métadonnées" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:233 msgid "Download only covers" msgstr "Télécharger seulement les couvertures" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 msgid "Add books from a single directory" msgstr "Ajouter des livres à partir d'un répertoire" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:237 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" @@ -5570,7 +5597,7 @@ msgstr "" "Ajouter des livres par répertoires et sous-répertoires. (Un livre par " "répertoire, chaque fichier représente le même livre dans un format différent)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:240 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" @@ -5578,85 +5605,85 @@ msgstr "" "Ajouter des livres par répertoires et sous-répertoires. (Plusieurs livres " "par répertoire, chaque fichier est un livre différent)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:243 msgid "Add Empty book. (Book entry with no formats)" msgstr "Ajouter un livre vide. (Une entrée sans aucun format)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:278 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:353 msgid "Save to disk" msgstr "Sauvegarder sur le disque" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 msgid "Save to disk in a single directory" msgstr "Sauvegarder sur le disque dans un seul répertoire" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1431 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:282 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 msgid "Save only %s format to disk" msgstr "Sauvegarder seulement le format %s vers le disque" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:290 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:359 msgid "View" msgstr "Visualiser" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "View specific format" msgstr "Visualiser le format spécifique" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:315 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:317 msgid "Convert individually" msgstr "Convertir individuellement" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:316 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:318 msgid "Bulk convert" msgstr "Convertir par lot" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:333 msgid "Run welcome wizard" msgstr "Démarrer l'assistant de bienvenue" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:367 msgid "Similar books..." msgstr "Livres similaires..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:425 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:426 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 msgid "Bad database location" msgstr "Mauvais emplacement pour la base" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:430 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:478 msgid "Calibre Library" msgstr "Librairie calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:438 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1574 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1603 msgid "Choose a location for your ebook library." msgstr "Choisir un emplacement pour votre librairie d'ebook" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:619 msgid "Browse by covers" msgstr "Navigation par couvertures" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 msgid "Device: " msgstr "Appareil: " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:728 msgid " detected." msgstr " detecté." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:748 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:750 msgid "Connected " msgstr "Connecté: " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:760 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:762 msgid "Device database corrupted" msgstr "Base de données d'appareils corrompue" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:763 msgid "" "\n" "

The database of books on the reader is corrupted. Try the " @@ -5685,60 +5712,56 @@ msgstr "" " \n" " " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:837 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:907 msgid "Uploading books to device." msgstr "Téléchargement des livres vers l'appareil." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:845 -msgid "Books" -msgstr "Livres" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:846 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:873 msgid "EPUB Books" msgstr "Livres EPUB" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:847 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:874 msgid "LRF Books" msgstr "Livres LRF" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:848 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:875 msgid "HTML Books" msgstr "Livres HTML" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:849 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:876 msgid "LIT Books" msgstr "Livres LIT" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:850 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:877 msgid "MOBI Books" msgstr "Livres MOBI" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:851 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:878 msgid "Text books" msgstr "Livres Texte" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:852 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:879 msgid "PDF Books" msgstr "Livres PDF" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 msgid "Comics" msgstr "Bande Dessinées" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:854 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:881 msgid "Archives" msgstr "Archives" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:916 msgid "Failed to read metadata" msgstr "Impossible de lire les métadonnées" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:917 msgid "Failed to read metadata from the following" msgstr "Impossible de lire les métadonnées à partir de" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:909 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 msgid "" "The selected books will be permanently deleted and the files removed " "from your computer. Are you sure?" @@ -5746,111 +5769,111 @@ msgstr "" "Les livres sélectionnés vont être supprimés définitivement et les " "fichiers seront supprimés de votre ordinateur. Etes-vous sûr ?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:963 msgid "Deleting books from device." msgstr "Suppression des livres dans l'appareil" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:967 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:994 msgid "Cannot download metadata" msgstr "Impossible de télécharger les métadonnées" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:968 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1016 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1049 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1074 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1186 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1043 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1101 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1213 msgid "No books selected" msgstr "Aucun livre sélectionné" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "covers" msgstr "couvertures" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:977 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "metadata" msgstr "métadonnées" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:979 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1006 msgid "Downloading %s for %d book(s)" msgstr "Télécharge les livres %s sur %d" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1000 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1027 msgid "Failed to download some metadata" msgstr "Le téléchargement d'une partie des métadonnées a échoué" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1001 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1028 msgid "Failed to download metadata for the following:" msgstr "Le téléchargement des métadonnées a échoué pour :" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1031 msgid "Failed to download metadata:" msgstr "Le téléchargement des métadonnées a échoué:" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1015 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1048 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1075 msgid "Cannot edit metadata" msgstr "Impossible d'éditer les métadonnées" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1073 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1100 msgid "Cannot save to disk" msgstr "Impossible de sauvegarder sur le disque" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 msgid "Choose destination directory" msgstr "Choisir le répertoire de destination" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1130 msgid "Error while saving" msgstr "Erreur pendant la sauvegarde" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1104 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1131 msgid "There was an error while saving." msgstr "Il y a eu une erreur lors de la sauvegarde." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1111 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1112 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1138 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1139 msgid "Could not save some books" msgstr "Impossible de sauvegarder certains livres" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1113 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1140 msgid "Click the show details button to see which ones." msgstr "Cliquer le bouton afficher les détails pour voir lesquels." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1132 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1159 msgid "Fetching news from " msgstr "Récupération des News de " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1145 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1172 msgid " fetched." msgstr " récupéré." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 msgid "Cannot convert" msgstr "Conversion impossible" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1241 msgid "Starting conversion of %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1342 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1371 msgid "No book selected" msgstr "Aucun livre sélectionné" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1323 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1373 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1402 msgid "Cannot view" msgstr "Impossible de visualiser" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1341 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1370 msgid "Cannot open folder" msgstr "Impossible d'ouvrir le répertoire" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1387 msgid "Multiple Books Selected" msgstr "Plusieurs livres sélectionnés" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1359 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1388 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 " @@ -5862,32 +5885,32 @@ msgstr "" "réponses de l'ordinateur. Une fois démarré le processus ne peut pas être " "arrêté avant la fin. Voulez-vous continuer ?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1374 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1403 msgid "%s has no available formats." msgstr "%s n'a pas de format disponible." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1415 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1444 msgid "Cannot configure" msgstr "Configuration impossible" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1416 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1445 msgid "Cannot configure while there are running jobs." msgstr "Impossible de configurer pendant que des travaux sont en cours." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1459 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1488 msgid "No detailed info available" msgstr "Pas d'information détaillée disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1489 msgid "No detailed information is available for books on the device." msgstr "" "Pas d'information détaillée disponible pour les livres dans l'appareil." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1512 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1541 msgid "Error talking to device" msgstr "Erreur pendant la communication avec le lecteur électronique" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1513 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1542 msgid "" "There was a temporary error talking to the device. Please unplug and " "reconnect the device and or reboot." @@ -5896,30 +5919,33 @@ msgstr "" "lecteur électronique. Veuillez déconnecter et reconnecter le lecteur " "électronique et redémarrer." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1536 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1554 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1565 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 msgid "Conversion Error" msgstr "Erreur lors de la conversion" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1537 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1566 msgid "" "

Could not convert: %s

It is a DRMed book. You must " "first remove the DRM using third party tools." msgstr "" +"

Impossible de convertir : %s

C'est un livre avec DRM. Vous devez d'abord enlever les DRM avec des outils " +"tiers." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1555 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 msgid "Failed" msgstr "Échoué" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1612 msgid "Invalid library location" msgstr "Emplacement de la librairie invalide" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1613 msgid "Could not access %s. Using %s as the library." msgstr "Impossible d'accéder à %s. Utilise %s comme librairie." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1631 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1660 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." @@ -5928,11 +5954,11 @@ msgstr "" "Si vous le trouvez utile, pensez à donner afin de supporter son " "développement." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1655 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1684 msgid "There are active jobs. Are you sure you want to quit?" msgstr "Il y a des travaux actifs. Voulez-vous vraiment finir ?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1658 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1687 msgid "" " is communicating with the device!
\n" " Quitting may cause corruption on the device.
\n" @@ -5943,11 +5969,11 @@ msgstr "" "l'appareil.
\n" " Êtes-vous sûr de vouloir quitter ?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1662 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1691 msgid "WARNING: Active jobs" msgstr "ATTENTION: Travaux actifs" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1713 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1742 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -5955,7 +5981,7 @@ msgstr "" "continuera à tourner dans la zone de notification. Pour le fermer, choisir " "Quitter dans le menu contextuel de la zone de notification." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1732 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 msgid "" "Latest version: %s" @@ -5963,11 +5989,11 @@ msgstr "" "Dernière version: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1740 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1769 msgid "Update available" msgstr "Mise à jour disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1741 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1770 msgid "" "%s has been updated to version %s. See the new features. " @@ -5977,52 +6003,52 @@ msgstr "" "href=\"http://calibre.kovidgoyal.net/wiki/Changelog\">Nouveautés. " "Visiter la page de téléchargement ?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1759 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1788 msgid "Use the library located at the specified path." msgstr "Utiliser la librairie présente dans le répertoire spécifié." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1790 msgid "Start minimized to system tray." msgstr "Démarrer en mode minimisé dans la zone de notification." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1763 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1792 msgid "Log debugging information to console" msgstr "Loggue les informations de débogage dans la console" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1765 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1794 msgid "Do not check for updates" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1813 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1842 msgid "If you are sure it is not running" msgstr "Si vous êtes sûr qu'il n'est pas démarré" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1815 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1844 msgid "Cannot Start " msgstr "Impossible de lancer " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1816 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1845 msgid "%s is already running." msgstr "%s est déjà démarré." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1819 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1848 msgid "may be running in the system tray, in the" msgstr "peut être démarré dans la zone de notification, dans la" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1821 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1850 msgid "upper right region of the screen." msgstr "région en haut et à droite de l'écran." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1823 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1852 msgid "lower right region of the screen." msgstr "région en bas et à droite de l'écran." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1826 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1855 msgid "try rebooting your computer." msgstr "Essayer de redémarrer l'ordinateur." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1828 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1840 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1857 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1869 msgid "try deleting the file" msgstr "Essayer de supprimer le fichier" @@ -6182,27 +6208,27 @@ msgstr "Le livre n'a ni titre ni ISBN" msgid "No matches found for this book" msgstr "Aucune correspondance pour ce livre" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:60 msgid "Search" msgstr "Trouver" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:149 msgid "Jobs:" msgstr "Travaux :" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:158 msgid "Click to see list of active jobs." msgstr "Cliquer pour voir la liste des travaux actifs." -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to browse books by their covers" msgstr "Cliquer pour naviguer dans les livres à l'aide des couvertures" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to turn off Cover Browsing" msgstr "Cliquer pour arrêter la navigation par couverture" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:193 msgid "" "

Browsing books by their covers is disabled.
Import of pictureflow " "module failed:
" @@ -6210,7 +6236,7 @@ msgstr "" "

L'affichage des livres par leurs couvertures est désactivé.
L'import " "du module de flux d'image a échoué:
" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:201 msgid "Click to browse books by tags" msgstr "Cliquer pour naviguer dans les livres à l'aide des étiquettes" @@ -6613,7 +6639,7 @@ msgstr "Imprimer" msgid "Print eBook" msgstr "Imprimer un ebook" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 msgid "" "Library\n" "%d\n" @@ -6623,7 +6649,7 @@ msgstr "" "%d\n" "Livres" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 msgid "" "Reader\n" "%s\n" @@ -6633,7 +6659,7 @@ msgstr "" "%s\n" "disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:200 msgid "" "Card A\n" "%s\n" @@ -6643,7 +6669,7 @@ msgstr "" "%s\n" "disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:201 msgid "" "Card B\n" "%s\n" @@ -6653,42 +6679,42 @@ msgstr "" "%s\n" "disponible" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:206 msgid "Click to see the books available on your computer" msgstr "Cliquer pour voir les livres disponibles sur votre ordinateur" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:207 msgid "Click to see the books in the main memory of your reader" msgstr "" "Cliquer pour voir les livres dans la mémoire principale de votre lecteur" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:208 msgid "Click to see the books on storage card A in your reader" msgstr "" "Cliquer pour voir les livres dans la carte mémoire A de votre lecteur" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:209 msgid "Click to see the books on storage card B in your reader" msgstr "" "Cliquer pour voir les livres dans la carte mémoire B de votre lecteur" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:466 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:498 msgid "Change Case" msgstr "Modifier la casse" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:499 msgid "Upper Case" msgstr "Majuscule" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:468 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:500 msgid "Lower Case" msgstr "Minuscule" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:469 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:501 msgid "Swap Case" msgstr "Basculer la casse" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:470 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:502 msgid "Title Case" msgstr "Casse du titre" @@ -7548,44 +7574,44 @@ msgstr "" "Chaque fois que vous passez des arguments comportant des espaces à %prog , " "entourer l'argument à l'aide de guillemets." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:555 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 msgid "Path to the database in which books are stored" msgstr "Répertoire de la base dans laquelle les livres sont stockés" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:557 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 msgid "Pattern to guess metadata from filenames" msgstr "Modèle de détection de métadonnées à partir de noms de fichiers." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 msgid "Access key for isbndb.com" msgstr "Clef d'accès pour isbndb.com" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 msgid "Default timeout for network operations (seconds)" msgstr "Timeout par défaut pour les opérations réseaux (en secondes)" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 msgid "Path to directory in which your library of books is stored" msgstr "" "Chemin vers le répertoire où est enregistrée votre librairie de livres" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:569 msgid "The language in which to display the user interface" msgstr "Langue utilisée pour l'affichage de l'interface utilisateur" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 msgid "The default output format for ebook conversions." msgstr "Le format de sortie par défaut pour les conversions d'ebook." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 msgid "Ordered list of formats to prefer for input." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:573 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:577 msgid "Read metadata from files" msgstr "Lire les métadonnées à partir des fichiers" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:579 msgid "The priority of worker processes" msgstr "Priorité du processus de travail" From a190faea9c8a84b2854fcd68918e7d5e511191b4 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 12 Oct 2009 07:20:09 -0600 Subject: [PATCH 07/41] IGN:Switch primary hosting of calibre download files from Mobileread to Google code --- README | 2 + setup/commands.py | 9 +- setup/publish.py | 5 +- setup/pypi.py | 2 - setup/upload.py | 213 +++++++++++++++++- src/calibre/__init__.py | 12 + src/calibre/debug.py | 10 +- src/calibre/trac/plugins/download.py | 7 +- src/calibre/trac/plugins/templates/linux.html | 2 +- 9 files changed, 240 insertions(+), 22 deletions(-) diff --git a/README b/README index 6697b3f7f9..945592e7ba 100644 --- a/README +++ b/README @@ -15,3 +15,5 @@ bzr branch lp:calibre To update your copy of the source code: bzr merge +Tarballs of the source code for each release are now available \ +at http://code.google.com/p/calibre-ebook diff --git a/setup/commands.py b/setup/commands.py index ba870072d6..0a09efa935 100644 --- a/setup/commands.py +++ b/setup/commands.py @@ -16,7 +16,8 @@ __all__ = [ 'sdist', 'manual', 'tag_release', 'upload_rss', 'pypi_register', 'pypi_upload', 'upload_to_server', - 'upload_user_manual', 'upload_installers', 'upload_demo', + 'upload_user_manual', 'upload_to_mobileread', 'upload_demo', + 'upload_to_sourceforge', 'upload_to_google_code', 'linux32', 'linux64', 'linux', 'linux_freeze', 'osx32_freeze', 'osx32', 'osx', 'rsync', 'win32_freeze', 'win32', 'win', @@ -59,11 +60,13 @@ stage3 = Stage3() publish = Publish() from setup.upload import UploadUserManual, UploadInstallers, UploadDemo, \ - UploadToServer + UploadToServer, UploadToSourceForge, UploadToGoogleCode upload_user_manual = UploadUserManual() -upload_installers = UploadInstallers() +upload_to_mobileread = UploadInstallers() upload_demo = UploadDemo() upload_to_server = UploadToServer() +upload_to_sourceforge = UploadToSourceForge() +upload_to_google_code = UploadToGoogleCode() from setup.installer import Rsync rsync = Rsync() diff --git a/setup/publish.py b/setup/publish.py index cb8f5e8b06..647b26072c 100644 --- a/setup/publish.py +++ b/setup/publish.py @@ -44,8 +44,9 @@ class Stage3(Command): description = 'Stage 3 of the publish process' sub_commands = ['upload_rss', 'upload_user_manual', 'upload_demo', - 'pypi_upload', 'tag_release', 'upload_installers', - 'upload_to_server'] + 'upload_to_sourceforge', 'upload_to_google_code', 'tag_release', + 'upload_to_server', 'upload_to_mobileread', +] class Publish(Command): diff --git a/setup/pypi.py b/setup/pypi.py index 2d83309b76..7c5d1a54d5 100644 --- a/setup/pypi.py +++ b/setup/pypi.py @@ -124,8 +124,6 @@ class PyPIRegister(Command): auth) self.info('Server response (%s): %s' % (code, result)) - - def verify_metadata(self): ''' Send the metadata to the package index server to be checked. ''' diff --git a/setup/upload.py b/setup/upload.py index e0bec83a32..17411e6f04 100644 --- a/setup/upload.py +++ b/setup/upload.py @@ -6,10 +6,11 @@ __license__ = 'GPL v3' __copyright__ = '2009, Kovid Goyal ' __docformat__ = 'restructuredtext en' -import os, re, cStringIO +import os, re, cStringIO, base64, httplib, subprocess from subprocess import check_call +from tempfile import NamedTemporaryFile -from setup import Command, __version__, installer_name +from setup import Command, __version__, installer_name, __appname__ PREFIX = "/var/www/calibre.kovidgoyal.net" DOWNLOADS = PREFIX+"/htdocs/downloads" @@ -21,6 +22,214 @@ TXT2LRF = "src/calibre/ebooks/lrf/txt/demo" MOBILEREAD = 'ftp://dev.mobileread.com/calibre/' +def installers(): + installers = list(map(installer_name, ('dmg', 'msi', 'tar.bz2'))) + installers.append(installer_name('tar.bz2', is64bit=True)) + installers.insert(0, 'dist/%s-%s.tar.gz'%(__appname__, __version__)) + return installers + +def installer_description(fname): + if fname.endswith('.tar.gz'): + return 'Source code' + if fname.endswith('.tar.bz2'): + bits = '32' if 'i686' in fname else '64' + return bits + 'bit Linux binary' + if fname.endswith('.msi'): + return 'Windows installer' + if fname.endswith('.dmg'): + return 'OS X dmg' + return 'Unknown file' + + +class UploadToGoogleCode(Command): + + USERNAME = 'kovidgoyal' + # Password can be gotten by going to + # http://code.google.com/hosting/settings + # while logged into gmail + PASSWORD_FILE = os.path.expanduser('~/.googlecodecalibre') + OFFLINEIMAP = os.path.expanduser('~/work/kde/conf/offlineimap/rc') + GPATHS = '/var/www/status.calibre-ebook.com/googlepaths' + UPLOAD_HOST = 'calibre-ebook.googlecode.com' + FILES_LIST = 'http://code.google.com/p/calibre-ebook/downloads/list' + + def run(self, opts): + self.opts = opts + self.password = open(self.PASSWORD_FILE).read().strip() + self.paths = {} + self.old_files = self.get_files_hosted_by_google_code() + + for fname in installers(): + self.info('Uploading', fname) + typ = 'Type-Source' if fname.endswith('.gz') else 'Type-Installer' + ext = os.path.splitext(fname)[1][1:] + op = 'OpSys-'+{'msi':'Windows','dmg':'OSX','bz2':'Linux','gz':'All'}[ext] + desc = installer_description(fname) + path = self.upload(os.path.abspath(fname), desc, + labels=[typ, op, 'Featured']) + self.info('\tUploaded to:', path) + self.paths[os.path.basename(fname)] = path + self.info('Updating path map') + self.info(repr(self.paths)) + raw = subprocess.Popen(['ssh', 'divok', 'cat', self.GPATHS], + stdout=subprocess.PIPE).stdout.read() + paths = eval(raw) + paths.update(self.paths) + rem = [x for x in paths if __version__ not in x] + for x in rem: paths.pop(x) + raw = ['%r : %r,'%(k, v) for k, v in paths.items()] + raw = '{\n\n%s\n\n}\n'%('\n'.join(raw)) + t = NamedTemporaryFile() + t.write(raw) + t.flush() + check_call(['scp', t.name, 'divok:'+self.GPATHS]) + self.br = self.login_to_gmail() + self.delete_old_files() + if len(self.get_files_hosted_by_google_code()) > len(installers()): + self.warn('Some old files were not deleted from Google Code') + + def login_to_gmail(self): + import mechanize + self.info('Logging into Gmail') + raw = open(self.OFFLINEIMAP).read() + pw = re.search(r'(?s)remoteuser = .*@gmail.com.*?remotepass = (\S+)', + raw).group(1).strip() + br = mechanize.Browser() + br.open('http://gmail.com') + br.select_form(nr=0) + br.form['Email'] = self.USERNAME + br.form['Passwd'] = pw + res = br.submit() + return br + + def get_files_hosted_by_google_code(self): + import urllib2 + from lxml import html + self.info('Getting existing files in google code') + raw = urllib2.urlopen(self.FILES_LIST).read() + root = html.fromstring(raw) + ans = {} + for a in root.xpath('//td[@class="vt id col_0"]/a[@href]'): + ans[a.text.strip()] = a.get('href') + return ans + + def delete_old_files(self): + self.info('Deleting old files from Google Code...') + for fname in self.old_files: + self.info('\tDeleting', fname) + self.br.open('http://code.google.com/p/calibre-ebook/downloads/delete?name=%s'%fname) + self.br.select_form(predicate=lambda x: 'delete.do' in x.action) + submit = self.br.form.find_control(name='delete') + res = self.br.submit(name='delete') + #from calibre import ipython + #ipython({'br':self.br, 'res':res}) + #return + + + + def encode_upload_request(self, fields, file_path): + BOUNDARY = '----------Googlecode_boundary_reindeer_flotilla' + CRLF = '\r\n' + + body = [] + + # Add the metadata about the upload first + for key, value in fields: + body.extend( + ['--' + BOUNDARY, + 'Content-Disposition: form-data; name="%s"' % key, + '', + value, + ]) + + # Now add the file itself + file_name = os.path.basename(file_path) + f = open(file_path, 'rb') + file_content = f.read() + f.close() + + body.extend( + ['--' + BOUNDARY, + 'Content-Disposition: form-data; name="filename"; filename="%s"' + % file_name, + # The upload server determines the mime-type, no need to set it. + 'Content-Type: application/octet-stream', + '', + file_content, + ]) + + # Finalize the form body + body.extend(['--' + BOUNDARY + '--', '']) + + return 'multipart/form-data; boundary=%s' % BOUNDARY, CRLF.join(body) + + def upload(self, fname, desc, labels=[]): + form_fields = [('summary', desc)] + form_fields.extend([('label', l.strip()) for l in labels]) + + content_type, body = self.encode_upload_request(form_fields, fname) + upload_uri = '/files' + auth_token = base64.b64encode('%s:%s'% (self.USERNAME, self.password)) + headers = { + 'Authorization': 'Basic %s' % auth_token, + 'User-Agent': 'Calibre googlecode.com uploader v0.1.0', + 'Content-Type': content_type, + } + + server = httplib.HTTPSConnection(self.UPLOAD_HOST) + server.request('POST', upload_uri, body, headers) + resp = server.getresponse() + server.close() + + if resp.status == 201: + return resp.getheader('Location') + + print 'Failed to upload with code %d and reason: %s'%(resp.status, + resp.reason) + raise Exception('Failed to upload '+fname) + + + + + +class UploadToSourceForge(Command): + + description = 'Upload release files to sourceforge' + + USERNAME = 'kovidgoyal' + PROJECT = 'calibre' + BASE = '/home/frs/project/c/ca/'+PROJECT + + def create(self): + self.info('Creating shell...') + check_call(['ssh', '-x', + '%s,%s@shell.sourceforge.net'%(self.USERNAME, self.PROJECT), + 'create']) + + @property + def rdir(self): + return self.BASE+'/'+__version__ + + def mk_release_dir(self): + self.info('Creating release directory...') + check_call(['ssh', '-x', + '%s,%s@shell.sourceforge.net'%(self.USERNAME, self.PROJECT), + 'mkdir', '-p', self.rdir]) + + def upload_installers(self): + for x in installers(): + if not os.path.exists(x): continue + self.info('Uploading', x) + check_call(['rsync', '-v', '-e', 'ssh -x', x, + '%s,%s@frs.sourceforge.net:%s'%(self.USERNAME, self.PROJECT, + self.rdir+'/')]) + + def run(self, opts): + self.opts = opts + self.create() + self.mk_release_dir() + self.upload_installers() + class UploadInstallers(Command): description = 'Upload any installers present in dist/' diff --git a/src/calibre/__init__.py b/src/calibre/__init__.py index ae5946bcb3..424f40382d 100644 --- a/src/calibre/__init__.py +++ b/src/calibre/__init__.py @@ -419,3 +419,15 @@ if isosx: except: import traceback traceback.print_exc() + +def ipython(user_ns=None): + if user_ns is None: + user_ns = locals() + from calibre.utils.config import config_dir + ipydir = os.path.join(config_dir, ('_' if iswindows else '.')+'ipython') + os.environ['IPYTHONDIR'] = ipydir + from IPython.Shell import IPShellEmbed + ipshell = IPShellEmbed(user_ns=user_ns) + ipshell() + + diff --git a/src/calibre/debug.py b/src/calibre/debug.py index 55e34c7963..f9ee3b0f44 100644 --- a/src/calibre/debug.py +++ b/src/calibre/debug.py @@ -190,14 +190,8 @@ def main(args=sys.argv): elif opts.develop_from is not None: develop_from(opts.develop_from) else: - from calibre.utils.config import config_dir - ipydir = os.path.join(config_dir, ('_' if iswindows else '.')+'ipython') - os.environ['IPYTHONDIR'] = ipydir - from IPython.Shell import IPShellEmbed - ipshell = IPShellEmbed() - ipshell() - - + from calibre import ipython + ipython() return 0 diff --git a/src/calibre/trac/plugins/download.py b/src/calibre/trac/plugins/download.py index 92ac83d779..87a1fce42d 100644 --- a/src/calibre/trac/plugins/download.py +++ b/src/calibre/trac/plugins/download.py @@ -6,7 +6,6 @@ import re, textwrap DEPENDENCIES = [ #(Generic, version, gentoo, ubuntu, fedora) ('python', '2.6', None, None, None), - ('setuptools', '0.6c5', 'setuptools', 'python-setuptools', 'python-setuptools-devel'), ('Python Imaging Library', '1.1.6', 'imaging', 'python-imaging', 'python-imaging'), ('libusb', '0.1.12', None, None, None), ('Qt', '4.5.1', 'qt', 'libqt4-core libqt4-gui', 'qt4'), @@ -23,7 +22,7 @@ DEPENDENCIES = [ ('podofo', '0.7', 'podofo', 'podofo', 'podofo', 'podofo'), ('libwmf', '0.2.8', 'libwmf', 'libwmf', 'libwmf', 'libwmf'), ] - +STATUS = 'http://status.calibre-ebook.com/dist' class CoolDistro: @@ -148,7 +147,7 @@ else: compatibility=('%(a)s works on Windows XP, Vista and 7.' 'If you are upgrading from a version older than 0.6.17, ' 'please uninstall %(a)s first.')%dict(a=__appname__,), - path=MOBILEREAD+file, app=__appname__, + path=STATUS+'/win32', app=__appname__, note=Markup(\ '''

If you are updating from a version of calibre older than 0.6.12 on @@ -189,7 +188,7 @@ else: installer_name='OS X universal dmg', title='Download %s for OS X'%(__appname__), compatibility='%s works on OS X Tiger, Leopard, and Snow Leopard.'%(__appname__,), - path=MOBILEREAD+file, app=__appname__, + path=STATUS+'/osx32', app=__appname__, note=Markup(\ u'''

    diff --git a/src/calibre/trac/plugins/templates/linux.html b/src/calibre/trac/plugins/templates/linux.html index a55105d029..306ee8a01b 100644 --- a/src/calibre/trac/plugins/templates/linux.html +++ b/src/calibre/trac/plugins/templates/linux.html @@ -106,7 +106,7 @@ sudo python -c "import urllib2; exec urllib2.urlopen('http://status.calibre-eboo
-wget -O- http://calibre.kovidgoyal.net/downloads/${app}-${version}.tar.gz | tar xvz 
+wget -O- http://status.calibre-ebook.com/dist/src | tar xvz 
 cd calibre*
 sudo python setup.py install
                                 
From 4865f55e4037317cb179c95023d1e62812cc3350 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 12 Oct 2009 07:33:45 -0600 Subject: [PATCH 08/41] IGN:seriescmp cleanup --- src/calibre/library/database2.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/calibre/library/database2.py b/src/calibre/library/database2.py index ef5583fee9..44685aa8aa 100644 --- a/src/calibre/library/database2.py +++ b/src/calibre/library/database2.py @@ -323,17 +323,16 @@ class ResultCache(SearchQueryParser): def seriescmp(self, x, y): try: - ans = cmp(self._data[x][9].lower(), self._data[y][9].lower()) if str else\ - cmp(self._data[x][9], self._data[y][9]) + ans = cmp(self._data[x][9].lower(), self._data[y][9].lower()) except AttributeError: # Some entries may be None ans = cmp(self._data[x][9], self._data[y][9]) if ans != 0: return ans return cmp(self._data[x][10], self._data[y][10]) - def cmp(self, loc, x, y, str=True, subsort=False): + def cmp(self, loc, x, y, asstr=True, subsort=False): try: - ans = cmp(self._data[x][loc].lower(), self._data[y][loc].lower()) if str else\ - cmp(self._data[x][loc], self._data[y][loc]) + ans = cmp(self._data[x][loc].lower(), self._data[y][loc].lower()) if \ + asstr else cmp(self._data[x][loc], self._data[y][loc]) except AttributeError: # Some entries may be None ans = cmp(self._data[x][loc], self._data[y][loc]) if subsort and ans == 0: @@ -352,7 +351,7 @@ class ResultCache(SearchQueryParser): self.first_sort = False fcmp = self.seriescmp if field == 'series' else \ functools.partial(self.cmp, FIELD_MAP[field], subsort=subsort, - str=field not in ('size', 'rating', 'timestamp')) + asstr=field not in ('size', 'rating', 'timestamp')) self._map.sort(cmp=fcmp, reverse=not ascending) self._map_filtered = [id for id in self._map if id in self._map_filtered] From b3ad9f0160839ecc1115a038608128f594261ee3 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 12 Oct 2009 07:35:27 -0600 Subject: [PATCH 09/41] eReader PDB output: proper length of indexes and do not try to add them if they are not avaliable. PML Outpu: cleanup. PML Input: read unicode and entity PML tags correctly. --- src/calibre/ebooks/fb2/fb2ml.py | 1 - src/calibre/ebooks/pdb/ereader/reader132.py | 1 - src/calibre/ebooks/pdb/ereader/writer.py | 184 +++++++++++++++----- src/calibre/ebooks/pml/pmlconverter.py | 15 +- src/calibre/ebooks/pml/pmlml.py | 5 + 5 files changed, 149 insertions(+), 57 deletions(-) diff --git a/src/calibre/ebooks/fb2/fb2ml.py b/src/calibre/ebooks/fb2/fb2ml.py index ff914568d2..aaf8361b99 100644 --- a/src/calibre/ebooks/fb2/fb2ml.py +++ b/src/calibre/ebooks/fb2/fb2ml.py @@ -75,7 +75,6 @@ class FB2MLizer(object): output.append(self.fb2mlize_images()) output.append(self.fb2_footer()) output = ''.join(output).replace(u'ghji87yhjko0Caliblre-toc-placeholder-for-insertion-later8ujko0987yjk', self.get_toc()) - return output return u'\n%s' % etree.tostring(etree.fromstring(output), encoding=unicode, pretty_print=True) def fb2_header(self): diff --git a/src/calibre/ebooks/pdb/ereader/reader132.py b/src/calibre/ebooks/pdb/ereader/reader132.py index 98dbe13790..49fdfb8980 100644 --- a/src/calibre/ebooks/pdb/ereader/reader132.py +++ b/src/calibre/ebooks/pdb/ereader/reader132.py @@ -34,7 +34,6 @@ class HeaderRecord(object): self.has_metadata, = struct.unpack('>H', raw[24:26]) self.footnote_rec, = struct.unpack('>H', raw[28:30]) self.sidebar_rec, = struct.unpack('>H', raw[30:32]) - self.bookmark_offset, = struct.unpack('>H', raw[32:34]) self.image_data_offset, = struct.unpack('>H', raw[40:42]) self.metadata_offset, = struct.unpack('>H', raw[44:46]) self.footnote_offset, = struct.unpack('>H', raw[48:50]) diff --git a/src/calibre/ebooks/pdb/ereader/writer.py b/src/calibre/ebooks/pdb/ereader/writer.py index 2f4e3bf16f..263f6964bf 100644 --- a/src/calibre/ebooks/pdb/ereader/writer.py +++ b/src/calibre/ebooks/pdb/ereader/writer.py @@ -8,6 +8,7 @@ __license__ = 'GPL v3' __copyright__ = '2009, John Schember ' __docformat__ = 'restructuredtext en' +import re import struct import zlib @@ -28,7 +29,7 @@ IDENTITY = 'PNRdPPrs' # This is an arbitrary number that is small enough to work. The actual maximum # record size is unknown. -MAX_RECORD_SIZE = 3560 +MAX_RECORD_SIZE = 8192 class Writer(FormatWriter): @@ -37,13 +38,33 @@ class Writer(FormatWriter): self.log = log def write_content(self, oeb_book, out_stream, metadata=None): - text, image_hrefs = self._text(oeb_book) - images = self._images(oeb_book.manifest, image_hrefs) + pmlmlizer = PMLMLizer(self.log) + pml = unicode(pmlmlizer.extract_content(oeb_book, self.opts)).encode('cp1252', 'replace') + + text, text_sizes = self._text(pml) + chapter_index = self._chapter_index(pml) + link_index = self._link_index(pml) + images = self._images(oeb_book.manifest, pmlmlizer.image_hrefs) metadata = [self._metadata(metadata)] + hr = [self._header_record(len(text), len(chapter_index), len(link_index), len(images))] - hr = [self._header_record(len(text), len(images))] - - sections = hr+text+images+metadata+['MeTaInFo\x00'] + ''' + Record order as generated by Dropbook. + 1. eReader Header + 2. Compressed text + 3. Small font page index + 4. Large font page index + 5. Chapter index + 6. Links index + 7. Images + 8. (Extrapolation: there should be one more record type here though yet uncovered what it might be). + 9. Metadata + 10. Sidebar records + 11. Footnote records + 12. Text block size record + 13. "MeTaInFo\x00" word record + ''' + sections = hr+text+chapter_index+link_index+images+metadata+[text_sizes]+['MeTaInFo\x00'] lengths = [len(i) if i not in images else len(i[0]) + len(i[1]) for i in sections] @@ -57,17 +78,74 @@ class Writer(FormatWriter): else: out_stream.write(item) - def _text(self, oeb_book): - pmlmlizer = PMLMLizer(self.log) - pml = unicode(pmlmlizer.extract_content(oeb_book, self.opts)).encode('cp1252', 'replace') - + def _text(self, pml): pml_pages = [] - for i in range(0, (len(pml) / MAX_RECORD_SIZE) + 1): - pml_pages.append(zlib.compress(pml[i * MAX_RECORD_SIZE : (i * MAX_RECORD_SIZE) + MAX_RECORD_SIZE])) + text_sizes = '' + index = 0 + while index < len(pml): + ''' + Split on the space character closest to MAX_RECORD_SIZE when possible. + ''' + split = pml.rfind(' ', index, MAX_RECORD_SIZE) + if split == -1: + len_end = len(pml[index:]) + if len_end > MAX_RECORD_SIZE: + split = MAX_RECORD_SIZE + else: + split = len_end + if split == 0: + split = 1 + pml_pages.append(zlib.compress(pml[index:index+split])) + text_sizes += struct.pack('>H', split) + index += split - return pml_pages, pmlmlizer.image_hrefs + return pml_pages, text_sizes + + def _index_item(self, mo): + index = '' + if 'text' in mo.groupdict().keys(): + index += struct.pack('>L', mo.start()) + text = mo.group('text') + # Strip all PML tags from text + text = re.sub(r'\\U[0-9a-z]{4}', '', text) + text = re.sub(r'\\a\d{3}', '', text) + text = re.sub(r'\\.', '', text) + # Add appropriate spacing to denote the various levels of headings + if 'val' in mo.groupdict().keys(): + text = '%s%s' % (' ' * 4 * int(mo.group('val')), text) + index += text + index += '\x00' + return index + + def _chapter_index(self, pml): + chapter_marks = [ + r'(?s)\\x(?P.+?)\\x', + r'(?s)\\X(?P[0-4])(?P.*?)\\X[0-4]', + r'(?s)\\C(?P\d)="(?P.+?)"', + ] + index = [] + for chapter_mark in chapter_marks: + for mo in re.finditer(chapter_mark, pml): + index.append(self._index_item(mo)) + return index + + def _link_index(self, pml): + index = [] + for mo in re.finditer(r'(?s)\\Q="(?P.+?)"', pml): + index.append(self._index_item(mo)) + return index def _images(self, manifest, image_hrefs): + ''' + Image format. + + 0-4 : 'PNG '. There must be a space after PNG. + 4-36 : Image name. Must be exactly 32 bytes long. Pad with \x00 for names shorter than 32 bytes + 36-58 : Unknown. + 58-60 : Width. + 60-62 : Height. + 62-...: Raw image data in 8 bit PNG format. + ''' images = [] for item in manifest: @@ -82,6 +160,8 @@ class Writer(FormatWriter): header = 'PNG ' header += image_hrefs[item.href].ljust(32, '\x00')[:32] + header = header.ljust(58, '\x00') + header += struct.pack('>HH', im.size[0], im.size[1]) header = header.ljust(62, '\x00') if len(data) + len(header) < 65505: @@ -121,52 +201,60 @@ class Writer(FormatWriter): return '%s\x00%s\x00%s\x00%s\x00%s\x00' % (title, author, copyright, publisher, isbn) - def _header_record(self, text_items, image_items): + def _header_record(self, text_count, chapter_count, link_count, image_count): ''' - text_items = the number of text pages - image_items = the number of images + text_count = the number of text pages + image_count = the number of images ''' - version = 10 # Zlib compression - non_text_offset = text_items + 1 + compression = 10 # zlib compression. + non_text_offset = text_count + 1 - if image_items > 0: - image_data_offset = text_items + 1 - meta_data_offset = image_data_offset + image_items + chapter_offset = non_text_offset + link_offset = chapter_offset + chapter_count + + if image_count > 0: + image_data_offset = link_offset + link_count + meta_data_offset = image_data_offset + image_count last_data_offset = meta_data_offset + 1 else: - meta_data_offset = text_items + 1 + meta_data_offset = link_offset + link_count last_data_offset = meta_data_offset + 1 image_data_offset = last_data_offset + if chapter_count == 0: + chapter_offset = last_data_offset + if link_count == 0: + link_offset = last_data_offset + record = '' - record += struct.pack('>H', version) # [0:2] # Version. Specifies compression and drm. 2 = palmdoc, 10 = zlib. 260 and 272 = DRM - record += struct.pack('>H', 0) # [2:4] - record += struct.pack('>H', 0) # [4:6] + record += struct.pack('>H', compression) # [0:2] # Compression. Specifies compression and drm. 2 = palmdoc, 10 = zlib. 260 and 272 = DRM + record += struct.pack('>H', 0) # [2:4] # Unknown. + record += struct.pack('>H', 0) # [4:6] # Unknown. record += struct.pack('>H', 25152) # [6:8] # 25152 is MAGIC. Somehow represents the cp1252 encoding of the text - record += struct.pack('>H', 0) # [8:10] - record += struct.pack('>H', 0) # [10:12] - record += struct.pack('>H', non_text_offset) # [12:14] # non_text_offset - record += struct.pack('>H', 0) # [14:16] - record += struct.pack('>H', 0) # [16:18] - record += struct.pack('>H', 0) # [18:20] - record += struct.pack('>H', image_items) # [20:22] # Number of images - record += struct.pack('>H', 0) # [22:24] - record += struct.pack('>H', 1) # [24:26] # 1 if has metadata, 0 if not - record += struct.pack('>H', 0) # [26:28] - record += struct.pack('>H', 0) # [28:30] # footnote_rec - record += struct.pack('>H', 0) # [30:32] # sidebar_rec - record += struct.pack('>H', last_data_offset) # [32:34] # bookmark_offset - record += struct.pack('>H', 2560) # [34:36] # 2560 is MAGIC - record += struct.pack('>H', 0) # [36:38] - record += struct.pack('>H', 0) # [38:40] - record += struct.pack('>H', image_data_offset) # [40:42] # image_data_offset. This will be the last data offset if there are no images - record += struct.pack('>H', 0) # [42:44] - record += struct.pack('>H', meta_data_offset) # [44:46] # meta_data_offset. This will be the last data offset if there are no images - record += struct.pack('>H', 0) # [46:48] - record += struct.pack('>H', last_data_offset) # [48:50] # footnote_offset. This will be the last data offset if there are no images - record += struct.pack('>H', last_data_offset) # [50:52] # sidebar_offset. This will be the last data offset if there are no images - record += struct.pack('>H', last_data_offset) # [52:54] # last_data_offset + record += struct.pack('>H', 0) # [8:10] # Number of small font pages. 0 if page index is not built. + record += struct.pack('>H', 0) # [10:12] # Number of large font pages. 0 if page index is not built. + record += struct.pack('>H', non_text_offset) # [12:14] # Non-Text record start. + record += struct.pack('>H', chapter_count) # [14:16] # Number of chapter index records. + record += struct.pack('>H', 0) # [16:18] # Number of small font page index records. + record += struct.pack('>H', 0) # [18:20] # Number of large font page index records. + record += struct.pack('>H', image_count) # [20:22] # Number of images. + record += struct.pack('>H', link_count) # [22:24] # Number of links. + record += struct.pack('>H', 1) # [24:26] # 1 if has metadata, 0 if not. + record += struct.pack('>H', 0) # [26:28] # Unknown. + record += struct.pack('>H', 0) # [28:30] # Number of Footnotes. + record += struct.pack('>H', 0) # [30:32] # Number of Sidebars. + record += struct.pack('>H', chapter_offset) # [32:34] # Chapter index offset. + record += struct.pack('>H', 2560) # [34:36] # 2560 is MAGIC. + record += struct.pack('>H', last_data_offset) # [36:38] # Small font page offset. This will be the last data offset if there are none. + record += struct.pack('>H', last_data_offset) # [38:40] # Large font page offset. This will be the last data offset if there are none. + record += struct.pack('>H', image_data_offset) # [40:42] # Image offset. This will be the last data offset if there are none. + record += struct.pack('>H', link_offset) # [42:44] # Links offset. This will be the last data offset if there are none. + record += struct.pack('>H', meta_data_offset) # [44:46] # Metadata offset. This will be the last data offset if there are none. + record += struct.pack('>H', 0) # [46:48] # Unknown. + record += struct.pack('>H', last_data_offset) # [48:50] # Footnote offset. This will be the last data offset if there are none. + record += struct.pack('>H', last_data_offset) # [50:52] # Sidebar offset. This will be the last data offset if there are none. + record += struct.pack('>H', last_data_offset) # [52:54] # Last data offset. for i in range(54, 132, 2): record += struct.pack('>H', 0) # [54:132] diff --git a/src/calibre/ebooks/pml/pmlconverter.py b/src/calibre/ebooks/pml/pmlconverter.py index b4ab238da9..c72a21a5f9 100644 --- a/src/calibre/ebooks/pml/pmlconverter.py +++ b/src/calibre/ebooks/pml/pmlconverter.py @@ -18,10 +18,10 @@ PML_HTML_RULES = [ (re.compile(r'\\x(?P.*?)\\x', re.DOTALL), lambda match: '

%s

' % match.group('text') if match.group('text') else ''), (re.compile(r'\\X(?P[0-4])(?P.*?)\\X[0-4]', re.DOTALL), lambda match: '%s' % (int(match.group('val')) + 1, match.group('text'), int(match.group('val')) + 1) if match.group('text') else ''), (re.compile(r'\\C\d=".+?"'), lambda match: ''), # This should be made to create a TOC entry - (re.compile(r'\\c(?P.*?)\\c', re.DOTALL), lambda match: '
%s
' % match.group('text') if match.group('text') else ''), - (re.compile(r'\\r(?P.*?)\\r', re.DOTALL), lambda match: '
%s
' % match.group('text') if match.group('text') else ''), + (re.compile(r'\\c(?P.*?)\\c', re.DOTALL), lambda match: '%s' % match.group('text') if match.group('text') else ''), + (re.compile(r'\\r(?P.*?)\\r', re.DOTALL), lambda match: '%s' % match.group('text') if match.group('text') else ''), (re.compile(r'\\i(?P.*?)\\i', re.DOTALL), lambda match: '%s' % match.group('text') if match.group('text') else ''), - (re.compile(r'\\u(?P.*?)\\u', re.DOTALL), lambda match: '
%s
' % match.group('text') if match.group('text') else ''), + (re.compile(r'\\u(?P.*?)\\u', re.DOTALL), lambda match: '%s' % match.group('text') if match.group('text') else ''), (re.compile(r'\\o(?P.*?)\\o', re.DOTALL), lambda match: '%s' % match.group('text') if match.group('text') else ''), (re.compile(r'\\v(?P.*?)\\v', re.DOTALL), lambda match: '' % match.group('text') if match.group('text') else ''), (re.compile(r'\\t(?P.*?)\\t', re.DOTALL), lambda match: '
%s
' % match.group('text') if match.group('text') else ''), @@ -35,8 +35,8 @@ PML_HTML_RULES = [ (re.compile(r'\\Sp(?P.*?)\\Sp', re.DOTALL), lambda match: '%s' % match.group('text') if match.group('text') else ''), (re.compile(r'\\Sb(?P.*?)\\Sb', re.DOTALL), lambda match: '%s' % match.group('text') if match.group('text') else ''), (re.compile(r'\\k(?P.*?)\\k', re.DOTALL), lambda match: '%s' % match.group('text').upper() if match.group('text') else ''), - (re.compile(r'\\a(?P\d\d\d)'), lambda match: '&#%s;' % match.group('num')), - (re.compile(r'\\U(?P\d\d\d\d)'), lambda match: '%s' % my_unichr(int(match.group('num'), 16))), + (re.compile(r'\\a(?P\d{3})'), lambda match: '&#%s;' % match.group('num')), + (re.compile(r'\\U(?P[0-9a-f]{4})'), lambda match: '%s' % my_unichr(int(match.group('num'), 16))), (re.compile(r'\\m="(?P.+?)"'), lambda match: '' % image_name(match.group('name')).strip('\x00')), (re.compile(r'\\q="(?P#.+?)"(?P.*?)\\q', re.DOTALL), lambda match: '%s' % (match.group('target'), match.group('text')) if match.group('text') else ''), (re.compile(r'\\Q="(?P.+?)"'), lambda match: '' % match.group('target')), @@ -64,7 +64,7 @@ PML_HTML_RULES = [ (re.compile(r'(?<=[^\\])\\Sp'), lambda match: ''), (re.compile(r'(?<=[^\\])\\Sb'), lambda match: ''), # Remove invalid single item pml codes. - (re.compile(r'(?<=[^\\])\\.'), lambda match: ''), + (re.compile(r'(?<=[^\\])\\[^\\]'), lambda match: ''), # Replace \\ with \. (re.compile(r'\\\\'), lambda match: '\\'), @@ -78,6 +78,7 @@ def pml_to_html(pml): return html def footnote_sidebar_to_html(id, pml): + if id.startswith('\x01'): + id = id[2:] html = '
%s
' % (id, id, pml_to_html(pml)) return html - diff --git a/src/calibre/ebooks/pml/pmlml.py b/src/calibre/ebooks/pml/pmlml.py index 2438fd9bef..9582d2bfbb 100644 --- a/src/calibre/ebooks/pml/pmlml.py +++ b/src/calibre/ebooks/pml/pmlml.py @@ -154,10 +154,15 @@ class PMLMLizer(object): for unused in anchors.difference(links): text = text.replace('\\Q="%s"' % unused, '') + # Turn all html entities into unicode. This should not be necessary as + # lxml should have already done this but we want to be sure it happens. for entity in set(re.findall('&.+?;', text)): mo = re.search('(%s)' % entity[1:-1], text) text = text.replace(entity, entity_to_unicode(mo)) + # Turn all unicode characters into their PML hex equivelent + text = re.sub('[^\x00-\x7f]', lambda x: '\\U%04x' % ord(x.group()), text) + return text def dump_text(self, elem, stylizer, page, tag_stack=[]): From a53c32ae8116a82f9e3ccf11c212b2596a0f4d6c Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 12 Oct 2009 12:24:26 -0600 Subject: [PATCH 10/41] Fix #3763 (Cannot close server log window) --- src/calibre/gui2/dialogs/config/__init__.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/calibre/gui2/dialogs/config/__init__.py b/src/calibre/gui2/dialogs/config/__init__.py index 6197fd4521..7bb40bc3b1 100644 --- a/src/calibre/gui2/dialogs/config/__init__.py +++ b/src/calibre/gui2/dialogs/config/__init__.py @@ -623,7 +623,10 @@ class ConfigDialog(QDialog, Ui_Dialog): try: al.setPlainText(open(log_access_file, 'rb').read().decode('utf8', 'replace')) except IOError: - el.setPlainText('No access log found') + al.setPlainText('No access log found') + bx = QDialogButtonBox(QDialogButtonBox.Ok) + layout.addWidget(bx) + self.connect(bx, SIGNAL('accepted()'), d.accept) d.show() def set_server_options(self): From 5040b8178e47de80057a9004cc832ec30e308d65 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 12 Oct 2009 12:46:59 -0600 Subject: [PATCH 11/41] IGN:Fix #3741 (Update FAQ about using Calibre & Sony software) --- src/calibre/manual/faq.rst | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/src/calibre/manual/faq.rst b/src/calibre/manual/faq.rst index a4bf0fd275..9a6b469424 100644 --- a/src/calibre/manual/faq.rst +++ b/src/calibre/manual/faq.rst @@ -80,13 +80,25 @@ What devices does |app| support? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ At the moment |app| has full support for the SONY PRS 300/500/505/600/700, Cybook Gen 3/Opus, Amazon Kindle 1/2/DX, Netronix EB600, Ectaco Jetbook, BeBook/BeBook Mini, Irex Illiad/DR1000, Foxit eSlick, Android phones and the iPhone. In addition, using the :guilabel:`Save to disk` function you can use it with any ebook reader that exports itself as a USB disk. -I used |app| to transfer some books to my reader, and now the SONY software hangs every time I connect the reader? +Can I use both |app| and the SONY software to manage my reader? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -You should not use both |app| and Connect to transfer books to the reader. You can fix this problem by: - * Removing any storage cards from your reader. - * Deleting the file media.xml from the reader's main memory using windows explorer (search for the file to find all locations where it is present). Note that by doing this you will lose all your collections, bookmarks, history etc. - * Unplugging the reader and waiting till the list of books shows up again - * Re-connecting the reader and starting the SONY software + +Yes, you can use both, provided you don not run them at the same time. That is, you should use the following sequence: +Connect reader->Use one of the programs->Disconnect reader. Reconnect reader->Use the other program->disconnect reader. + +The underlying reason is that the Reader uses a single file to keep track +of 'meta' information, such as collections, and this is written to by both +|app| and the Sony software when either updates something on the Reader. +The file will be saved when the Reader is (safely) disconnected, so using one +or the other is safe if there's a disconnection between them, but if +you're not the type to remember this, then the simple answer is to stick +to one or the other for the transfer and just export/import from/to the +other via the computers hard disk. + +If you do need to reset your metadata due to problems caused by using both +at the same time, then just delete the media.xml file on the Reader using +your PC's file explorer and it'll be recreated after disconnection. + Can I use the collections feature of the SONY reader? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From dcca0f9a3e119a556cb75a40241107fe9094327e Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 12 Oct 2009 13:21:23 -0600 Subject: [PATCH 12/41] Welcome wizard now allows you to set interface language. Fixes #3736 (First question of wizard...) --- src/calibre/debug.py | 4 ++- src/calibre/gui2/wizard/__init__.py | 45 ++++++++++++++++++++++++--- src/calibre/gui2/wizard/library.ui | 48 ++++++++++++++++++++++------- 3 files changed, 81 insertions(+), 16 deletions(-) diff --git a/src/calibre/debug.py b/src/calibre/debug.py index f9ee3b0f44..1b913318e3 100644 --- a/src/calibre/debug.py +++ b/src/calibre/debug.py @@ -168,7 +168,9 @@ def main(args=sys.argv): sys.argv = args[:1] base = os.path.dirname(os.path.abspath(opts.exec_file)) sys.path.insert(0, base) - execfile(opts.exec_file) + g = globals() + g['__name__'] = '__main__' + execfile(opts.exec_file, g) elif opts.debug_device_driver: debug_device_driver() elif opts.migrate: diff --git a/src/calibre/gui2/wizard/__init__.py b/src/calibre/gui2/wizard/__init__.py index 68f2777daa..13222861ef 100644 --- a/src/calibre/gui2/wizard/__init__.py +++ b/src/calibre/gui2/wizard/__init__.py @@ -33,8 +33,8 @@ class Device(object): output_profile = 'default' output_format = 'EPUB' - name = _('Default') - manufacturer = _('Default') + name = 'Default' + manufacturer = 'Default' id = 'default' @classmethod @@ -146,8 +146,9 @@ def get_manufacturers(): mans = set([]) for x in get_devices(): mans.add(x.manufacturer) - mans.remove(_('Default')) - return [_('Default')] + sorted(mans) + if 'Default' in mans: + mans.remove('Default') + return ['Default'] + sorted(mans) def get_devices_of(manufacturer): ans = [d for d in get_devices() if d.manufacturer == manufacturer] @@ -464,6 +465,36 @@ class LibraryPage(QWizardPage, LibraryUI): self.setupUi(self) self.registerField('library_location', self.location) self.connect(self.button_change, SIGNAL('clicked()'), self.change) + self.init_languages() + self.connect(self.language, SIGNAL('currentIndexChanged(int)'), + self.change_language) + + def init_languages(self): + self.language.blockSignals(True) + self.language.clear() + from calibre.utils.localization import available_translations, \ + get_language, get_lang + lang = get_lang() + if lang is None or lang not in available_translations(): + lang = 'en' + self.language.addItem(get_language(lang), QVariant(lang)) + items = [(l, get_language(l)) for l in available_translations() \ + if l != lang] + if lang != 'en': + items.append(('en', get_language('en'))) + items.sort(cmp=lambda x, y: cmp(x[1], y[1])) + for item in items: + self.language.addItem(item[1], QVariant(item[0])) + self.language.blockSignals(False) + + def change_language(self, idx): + prefs['language'] = str(self.language.itemData(self.language.currentIndex()).toString()) + import __builtin__ + __builtin__.__dict__['_'] = lambda(x): x + from calibre.utils.localization import set_translators + set_translators() + self.emit(SIGNAL('retranslate()')) + self.init_languages() def change(self): dir = choose_dir(self, 'database location dialog', @@ -548,6 +579,8 @@ class Wizard(QWizard): self.setPixmap(self.BackgroundPixmap, QPixmap(I('wizard.svg'))) self.device_page = DevicePage() self.library_page = LibraryPage() + self.connect(self.library_page, SIGNAL('retranslate()'), + self.retranslate) self.finish_page = FinishPage() bt = unicode(self.buttonText(self.FinishButton)).replace('&', '') t = unicode(self.finish_page.finish_text.text()) @@ -572,6 +605,10 @@ class Wizard(QWizard): nw = min(580, nw) self.resize(nw, nh) + def retranslate(self): + for pid in self.pageIds(): + page = self.page(pid) + page.retranslateUi(page) def accept(self): pages = map(self.page, self.visitedPages()) diff --git a/src/calibre/gui2/wizard/library.ui b/src/calibre/gui2/wizard/library.ui index 756f7ab851..0d43f4ccee 100644 --- a/src/calibre/gui2/wizard/library.ui +++ b/src/calibre/gui2/wizard/library.ui @@ -20,7 +20,20 @@ The one stop solution to all your e-book needs. - + + + + Choose your &language: + + + language + + + + + + + Choose a location for your books. When you add books to calibre, they will be copied here: @@ -30,21 +43,31 @@ - + true - + &Change - + + + + If you have an existing calibre library, it will be copied to the new location. If a calibre library already exists at the new location, calibre will switch to using it. + + + true + + + + Qt::Vertical @@ -57,15 +80,18 @@ - - - - If you have an existing calibre library, it will be copied to the new location. If a calibre library already exists at the new location, calibre will switch to using it. + + + + Qt::Vertical - - true + + + 20 + 40 + - + From e492d8720606c08d51166785221273ef1747d962 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 12 Oct 2009 14:17:59 -0600 Subject: [PATCH 13/41] IGN:... --- src/calibre/gui2/__init__.py | 11 +++++++++-- src/calibre/gui2/wizard/__init__.py | 6 ++++-- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/calibre/gui2/__init__.py b/src/calibre/gui2/__init__.py index 56dbe4fab6..32f7a32efa 100644 --- a/src/calibre/gui2/__init__.py +++ b/src/calibre/gui2/__init__.py @@ -508,14 +508,21 @@ class ResizableDialog(QDialog): gui_thread = None - +qt_app = None class Application(QApplication): def __init__(self, args): qargs = [i.encode('utf-8') if isinstance(i, unicode) else i for i in args] QApplication.__init__(self, qargs) - global gui_thread + global gui_thread, qt_app gui_thread = QThread.currentThread() + self._translator = None + self.load_translations() + qt_app = self + + def load_translations(self): + if self._translator is not None: + self.removeTranslator(self._translator) self._translator = QTranslator(self) if set_qt_translator(self._translator): self.installTranslator(self._translator) diff --git a/src/calibre/gui2/wizard/__init__.py b/src/calibre/gui2/wizard/__init__.py index 13222861ef..adde8c7fde 100644 --- a/src/calibre/gui2/wizard/__init__.py +++ b/src/calibre/gui2/wizard/__init__.py @@ -492,7 +492,9 @@ class LibraryPage(QWizardPage, LibraryUI): import __builtin__ __builtin__.__dict__['_'] = lambda(x): x from calibre.utils.localization import set_translators + from calibre.gui2 import qt_app set_translators() + qt_app.load_translations() self.emit(SIGNAL('retranslate()')) self.init_languages() @@ -627,7 +629,7 @@ def wizard(parent=None): return w if __name__ == '__main__': - from PyQt4.Qt import QApplication - app = QApplication([]) + from calibre.gui2 import Application + app = Application([]) wizard().exec_() From 2aa725abe0e6011f31a7108b54681deb7c514edd Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 12 Oct 2009 21:43:32 -0600 Subject: [PATCH 14/41] Fix launching of welcome wizard from preferences menu broken on windows --- src/calibre/gui2/main.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/calibre/gui2/main.py b/src/calibre/gui2/main.py index 14ee79d310..06e7749fad 100644 --- a/src/calibre/gui2/main.py +++ b/src/calibre/gui2/main.py @@ -1829,7 +1829,7 @@ def run_gui(opts, args, actions, listener, app): from calibre.gui2.wizard import wizard wizard().exec_() if getattr(main, 'restart_after_quit', False): - e = sys.executable if getattr(sys, 'froze', False) else sys.argv[0] + e = sys.executable if getattr(sys, 'frozen', False) else sys.argv[0] print 'Restarting with:', e, sys.argv if hasattr(sys, 'frameworks_dir'): app = os.path.dirname(os.path.dirname(sys.frameworks_dir)) From 459d6d84cc3154aa560511ac949a0cd494e620b0 Mon Sep 17 00:00:00 2001 From: Translators <> Date: Tue, 13 Oct 2009 07:59:51 +0100 Subject: [PATCH 15/41] Launchpad automatic translations update. --- src/calibre/translations/nb.po | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/calibre/translations/nb.po b/src/calibre/translations/nb.po index 30e3dab14a..1c40446819 100644 --- a/src/calibre/translations/nb.po +++ b/src/calibre/translations/nb.po @@ -8,13 +8,13 @@ msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2009-10-10 02:36+0000\n" -"PO-Revision-Date: 2009-10-09 23:37+0000\n" -"Last-Translator: Kovid Goyal \n" +"PO-Revision-Date: 2009-10-12 07:38+0000\n" +"Last-Translator: Pion \n" "Language-Team: Norwegian Bokmal \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-10 06:52+0000\n" +"X-Launchpad-Export-Date: 2009-10-13 06:59+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 @@ -4556,7 +4556,7 @@ msgstr "Ikke gylding bilde" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:133 msgid "Choose formats for " -msgstr "" +msgstr "Velg formater for " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:134 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:872 @@ -4565,7 +4565,7 @@ msgstr "Bøker" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:160 msgid "You do not have permission to read the following files:" -msgstr "" +msgstr "Du har ikke tillatelse til å lese fra følgende filer:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 From 33cf79c6f4b27f4a1fe858c2b5c2c2bce0e2bea5 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Tue, 13 Oct 2009 11:07:56 -0600 Subject: [PATCH 16/41] Fix #3769 (The Economist recipe is no longer working) --- .../web/feeds/recipes/recipe_economist.py | 26 +++++++++++++------ 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/src/calibre/web/feeds/recipes/recipe_economist.py b/src/calibre/web/feeds/recipes/recipe_economist.py index d1c3f5b546..30bb2688c8 100644 --- a/src/calibre/web/feeds/recipes/recipe_economist.py +++ b/src/calibre/web/feeds/recipes/recipe_economist.py @@ -8,8 +8,7 @@ economist.com from calibre.web.feeds.news import BasicNewsRecipe from calibre.ebooks.BeautifulSoup import BeautifulSoup -import mechanize, string -from urllib2 import quote +import mechanize, string, urllib class Economist(BasicNewsRecipe): @@ -24,15 +23,26 @@ class Economist(BasicNewsRecipe): cover_url = 'http://www.economist.com/images/covers/currentcovereu_large.jpg' remove_tags = [dict(name=['script', 'noscript', 'title'])] remove_tags_before = dict(name=lambda tag: tag.name=='title' and tag.parent.name=='body') + needs_subscription = True def get_browser(self): br = BasicNewsRecipe.get_browser() - if self.username is not None and self.password is not None: - req = mechanize.Request('http://www.economist.com/members/members.cfm?act=exec_login', headers={'Referer':'http://www.economist.com'}) - data = 'logging_in=Y&returnURL=http%253A%2F%2Fwww.economist.com%2Findex.cfm&email_address=username&pword=password&x=7&y=11' - data = data.replace('username', quote(self.username)).replace('password', quote(self.password)) - req.add_data(data) - br.open(req).read() + br.open('http://www.economist.com') + req = mechanize.Request( + 'http://www.economist.com/members/members.cfm?act=exec_login', + headers = { + 'Referer':'http://www.economist.com/', + }, + data=urllib.urlencode({ + 'logging_in' : 'Y', + 'returnURL' : '/', + 'email_address': self.username, + 'fakepword' : 'Password', + 'pword' : self.password, + 'x' : '0', + 'y' : '0', + })) + br.open(req).read() return br def parse_index(self): From 942b0e74c13d68f6677f125b41d9a206ad772e9c Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Tue, 13 Oct 2009 16:00:16 -0600 Subject: [PATCH 17/41] Windows installer: Optionally add calibre install dir to PATH. Default is to add it, to be consistent with per 0.6.17 releases --- setup/installer/windows/util.c | 12 +++++++++--- setup/installer/windows/wix-template.xml | 9 +++++++++ 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/setup/installer/windows/util.c b/setup/installer/windows/util.c index 7aa2d019e2..fdec6d786f 100644 --- a/setup/installer/windows/util.c +++ b/setup/installer/windows/util.c @@ -105,15 +105,19 @@ wchar_t* get_app_dirw() { void load_python_dll() { - char *app_dir; - char *dll_dir, *qt_plugin_dir; + char *app_dir, *fc_dir, *fc_file, *dll_dir, *qt_plugin_dir; size_t l; + app_dir = get_app_dir(); l = strlen(app_dir)+20; dll_dir = (char*) calloc(l, sizeof(char)); + fc_dir = (char*) calloc(l, sizeof(char)); + fc_file = (char*) calloc(l, sizeof(char)); qt_plugin_dir = (char*) calloc(l, sizeof(char)); - if (!dll_dir || !qt_plugin_dir) ExitProcess(_show_error(L"Out of memory", L"", 1)); + if (!dll_dir || !qt_plugin_dir || !fc_dir) ExitProcess(_show_error(L"Out of memory", L"", 1)); _snprintf_s(dll_dir, l, _TRUNCATE, "%sDLLs", app_dir); + _snprintf_s(fc_dir, l, _TRUNCATE, "%sfontconfig", app_dir); + _snprintf_s(fc_file, l, _TRUNCATE, "%s\\fonts.conf", fc_dir); _snprintf_s(qt_plugin_dir, l, _TRUNCATE, "%sqt_plugins", app_dir); free(app_dir); @@ -121,6 +125,8 @@ void load_python_dll() { _putenv_s("MAGICK_CONFIGURE_PATH", dll_dir); _putenv_s("MAGICK_CODER_MODULE_PATH", dll_dir); _putenv_s("MAGICK_FILTER_MODULE_PATH", dll_dir); + _putenv_s("FC_CONFIG_DIR", fc_dir); + _putenv_s("FC_CONFIG_FILE", fc_file); _putenv_s("QT_PLUGIN_PATH", qt_plugin_dir); if (!SetDllDirectoryA(dll_dir)) ExitProcess(show_last_error(L"Failed to set DLL directory.")); diff --git a/setup/installer/windows/wix-template.xml b/setup/installer/windows/wix-template.xml index 015ef8c87b..8ef2de1f83 100644 --- a/setup/installer/windows/wix-template.xml +++ b/setup/installer/windows/wix-template.xml @@ -24,6 +24,10 @@ {app_components} + + + + @@ -84,6 +88,11 @@ Description="Shortcut to {app} on your desktop"> + + + + From ed8ed3a010925dbaed00a2cd292c387a055c4cb3 Mon Sep 17 00:00:00 2001 From: Translators <> Date: Wed, 14 Oct 2009 07:51:40 +0100 Subject: [PATCH 18/41] Launchpad automatic translations update. --- src/calibre/translations/pt.po | 1023 +++++++++++++++------------- src/calibre/translations/pt_BR.po | 1046 ++++++++++++++++------------- 2 files changed, 1116 insertions(+), 953 deletions(-) diff --git a/src/calibre/translations/pt.po b/src/calibre/translations/pt.po index 743a8f5d79..5d27221129 100644 --- a/src/calibre/translations/pt.po +++ b/src/calibre/translations/pt.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2009-09-18 19:33+0000\n" -"PO-Revision-Date: 2009-09-15 05:39+0000\n" -"Last-Translator: Kovid Goyal \n" +"POT-Creation-Date: 2009-10-10 02:36+0000\n" +"PO-Revision-Date: 2009-10-14 00:01+0000\n" +"Last-Translator: Fabio Malcher Miranda \n" "Language-Team: Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-09-23 09:44+0000\n" +"X-Launchpad-Export-Date: 2009-10-14 06:51+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 @@ -26,8 +26,9 @@ msgstr "Não faz absolutamente nada" #: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:53 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:58 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:199 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:703 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:706 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:730 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:733 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:177 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:410 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:65 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 @@ -53,8 +54,7 @@ msgstr "Não faz absolutamente nada" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf.py:444 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:870 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdb.py:39 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdf.py:34 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdf.py:76 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdf.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/topaz.py:29 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/txt.py:14 #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:44 @@ -68,7 +68,7 @@ msgstr "Não faz absolutamente nada" #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:51 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:886 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:891 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:947 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:951 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:135 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:137 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:105 @@ -96,46 +96,44 @@ msgstr "Não faz absolutamente nada" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:29 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:217 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:261 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:268 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:111 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:273 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:127 #: /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/device.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:765 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:768 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:769 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:772 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:106 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:402 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:431 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:42 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:391 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:404 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:874 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1000 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:876 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1002 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:211 #: /home/kovid/work/calibre/src/calibre/library/cli.py:277 #: /home/kovid/work/calibre/src/calibre/library/database.py:917 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:654 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:666 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1061 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1098 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1428 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:652 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:664 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1063 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1100 #: /home/kovid/work/calibre/src/calibre/library/database2.py:1430 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1539 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1432 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1541 #: /home/kovid/work/calibre/src/calibre/library/server.py:493 #: /home/kovid/work/calibre/src/calibre/library/server.py:565 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:103 #: /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 -#: /home/kovid/work/calibre/src/calibre/utils/poppler/__init__.py:28 -#: /home/kovid/work/calibre/src/calibre/utils/poppler/__init__.py:32 msgid "Unknown" msgstr "Desconhecido" @@ -351,11 +349,11 @@ msgstr "Extras desactivados" msgid "No valid plugin found in " msgstr "Nenhum extra válido encontrado em " -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:229 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:232 msgid "Initialization of plugin %s failed with traceback:" msgstr "A inicialização do extra %s falhou, deixando o seguinte relatório:" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:359 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:362 msgid "" " %prog options\n" "\n" @@ -367,18 +365,18 @@ msgstr "" " Personalize o calibre carregando extras externos.\n" " " -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:365 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:368 msgid "Add a plugin by specifying the path to the zip file containing it." msgstr "" "Adicione um extra especificando um caminho para o ficheiro zip que o contém." -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:367 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:370 msgid "Remove a custom plugin by name. Has no effect on builtin plugins" msgstr "" "Remova um extra identificado pelo seu nome. Não tem qualquer efeito sobre os " "extras integrados." -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:369 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:372 msgid "" "Customize plugin. Specify name of plugin and customization string separated " "by a comma." @@ -386,15 +384,15 @@ msgstr "" "Personalize o extra. Especifique o nome do extra e uma expressão " "identificadora, separados por uma vírgula." -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:371 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:374 msgid "List all installed plugins" msgstr "Listar todos os extras instalados" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:373 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:376 msgid "Enable the named plugin" msgstr "Activar o extra mencionado" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:375 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:378 msgid "Disable the named plugin" msgstr "Desactivar o extra mencionado" @@ -458,7 +456,7 @@ msgstr "Comunica com o leitor EB600." #: /home/kovid/work/calibre/src/calibre/devices/eslick/driver.py:16 msgid "Communicate with the ESlick eBook reader." -msgstr "" +msgstr "Comunica-se com o leitor de e-livros ESlick." #: /home/kovid/work/calibre/src/calibre/devices/iliad/driver.py:16 msgid "Communicate with the IRex Iliad eBook reader." @@ -509,7 +507,7 @@ msgstr "A ir buscar a lista dos livros no aparelho..." #: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:26 msgid "Communicate with the Sony PRS-300/505 eBook reader." -msgstr "" +msgstr "Comunica-se com o leitor de e-livros Sony PRS-300/505." #: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:27 #: /home/kovid/work/calibre/src/calibre/devices/prs700/driver.py:18 @@ -530,7 +528,7 @@ msgstr "A enviar os metadados para o aparelho..." #: /home/kovid/work/calibre/src/calibre/devices/prs700/driver.py:17 msgid "Communicate with the Sony PRS-600/700 eBook reader." -msgstr "" +msgstr "Comunica-se com o leitor de e-livros Sony PRS-600/700." #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:285 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:357 @@ -557,30 +555,30 @@ msgstr "" msgid "Unable to mount main memory (Error code: %d)" msgstr "Incapaz de montar a memória principal (Código de erro: %d)" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:643 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:645 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:670 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:672 msgid "The reader has no storage card in this slot." msgstr "O leitor não tem nenhum cartão de memória nesta ranhura." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:647 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:674 msgid "Selected slot: %s is not supported." msgstr "Ranhura seleccionada: %s não é suportado." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:671 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:698 msgid "There is insufficient free space in main memory" msgstr "O espaço livre na memória principal é insuficiente" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:673 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:675 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:700 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:702 msgid "There is insufficient free space on the storage card" msgstr "O espaço livre no cartão de memória é insuficiente" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:686 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:713 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:434 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:83 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1005 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1009 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1332 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1007 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1011 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1334 msgid "News" msgstr "Notícias" @@ -647,6 +645,10 @@ msgid "" "of less than 256 may result in blurred text on your device if you are " "creating your comics in EPUB format." msgstr "" +"Número de cores para a conversão de imagens na escala de cinza. Padrão: " +"%padrao. Valores menores que 256 podem resultar em texto borrado no seu " +"aparelho se você estiver criando suas histórias em quadrinhos no formato " +"EPUB." #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:278 msgid "" @@ -717,6 +719,9 @@ msgid "" "experiment to see which format gives you optimal size and look on your " "device." msgstr "" +"Formato para o qual as imagens no e-livro criado são convertidas. Você pode " +"experimentar para ver qual formato fica com melhor tamanho e aparência no " +"seu aparelho." #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:308 msgid "Apply no processing to the image" @@ -1291,10 +1296,10 @@ msgstr "" "nenhuma será gerada uma capa predefinida com o título, autores, etc. Esta " "opção desactiva a geração desta capa." -#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:122 +#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:124 #: /home/kovid/work/calibre/src/calibre/ebooks/pml/pmlml.py:111 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:98 -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:72 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:77 msgid "Table of Contents:" msgstr "Índice:" @@ -1345,6 +1350,8 @@ msgid "" "Average line length for line breaking if the HTML is from a previous partial " "conversion of a PDF file. Default is %default which disables this." msgstr "" +"Tamanho médio para a quebra de linha se o HTML veio de uma conversão parcial " +"de um arquivo PDF. O padrão é: %padrao que desabilita isto." #: /home/kovid/work/calibre/src/calibre/ebooks/lit/from_any.py:47 msgid "Creating LIT file from EPUB..." @@ -1648,7 +1655,7 @@ msgstr "Banda Desenhada" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:56 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:158 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:388 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1066 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1068 msgid "Title" msgstr "Título" @@ -1656,7 +1663,7 @@ msgstr "Título" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:57 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:159 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:393 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1067 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1069 msgid "Author(s)" msgstr "Autor(es)" @@ -1676,25 +1683,25 @@ msgstr "Produtor" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:71 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:64 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:349 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:92 msgid "Comments" msgstr "Comentários" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:370 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:165 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:338 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1010 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1070 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:83 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1012 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1072 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Tags" msgstr "Etiquetas" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:372 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:166 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:354 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:59 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:83 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Series" msgstr "Série" @@ -1703,7 +1710,7 @@ msgid "Language" msgstr "Linguagem" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:375 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1009 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1011 msgid "Timestamp" msgstr "Data e Hora" @@ -1899,7 +1906,7 @@ msgstr "" "LibraryThing.com\n" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1055 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1310 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1314 msgid "Cover" msgstr "Capa" @@ -1933,70 +1940,70 @@ msgstr "Desactivar a compressão do conteúdo do ficheiro." msgid "All articles" msgstr "Todos os artigos" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1311 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1315 msgid "Title Page" msgstr "Página de Título" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1312 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1316 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:51 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:168 msgid "Table of Contents" msgstr "Índice" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1313 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1317 msgid "Index" msgstr "Índice" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1314 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1318 msgid "Glossary" msgstr "Glossário" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1315 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1319 msgid "Acknowledgements" msgstr "Agradecimentos" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1316 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1320 msgid "Bibliography" msgstr "Bibliografia" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1317 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1321 msgid "Colophon" msgstr "Marca Tipográfica" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1318 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1322 msgid "Copyright" msgstr "Direitos de Autor" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1319 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1323 msgid "Dedication" msgstr "Dedicatória" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1320 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1324 msgid "Epigraph" msgstr "Epígrafe" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1321 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1325 msgid "Foreword" msgstr "Prefácio" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1322 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1326 msgid "List of Illustrations" msgstr "Lista de Ilustrações" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1323 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1327 msgid "List of Tables" msgstr "Lista de Tabelas" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1324 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1328 msgid "Notes" msgstr "Notas" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1325 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1329 msgid "Preface" msgstr "Prefácio" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1326 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1330 msgid "Main Text" msgstr "Texto Principal" @@ -2091,6 +2098,11 @@ msgid "" "spaces) represents a paragraph. Paragraphs end when the next line that " "starts with an indent is reached." msgstr "" +"Normalmente o calibre trata linhas brancas como marcadores de parágrafo. Com " +"esta opção ele assumirá que cada linha começando com abertura de parágrafo " +"(pode ser um tab ou dois ou mais espaços) representam um parágrafo. O " +"parágrafo termina quando a próxima linha que começa com abertura de " +"parágrafo é alcançada." #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/output.py:23 msgid "Format to use inside the pdb container. Choices are:" @@ -2393,6 +2405,8 @@ msgid "" "Run the text input through the markdown pre-processor. To learn more about " "markdown see" msgstr "" +"Executa a entrada de texto dentro do pré-processador markdown. Para aprender " +"mais sobre o markdown veja" #: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:24 msgid "" @@ -2416,7 +2430,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:54 msgid "Do not add a blank line between paragraphs." -msgstr "" +msgstr "Não adiciona uma linha branca entre parágrafos." #: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:41 msgid "" @@ -2425,16 +2439,22 @@ msgid "" "the space after and will exceed the specified value. Also, there is a " "minimum of 25 characters. Use 0 to disable line splitting." msgstr "" +"O número máximo de caracteres por linha. A divisão é feita no espaço " +"anterior ao valor especificado. Se nenhum espaço for encontrado a quebra de " +"linha ocorrerá no espaço após o valor especificado e irá excedê-lo. O valor " +"mínimo é de 25 caracteres. Use 0 para desabilitar a divisão de linhas." #: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:48 msgid "" "Force splitting on the max-line-length value when no space is present. Also " "allows max-line-length to be below the minimum" msgstr "" +"Força a divisão no comprimento máximo da linha quando não há espaço. Também " +"possibilita o comprimento máximo da linha ser menor que o mínimo." #: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:52 msgid "Add a tab at the beginning of each paragraph." -msgstr "" +msgstr "Adiciona tabulação no início de cada parágrafo." #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:27 msgid "Send file to storage card instead of main memory by default" @@ -2531,46 +2551,63 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:85 msgid "Maximum number of waiting worker processes" -msgstr "" +msgstr "Número máximo de processos de trabalho em espera." #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:123 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:397 msgid "Copied" msgstr "Copiado" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy" msgstr "Copiar" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy to Clipboard" msgstr "Copiar para a Área de Transferência" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:386 msgid "Choose Files" -msgstr "" +msgstr "Escolher arquivos" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:53 msgid "Searching in" msgstr "A procurar em" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:164 msgid "Adding..." msgstr "A adicionar..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:177 msgid "Searching in all sub-directories..." msgstr "A procurar em todas as sub-pastas..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:244 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:190 +msgid "Path error" +msgstr "Erro de caminho" + +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:191 +msgid "The specified directory could not be processed." +msgstr "O diretório especificado não pode ser processado." + +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:486 +msgid "No books" +msgstr "Nenhuns livros" + +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:196 +msgid "No books found" +msgstr "Nenhum livro encontrado" + +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:262 msgid "Added" msgstr "Adicionado" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:257 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:275 msgid "Adding failed" msgstr "Falha ao adicionar" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:258 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:276 msgid "" "The add books process seems to have hung. Try restarting calibre and adding " "the books in smaller increments, until you find the problem book." @@ -2579,11 +2616,11 @@ msgstr "" "e adicionar os livros em incrementos mais pequenos até encontrar o livro " "problemático." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:270 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:288 msgid "Duplicates found!" msgstr "Duplicados encontrados!" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:271 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:289 msgid "" "Books with the same title as the following already exist in the database. " "Add them anyway?" @@ -2591,15 +2628,15 @@ msgstr "" "Livros com o mesmo título que o seguinte já existem na base de dados. " "Adicionar na mesma?" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:274 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:292 msgid "Adding duplicates..." msgstr "Adicionar duplicados..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:353 msgid "Saving..." msgstr "A guardar..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:406 msgid "Saved" msgstr "Guardado" @@ -2641,7 +2678,7 @@ msgid "input" msgstr "ficheiro de origem" #: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:84 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_input_ui.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:28 @@ -2656,7 +2693,7 @@ msgstr "ficheiro de origem" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/convert/rb_output_ui.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:59 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:62 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:51 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:41 @@ -2736,7 +2773,7 @@ msgid "Debug the conversion process." msgstr "Depurar o processo de conversão." #: /home/kovid/work/calibre/src/calibre/gui2/convert/debug.py:38 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:51 msgid "Choose debug folder" msgstr "Escolher a pasta de depuração" @@ -2748,7 +2785,7 @@ msgstr "Pasta de depuração inválida" msgid "Failed to create debug directory" msgstr "Falha ao criar a pasta de depuração" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:50 msgid "" "Choose a folder to put the debug output into. If you specify a folder, " "calibre will place a lot of debug output into it. This will be useful in " @@ -2761,8 +2798,8 @@ msgstr "" "correctos para os parâmetros de conversão como o Índice e a Detecção de " "Capítulos." -#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:48 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:53 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:44 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:61 @@ -2773,14 +2810,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:501 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:343 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:128 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:131 @@ -2794,6 +2831,16 @@ msgstr "" msgid "..." msgstr "..." +#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:54 +msgid "" +"The debug process outputs the intermediate HTML generated at various stages " +"of the conversion process. This HTML can sometimes serve as a good starting " +"point for hand editing a conversion." +msgstr "" +"O processo de depuração cria um arquivo HTML intermediário gerado em várias " +"etapas do processo de conversão. Este HTML às vezes pode servir como um bom " +"ponto de partida para editar manualmente uma conversão." + #: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output.py:15 msgid "EPUB Output" msgstr "Ficheiro de destino EPUB" @@ -2976,38 +3023,38 @@ msgstr "" "quanto possível." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:96 msgid "Choose cover for " msgstr "Escolher a capa para " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:159 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:102 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 msgid "Cannot read" msgstr "É impossível ler" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:104 msgid "You do not have permission to read the file: " msgstr "Não tem permissão para ler o ficheiro: " #: /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/dialogs/metadata_single.py:111 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 msgid "Error reading file" msgstr "Erro ao ler o ficheiro" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:113 msgid "

There was an error reading from file:
" msgstr "

Houve um erro ao ler do ficheiro:
" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:121 msgid " is not a valid picture" msgstr " não é uma imagem válida" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 msgid "Book Cover" msgstr "Capa do livro" @@ -3016,28 +3063,28 @@ msgid "Use cover from &source file" msgstr "Usar a capa do ficheiro de &origem" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 msgid "Change &cover image:" msgstr "Alterar a imagem da &capa:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 msgid "Browse for an image to use as the cover of this book." msgstr "Navegar para uma imagem para usar como a capa deste livro" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 msgid "&Title: " msgstr "&Título: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:341 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 msgid "Change the title of this book" msgstr "Alterar o título deste livro" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:135 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:344 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 msgid "&Author(s): " msgstr "&Autor(es): " @@ -3055,18 +3102,18 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:143 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 msgid "&Publisher: " msgstr "&Editora: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 msgid "Ta&gs: " msgstr "Eti&quetas: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:145 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

They can be any words or phrases, separated by commas." @@ -3076,7 +3123,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:150 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 msgid "&Series:" msgstr "&Série:" @@ -3084,13 +3131,13 @@ msgstr "&Série:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:151 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:372 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 msgid "List of known series. You can add new series." msgstr "Lista de séries conhecidas. Pode adicionar uma nova série." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 msgid "Book " msgstr "Livro " @@ -3166,7 +3213,7 @@ msgstr "Tratar cada &linha como um parágrafo" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_input_ui.py:33 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:42 msgid "Assume print formatting" -msgstr "" +msgstr "Assume o formato de impressão" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdb_output.py:16 msgid "PDB Output" @@ -3205,37 +3252,39 @@ msgid "RB Output" msgstr "Ficheiro de destino RB" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1321 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 msgid "Choose the format to view" msgstr "Escolher o formato para ver" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:82 msgid "Cannot build regex using the GUI builder without a book." msgstr "" +"Não é possível produzir regex usando o construtor de interface do usuário " +"sem um livro." #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:82 msgid "No formats available" -msgstr "" +msgstr "Nenhum formato disponível" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:98 msgid "Open book" -msgstr "" +msgstr "Abrir livro" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:98 msgid "~" -msgstr "" +msgstr "~" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:46 msgid "Regex Builder" -msgstr "" +msgstr "Construtor Regex" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:47 msgid "Preview" -msgstr "" +msgstr "Pré-visualizar" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:48 msgid "Regex:" -msgstr "" +msgstr "Regex:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/single.py:170 msgid "Convert" @@ -3282,19 +3331,19 @@ msgstr "Inserir quebras de página antes de (Expressão XPath):" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:37 msgid "Header regular expression:" -msgstr "" +msgstr "Expressão regular do cabeçalho:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:40 msgid "Footer regular expression:" -msgstr "" +msgstr "Expressão regular do rodapé:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:56 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:72 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 msgid "Invalid regular expression" msgstr "Expressão regular inválida" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:74 msgid "Invalid regular expression: %s" msgstr "Expressão regular inválida: %s" @@ -3356,23 +3405,23 @@ msgstr "Índice de nível &2 (Expressão XPath):" msgid "Level &3 TOC (XPath expression):" msgstr "Índice de nível &3 (Expressão XPath):" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:63 msgid "Do not add &detected chapters to the Table of Contents" msgstr "Não adicionar os &capítulos detectados ao Índice" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:64 msgid "Number of &links to add to Table of Contents" msgstr "&Número de atalhos a adicionar ao Índice:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:64 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:65 msgid "Chapter &threshold" msgstr "&Limite de capítulos:" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:66 msgid "&Force use of auto-generated Table of Contents" msgstr "&Forçar a utilização de Índices gerados automaticamente" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:66 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:67 msgid "TOC &Filter:" msgstr "Filtro do &Índice:" @@ -3382,7 +3431,7 @@ msgstr "Ficheiro de origem TXT" #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:40 msgid "Process using markdown" -msgstr "" +msgstr "Processar usando markdown" #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:41 msgid "" @@ -3390,6 +3439,9 @@ msgid "" "advanced formatting. To learn more visit markdown." msgstr "" +"

Markdown é uma linguagem de marcação simples para arquivos de texto, que " +"possibilita formatação avançada. Para aprender mais visite markdown." #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output.py:16 msgid "TXT Output" @@ -3401,15 +3453,15 @@ msgstr "Estilo de fim de &linha:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:55 msgid "Add a tab at the beginning of each paragraph" -msgstr "" +msgstr "Adiciona tabulação no início de cada parágrafo" #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:56 msgid "&Maximum line length:" -msgstr "" +msgstr "Comprimento &máximo de linha:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:57 msgid "Force maximum line lenght" -msgstr "" +msgstr "Forçar comprimento máximo de linha" #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:42 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:62 @@ -3519,187 +3571,183 @@ msgstr "Nenhuns detalhes disponíveis." msgid "Device no longer connected." msgstr "O aparelho já não está ligado." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:199 msgid "Get device information" msgstr "Ir buscar informação sobre o aparelho" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:210 msgid "Get list of books on device" msgstr "Listar os livros presentes no aparelho" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:219 msgid "Send metadata to device" msgstr "Enviar os metadados para o aparelho" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:228 msgid "Upload %d books to device" msgstr "Carregar %d livro(s) para o aparelho" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:243 msgid "Delete books from device" msgstr "Apagar os livros do aparelho" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:260 msgid "Download books from device" msgstr "Descarregar os livros do aparelho" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "View book on device" msgstr "Ver o livro no aparelho" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:273 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:277 msgid "and delete from library" msgstr "e apagar da biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:298 msgid "Set default send to device action" msgstr "Definir a acção predefinida Enviar para o aparelho" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:299 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:303 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:310 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:312 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:314 msgid "Email to" msgstr "Email para" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:321 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:328 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 msgid "Send to main memory" msgstr "Enviar para a memória principal" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:323 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:330 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:334 msgid "Send to storage card A" msgstr "Enviar para o cartão de memória A" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 msgid "Send to storage card B" msgstr "Enviar para o cartão de memória B" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 msgid "Send specific format to main memory" msgstr "Enviar o formato específico para a memória principal" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:341 msgid "Send specific format to storage card A" msgstr "Enviar o formato específico para o cartão de memória A" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:343 msgid "Send specific format to storage card B" msgstr "Enviar o formato específico para o cartão de memória B" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:482 -msgid "No books" -msgstr "Nenhuns livros" - -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:487 msgid "selected to send" msgstr "seleccionado para enviar" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:492 msgid "Choose format to send to device" msgstr "Escolher o formato a enviar para o aparelho" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:495 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 msgid "No device" msgstr "Nenhum aparelho" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 msgid "Cannot send: No device is connected" msgstr "É impossível enviar: O aparelho não está ligado" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:507 msgid "No card" msgstr "Nenhum cartão" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:504 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:508 msgid "Cannot send: Device has no storage card" msgstr "É impossível enviar: O aparelho não tem cartão de memória" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:546 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 msgid "E-book:" msgstr "Livro:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:553 msgid "Attached, you will find the e-book" msgstr "Anexado, vai encontrar o livro" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:554 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:177 msgid "by" msgstr "por" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:555 msgid "in the %s format." msgstr "no formato %s." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:568 msgid "Sending email to" msgstr "A enviar o email para" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:594 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:601 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:806 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:813 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:696 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:817 msgid "No suitable formats" msgstr "Nenhuns formatos suportados" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:599 msgid "Auto convert the following books before sending via email?" msgstr "" "Converter automaticamente os seguintes livros antes de enviar via email?" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" "É impossível enviar os livros seguintes por email poque não foram " "encontrados formatos adequados:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:621 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:625 msgid "Failed to email books" msgstr "Falha no envio dos livros" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 msgid "Failed to email the following books:" msgstr "Falha no envio dos seguintes livros:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:630 msgid "Sent by email:" msgstr "Enviado por email:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:653 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:657 msgid "News:" msgstr "Notícias:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:658 msgid "Attached is the" msgstr "Anexado está o" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:665 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 msgid "Sent news to" msgstr "Enviar as notícias para" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:693 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:807 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:697 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:811 msgid "Auto convert the following books before uploading to the device?" msgstr "" "Converter automaticamente os seguintes livros antes de os carregar para o " "aparelho?" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:728 msgid "Sending news to device." msgstr "Enviar notícias para o aparelho." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:776 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:780 msgid "Sending books to device." msgstr "A enviar livros para o aparelho" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:814 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:818 msgid "" "Could not upload the following books to the device, as no suitable formats " "were found. Convert the book(s) to a format supported by your device first." @@ -3708,11 +3756,11 @@ msgstr "" "encontrados formatos adequados. Converta o(s) livro(s) para um formato " "suportado pelo seu aparelho primeiro." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 msgid "No space on device" msgstr "Sem espaço no aparelho" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:863 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:867 msgid "" "

Cannot upload books to device there is no more free space available " msgstr "" @@ -3732,8 +3780,8 @@ msgstr "Usar sub-pastas" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:85 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:86 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:345 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1005 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1007 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:90 msgid "Path" msgstr "Caminho" @@ -3743,8 +3791,8 @@ msgstr "Caminho" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:344 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:83 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Formats" msgstr "Formatos" @@ -3859,14 +3907,14 @@ msgstr "novo endereço de email" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:461 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:788 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:140 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1032 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "Erro" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:462 msgid "Failed to install command line tools." -msgstr "" +msgstr "Falha na instalação das ferramentas de linha de comando." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:465 msgid "Command line tools installed" @@ -3880,6 +3928,8 @@ msgstr "Ferramentas da linha de comandos instaladas em" msgid "" "If you move calibre.app, you have to re-install the command line tools." msgstr "" +"Se você mover calibre.app, você terá que reinstalar as ferramentas de linha " +"de comando." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:518 msgid "No valid plugin path" @@ -3931,7 +3981,7 @@ msgid "Access log:" msgstr "Registo de acesso:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:645 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:573 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:576 msgid "Failed to start content server" msgstr "Falha em iniciar o servidor de conteúdos" @@ -4247,6 +4297,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:508 msgid "&Maximum number of waiting worker processes (needs restart):" msgstr "" +"Número &máximo de processos de trabalho em espera (requer reinicialização):" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:509 msgid "&Check database integrity" @@ -4313,7 +4364,7 @@ msgstr "&Mostrar a palavra-passe" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:519 msgid "Max. &OPDS items per query:" -msgstr "" +msgstr "Max. itens &OPDS por consulta" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:520 msgid "&Start Server" @@ -4486,14 +4537,14 @@ msgstr "Mostrar os &detalhes do processo" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/jobs_ui.py:47 msgid "Stop &all jobs" -msgstr "" +msgstr "P&arar todos os trabalhos" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:133 msgid "Edit Meta information" msgstr "Editar os metadados" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 msgid "Meta information" msgstr "Metadados" @@ -4506,7 +4557,7 @@ msgid "Author s&ort: " msgstr "&Ordenação de autor: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:138 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." @@ -4515,19 +4566,19 @@ msgstr "" "Por exemplo: Charles Dickens deve ser ordenado como Dickens, Charles." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:349 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 msgid "&Rating:" msgstr "A&valiação:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:140 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:141 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:350 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Rating of this book. 0-5 stars" msgstr "Avaliação deste livro. 0-5 estrelas" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:142 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 msgid " stars" msgstr " estrelas" @@ -4537,8 +4588,8 @@ msgstr "Adicionar eti&quetas: " #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:146 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:147 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 msgid "Open Tag Editor" msgstr "Abrir o Editor de Etiquetas" @@ -4554,153 +4605,174 @@ msgstr "Lista de etiquetas separadas por vírgulas a remover dos livros. " msgid "Remove &format:" msgstr "Remover &formatos:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 msgid "Not a valid picture" msgstr "Não é uma imagem válida" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:133 +msgid "Choose formats for " +msgstr "Escolher formatos para " + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:134 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:872 +msgid "Books" +msgstr "Livros" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:160 +msgid "You do not have permission to read the following files:" +msgstr "Você não tem permissão de leitura para os seguintes arquivos:" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 msgid "No format selected" msgstr "Nenhum formato seleccionado" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 msgid "Could not read metadata" msgstr "É impossível ler os metadados" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 msgid "Could not read metadata from %s format" msgstr "É impossível ler os metadados do formato %s" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:224 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:247 msgid "Could not read cover" msgstr "É impossível ler a capa" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:242 msgid "Could not read cover from %s format" msgstr "É impossível ler a capa do formato %s." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:248 msgid "The cover in the %s format is invalid" msgstr "A capa do formato %s é inválida" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:285 msgid "Abort the editing of all remaining books" -msgstr "" +msgstr "Cancelar a edição de todos os livros restantes" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:459 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:488 msgid "Downloading cover..." msgstr "A descarregar a capa..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:471 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:476 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:482 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:511 msgid "Cannot fetch cover" msgstr "É impossível recolher a capa" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:472 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:512 msgid "Could not fetch cover.
" msgstr "É impossível recolher a capa.
" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:473 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:502 msgid "The download timed out." msgstr "O descarregamento está a demorar demasiado tempo." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:477 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:506 msgid "Could not find cover for this book. Try specifying the ISBN first." msgstr "" "É impossível encontrar a capa para este livro. Tente especificar o ISBN " "primeiro." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:489 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:518 msgid "Bad cover" msgstr "Capa com erros" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:519 msgid "The cover is not a valid picture" msgstr "A capa não é uma imagem válida" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:529 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 msgid "Cannot fetch metadata" msgstr "É impossível recolher os metadados" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:530 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 msgid "You must specify at least one of ISBN, Title, Authors or Publisher" msgstr "Deve especificar pelo menos um de ISBN, Título, Autores ou Editora" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:576 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:612 msgid "Permission denied" msgstr "Permissão negada" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:613 msgid "Could not open %s. Is it being used by another program?" msgstr "É impossível abrir %s. Está a ser usado por outro programa?" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:338 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 msgid "Edit Meta Information" msgstr "Editar os metadados" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:342 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 msgid "Swap the author and title" msgstr "Trocar o autor e o título" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:345 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 msgid "Author S&ort: " msgstr "&Ordenação do(s) Autor(es): " -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:347 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 msgid "" "Automatically create the author sort entry based on the current author entry" msgstr "" "Criar automaticamente a ordenação do(s) autor(es) baseada na entrada actual" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 msgid "Remove unused series (Series that have no books)" msgstr "Remover as séries não usadas (Séries que não têm livros)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 msgid "IS&BN:" msgstr "IS&BN:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Publishe&d:" msgstr "Edita&do:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +msgid "dd MMM yyyy" +msgstr "dd MMM aaaa" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 +msgid "&Date:" +msgstr "&Data:" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 msgid "&Comments" msgstr "&Comentários" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 msgid "&Fetch metadata from server" msgstr "&Recolher os metadados do servidor" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 msgid "Available Formats" msgstr "Formatos disponíveis" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 msgid "Add a new format for this book to the database" msgstr "Adicionar um novo formato para este livro à base de dados" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:372 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 msgid "Remove the selected formats for this book from the database." msgstr "Remover os formatos seleccionados deste livro da base de dados" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 msgid "Set the cover for the book from the selected format" msgstr "Definir a capa para o livro a partir do formato seleccionado" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 msgid "Update metadata from the metadata in the selected format" msgstr "" "Actualizar os metadados a partir dos metadados do formato seleccionado" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 msgid "Reset cover to default" msgstr "Reiniciar a capa para a predefinida" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 msgid "Download &cover" msgstr "Descarregar a &capa" @@ -5258,11 +5330,11 @@ msgstr "Expressão regular (?P<title>)" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:79 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:83 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:88 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:93 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:96 msgid "No match" msgstr "Nenhuma correspondência" @@ -5340,12 +5412,12 @@ msgid " - Jobs" msgstr " - Processos" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1068 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1070 msgid "Size (MB)" msgstr "Tamanho (MB)" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:161 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1069 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1071 msgid "Date" msgstr "Data" @@ -5356,7 +5428,7 @@ msgstr "Avaliação" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:343 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:408 msgid "None" msgstr "Nenhum" @@ -5364,11 +5436,11 @@ msgstr "Nenhum" msgid "Book %s of %s." msgstr "Livro %s de %s." -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:832 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:834 msgid "Not allowed" msgstr "Não permitido" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:833 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:835 msgid "" "Dropping onto a device is not supported. First add the book to the calibre " "library." @@ -5376,11 +5448,11 @@ msgstr "" "Arrastar para o aparelho não é suportado. Primeiro adicionar o livro à " "biblioteca do calibre." -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1006 msgid "Format" msgstr "Formato" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1058 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1060 msgid "Double click to edit me

" msgstr "Duplo clique para me editar

" @@ -5494,31 +5566,31 @@ msgstr "" msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" msgstr "%s: %s por Kovid Goyal %%(version)s
%%(device)s

" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "Edit metadata individually" msgstr "Editar os metadados individualmente" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 msgid "Edit metadata in bulk" msgstr "Editar os metadados a granel" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 msgid "Download metadata and covers" msgstr "Descarregar os metadados e as capas" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:232 msgid "Download only metadata" msgstr "Descarregar só os metadados" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:233 msgid "Download only covers" msgstr "Descarregar só as capas" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 msgid "Add books from a single directory" msgstr "Adicionar os livros a partir de uma pasta" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:237 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" @@ -5527,7 +5599,7 @@ msgstr "" "pasta, assume que todos os ficheiros de livros na mesma pasta estão em " "formatos diferentes)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:240 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" @@ -5536,85 +5608,85 @@ msgstr "" "livros por pasta, assume que todos os ficheiros de livros são livros " "diferentes)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:243 msgid "Add Empty book. (Book entry with no formats)" msgstr "Adicionar um livro vazio (Uma entrada de livro sem nenhum formato)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:278 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:353 msgid "Save to disk" msgstr "Guardar no disco" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 msgid "Save to disk in a single directory" msgstr "Guardar no disco numa única pasta" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1423 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:282 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 msgid "Save only %s format to disk" msgstr "Guardar só o formato %s no disco" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:290 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:359 msgid "View" msgstr "Ver" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "View specific format" msgstr "Ver o formato específico" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:315 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:317 msgid "Convert individually" msgstr "Converter individualmente" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:316 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:318 msgid "Bulk convert" msgstr "Converter a granel" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:333 msgid "Run welcome wizard" msgstr "Executar o assistente de boas vindas" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:367 msgid "Similar books..." msgstr "Livros semelhantes..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:424 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:425 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 msgid "Bad database location" msgstr "Localização da base de dados com erros" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:477 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:478 msgid "Calibre Library" msgstr "Biblioteca do calibre" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:437 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1566 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1603 msgid "Choose a location for your ebook library." msgstr "Escolher a localização para a sua biblioteca de livros" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:616 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:619 msgid "Browse by covers" msgstr "Navegar pelas capas" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:723 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 msgid "Device: " msgstr "Aparelho: " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:725 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:728 msgid " detected." msgstr " detectado." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:747 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:750 msgid "Connected " msgstr "Ligado " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:759 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:762 msgid "Device database corrupted" msgstr "Base de dados do aparelho corrompida" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:760 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:763 msgid "" "\n" "

The database of books on the reader is corrupted. Try the " @@ -5642,60 +5714,56 @@ msgstr "" " \n" " " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:836 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:879 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:907 msgid "Uploading books to device." msgstr "A carregar os livros para o aparelho." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:844 -msgid "Books" -msgstr "Livros" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:845 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:873 msgid "EPUB Books" msgstr "Livros em formato EPUB" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:846 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:874 msgid "LRF Books" msgstr "Livros em formato LRF" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:847 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:875 msgid "HTML Books" msgstr "Livros em formato HTML" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:848 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:876 msgid "LIT Books" msgstr "Livros em formato LIT" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:849 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:877 msgid "MOBI Books" msgstr "Livros em formato MOBI" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:850 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:878 msgid "Text books" msgstr "Livros em formato texto" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:851 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:879 msgid "PDF Books" msgstr "Livros em formato PDF" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:852 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 msgid "Comics" msgstr "Banda desenhada" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:881 msgid "Archives" msgstr "Arquivos" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:888 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:916 msgid "Failed to read metadata" msgstr "Falha ao ler os metadados" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:917 msgid "Failed to read metadata from the following" msgstr "Falha ao ler os metadados do(s) seguinte(s)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:908 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 msgid "" "The selected books will be permanently deleted and the files removed " "from your computer. Are you sure?" @@ -5703,107 +5771,111 @@ msgstr "" "Os livros seleccionados vão ser permanentemente apagados e os " "ficheiros removidos do seu computador. Tem a certeza?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:935 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:963 msgid "Deleting books from device." msgstr "A apagar livros do aparelho." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:966 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:994 msgid "Cannot download metadata" msgstr "É impossível descarregar os metadados" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:967 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1015 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1048 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1073 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1043 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1101 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1213 msgid "No books selected" msgstr "Nenhuns livros seleccionados" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:976 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "covers" msgstr "capas" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:976 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "metadata" msgstr "metadados" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:978 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1006 msgid "Downloading %s for %d book(s)" msgstr "Descarregar %s para %d livro(s)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:999 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1027 msgid "Failed to download some metadata" msgstr "Falha ao descarregar alguns metadados" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1000 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1028 msgid "Failed to download metadata for the following:" msgstr "Falha ao descarregar os metadados para os seguintes:" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1003 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1031 msgid "Failed to download metadata:" msgstr "Falha ao descarregar os metadados:" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1014 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1047 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1075 msgid "Cannot edit metadata" msgstr "É impossível editar os metadados" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1072 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1100 msgid "Cannot save to disk" msgstr "É impossível guardar no disco" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1075 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 msgid "Choose destination directory" msgstr "Escolher a pasta de destino" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1102 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1130 msgid "Error while saving" msgstr "Erro ao guardar" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1131 msgid "There was an error while saving." msgstr "Houve um erro ao guardar." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1110 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1111 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1138 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1139 msgid "Could not save some books" msgstr "É impossível guardar alguns livros" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1112 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1140 msgid "Click the show details button to see which ones." msgstr "Clique no botão ver detalhes para ver quais." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1131 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1159 msgid "Fetching news from " msgstr "Recolher notícias de " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1144 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1172 msgid " fetched." msgstr " recolhida." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1184 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 msgid "Cannot convert" msgstr "É impossível converter" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1315 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1334 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1241 +msgid "Starting conversion of %d book(s)" +msgstr "Iniciar conversão de %d livro(s)" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1371 msgid "No book selected" msgstr "Nenhum livro seleccionado" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1315 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1365 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1402 msgid "Cannot view" msgstr "É impossível ver" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1333 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1370 msgid "Cannot open folder" msgstr "É impossível abrir a pasta" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1350 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1387 msgid "Multiple Books Selected" msgstr "Múltiplos livros seleccionados" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1351 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1388 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 " @@ -5814,31 +5886,31 @@ msgstr "" "e ter um efeito negativo na reacção do seu computador. Uma vez começado o " "processo não pode ser parado até estar completo. Deseja continuar?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1366 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1403 msgid "%s has no available formats." msgstr "%s não tem formatos disponíveis." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1407 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1444 msgid "Cannot configure" msgstr "É impossível configurar" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1408 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1445 msgid "Cannot configure while there are running jobs." msgstr "É impossível configurar enquanto estiverem processos a executar." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1451 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1488 msgid "No detailed info available" msgstr "Nenhuma informação detalhada disponível" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1452 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1489 msgid "No detailed information is available for books on the device." msgstr "Nenhuma informação detalhada disponível para os livros no aparelho." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1504 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1541 msgid "Error talking to device" msgstr "Erro ao comunicar com o aparelho" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1505 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1542 msgid "" "There was a temporary error talking to the device. Please unplug and " "reconnect the device and or reboot." @@ -5846,30 +5918,33 @@ msgstr "" "Houve um erro temporário ao comunicar com o aparelho. Por favor desligue e " "volte a ligar o aparelho ou reinicie." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1528 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1546 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1565 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 msgid "Conversion Error" msgstr "Erro de conversão" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1529 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1566 msgid "" "

Could not convert: %s

It is a DRMed book. You must " "first remove the DRM using third party tools." msgstr "" +"

Não pode converter: %s

Ele é um e-livro com proteção GDD(Gestão de " +"Direitos Digitais). Você deve primeiro remover a GDD usando ferramentas de " +"terceiros." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1547 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 msgid "Failed" msgstr "Falha" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1575 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1612 msgid "Invalid library location" msgstr "Localização da biblioteca inválida" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1576 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1613 msgid "Could not access %s. Using %s as the library." msgstr "É impossível aceder a %s. A usar %s como a biblioteca." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1623 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1660 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." @@ -5878,11 +5953,11 @@ msgstr "" "acha útil, por favor considere fazer um donativo para ajudar no seu " "desenvolvimento." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1647 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1684 msgid "There are active jobs. Are you sure you want to quit?" msgstr "Existem processos activos. Tem a certeza que quer sair?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1650 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1687 msgid "" " is communicating with the device!
\n" " Quitting may cause corruption on the device.
\n" @@ -5892,11 +5967,11 @@ msgstr "" " Sair pode causar corrupção no aparelho.
\n" " Tem a certeza que quer sair?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1654 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1691 msgid "WARNING: Active jobs" msgstr "AVISO: Processos activos" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1705 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1742 msgid "" "will keep running in the system tray. To close it, choose Quit in the " "context menu of the system tray." @@ -5904,7 +5979,7 @@ msgstr "" "vai continuar a executar na área de notificação. Para fechar escolha " "Sair no menu de contexto da área de notificação." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1724 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 msgid "" "Latest version: %s" @@ -5912,11 +5987,11 @@ msgstr "" "Última versão: %s" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1732 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1769 msgid "Update available" msgstr "Actualização disponível" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1733 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1770 msgid "" "%s has been updated to version %s. See the new features. " @@ -5926,52 +6001,52 @@ msgstr "" "href=\"http://calibre.kovidgoyal.net/wiki/Changelog\">as novas " "funcionalidades. Visitar a página para descarregar?" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1751 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1788 msgid "Use the library located at the specified path." msgstr "Usar a biblioteca localizada no caminho especificado." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1753 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1790 msgid "Start minimized to system tray." msgstr "Iniciar minimizado na área de notificação." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1755 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1792 msgid "Log debugging information to console" msgstr "Registar a informação de depuração na consola" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1757 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1794 msgid "Do not check for updates" -msgstr "" +msgstr "Não verificar atualizações" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1805 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1842 msgid "If you are sure it is not running" msgstr "Se tem a certeza que não está a executar" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1807 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1844 msgid "Cannot Start " msgstr "É impossível começar " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1808 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1845 msgid "%s is already running." msgstr "%s já está a executar." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1811 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1848 msgid "may be running in the system tray, in the" msgstr "pode estar a executar na área de notificação, no" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1813 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1850 msgid "upper right region of the screen." msgstr "canto superior direito do écran" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1815 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1852 msgid "lower right region of the screen." msgstr "canto inferior direito do écran" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1818 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1855 msgid "try rebooting your computer." msgstr "tente reiniciar o seu computador" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1820 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1832 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1857 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1869 msgid "try deleting the file" msgstr "tente apagar o ficheiro" @@ -6131,27 +6206,27 @@ msgstr "O livro não tem nem título nem ISBN" msgid "No matches found for this book" msgstr "Nenhuma correspondência encontrada para este livro" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:60 msgid "Search" msgstr "Procurar" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:149 msgid "Jobs:" msgstr "Processos:" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:158 msgid "Click to see list of active jobs." msgstr "Clique para ver a lista dos processos activos." -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to browse books by their covers" msgstr "Clique para navegar os livros pelas capas" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to turn off Cover Browsing" msgstr "Clique para desligar a navegação pelas capas" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:193 msgid "" "

Browsing books by their covers is disabled.
Import of pictureflow " "module failed:
" @@ -6159,35 +6234,30 @@ msgstr "" "

Navegar os livros pelas capas está desactivado.
A importação do módulo " "pictureflow falhou:
" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:201 msgid "Click to browse books by tags" msgstr "Clique para navegar os livros pelas etiquetas" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:83 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Authors" msgstr "Autor(es)" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:83 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Publishers" msgstr "Editoras" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:34 -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:106 -msgid "Starting conversion of %d books" -msgstr "A começar a conversão de %d livro(s)" - -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:182 msgid "Convert book %d of %d (%s)" msgstr "Converter o livro %d de %d (%s)" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:91 -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:204 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:202 msgid "Could not convert some books" msgstr "É impossível converter alguns livros" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:92 -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:205 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:203 msgid "" "Could not convert %d of %d books, because no suitable source format was " "found." @@ -6195,31 +6265,33 @@ msgstr "" "É impossível converter %d de %d livros, porque não foi encontrado um formato " "fonte adequado." -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:121 msgid "Queueing books for bulk conversion" -msgstr "" +msgstr "Enfileirando livros para conversão em massa" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:181 msgid "Queueing " -msgstr "" +msgstr "Enfileirando " -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:237 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:235 msgid "You must set a username and password for %s" msgstr "Deve definir um utilizador e uma palavra-passe para %s" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:240 msgid "Fetch news from " msgstr "Recolher as notícias de " -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:253 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:251 msgid "Convert existing" -msgstr "" +msgstr "Converter existentes" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:252 msgid "" "The following books have already been converted to %s format. Do you wish to " "reconvert them?" msgstr "" +"Os seguintes livros já foram convertidos para o formato %s. Deseja " +"reconverter eles?" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager.py:43 msgid "Edit bookmark" @@ -6565,7 +6637,7 @@ msgstr "Imprimir" msgid "Print eBook" msgstr "Imprimir o livro" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 msgid "" "Library\n" "%d\n" @@ -6575,7 +6647,7 @@ msgstr "" "%d\n" "livros" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 msgid "" "Reader\n" "%s\n" @@ -6585,7 +6657,7 @@ msgstr "" "%s\n" "disponíveis" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:200 msgid "" "Card A\n" "%s\n" @@ -6595,7 +6667,7 @@ msgstr "" "%s\n" "disponíveis" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:201 msgid "" "Card B\n" "%s\n" @@ -6605,42 +6677,42 @@ msgstr "" "%s\n" "disponíveis" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:206 msgid "Click to see the books available on your computer" msgstr "Clique para ver os livros disponíveis no seu computador" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:207 msgid "Click to see the books in the main memory of your reader" msgstr "" "Clique para ver os livros disponíveis na memória principal do seu aparelho" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:208 msgid "Click to see the books on storage card A in your reader" msgstr "" "Clique para ver os livros disponíveis no cartão de memória A do seu aparelho" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:209 msgid "Click to see the books on storage card B in your reader" msgstr "" "Clique para ver os livros disponíveis no cartão de memória B do seu aparelho" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:466 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:498 msgid "Change Case" msgstr "Alterar a Capitalização" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:499 msgid "Upper Case" msgstr "Maiúsculas" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:468 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:500 msgid "Lower Case" msgstr "Minúsculas" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:469 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:501 msgid "Swap Case" msgstr "Alterar a Capitalização" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:470 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:502 msgid "Title Case" msgstr "Capitalização de Título" @@ -6704,7 +6776,7 @@ msgstr "" msgid "Could not move library" msgstr "É impossível mover a biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:528 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:541 msgid "welcome wizard" msgstr "assistente de boas vindas" @@ -6998,6 +7070,8 @@ msgid "" "The maximum number of matches to return per OPDS query. This affects Stanza, " "WordPlayer, etc. integration." msgstr "" +"Número máximo de resultados a serem retornados por consulta OPDS. Isto afeta " +"a integração com Stanza, WordPlayer, etc." #: /home/kovid/work/calibre/src/calibre/library/cli.py:117 msgid "" @@ -7306,29 +7380,29 @@ msgstr "" " %s\n" "Para ajuda num comando individual: %%prog comando --help\n" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1565 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1567 msgid "

Migrating old database to ebook library in %s

" msgstr "" "

A migrar a base de dados antiga para a biblioteca de livros em " "%s

" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1594 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1596 msgid "Copying %s" msgstr "A copiar %s" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1611 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1613 msgid "Compacting database" msgstr "A compactar a base de dados" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1699 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1701 msgid "Checking SQL integrity..." msgstr "A verificar a integridade do SQL..." -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1736 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1738 msgid "Checking for missing files." msgstr "A verificar ficheiros desaparecidos." -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1760 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1762 msgid "Checked id" msgstr "ID verificado" @@ -7474,15 +7548,15 @@ msgstr "" "\n" "Iniciar o servidor de conteúdos do calibre." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:45 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:47 msgid "%sUsage%s: %s\n" msgstr "%sUtilização%s: %s\n" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:89 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:91 msgid "Created by " msgstr "Criado por " -#: /home/kovid/work/calibre/src/calibre/utils/config.py:90 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:92 msgid "" "Whenever you pass arguments to %prog that have spaces in them, enclose the " "arguments in quotation marks." @@ -7490,43 +7564,43 @@ msgstr "" "Sempre que passar argumentos para o %prog que contenham espaços ponha-os " "entre aspas." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:553 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 msgid "Path to the database in which books are stored" msgstr "Caminho para a base de dados onde os livros estão armazenados" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:555 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 msgid "Pattern to guess metadata from filenames" msgstr "Padrão para adivinhar os metadados a partir do nome dos ficheiros" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:557 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 msgid "Access key for isbndb.com" msgstr "Chave de acesso para isbndb.com" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 msgid "Default timeout for network operations (seconds)" msgstr "Predefinição do tempo de espera para as operações de rede (segundos)" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 msgid "Path to directory in which your library of books is stored" msgstr "Caminho para a pasta onde a sua biblioteca de livros está armazenada" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:569 msgid "The language in which to display the user interface" msgstr "A linguagem de apresentação da interface do utilizador" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 msgid "The default output format for ebook conversions." msgstr "O formato de destino predefinido para a conversão de livros." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:569 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 msgid "Ordered list of formats to prefer for input." msgstr "Lista ordenada de formatos preferidos como origem." -#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:577 msgid "Read metadata from files" msgstr "Ler os metadados a partir dos ficheiros" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:573 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:579 msgid "The priority of worker processes" msgstr "A prioridade dos processos de trabalho" @@ -7548,35 +7622,36 @@ msgstr "A Processar..." #: /home/kovid/work/calibre/src/calibre/utils/localization.py:94 msgid "Brazilian Portuguese" -msgstr "" +msgstr "Português brasileiro" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:95 msgid "English (UK)" -msgstr "" +msgstr "Inglês (Reino Unido)" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:96 msgid "Simplified Chinese" -msgstr "" +msgstr "Chinês simplificado" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:97 msgid "Chinese (HK)" -msgstr "" +msgstr "Chinês (Hong Kong)" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:98 msgid "Traditional Chinese" -msgstr "" +msgstr "Chinês Tradicional" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:99 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nytimes.py:17 msgid "English" msgstr "Inglês" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:100 msgid "English (AU)" -msgstr "" +msgstr "Inglês (Austrália)" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:101 msgid "English (CA)" -msgstr "" +msgstr "Inglês (Califórnia)" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:102 msgid "English (IND)" @@ -7711,6 +7786,7 @@ msgstr "Falha no descarregamento do artigo: %s" #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_lamujerdemivida.py:60 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_laprensa_ni.py:64 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_monitor.py:79 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nin.py:95 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pobjeda.py:84 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_republika.py:67 msgid "Fetching feed" @@ -7728,7 +7804,7 @@ msgstr "Saltar o artigo duplicado: %s" msgid "Skipping filtered article: %s" msgstr "Saltar o artigo filtrado: %s" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:452 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:458 msgid "" "%prog URL\n" "\n" @@ -7738,11 +7814,11 @@ msgstr "" "\n" "Onde o URL é por exemplo http://google.com" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:455 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:461 msgid "Base directory into which URL is saved. Default is %default" msgstr "Pasta padrão onde o URL é guardado. A predefinição é %default" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:458 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:464 msgid "" "Timeout in seconds to wait for a response from the server. Default: %default " "s" @@ -7750,7 +7826,7 @@ msgstr "" "O tempo de espera em segundos para esperar uma resposta do servidor. A " "predefinição é: %default s" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:461 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:467 msgid "" "Maximum number of levels to recurse i.e. depth of links to follow. Default " "%default" @@ -7758,7 +7834,7 @@ msgstr "" "O número máximo de níveis a seguir recursivamente, i.e. a profundidade de " "atalhos a seguir. A predefinição é %default" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:464 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:470 msgid "" "The maximum number of files to download. This only applies to files from tags. Default is %default" @@ -7766,7 +7842,7 @@ msgstr "" "O número máximo de ficheiros para descarregar. Isto só se aplica a ficheiros " "com etiquetas . A predefinição é %default" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:466 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:472 msgid "" "Minimum interval in seconds between consecutive fetches. Default is %default " "s" @@ -7774,7 +7850,7 @@ msgstr "" "Intervalo mínimo em segundos entre recolhas consecutivas. A predefinição é " "%default s" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:468 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:474 msgid "" "The character encoding for the websites you are trying to download. The " "default is to try and guess the encoding." @@ -7782,7 +7858,7 @@ msgstr "" "A codificação de caracteres para os sítios que está a tentar descarregar. A " "predefinição é tentar descobrir a codificação." -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:470 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:476 msgid "" "Only links that match this regular expression will be followed. This option " "can be specified multiple times, in which case as long as a link matches any " @@ -7793,7 +7869,7 @@ msgstr "" "um atalho corresponder a alguma expressão regular, ele será seguido. A " "predefinição é seguir todas os atalhos." -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:472 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:478 msgid "" "Any link that matches this regular expression will be ignored. This option " "can be specified multiple times, in which case as long as any regexp matches " @@ -7807,11 +7883,11 @@ msgstr "" "predefinição é não ignorar nenhum atalho. Se ambos --filter-regexp e --match-" "regexp forem especificados, então --filter-regexp é aplicado primeiro." -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:474 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:480 msgid "Do not download CSS stylesheets." msgstr "Não descarregar folhas de estilos CSS." -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:475 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:481 msgid "Show detailed output information. Useful for debugging" msgstr "Mostrar informação detalhada. Útil para depurar." @@ -9497,6 +9573,9 @@ msgstr "Mostrar informação detalhada. Útil para depurar." #~ msgid "Chinese" #~ msgstr "Chinês" +#~ msgid "Starting conversion of %d books" +#~ msgstr "A começar a conversão de %d livro(s)" + #~ msgid "&Footer regular expression:" #~ msgstr "&Expressão regular para o rodapé:" diff --git a/src/calibre/translations/pt_BR.po b/src/calibre/translations/pt_BR.po index 32238ebb3d..4e15cbf70f 100644 --- a/src/calibre/translations/pt_BR.po +++ b/src/calibre/translations/pt_BR.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2009-09-18 19:33+0000\n" -"PO-Revision-Date: 2009-09-05 19:10+0000\n" -"Last-Translator: matheusoveral \n" +"POT-Creation-Date: 2009-10-10 02:36+0000\n" +"PO-Revision-Date: 2009-10-14 01:40+0000\n" +"Last-Translator: Fabio Malcher Miranda \n" "Language-Team: Brazilian Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-09-23 09:45+0000\n" +"X-Launchpad-Export-Date: 2009-10-14 06:51+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 @@ -26,8 +26,9 @@ msgstr "Faz absolutamente nada" #: /home/kovid/work/calibre/src/calibre/devices/kindle/driver.py:53 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:58 #: /home/kovid/work/calibre/src/calibre/devices/prs505/books.py:199 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:703 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:706 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:730 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:733 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:177 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:410 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:65 #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:67 @@ -53,8 +54,7 @@ msgstr "Faz absolutamente nada" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf.py:444 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:870 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdb.py:39 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdf.py:34 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdf.py:76 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdf.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/topaz.py:29 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/txt.py:14 #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:44 @@ -68,7 +68,7 @@ msgstr "Faz absolutamente nada" #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:51 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:886 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:891 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:947 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:951 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:135 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:137 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:105 @@ -96,46 +96,44 @@ msgstr "Faz absolutamente nada" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:29 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:217 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:219 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:261 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:268 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:111 -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:273 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:127 #: /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/device.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:548 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:765 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:768 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:552 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:769 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:772 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:106 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:402 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:431 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:42 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:391 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:404 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:874 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1000 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:876 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1002 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:211 #: /home/kovid/work/calibre/src/calibre/library/cli.py:277 #: /home/kovid/work/calibre/src/calibre/library/database.py:917 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:654 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:666 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1061 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1098 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1428 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:652 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:664 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1063 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1100 #: /home/kovid/work/calibre/src/calibre/library/database2.py:1430 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1539 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1432 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1541 #: /home/kovid/work/calibre/src/calibre/library/server.py:493 #: /home/kovid/work/calibre/src/calibre/library/server.py:565 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:103 #: /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 -#: /home/kovid/work/calibre/src/calibre/utils/poppler/__init__.py:28 -#: /home/kovid/work/calibre/src/calibre/utils/poppler/__init__.py:32 msgid "Unknown" msgstr "Desconhecido" @@ -153,7 +151,7 @@ msgstr "Leitor de metadados" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:213 msgid "Metadata writer" -msgstr "" +msgstr "Escritor de metadados" #: /home/kovid/work/calibre/src/calibre/customize/builtins.py:13 msgid "" @@ -170,6 +168,8 @@ msgid "" "Character encoding for the input HTML files. Common choices include: cp1252, " "latin1, iso-8859-1 and utf-8." msgstr "" +"Codificação de caracteres para os arquivos HTML de entrada. Escolhas comuns " +"incluem: cp1252, latin1, iso-8859 e utf-8." #: /home/kovid/work/calibre/src/calibre/customize/builtins.py:56 msgid "Extract cover from comic files" @@ -231,7 +231,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/conversion.py:225 msgid "Conversion Output" -msgstr "" +msgstr "Saída de conversão" #: /home/kovid/work/calibre/src/calibre/customize/conversion.py:239 msgid "" @@ -282,7 +282,7 @@ msgstr "Este perfil é destinado para o Cybook G3." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:118 #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:278 msgid "This profile is intended for the Cybook Opus." -msgstr "" +msgstr "Este perfil é destinado ao Cybook Opus." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:130 #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:289 @@ -292,12 +292,12 @@ msgstr "Este perfil é destinado para o Kindle da Amazon." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:142 #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:322 msgid "This profile is intended for the Irex Illiad." -msgstr "" +msgstr "Este perfil é destinado ao Irex Illiad." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:154 #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:335 msgid "This profile is intended for the IRex Digital Reader 1000." -msgstr "" +msgstr "Este perfil é destinado ao leitor IRex Digital 1000." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:172 msgid "Output profile" @@ -315,7 +315,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:206 msgid "This profile is intended for the 5-inch JetBook." -msgstr "" +msgstr "Este perfil é destinado ao JetBook de 5 polegadas." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:217 msgid "" @@ -349,30 +349,34 @@ msgstr "Plug-ins desativados" msgid "No valid plugin found in " msgstr "Não foi encontrado um plugin válido " -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:229 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:232 msgid "Initialization of plugin %s failed with traceback:" -msgstr "" +msgstr "Inicialização do plugin %s falhou, gerando relatório:" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:359 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:362 msgid "" " %prog options\n" "\n" " Customize calibre by loading external plugins.\n" " " msgstr "" +" opções %prog/\n" +"\n" +" customiza o calibre usando plugins externos\n" +" " -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:365 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:368 msgid "Add a plugin by specifying the path to the zip file containing it." msgstr "" "Adiciona um plugin via a especificação do caminho de um arquivo zip que o " "contenha." -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:367 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:370 msgid "Remove a custom plugin by name. Has no effect on builtin plugins" msgstr "" "Remover um plugin personalizado por nome. Não tem efeito em plugins nativos" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:369 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:372 msgid "" "Customize plugin. Specify name of plugin and customization string separated " "by a comma." @@ -380,21 +384,21 @@ msgstr "" "Personalizar plugin. Use uma vírgula para separar o nome do plugin e a " "string de personalização." -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:371 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:374 msgid "List all installed plugins" msgstr "Listar todos os plugins instalados" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:373 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:376 msgid "Enable the named plugin" msgstr "Habilitar a extensão com nome" -#: /home/kovid/work/calibre/src/calibre/customize/ui.py:375 +#: /home/kovid/work/calibre/src/calibre/customize/ui.py:378 msgid "Disable the named plugin" msgstr "Desabilitar a extensão com nome" #: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:13 msgid "Communicate with Android phones." -msgstr "" +msgstr "Comunica com os telefones Android" #: /home/kovid/work/calibre/src/calibre/devices/bebook/driver.py:19 msgid "Communicate with the BeBook eBook reader." @@ -418,7 +422,7 @@ msgstr "Kovid Goyal" #: /home/kovid/work/calibre/src/calibre/devices/cybookg3/driver.py:21 msgid "Communicate with the Cybook Gen 3 eBook reader." -msgstr "" +msgstr "Comunica com o leitor de e-livros Cybook Gen 3." #: /home/kovid/work/calibre/src/calibre/devices/cybookg3/driver.py:22 #: /home/kovid/work/calibre/src/calibre/devices/cybookg3/driver.py:86 @@ -444,7 +448,7 @@ msgstr "Transferindo livros para o dispositivo..." #: /home/kovid/work/calibre/src/calibre/devices/cybookg3/driver.py:85 msgid "Communicate with the Cybook Opus eBook reader." -msgstr "" +msgstr "Comunica com o leitor de e-livros Cybook Opus." #: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:23 msgid "Communicate with the EB600 eBook reader." @@ -452,11 +456,11 @@ msgstr "Comunicar com o leitor de eBooks EB600." #: /home/kovid/work/calibre/src/calibre/devices/eslick/driver.py:16 msgid "Communicate with the ESlick eBook reader." -msgstr "" +msgstr "Comunica com o leitor de e-livros ESlick." #: /home/kovid/work/calibre/src/calibre/devices/iliad/driver.py:16 msgid "Communicate with the IRex Iliad eBook reader." -msgstr "" +msgstr "Comunica com o leitor de e-livros IRex Iliad." #: /home/kovid/work/calibre/src/calibre/devices/interface.py:20 msgid "Device Interface" @@ -464,7 +468,7 @@ msgstr "Interface de dispositivo" #: /home/kovid/work/calibre/src/calibre/devices/irexdr/driver.py:16 msgid "Communicate with the IRex Digital Reader 1000 eBook reader." -msgstr "" +msgstr "Comunica com o leitor de e-livros IRex Digital Reader 1000." #: /home/kovid/work/calibre/src/calibre/devices/jetbook/driver.py:22 msgid "Communicate with the JetBook eBook reader." @@ -503,7 +507,7 @@ msgstr "Obtendo lista de livros no dispositivo..." #: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:26 msgid "Communicate with the Sony PRS-300/505 eBook reader." -msgstr "" +msgstr "Comunica com o leitor de e-livros Sony PRS-300/505." #: /home/kovid/work/calibre/src/calibre/devices/prs505/driver.py:27 #: /home/kovid/work/calibre/src/calibre/devices/prs700/driver.py:18 @@ -524,7 +528,7 @@ msgstr "Enviando metadados ao dispositivo..." #: /home/kovid/work/calibre/src/calibre/devices/prs700/driver.py:17 msgid "Communicate with the Sony PRS-600/700 eBook reader." -msgstr "" +msgstr "Comunica com o leitor de e-livros Sony PRS-600/700." #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:285 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:357 @@ -537,48 +541,50 @@ msgstr "Incapaz de detectar a unidade de disco %s" #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:518 msgid "Could not find mount helper: %s." -msgstr "" +msgstr "Ajudante de montagem %s não foi encontrado." #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:530 msgid "" "Unable to detect the %s disk drive. Your kernel is probably exporting a " "deprecated version of SYSFS." msgstr "" +"Disco rígido %s não pode ser detectado. Provavelmente seu kernel está " +"exportando uma versão desatualizada do SYSFS." #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:538 msgid "Unable to mount main memory (Error code: %d)" msgstr "Não foi possível montar a memória principal (Código do erro: %d)" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:643 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:645 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:670 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:672 msgid "The reader has no storage card in this slot." msgstr "Não há cartão de memória no soquete do dispositivo leitor" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:647 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:674 msgid "Selected slot: %s is not supported." -msgstr "" +msgstr "Slot %s selecionado não é suportado." -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:671 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:698 msgid "There is insufficient free space in main memory" msgstr "Não há espaço suficiente na memória principal" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:673 -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:675 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:700 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:702 msgid "There is insufficient free space on the storage card" msgstr "Não há espaço suficiente no cartão de memória" -#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:686 +#: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:713 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:434 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:83 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1005 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1009 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1332 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1007 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1011 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1334 msgid "News" msgstr "Notícias" #: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:11 msgid "Configure Device" -msgstr "" +msgstr "Configurar o Aparelho" #: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:16 msgid "settings for device drivers" @@ -590,12 +596,12 @@ msgstr "Lista ordenada de formatos que serão aceitos pelo dispositivo" #: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:18 msgid "Place files in sub directories if the device supports them" -msgstr "" +msgstr "Colocar os arquivos em subdiretórios se o aparelho suportar." #: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:19 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:64 msgid "Read metadata from files on device" -msgstr "" +msgstr "Ler metadados dos arquivos no aparelho" #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:29 msgid "Communicate with an eBook reader." @@ -608,16 +614,16 @@ msgstr "Obtendo informações do dispositivo..." #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:107 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:115 msgid "Adding books to device metadata listing..." -msgstr "" +msgstr "Adicionando livros à lista de metadados do aparelho..." #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:138 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:143 msgid "Removing books from device metadata listing..." -msgstr "" +msgstr "Removendo livros da lista de metadados do aparelho..." #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:196 msgid "Rendered %s" -msgstr "" +msgstr "%s representado" #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:199 msgid "Failed %s" @@ -639,11 +645,16 @@ msgid "" "of less than 256 may result in blurred text on your device if you are " "creating your comics in EPUB format." msgstr "" +"Número de cores da conversão de imagens na escala de cinza. Padrão: %padrao. " +"Valores menores que 256 podem resultar em um texto borrado no seu aparelho " +"se você estiver criando seus gibis no formato EPUB." #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:278 msgid "" "Disable normalize (improve contrast) color range for pictures. Default: False" msgstr "" +"Desativar normalização (melhorar contraste) da escala de cores para figuras. " +"Padrão: Falso" #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:281 msgid "Maintain picture aspect ratio. Default is to fill the screen." @@ -651,7 +662,7 @@ msgstr "Manter a proporção da imagem. O padrão é para preencher a tela." #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:283 msgid "Disable sharpening." -msgstr "" +msgstr "Desativar a nitidez." #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:285 msgid "" @@ -663,25 +674,32 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:288 msgid "Don't split landscape images into two portrait images" -msgstr "" +msgstr "Não dividir imagens em modo paisagem em duas imagens em modo retrato" #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:290 msgid "" "Keep aspect ratio and scale image using screen height as image width for " "viewing in landscape mode." msgstr "" +"Manter a taxa de aspecto e escala de imagem usando a altura da tela como " +"largura da imagem para visualização em modo paisagem." #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:293 msgid "" "Used for right-to-left publications like manga. Causes landscape pages to be " "split into portrait pages from right to left." msgstr "" +"Usado para publicações da direita para a esquerda, igual mangá. Faz com que " +"páginas no modo paisagem sejam divididas em páginas no modo retrato da " +"direita para a esquerda." #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:297 msgid "" "Enable Despeckle. Reduces speckle noise. May greatly increase processing " "time." msgstr "" +"Ativar limpeza de irregularidades. Reduz as irregularidades. Pode aumentar " +"consideravelmente o tempo de processamento." #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:300 msgid "" @@ -697,10 +715,13 @@ msgid "" "experiment to see which format gives you optimal size and look on your " "device." msgstr "" +"O formato para o qual as imagens no e-livro criado são convertidas. Você " +"pode experimentar para ver qual formato fica com melhor tamanho e aparência " +"no seu aparelho." #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:308 msgid "Apply no processing to the image" -msgstr "" +msgstr "Não aplicar processamento à imagem" #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:434 #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:445 @@ -732,6 +753,28 @@ msgid "" "\n" "For full documentation of the conversion system see\n" msgstr "" +"input_file output_file [options]\n" +"\n" +"Converter um e-livro de um formato para outro.\n" +"\n" +"input_file é o arquivo de origem e output_file é o arquivo de saída. Ambos " +"devem ser especificados como os dois primeiros argumentos para o comando.\n" +"\n" +"O formato do e-livro gerado é suposto a partir da extensão do output_file. " +"output_file também pode ser de um formato especial no formato .EXT onde EXT " +"é a extensão do arquivo de saída. Neste caso, o nome do arquivo de saída é " +"derivado do nome do arquivo de entrada. Observe que os nomes dos arquivos " +"não devem iniciar com hífen. Finalmente, se output_file não tiver extensão, " +"então ele será tratado como uma pasta e um \"e-livro aberto\" (EBA) " +"consistindo de arquivos HTML que serão salvos naquela pasta. Estes são os " +"arquivos que deveriam normalmente passar pelo plugin de saída.\n" +"\n" +"Depois de especificar os arquivos de entrada e saída você pode customizar a " +"conversão especificando várias opções. As opções disponíveis dependem dos " +"tipos dos arquivos de entrada e saída. Para receber ajuda para elas " +"especifique os arquivos de entrada e saída e então use a opção -h.\n" +"\n" +"Para a documentação completa do sistema de conversão veja\n" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:97 msgid "INPUT OPTIONS" @@ -1146,10 +1189,10 @@ msgid "" "disables the generation of this cover." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:122 +#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:124 #: /home/kovid/work/calibre/src/calibre/ebooks/pml/pmlml.py:111 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:98 -#: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:72 +#: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:77 msgid "Table of Contents:" msgstr "" @@ -1473,7 +1516,7 @@ msgstr "Gibi" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:56 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:158 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:388 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1066 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1068 msgid "Title" msgstr "Título" @@ -1481,7 +1524,7 @@ msgstr "Título" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:57 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:159 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:393 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1067 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1069 msgid "Author(s)" msgstr "Autor(es)" @@ -1501,25 +1544,25 @@ msgstr "Produtor" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:71 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:64 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:349 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:58 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:92 msgid "Comments" msgstr "Comentários" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:370 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:165 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:338 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1010 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1070 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:83 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1012 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1072 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Tags" msgstr "Tags" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:372 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:166 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:354 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:59 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:83 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:93 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Series" msgstr "Séries" @@ -1528,7 +1571,7 @@ msgid "Language" msgstr "Idioma" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:375 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1009 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1011 msgid "Timestamp" msgstr "" @@ -1688,7 +1731,7 @@ msgid "" msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1055 -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1310 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1314 msgid "Cover" msgstr "Capas" @@ -1719,70 +1762,70 @@ msgstr "" msgid "All articles" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1311 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1315 msgid "Title Page" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1312 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1316 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:51 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:168 msgid "Table of Contents" msgstr "Sumário" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1313 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1317 msgid "Index" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1314 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1318 msgid "Glossary" msgstr "Glossário" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1315 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1319 msgid "Acknowledgements" msgstr "Agradecimentos" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1316 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1320 msgid "Bibliography" msgstr "Bibliografia" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1317 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1321 msgid "Colophon" msgstr "Colofão" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1318 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1322 msgid "Copyright" msgstr "Copyright" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1319 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1323 msgid "Dedication" msgstr "Dedicatória" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1320 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1324 msgid "Epigraph" msgstr "Epígrafe" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1321 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1325 msgid "Foreword" msgstr "Prefácio" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1322 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1326 msgid "List of Illustrations" msgstr "Lista de Ilustrações" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1323 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1327 msgid "List of Tables" msgstr "Lista de Tabelas" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1324 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1328 msgid "Notes" msgstr "Notas" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1325 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1329 msgid "Preface" msgstr "Prefácio" -#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1326 +#: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1330 msgid "Main Text" msgstr "Texto Principal" @@ -2252,63 +2295,80 @@ msgstr "" msgid "Copied" msgstr "Copiado" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:152 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy to Clipboard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:381 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:386 msgid "Choose Files" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:53 msgid "Searching in" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:155 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:164 msgid "Adding..." msgstr "Adicionando..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:177 msgid "Searching in all sub-directories..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:244 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:190 +msgid "Path error" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:191 +msgid "The specified directory could not be processed." +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:486 +msgid "No books" +msgstr "Nenhum livros" + +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:196 +msgid "No books found" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:262 msgid "Added" msgstr "Adicionado" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:257 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:275 msgid "Adding failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:258 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:276 msgid "" "The add books process seems to have hung. Try restarting calibre and adding " "the books in smaller increments, until you find the problem book." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:270 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:288 msgid "Duplicates found!" msgstr "Foram encontradas duplicatas!" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:271 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:289 msgid "" "Books with the same title as the following already exist in the database. " "Add them anyway?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:274 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:292 msgid "Adding duplicates..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:353 msgid "Saving..." msgstr "Salvando..." -#: /home/kovid/work/calibre/src/calibre/gui2/add.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/add.py:406 msgid "Saved" msgstr "Salvo" @@ -2350,7 +2410,7 @@ msgid "input" msgstr "entrada" #: /home/kovid/work/calibre/src/calibre/gui2/convert/comic_input_ui.py:84 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_input_ui.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/convert/fb2_output_ui.py:28 @@ -2365,7 +2425,7 @@ msgstr "entrada" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output_ui.py:39 #: /home/kovid/work/calibre/src/calibre/gui2/convert/rb_output_ui.py:28 #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection_ui.py:59 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:62 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input_ui.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:51 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:41 @@ -2445,7 +2505,7 @@ msgid "Debug the conversion process." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/debug.py:38 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:47 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:51 msgid "Choose debug folder" msgstr "" @@ -2457,7 +2517,7 @@ msgstr "" msgid "Failed to create debug directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:46 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:50 msgid "" "Choose a folder to put the debug output into. If you specify a folder, " "calibre will place a lot of debug output into it. This will be useful in " @@ -2465,8 +2525,8 @@ msgid "" "conversion parameters like Table of Contents and Chapter Detection." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:48 -#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:49 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:52 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:53 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:170 #: /home/kovid/work/calibre/src/calibre/gui2/convert/xexp_edit_ui.py:44 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:61 @@ -2477,14 +2537,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:501 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:533 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:343 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:375 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:390 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:395 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:397 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:126 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:128 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_editor_ui.py:131 @@ -2498,6 +2558,13 @@ msgstr "" msgid "..." msgstr "..." +#: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:54 +msgid "" +"The debug process outputs the intermediate HTML generated at various stages " +"of the conversion process. This HTML can sometimes serve as a good starting " +"point for hand editing a conversion." +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output.py:15 msgid "EPUB Output" msgstr "" @@ -2677,38 +2744,38 @@ msgid "" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:96 msgid "Choose cover for " msgstr "Escolher capa de " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:159 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:102 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 msgid "Cannot read" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:104 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/dialogs/metadata_single.py:111 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 msgid "Error reading file" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:113 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/dialogs/metadata_single.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:121 msgid " is not a valid picture" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:392 msgid "Book Cover" msgstr "Capa do livro" @@ -2717,28 +2784,28 @@ msgid "Use cover from &source file" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:393 msgid "Change &cover image:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:394 msgid "Browse for an image to use as the cover of this book." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 msgid "&Title: " msgstr "&Título: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:341 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 msgid "Change the title of this book" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:135 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:344 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 msgid "&Author(s): " msgstr "&Autor(es): " @@ -2754,18 +2821,18 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:176 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:143 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:366 msgid "&Publisher: " msgstr "&Editor: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:177 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 msgid "Ta&gs: " msgstr "Ta&gs: " #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:178 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:145 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 msgid "" "Tags categorize the book. This is particularly useful while searching. " "

They can be any words or phrases, separated by commas." @@ -2773,7 +2840,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:179 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:150 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:371 msgid "&Series:" msgstr "&Séries:" @@ -2781,13 +2848,13 @@ msgstr "&Séries:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:181 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:151 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:152 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:372 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:373 msgid "List of known series. You can add new series." msgstr "Lista de séries conhecidas. É possível adicionar novas séries." #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:182 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:378 msgid "Book " msgstr "Livro " @@ -2902,7 +2969,7 @@ msgid "RB Output" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1321 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 msgid "Choose the format to view" msgstr "" @@ -2981,12 +3048,12 @@ msgid "Footer regular expression:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:56 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:72 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 msgid "Invalid regular expression" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/structure_detection.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:73 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:74 msgid "Invalid regular expression: %s" msgstr "" @@ -3046,23 +3113,23 @@ msgstr "" msgid "Level &3 TOC (XPath expression):" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:63 msgid "Do not add &detected chapters to the Table of Contents" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:64 msgid "Number of &links to add to Table of Contents" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:64 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:65 msgid "Chapter &threshold" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:66 msgid "&Force use of auto-generated Table of Contents" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:66 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:67 msgid "TOC &Filter:" msgstr "" @@ -3200,193 +3267,189 @@ msgstr "" msgid "Device no longer connected." msgstr "O dispositivo não está mais conectado" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:199 msgid "Get device information" msgstr "Obter informações do dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:210 msgid "Get list of books on device" msgstr "Obter listagem de livros do dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:215 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:219 msgid "Send metadata to device" msgstr "Enviar metadados ao dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:224 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:228 msgid "Upload %d books to device" msgstr "Enviar %d livros ao dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:239 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:243 msgid "Delete books from device" msgstr "Eliminar livros do dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:256 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:260 msgid "Download books from device" msgstr "Baixar livros do dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:266 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:270 msgid "View book on device" msgstr "Ver livro no dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:273 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:277 msgid "and delete from library" msgstr "e eliminar da biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:294 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:298 msgid "Set default send to device action" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:299 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:306 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:308 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:303 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:310 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:312 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:314 msgid "Email to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:321 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:328 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 msgid "Send to main memory" msgstr "Enviar para a memória principal" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:323 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:330 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:334 msgid "Send to storage card A" msgstr "Enviar ao cartão de memória A" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:325 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:332 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:329 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:336 msgid "Send to storage card B" msgstr "Enviar ao cartão de memória B" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 msgid "Send specific format to main memory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:341 msgid "Send specific format to storage card A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:343 msgid "Send specific format to storage card B" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:482 -msgid "No books" -msgstr "Nenhum livros" - -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:487 msgid "selected to send" msgstr "selecionado para envio" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:488 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:492 msgid "Choose format to send to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:495 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 msgid "No device" msgstr "Nenhum dispositivo disponível" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 msgid "Cannot send: No device is connected" msgstr "Não foi possível enviar: o dispositivo está desconectado" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:499 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:507 msgid "No card" msgstr "Nenhum cartão disponível" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:504 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:508 msgid "Cannot send: Device has no storage card" msgstr "" "Não foi possível enviar: o dispositivo não possui um cartão de memória" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:546 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 msgid "E-book:" msgstr "eBook:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:553 msgid "Attached, you will find the e-book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:554 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:177 msgid "by" msgstr "por" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:551 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:555 msgid "in the %s format." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:568 msgid "Sending email to" msgstr "Enviando e-mail para" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:594 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:601 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:692 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:806 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:813 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:605 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:696 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:810 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:817 msgid "No suitable formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:599 msgid "Auto convert the following books before sending via email?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:606 msgid "" "Could not email the following books as no suitable formats were found:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:621 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:625 msgid "Failed to email books" msgstr "Falhou ao enviar livros por e-mail" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 msgid "Failed to email the following books:" msgstr "Falha ao enviar por e-mail os seguintes livros:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:626 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:630 msgid "Sent by email:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:653 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:657 msgid "News:" msgstr "Notícias:" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:658 msgid "Attached is the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:665 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:669 msgid "Sent news to" msgstr "Enviar notícias para" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:693 -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:807 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:697 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:811 msgid "Auto convert the following books before uploading to the device?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:724 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:728 msgid "Sending news to device." msgstr "Enviando notícias ao dispositivo." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:776 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:780 msgid "Sending books to device." msgstr "Enviando livros ao dispositivo." -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:814 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:818 msgid "" "Could not upload the following books to the device, as no suitable formats " "were found. Convert the book(s) to a format supported by your device first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:862 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:866 msgid "No space on device" msgstr "Não há espaço no dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/device.py:863 +#: /home/kovid/work/calibre/src/calibre/gui2/device.py:867 msgid "" "

Cannot upload books to device there is no more free space available " msgstr "" @@ -3403,8 +3466,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:85 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:86 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:345 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1005 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:56 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1007 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:90 msgid "Path" msgstr "" @@ -3414,8 +3477,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:92 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:216 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:344 -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:57 -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:83 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Formats" msgstr "" @@ -3520,7 +3583,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:461 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:788 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:140 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1032 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "Erro" @@ -3591,7 +3654,7 @@ msgid "Access log:" msgstr "Registro de acessos:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:645 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:573 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:576 msgid "Failed to start content server" msgstr "" @@ -4108,7 +4171,7 @@ msgid "Edit Meta information" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 msgid "Meta information" msgstr "" @@ -4121,26 +4184,26 @@ msgid "Author s&ort: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:138 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:359 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles " "Dickens should be sorted as Dickens, Charles." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:139 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:349 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:362 msgid "&Rating:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:140 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:141 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:350 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 msgid "Rating of this book. 0-5 stars" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:142 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:365 msgid " stars" msgstr " estrelas" @@ -4150,8 +4213,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:146 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:147 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:356 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 msgid "Open Tag Editor" msgstr "Abrir editor de tags" @@ -4167,151 +4230,172 @@ msgstr "" msgid "Remove &format:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:120 msgid "Not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:133 +msgid "Choose formats for " +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:134 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:872 +msgid "Books" +msgstr "Livros" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:160 +msgid "You do not have permission to read the following files:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 msgid "No format selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 msgid "Could not read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:196 msgid "Could not read metadata from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:224 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:247 msgid "Could not read cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:242 msgid "Could not read cover from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:248 msgid "The cover in the %s format is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:285 msgid "Abort the editing of all remaining books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:459 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:488 msgid "Downloading cover..." msgstr "Baixando capa..." -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:471 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:476 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:482 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:500 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:511 msgid "Cannot fetch cover" msgstr "Não foi possível obter a capa" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:472 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:483 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:501 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:512 msgid "Could not fetch cover.
" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:473 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:502 msgid "The download timed out." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:477 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:506 msgid "Could not find cover for this book. Try specifying the ISBN first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:489 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:518 msgid "Bad cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:490 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:519 msgid "The cover is not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:529 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:559 msgid "Cannot fetch metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:530 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:560 msgid "You must specify at least one of ISBN, Title, Authors or Publisher" msgstr "" "É necessário especificar ao menos ou o ISBN, ou o título, ou os autores ou a " "editora" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:576 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:612 msgid "Permission denied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:613 msgid "Could not open %s. Is it being used by another program?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:338 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:351 msgid "Edit Meta Information" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:342 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:355 msgid "Swap the author and title" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:345 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:358 msgid "Author S&ort: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:347 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:360 msgid "" "Automatically create the author sort entry based on the current author entry" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 msgid "Remove unused series (Series that have no books)" msgstr "Remover séries sem uso (séries que não possuem livros)" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 msgid "IS&BN:" msgstr "IS&BN:" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:377 msgid "Publishe&d:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:367 -msgid "&Comments" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:368 -msgid "&Fetch metadata from server" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:369 -msgid "Available Formats" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:370 -msgid "Add a new format for this book to the database" -msgstr "Adicionar ao banco de dados um novo formato deste livro" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:372 -msgid "Remove the selected formats for this book from the database." -msgstr "Remover do banco de dados os formatos selecionados deste livro" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:374 -msgid "Set the cover for the book from the selected format" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:376 -msgid "Update metadata from the metadata in the selected format" +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:380 +msgid "dd MMM yyyy" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:381 -msgid "Reset cover to default" +msgid "&Date:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:382 +msgid "&Comments" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:383 +msgid "&Fetch metadata from server" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:384 +msgid "Available Formats" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:385 +msgid "Add a new format for this book to the database" +msgstr "Adicionar ao banco de dados um novo formato deste livro" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:387 +msgid "Remove the selected formats for this book from the database." +msgstr "Remover do banco de dados os formatos selecionados deste livro" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 +msgid "Set the cover for the book from the selected format" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 +msgid "Update metadata from the metadata in the selected format" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:396 +msgid "Reset cover to default" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 msgid "Download &cover" msgstr "Descarregar &capa" @@ -4820,11 +4904,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:116 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:119 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:122 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:79 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:83 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:88 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:93 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:95 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:80 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:84 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:89 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:94 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:96 msgid "No match" msgstr "" @@ -4902,12 +4986,12 @@ msgid " - Jobs" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:160 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1068 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1070 msgid "Size (MB)" msgstr "Tamanho (MB)" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:161 -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1069 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1071 msgid "Date" msgstr "Data" @@ -4918,7 +5002,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/library.py:337 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:343 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:348 -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:376 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:408 msgid "None" msgstr "Nenhum" @@ -4926,21 +5010,21 @@ msgstr "Nenhum" msgid "Book %s of %s." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:832 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:834 msgid "Not allowed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:833 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:835 msgid "" "Dropping onto a device is not supported. First add the book to the calibre " "library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1006 msgid "Format" msgstr "Formato" -#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1058 +#: /home/kovid/work/calibre/src/calibre/gui2/library.py:1060 msgid "Double click to edit me

" msgstr "" @@ -5050,31 +5134,31 @@ msgstr "" msgid "%s: %s by Kovid Goyal %%(version)s
%%(device)s

" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 msgid "Edit metadata individually" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 msgid "Edit metadata in bulk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 msgid "Download metadata and covers" msgstr "Baixar metadados e capas" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:232 msgid "Download only metadata" msgstr "Baixar apenas os metadados" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:233 msgid "Download only covers" msgstr "Baixar apenas as capas" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 msgid "Add books from a single directory" msgstr "Adicionar livros de um diretório" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:237 msgid "" "Add books from directories, including sub-directories (One book per " "directory, assumes every ebook file is the same book in a different format)" @@ -5083,7 +5167,7 @@ msgstr "" "diretório, assumindo que cada arquivo é o mesmo livro em um formato " "diferente)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:238 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:240 msgid "" "Add books from directories, including sub directories (Multiple books per " "directory, assumes every ebook file is a different book)" @@ -5091,85 +5175,85 @@ msgstr "" "Adiconar livros de diretórios, incluindo subdiretórios (vários livros por " "diretório, assumindo que cada arquivo é um livro diferente)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:243 msgid "Add Empty book. (Book entry with no formats)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:278 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:353 msgid "Save to disk" msgstr "Salvar no disco" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:281 msgid "Save to disk in a single directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1423 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:282 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 msgid "Save only %s format to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:290 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:359 msgid "View" msgstr "Exibir" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:289 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:291 msgid "View specific format" msgstr "Exibir formato específico" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:315 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:317 msgid "Convert individually" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:316 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:318 msgid "Bulk convert" msgstr "Conversão em massa" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:331 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:333 msgid "Run welcome wizard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:367 msgid "Similar books..." msgstr "Livros similares..." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:424 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:425 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:428 msgid "Bad database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:427 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:477 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:430 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:478 msgid "Calibre Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:437 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1566 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:440 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1603 msgid "Choose a location for your ebook library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:616 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:619 msgid "Browse by covers" msgstr "Navegar pelas capas" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:723 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 msgid "Device: " msgstr "Dispositivo: " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:725 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:728 msgid " detected." msgstr " detectado." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:747 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:750 msgid "Connected " msgstr "Conectado " -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:759 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:762 msgid "Device database corrupted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:760 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:763 msgid "" "\n" "

The database of books on the reader is corrupted. Try the " @@ -5185,166 +5269,166 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:836 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:879 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:864 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:907 msgid "Uploading books to device." msgstr "Enviando livros ao dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:844 -msgid "Books" -msgstr "Livros" - -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:845 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:873 msgid "EPUB Books" msgstr "Livros EPUB" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:846 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:874 msgid "LRF Books" msgstr "Livros LRF" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:847 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:875 msgid "HTML Books" msgstr "Livros HTML" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:848 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:876 msgid "LIT Books" msgstr "Livros LIT" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:849 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:877 msgid "MOBI Books" msgstr "Livros MOBI" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:850 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:878 msgid "Text books" msgstr "Livros TXT" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:851 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:879 msgid "PDF Books" msgstr "Livros PDF" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:852 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 msgid "Comics" msgstr "Gibis" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:853 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:881 msgid "Archives" msgstr "Arquivos" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:888 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:916 msgid "Failed to read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:917 msgid "Failed to read metadata from the following" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:908 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 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/main.py:935 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:963 msgid "Deleting books from device." msgstr "Eliminar livros do dispositivo" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:966 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:994 msgid "Cannot download metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:967 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1015 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1048 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1073 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1185 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:995 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1043 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1101 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1213 msgid "No books selected" msgstr "Nenhum livro selecionado" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:976 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "covers" msgstr "capas" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:976 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 msgid "metadata" msgstr "metadados" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:978 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1006 msgid "Downloading %s for %d book(s)" msgstr "Baixando %s para %d livro(s)" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:999 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1027 msgid "Failed to download some metadata" msgstr "Falha ao obter alguns metadados" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1000 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1028 msgid "Failed to download metadata for the following:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1003 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1031 msgid "Failed to download metadata:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1014 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1047 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1042 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1075 msgid "Cannot edit metadata" msgstr "Não foi possível editar metadados" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1072 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1100 msgid "Cannot save to disk" msgstr "Não foi possível salvar no disco" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1075 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 msgid "Choose destination directory" msgstr "Escolher diretório de destino" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1102 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1130 msgid "Error while saving" msgstr "Erro ao salvar" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1131 msgid "There was an error while saving." msgstr "Ocorreu um erro ao salvar." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1110 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1111 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1138 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1139 msgid "Could not save some books" msgstr "Não foi possível salvar alguns livros" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1112 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1140 msgid "Click the show details button to see which ones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1131 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1159 msgid "Fetching news from " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1144 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1172 msgid " fetched." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1184 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 msgid "Cannot convert" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1315 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1334 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1241 +msgid "Starting conversion of %d book(s)" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1371 msgid "No book selected" msgstr "Nenhum livro selecionado" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1315 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1365 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1402 msgid "Cannot view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1333 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1370 msgid "Cannot open folder" msgstr "Não foi possível abrir o diretório" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1350 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1387 msgid "Multiple Books Selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1351 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1388 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 " @@ -5352,149 +5436,149 @@ msgid "" "continue?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1366 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1403 msgid "%s has no available formats." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1407 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1444 msgid "Cannot configure" msgstr "Não foi possível configurar" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1408 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1445 msgid "Cannot configure while there are running jobs." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1451 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1488 msgid "No detailed info available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1452 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1489 msgid "No detailed information is available for books on the device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1504 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1541 msgid "Error talking to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1505 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1542 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/main.py:1528 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1546 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1565 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 msgid "Conversion Error" msgstr "Erro ao converter" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1529 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1566 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/main.py:1547 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1584 msgid "Failed" msgstr "Falha" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1575 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1612 msgid "Invalid library location" msgstr "Localização de biblioteca inválida" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1576 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1613 msgid "Could not access %s. Using %s as the library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1623 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1660 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/main.py:1647 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1684 msgid "There are active jobs. Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1650 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1687 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/main.py:1654 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1691 msgid "WARNING: Active jobs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1705 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1742 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/main.py:1724 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1761 msgid "" "Latest version: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1732 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1769 msgid "Update available" msgstr "Atualização disponível" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1733 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1770 msgid "" "%s has been updated to version %s. See the new features. " "Visit the download page?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1751 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1788 msgid "Use the library located at the specified path." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1753 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1790 msgid "Start minimized to system tray." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1755 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1792 msgid "Log debugging information to console" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1757 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1794 msgid "Do not check for updates" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1805 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1842 msgid "If you are sure it is not running" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1807 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1844 msgid "Cannot Start " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1808 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1845 msgid "%s is already running." msgstr "%s já está em execução." -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1811 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1848 msgid "may be running in the system tray, in the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1813 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1850 msgid "upper right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1815 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1852 msgid "lower right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1818 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1855 msgid "try rebooting your computer." msgstr "tente reiniciando o seu computador" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1820 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1832 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1857 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1869 msgid "try deleting the file" msgstr "tente eliminando o arquivo" @@ -5648,61 +5732,56 @@ msgstr "O livro não possui nem título nem ISBN" msgid "No matches found for this book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:60 msgid "Search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:149 msgid "Jobs:" msgstr "Trabalhos:" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:158 msgid "Click to see list of active jobs." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to browse books by their covers" msgstr "Clique para navegar nos livros através de suas capas" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:154 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:188 msgid "Click to turn off Cover Browsing" msgstr "Clique para desativar a navegação por capas" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:193 msgid "" "

Browsing books by their covers is disabled.
Import of pictureflow " "module failed:
" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/status.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/status.py:201 msgid "Click to browse books by tags" msgstr "Clique para navegar pelos livros através das tags" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:83 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Authors" msgstr "Autores" -#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:83 +#: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 msgid "Publishers" msgstr "Editores" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:34 -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:106 -msgid "Starting conversion of %d books" -msgstr "Iniciando a conversão de %d livros" - -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:64 -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:63 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:182 msgid "Convert book %d of %d (%s)" msgstr "Converter livro %d de %d (%s)" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:91 -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:204 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:90 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:202 msgid "Could not convert some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:92 -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:205 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:91 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:203 msgid "" "Could not convert %d of %d books, because no suitable source format was " "found." @@ -5710,27 +5789,27 @@ msgstr "" "Não é possível converter %d de %d livros, não foi especificado um formato de " "arquivo adequado." -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:123 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:121 msgid "Queueing books for bulk conversion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:181 msgid "Queueing " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:237 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:235 msgid "You must set a username and password for %s" msgstr "É necessário selecionar um nome de usuário e senha para %s" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:240 msgid "Fetch news from " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:253 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:251 msgid "Convert existing" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:254 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:252 msgid "" "The following books have already been converted to %s format. Do you wish to " "reconvert them?" @@ -6071,70 +6150,70 @@ msgstr "Imprimir" msgid "Print eBook" msgstr "Imprimir eBook" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 msgid "" "Library\n" "%d\n" "books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:199 msgid "" "Reader\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:200 msgid "" "Card A\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:169 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:201 msgid "" "Card B\n" "%s\n" "available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:206 msgid "Click to see the books available on your computer" msgstr "Clique para ver os livros disponíveis em seu computador" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:207 msgid "Click to see the books in the main memory of your reader" msgstr "" "Clique para ver os livros da memória principal de seu dispositivo leitor" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:208 msgid "Click to see the books on storage card A in your reader" msgstr "" "Clique para ver os livros do cartão de memória A de seu dispositivo leitor" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:209 msgid "Click to see the books on storage card B in your reader" msgstr "" "Clique para ver os livros do cartão de memória B de seu dispositivo leitor" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:466 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:498 msgid "Change Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:467 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:499 msgid "Upper Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:468 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:500 msgid "Lower Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:469 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:501 msgid "Swap Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:470 +#: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:502 msgid "Title Case" msgstr "" @@ -6188,7 +6267,7 @@ msgstr "" msgid "Could not move library" msgstr "Não é possível mover a biblioteca" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:528 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:541 msgid "welcome wizard" msgstr "" @@ -6682,27 +6761,27 @@ msgid "" "For help on an individual command: %%prog command --help\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1565 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1567 msgid "

Migrating old database to ebook library in %s

" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1594 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1596 msgid "Copying %s" msgstr "Copiando %s" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1611 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1613 msgid "Compacting database" msgstr "Compactando banco de dados" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1699 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1701 msgid "Checking SQL integrity..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1736 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1738 msgid "Checking for missing files." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1760 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1762 msgid "Checked id" msgstr "" @@ -6827,57 +6906,57 @@ msgid "" "Start the calibre content server." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:45 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:47 msgid "%sUsage%s: %s\n" msgstr "%sUso%s: %s\n" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:89 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:91 msgid "Created by " msgstr "Criado por " -#: /home/kovid/work/calibre/src/calibre/utils/config.py:90 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:92 msgid "" "Whenever you pass arguments to %prog that have spaces in them, enclose the " "arguments in quotation marks." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:553 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 msgid "Path to the database in which books are stored" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:555 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 msgid "Pattern to guess metadata from filenames" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:557 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 msgid "Access key for isbndb.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:559 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 msgid "Default timeout for network operations (seconds)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:561 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:567 msgid "Path to directory in which your library of books is stored" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:563 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:569 msgid "The language in which to display the user interface" msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:565 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 msgid "The default output format for ebook conversions." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:569 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:575 msgid "Ordered list of formats to prefer for input." msgstr "" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:571 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:577 msgid "Read metadata from files" msgstr "Ler metadados dos arquivos" -#: /home/kovid/work/calibre/src/calibre/utils/config.py:573 +#: /home/kovid/work/calibre/src/calibre/utils/config.py:579 msgid "The priority of worker processes" msgstr "" @@ -6918,6 +6997,7 @@ msgid "Traditional Chinese" msgstr "" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:99 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nytimes.py:17 msgid "English" msgstr "Inglês" @@ -7056,6 +7136,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_lamujerdemivida.py:60 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_laprensa_ni.py:64 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_monitor.py:79 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nin.py:95 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pobjeda.py:84 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_republika.py:67 msgid "Fetching feed" @@ -7073,55 +7154,55 @@ msgstr "" msgid "Skipping filtered article: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:452 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:458 msgid "" "%prog URL\n" "\n" "Where URL is for example http://google.com" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:455 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:461 msgid "Base directory into which URL is saved. Default is %default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:458 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:464 msgid "" "Timeout in seconds to wait for a response from the server. Default: %default " "s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:461 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:467 msgid "" "Maximum number of levels to recurse i.e. depth of links to follow. Default " "%default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:464 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:470 msgid "" "The maximum number of files to download. This only applies to files from tags. Default is %default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:466 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:472 msgid "" "Minimum interval in seconds between consecutive fetches. Default is %default " "s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:468 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:474 msgid "" "The character encoding for the websites you are trying to download. The " "default is to try and guess the encoding." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:470 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:476 msgid "" "Only links that match this regular expression will be followed. This option " "can be specified multiple times, in which case as long as a link matches any " "one regexp, it will be followed. By default all links are followed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:472 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:478 msgid "" "Any link that matches this regular expression will be ignored. This option " "can be specified multiple times, in which case as long as any regexp matches " @@ -7130,11 +7211,11 @@ msgid "" "applied first." msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:474 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:480 msgid "Do not download CSS stylesheets." msgstr "Não baixar folhas de estilo CSS." -#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:475 +#: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:481 msgid "Show detailed output information. Useful for debugging" msgstr "" @@ -7148,6 +7229,9 @@ msgstr "" #~ msgstr "" #~ "Número de cores para conversão de imagens em tons de cinza. Padrão: %default" +#~ msgid "Starting conversion of %d books" +#~ msgstr "Iniciando a conversão de %d livros" + #~ msgid "/Unknown" #~ msgstr "/Desconhecido" From 23ba4047addd7b4691d0d755f947b1fef952f334 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 14 Oct 2009 11:00:59 -0600 Subject: [PATCH 19/41] Linux build system: Use the environment variables OVERRIDE_CFLAGS and OVERRIDE_LDFLAGS to allow cflags and ldflags to be user specified. Fixes #3770 (calibre build problems) --- setup/extensions.py | 7 +++++-- setup/install.py | 6 ++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/setup/extensions.py b/setup/extensions.py index c2b8467300..e3283b0ea3 100644 --- a/setup/extensions.py +++ b/setup/extensions.py @@ -134,8 +134,11 @@ if isosx: if isunix: cc = os.environ.get('CC', 'gcc') cxx = os.environ.get('CXX', 'g++') - cflags = '-O3 -Wall -DNDEBUG -fPIC -fno-strict-aliasing -pipe'.split() - ldflags = ['-Wall'] + cflags = os.environ.get('OVERRIDE_CFLAGS', + '-O3 -Wall -DNDEBUG -fno-strict-aliasing -pipe') + cflags = shlex.split(cflags) + '-fPIC' + ldflags = os.environ.get('OVERRIDE_LDFLAGS', '-Wall') + ldflags = shlex.split(ldflags) cflags += shlex.split(os.environ.get('CFLAGS', '')) ldflags += shlex.split(os.environ.get('LDFLAGS', '')) diff --git a/setup/install.py b/setup/install.py index fb17049e4c..1dbbb3f8a5 100644 --- a/setup/install.py +++ b/setup/install.py @@ -200,6 +200,12 @@ class Install(Develop): /share/calibre. These can all be controlled via options. The default is the prefix of your python installation. + + The .desktop, .mime and icon files are installed using XDG. The + location they are installed to can be controlled by setting + the environment variables: + XDG_DATA_DIRS=/usr/share equivalent + XDG_UTILS_INSTALL_MODE=system ''') short_description = 'Install calibre from source' From 6f877e294d1ac5ac41851e4cba0fb6f92aaa6068 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 14 Oct 2009 11:08:13 -0600 Subject: [PATCH 20/41] IGN:... --- src/calibre/manual/faq.rst | 22 ++++++++++++++++++++++ src/calibre/trac/plugins/download.py | 1 - 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/src/calibre/manual/faq.rst b/src/calibre/manual/faq.rst index 9a6b469424..e5ecc7e12a 100644 --- a/src/calibre/manual/faq.rst +++ b/src/calibre/manual/faq.rst @@ -80,6 +80,28 @@ What devices does |app| support? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ At the moment |app| has full support for the SONY PRS 300/500/505/600/700, Cybook Gen 3/Opus, Amazon Kindle 1/2/DX, Netronix EB600, Ectaco Jetbook, BeBook/BeBook Mini, Irex Illiad/DR1000, Foxit eSlick, Android phones and the iPhone. In addition, using the :guilabel:`Save to disk` function you can use it with any ebook reader that exports itself as a USB disk. +How can I help get my device supported in |app|? +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +If your device appears as a USB disk to the operating system. Adding support for it to |app| is very easy. +We just need some information from you: + + * What e-book formats does your device support? + * Is there a special directory on the device in which all e-book files should be placed? + * We also need the output from running the following command in a terminal, both with the device + connected and without:: + + calibre-debug -d + + * If your device supports SD cards, run the above command with the cards inserted. + +To run the above command, on Windows you should use the full path to calibre-debug.exe +On OSX, you should go to Preferences->Advanced and click "Install command line tools". + +Once you send us the output for a particular operating system, support for the device +will appear in the next release of |app|. + + Can I use both |app| and the SONY software to manage my reader? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/src/calibre/trac/plugins/download.py b/src/calibre/trac/plugins/download.py index 87a1fce42d..2dde7024bf 100644 --- a/src/calibre/trac/plugins/download.py +++ b/src/calibre/trac/plugins/download.py @@ -13,7 +13,6 @@ DEPENDENCIES = [ ('python-mechanize', '0.1.11', 'dev-python/mechanize', 'python-mechanize', 'python-mechanize'), ('ImageMagick', '6.3.5', 'imagemagick', 'imagemagick', 'ImageMagick'), ('xdg-utils', '1.0.2', 'xdg-utils', 'xdg-utils', 'xdg-utils'), - ('dbus-python', '0.82.2', 'dbus-python', 'python-dbus', 'dbus-python'), ('lxml', '2.1.5', 'lxml', 'python-lxml', 'python-lxml'), ('python-dateutil', '1.4.1', 'python-dateutil', 'python-dateutil', 'python-dateutil'), ('BeautifulSoup', '3.0.5', 'beautifulsoup', 'python-beautifulsoup', 'python-BeautifulSoup'), From a7668c6897bcae3c797bf65d1c4ac9709d2df037 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 14 Oct 2009 11:10:16 -0600 Subject: [PATCH 21/41] IGN:... --- setup/extensions.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup/extensions.py b/setup/extensions.py index e3283b0ea3..7c8e9f9e78 100644 --- a/setup/extensions.py +++ b/setup/extensions.py @@ -136,7 +136,7 @@ if isunix: cxx = os.environ.get('CXX', 'g++') cflags = os.environ.get('OVERRIDE_CFLAGS', '-O3 -Wall -DNDEBUG -fno-strict-aliasing -pipe') - cflags = shlex.split(cflags) + '-fPIC' + cflags = shlex.split(cflags) + ['-fPIC'] ldflags = os.environ.get('OVERRIDE_LDFLAGS', '-Wall') ldflags = shlex.split(ldflags) cflags += shlex.split(os.environ.get('CFLAGS', '')) From e40c90e4c857570ae6a198a64614db262f23db2a Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 14 Oct 2009 13:50:39 -0600 Subject: [PATCH 22/41] Improved recipe for Sueddeutsche --- .../web/feeds/recipes/recipe_sueddeutsche.py | 76 ++++++------------- 1 file changed, 25 insertions(+), 51 deletions(-) diff --git a/src/calibre/web/feeds/recipes/recipe_sueddeutsche.py b/src/calibre/web/feeds/recipes/recipe_sueddeutsche.py index d1832dbfda..35f71981d6 100644 --- a/src/calibre/web/feeds/recipes/recipe_sueddeutsche.py +++ b/src/calibre/web/feeds/recipes/recipe_sueddeutsche.py @@ -11,7 +11,7 @@ class Sueddeutsche(BasicNewsRecipe): title = u'S\xfcddeutsche' description = 'News from Germany' - __author__ = 'Oliver Niesner' + __author__ = 'Oliver Niesner and Sujata Raman' use_embedded_content = False timefmt = ' [%d %b %Y]' oldest_article = 7 @@ -22,51 +22,26 @@ class Sueddeutsche(BasicNewsRecipe): encoding = 'iso-8859-15' remove_javascript = True + keep_only_tags = [ + dict(name='div', attrs={'id':["artikel","contentTable"]}) , + ] + remove_tags = [ dict(name='link'), dict(name='iframe'), + dict(name='div', attrs={'id':["themenbox","artikelfoot","CAD_AD","rechteSpalte"]}), + dict(name='div', attrs={'class':["similar-article-box","artikelliste","nteaser301bg","pages closed"]}), + dict(name='p', attrs={'class':["ressortartikeln",]}), + dict(name='table', attrs={'class':["kommentare","footer","pageBoxBot","pageAktiv","bgcontent"]}), + dict(name='ul', attrs={'class':["breadcrumb","articles","activities"]}), + dict(name='p', text = "ANZEIGE") + ] - remove_tags_after = [dict(name='p', attrs={'class':'mttt'}), - dict(name='p', attrs={'class':'artikelFliestext'})] - - - - - - - remove_tags = [dict(name='span', attrs={'class':'r10000000'}), - dict(name='td', attrs={'class':'artikelDruckenRight'}), - dict(name='td', attrs={'class':'bgc4c4c4'}), - dict(name='div', attrs={'class':'footerCopy padleft5'}), - dict(name='div', attrs={'class':'articleDistractor'}), - dict(name='div', attrs={'class':'footerLinks'}), - dict(name='div', attrs={'class':'nnav-headimagebottom'}), - dict(name='div', attrs={'class':'nnavlink'}), - dict(name='div', attrs={'class':'nnavlinkhome'}), - dict(name='div', attrs={'class':'SpecialGrafik'}), - dict(name='div', attrs={'class':'similar-article-box'}), - dict(name='div', attrs={'class':'tiefethemen'}), - dict(name='table', attrs={'class':'footer'}), - dict(name='ul', attrs={'class':'breadcrumb'}), - dict(name='a', attrs={'class':'List'}), - dict(name='span', attrs={'class':'icVers'}), - dict(id='nnav-head'), - dict(id='nnav-top'), - dict(id='nnav-logo'), - dict(id='nnav-logodiv'), - dict(id='nnav-bottom'), - dict(id='nnav-headimagebottom'), - dict(id='headerLBox'), - dict(id='logout'), - dict(id='nnav-headerteaser'), - dict(id='nnav-oly'), - dict(id='bookmarklist1'), - dict(id='bookmarklist2'), - dict(id='navlist-personnames'), - dict(id='artikelfoot'), - dict(id='nnav-bgheader'), - dict(id='rechteSpalte'), - dict(id=''), - dict(name='td', attrs={'class':'artikelDruckenCenter'})] - - + extra_css = ''' + h2{font-family:Arial,Helvetica,sans-serif; font-size: x-small; color: #003399;} + a{font-family:Arial,Helvetica,sans-serif; font-size: x-small; font-style:italic;} + .dachzeile p{font-family:Arial,Helvetica,sans-serif; font-size: x-small; } + h1{ font-family:Arial,Helvetica,sans-serif; font-size:x-large; font-weight:bold;} + .artikelTeaser{font-family:Arial,Helvetica,sans-serif; font-size: x-small; font-weight:bold; } + body{font-family:Arial,Helvetica,sans-serif; } + .photo {font-family:Arial,Helvetica,sans-serif; font-size: x-small; color: #666666;} ''' #feeds = [(u'Topthemen', u'http://suche.sueddeutsche.de/query/politik/-docdatetime/drilldown/%C2%A7documenttype%3AArtikel?output=rss')] @@ -83,12 +58,11 @@ class Sueddeutsche(BasicNewsRecipe): (u'Auto&Reise', u'http://suche.sueddeutsche.de/query/automobil/nav/%C2%A7ressort%3A%22Auto%20%26%20Mobil%22/sort/-docdatetime?output=rss'), (u'Computer', u'http://suche.sueddeutsche.de/query/computer/nav/%C2%A7ressort%3AComputer/sort/-docdatetime?output=rss'), (u'Job&Karriere', u'http://suche.sueddeutsche.de/query/job/nav/%C2%A7ressort%3A%22Job%20%26%20Karriere%22/sort/-docdatetime?output=rss'), - (u'Reise', u'http://suche.sueddeutsche.de/query/reise/nav/%C2%A7ressort%3AReise/sort/-docdatetime?output=rss')] - - - - def print_version(self, url): - return url.replace('/text/', '/text/print.html') + (u'Reise', u'http://suche.sueddeutsche.de/query/reise/nav/%C2%A7ressort%3AReise/sort/-docdatetime?output=rss') + ] + + # def print_version(self, url): + # return url.replace('/text/', '/text/print.html') From 9338cb08fdfeb03cf8f5464974dae0f3cffcb33e Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 14 Oct 2009 13:56:34 -0600 Subject: [PATCH 23/41] IGN:Partial implementation of a replacement for CX_FREEZE --- setup/commands.py | 4 +- setup/installer/linux/freeze2.py | 243 ++++++++++++++++++++++++++++ setup/installer/linux/main.c | 13 ++ setup/installer/linux/util.c | 268 +++++++++++++++++++++++++++++++ setup/installer/linux/util.h | 18 +++ 5 files changed, 545 insertions(+), 1 deletion(-) create mode 100644 setup/installer/linux/freeze2.py create mode 100644 setup/installer/linux/main.c create mode 100644 setup/installer/linux/util.c create mode 100644 setup/installer/linux/util.h diff --git a/setup/commands.py b/setup/commands.py index 0a09efa935..e13fe6a448 100644 --- a/setup/commands.py +++ b/setup/commands.py @@ -18,7 +18,7 @@ __all__ = [ 'pypi_register', 'pypi_upload', 'upload_to_server', 'upload_user_manual', 'upload_to_mobileread', 'upload_demo', 'upload_to_sourceforge', 'upload_to_google_code', - 'linux32', 'linux64', 'linux', 'linux_freeze', + 'linux32', 'linux64', 'linux', 'linux_freeze', 'linux_freeze2', 'osx32_freeze', 'osx32', 'osx', 'rsync', 'win32_freeze', 'win32', 'win', 'stage1', 'stage2', 'stage3', 'publish' @@ -77,6 +77,8 @@ linux32 = Linux32() linux64 = Linux64() from setup.installer.linux.freeze import LinuxFreeze linux_freeze = LinuxFreeze() +from setup.installer.linux.freeze2 import LinuxFreeze2 +linux_freeze2 = LinuxFreeze2() from setup.installer.osx import OSX, OSX32 osx = OSX() diff --git a/setup/installer/linux/freeze2.py b/setup/installer/linux/freeze2.py new file mode 100644 index 0000000000..cd8443e11c --- /dev/null +++ b/setup/installer/linux/freeze2.py @@ -0,0 +1,243 @@ +#!/usr/bin/env python +# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai +from __future__ import with_statement + +__license__ = 'GPL v3' +__copyright__ = '2009, Kovid Goyal ' +__docformat__ = 'restructuredtext en' + +import sys, os, shutil, platform, subprocess, stat, py_compile, glob + +from setup import Command, modules, basenames, functions + +is64bit = platform.architecture()[0] == '64bit' +arch = 'x86_64' if is64bit else 'i686' +ffi = '/usr/lib/libffi.so.5' if is64bit else '/usr/lib/gcc/i686-pc-linux-gnu/4.4.1/libffi.so.4' + + +QTDIR = '/usr/lib/qt4' +QTDLLS = ('QtCore', 'QtGui', 'QtNetwork', 'QtSvg', 'QtXml', 'QtWebKit', 'QtDBus') + + +binary_includes = [ + '/usr/bin/pdftohtml', + '/usr/lib/libwmflite-0.2.so.7', + '/usr/lib/liblcms.so.1', + '/usr/lib/libunrar.so', + '/usr/lib/libsqlite3.so.0', + '/usr/lib/libsqlite3.so.0', + '/usr/lib/libmng.so.1', + '/usr/lib/libpodofo.so.0.6.99', + '/lib/libz.so.1', + '/usr/lib/libtiff.so.3', + '/lib/libbz2.so.1', + '/usr/lib/libpoppler.so.5', + '/usr/lib/libxml2.so.2', + '/usr/lib/libopenjpeg.so.2', + '/usr/lib/libxslt.so.1', + '/usr/lib/libjpeg.so.7', + '/usr/lib/libxslt.so.1', + '/usr/lib/libgthread-2.0.so.0', + '/usr/lib/gcc/***-pc-linux-gnu/4.4.1/libstdc++.so.6'.replace('***', + arch), + ffi, + '/usr/lib/libpng12.so.0', + '/usr/lib/libexslt.so.0', + '/usr/lib/libMagickWand.so.2', + '/usr/lib/libMagickCore.so.2', + '/usr/lib/libgcrypt.so.11', + '/usr/lib/libgpg-error.so.0', + '/usr/lib/libphonon.so.4', + '/usr/lib/libssl.so.0.9.8', + '/usr/lib/libcrypto.so.0.9.8', + '/lib/libreadline.so.6', + ] +binary_includes += [os.path.join(QTDIR, 'lib%s.so.4'%x) for x in QTDLLS] + +SITE_PACKAGES = ['IPython', 'PIL', 'dateutil', 'dns', 'PyQt4', 'mechanize', + 'sip.so', 'BeautifulSoup.py', 'ClientForm.py', 'lxml'] + +class LinuxFreeze2(Command): + + def run(self, opts): + self.drop_privileges() + self.opts = opts + self.src_root = self.d(self.SRC) + self.base = self.j(self.src_root, 'build', 'linfrozen') + self.py_ver = '.'.join(map(str, sys.version_info[:2])) + self.lib_dir = self.j(self.base, 'lib') + self.bin_dir = self.j(self.base, 'bin') + + #self.initbase() + #self.copy_libs() + #self.copy_python() + #self.compile_mount_helper() + self.build_launchers() + + def initbase(self): + if os.path.exists(self.base): + shutil.rmtree(self.base) + os.makedirs(self.base) + + def copy_libs(self): + self.info('Copying libs...') + os.mkdir(self.lib_dir) + os.mkdir(self.bin_dir) + for x in binary_includes: + dest = self.bin_dir if '/bin/' in x else self.lib_dir + shutil.copy2(x, dest) + shutil.copy2('/usr/lib/libpython%s.so.1.0'%self.py_ver, dest) + + base = self.j(QTDIR, 'plugins') + dest = self.j(self.lib_dir, 'qt_plugins') + os.mkdir(dest) + for x in os.listdir(base): + y = self.j(base, x) + if x not in ('designer', 'sqldrivers', 'codecs'): + shutil.copytree(y, self.j(dest, x)) + + im = glob.glob('/usr/lib/ImageMagick-*')[0] + dest = self.j(self.lib_dir, 'ImageMagick') + shutil.copytree(im, dest, ignore=shutil.ignore_patterns('*.a')) + + def compile_mount_helper(self): + self.info('Compiling mount helper...') + self.regain_privileges() + dest = self.j(self.bin_dir, 'calibre-mount-helper') + subprocess.check_call(['gcc', '-Wall', '-pedantic', + self.j(self.SRC, 'calibre', 'devices', + 'linux_mount_helper.c'), '-o', dest]) + os.chown(dest, 0, 0) + os.chmod(dest, stat.S_ISUID|stat.S_ISGID|stat.S_IRUSR|stat.S_IWUSR|\ + stat.S_IXUSR|stat.S_IXGRP|stat.S_IXOTH) + self.drop_privileges() + + def copy_python(self): + self.info('Copying python...') + + def ignore_in_lib(base, items): + ans = [] + for x in items: + x = os.path.join(base, x) + if (os.path.isfile(x) and os.path.splitext(x)[1] in ('.so', + '.py')) or \ + (os.path.isdir(x) and x in ('.svn', '.bzr', 'test')): + continue + ans.append(x) + return ans + + srcdir = self.j('/usr/lib/python'+self.py_ver) + self.py_dir = self.j(self.lib_dir, self.b(srcdir)) + os.mkdir(self.py_dir) + + for x in os.listdir(srcdir): + y = self.j(srcdir, x) + ext = os.path.splitext(x)[1] + if os.path.isdir(y) and x not in ('test', 'hotshot', 'distutils', + 'site-packages', 'idlelib', 'test', 'lib2to3'): + shutil.copytree(y, self.j(self.py_dir, x), + ignore=ignore_in_lib) + if os.path.isfile(y) and ext in ('.py', '.so'): + shutil.copy2(y, self.py_dir) + + srcdir = self.j(srcdir, 'site-packages') + dest = self.j(self.py_dir, 'site-packages') + os.mkdir(dest) + for x in SITE_PACKAGES: + x = self.j(srcdir, x) + ext = os.path.splitext(x)[1] + if os.path.isdir(x): + shutil.copytree(x, self.j(dest, self.b(x)), + ignore=ignore_in_lib) + if os.path.isfile(x) and ext in ('.py', '.so'): + shutil.copy2(x, dest) + + for x in os.listdir(self.SRC): + shutil.copytree(self.j(self.SRC, x), self.j(dest, x), + ignore=ignore_in_lib) + for x in ('translations', 'manual'): + x = self.j(dest, 'calibre', x) + shutil.rmtree(x) + + shutil.copytree(self.j(self.src_root, 'resources'), self.j(self.base, + 'resources')) + + for x in os.walk(self.py_dir): + for f in x[-1]: + if f.endswith('.py'): + y = self.j(x[0], f) + rel = os.path.relpath(y, self.py_dir) + try: + py_compile.compile(y, dfile=rel, doraise=True) + os.remove(y) + z = y+'c' + if os.path.exists(z): + os.remove(z) + except: + self.warn('Failed to byte-compile', y) + + def run_builder(self, cmd): + p = subprocess.Popen(cmd, stdout=subprocess.PIPE, + stderr=subprocess.PIPE) + self.info(*cmd) + self.info(p.stdout.read()) + self.info(p.stderr.read()) + + if p.wait() != 0: + self.info('Failed to run builder') + sys.exit(1) + + def build_launchers(self): + self.obj_dir = self.j(self.src_root, 'build', 'launcher') + if not os.path.exists(self.obj_dir): + os.makedirs(self.obj_dir) + base = self.j(self.src_root, 'setup', 'installer', 'linux') + sources = [self.j(base, x) for x in ['util.c']] + headers = [self.j(base, x) for x in ['util.h']] + objects = [self.j(self.obj_dir, self.b(x)+'.o') for x in sources] + cflags = '-W -Wall -c -O2 -pipe -DPYTHON_VER="python%s"'%self.py_ver + cflags = cflags.split() + ['-I/usr/include/python'+self.py_ver] + for src, obj in zip(sources, objects): + if not self.newer(obj, headers+[src, __file__]): continue + cmd = ['gcc'] + cflags + ['-fPIC', '-o', obj, src] + self.run_builder(cmd) + + dll = self.j(self.lib_dir, 'libcalibre-launcher.so') + if self.newer(dll, objects): + cmd = ['gcc', '-O2', '-Wl,--rpath=$ORIGIN/../lib', '-fPIC', '-o', dll, '-shared'] + objects + \ + ['-lpython'+self.py_ver] + self.info('Linking libcalibre-launcher.so') + self.run_builder(cmd) + + src = self.j(base, 'main.c') + for typ in ('console', 'gui', ): + self.info('Processing %s launchers'%typ) + for mod, bname, func in zip(modules[typ], basenames[typ], + functions[typ]): + xflags = list(cflags) + xflags += ['-DGUI_APP='+('1' if type == 'gui' else '0')] + xflags += ['-DMODULE="%s"'%mod, '-DBASENAME="%s"'%bname, + '-DFUNCTION="%s"'%func] + + dest = self.j(self.obj_dir, bname+'.o') + if self.newer(dest, [src, __file__]+headers): + self.info('Compiling', bname) + cmd = ['gcc'] + xflags + [src, '-o', dest] + self.run_builder(cmd) + exe = self.j(self.bin_dir, bname) + if self.newer(exe, [dest, __file__]): + self.info('Linking', bname) + cmd = ['gcc', '-O2', '-Wl,--rpath=$ORIGIN/../lib', + '-o', exe, + dest, + '-L'+self.lib_dir, + '-lcalibre-launcher', + ] + + self.run_builder(cmd) + + + + + + diff --git a/setup/installer/linux/main.c b/setup/installer/linux/main.c new file mode 100644 index 0000000000..7bb32db5df --- /dev/null +++ b/setup/installer/linux/main.c @@ -0,0 +1,13 @@ +#include "util.h" + +#include + +int main(int argc, char **argv) { + int ret = 0; + set_gui_app(GUI_APP); + ret = execute_python_entrypoint(argc, argv, BASENAME, MODULE, FUNCTION, NULL, NULL); + + return ret; +} + + diff --git a/setup/installer/linux/util.c b/setup/installer/linux/util.c new file mode 100644 index 0000000000..f7482d2501 --- /dev/null +++ b/setup/installer/linux/util.c @@ -0,0 +1,268 @@ +#include "util.h" +#include +#include +#include +#include +#include + +static bool GUI_APP = False; + +static char exe_path[PATH_MAX]; +static char base_dir[PATH_MAX]; +static char bin_dir[PATH_MAX]; +static char lib_dir[PATH_MAX]; +static char qt_dir[PATH_MAX]; +static char extensions_dir[PATH_MAX]; +static char resources_dir[PATH_MAX]; +static char magick_dir[PATH_MAX]; + +void set_gui_app(bool yes) { GUI_APP = yes; } + +int report_error(const char *msg, int code) { + fprintf(stderr, "%s\n", msg); + return code; +} + +int report_libc_error(const char *msg) { + char buf[2000]; + int err = errno; + snprintf("%s::%s", 2000, msg, strerror(err)); + return report_error(buf, err); +} + +int pyobject_to_int(PyObject *res) { + int ret; PyObject *tmp; + tmp = PyNumber_Int(res); + if (tmp == NULL) ret = (PyObject_IsTrue(res)) ? 1 : 0; + else ret = (int)PyInt_AS_LONG(tmp); + + return ret; +} + +int handle_sysexit(PyObject *e) { + PyObject *code; + + code = PyObject_GetAttrString(e, "code"); + if (!code) return 0; + return pyobject_to_int(code); +} + +int report_python_error(const char *preamble, int code) { + PyObject *exc, *val, *tb, *str; + int ret, issysexit = 0; char *i, *buf; + + if (!PyErr_Occurred()) return code; + issysexit = PyErr_ExceptionMatches(PyExc_SystemExit); + + PyErr_Fetch(&exc, &val, &tb); + + if (exc != NULL) { + PyErr_NormalizeException(&exc, &val, &tb); + + if (issysexit) { + return (val) ? handle_sysexit(val) : 0; + } + if (val != NULL) { + str = PyObject_Unicode(val); + if (str == NULL) { + PyErr_Clear(); + str = PyObject_Str(val); + } + i = PyString_AsString(str); + if (i == NULL) OOM; + buf = (char*)calloc(strlen(i)+strlen(preamble)+5, sizeof(char)); + if (buf == NULL) OOM; + sprintf(buf, "%s::%s", preamble, i); + ret = report_error(buf, code); + if (buf) free(buf); + if (tb != NULL) { + PyErr_Restore(exc, val, tb); + PyErr_Print(); + } + return ret; + } + } + return report_error(preamble, code); +} + +static void get_paths() +{ + char linkname[256]; /* /proc//exe */ + char *p; + pid_t pid; + int ret; + + pid = getpid(); + + if (snprintf(linkname, sizeof(linkname), "/proc/%i/exe", pid) < 0) + { + /* This should only happen on large word systems. I'm not sure + what the proper response is here. + Since it really is an assert-like condition, aborting the + program seems to be in order. */ + exit(report_error("PID too large", EXIT_FAILURE)); + } + + + ret = readlink(linkname, exe_path, PATH_MAX); + + if (ret == -1) { + exit(report_error("Failed to read exe path.", EXIT_FAILURE)); + } + + if (ret >= PATH_MAX) { + exit(report_error("exe path buffer too small.", EXIT_FAILURE)); + } + + exe_path[ret] = 0; + + p = rindex(exe_path, '/'); + + if (p == NULL) { + exit(report_error("No path separators in executable path", EXIT_FAILURE)); + } + strncat(base_dir, exe_path, p - exe_path); + strcat(base_dir, "\0"); + snprintf(bin_dir, PATH_MAX, "%s/bin", base_dir); + snprintf(lib_dir, PATH_MAX, "%s/lib", base_dir); + snprintf(magick_dir, PATH_MAX, "%s/ImageMagick", lib_dir); + snprintf(qt_dir, PATH_MAX, "%s/qt_plugins", lib_dir); + snprintf(resources_dir, PATH_MAX, "%s/resources", base_dir); + snprintf(extensions_dir, PATH_MAX, "%s/%s/site-packages/calibre/plugins", lib_dir, PYTHON_VER); +} + +void init_env() { + char buf[PATH_MAX]; + + if (setenv("QT_PLUGIN_PATH", qt_dir, 1) == -1) + exit(report_libc_error("Failed to set environment variable")); + + snprintf(buf, PATH_MAX, "%s/config", magick_dir); + if (setenv("MAGICK_CONFIGURE_PATH", buf, 1) == -1) + exit(report_libc_error("Failed to set environment variable")); + + snprintf(buf, PATH_MAX, "%s/modules-Q16/coders", magick_dir); + if (setenv("MAGICK_CODER_MODULE_PATH", buf, 1) == -1) + exit(report_libc_error("Failed to set environment variable")); + + snprintf(buf, PATH_MAX, "%s/modules-Q16/filters", magick_dir); + if (setenv("MAGICK_CODER_FILTER_PATH", buf, 1) == -1) + exit(report_libc_error("Failed to set environment variable")); + + if (setenv("PYTHONIOENCODING", "utf-8", 1) == -1) + exit(report_libc_error("Failed to set environment variable")); + + if (setenv("PYTHONHOME", base_dir, 1) == -1) + exit(report_libc_error("Failed to set environment variable")); + +} + +void setup_stream(const char *name, const char *errors) { + PyObject *stream; + char *buf = (char *)calloc(100, sizeof(char)); + if (!buf) OOM; + + snprintf(buf, 100, "%s", "utf-8"); + + stream = PySys_GetObject(name); + + if (!PyFile_SetEncodingAndErrors(stream, buf, errors)) + exit(report_python_error("Failed to set stream encoding", 1)); + + free(buf); + +} + +void setup_streams() { + if (!GUI_APP) { // Remove buffering + setvbuf(stdin, NULL, _IONBF, 2); + setvbuf(stdout, NULL, _IONBF, 2); + setvbuf(stderr, NULL, _IONBF, 2); + } + + /*setup_stream("stdin", "strict"); + setup_stream("stdout", "strict"); + setup_stream("stderr", "strict");*/ +} + +void initialize_interpreter(int argc, char **argv, char *outr, char *errr, + const char *basename, const char *module, const char *function) { + char *path; + + get_paths(); + init_env(); + + path = (char*)calloc(3*PATH_MAX, sizeof(char)); + if (!path) OOM; + + snprintf(path, 3*PATH_MAX, + "%s/%s:%s/%s/plat-linux2:%s/%s/lib-dynload:%s/%s/site-packages", + lib_dir, PYTHON_VER, lib_dir, PYTHON_VER, lib_dir, PYTHON_VER, + lib_dir, PYTHON_VER); + + Py_OptimizeFlag = 2; + Py_NoSiteFlag = 1; + Py_DontWriteBytecodeFlag = 1; + Py_IgnoreEnvironmentFlag = 1; + Py_NoUserSiteDirectory = 1; + Py_VerboseFlag = 0; + Py_DebugFlag = 0; + + Py_SetProgramName(exe_path); + Py_SetPythonHome(base_dir); + + //printf("Path before Py_Initialize(): %s\r\n\n", Py_GetPath()); + Py_Initialize(); + setup_streams(); + + PySys_SetArgv(argc, argv); + //printf("Path after Py_Initialize(): %s\r\n\n", Py_GetPath()); + PySys_SetPath(path); + //printf("Path set by me: %s\r\n\n", path); + PySys_SetObject("gui_app", PyBool_FromLong((long)GUI_APP)); + PySys_SetObject("app_dir", PyString_FromString(base_dir)); + + PySys_SetObject("calibre_basename", PyBytes_FromString(basename)); + PySys_SetObject("calibre_module", PyBytes_FromString(module)); + PySys_SetObject("calibre_function", PyBytes_FromString(function)); + + //if (GUI_APP && outr && errr) { + // PySys_SetObject("stdout_redirect", PyUnicode_FromWideChar(outr, wcslen(outr))); + // PySys_SetObject("stderr_redirect", PyUnicode_FromWideChar(errr, wcslen(outr))); + //} + +} + +int execute_python_entrypoint(int argc, char **argv, const char *basename, const char *module, const char *function, + char *outr, char *errr) { + PyObject *site, *pmain, *res; + int ret = 0; + + initialize_interpreter(argc, argv, outr, errr, basename, module, function); + + site = PyImport_ImportModule("site"); + + if (site == NULL) + ret = report_python_error("Failed to import site module", 1); + else { + Py_XINCREF(site); + + pmain = PyObject_GetAttrString(site, "main"); + if (pmain == NULL || !PyCallable_Check(pmain)) + ret = report_python_error("site module has no main function", 1); + else { + Py_XINCREF(pmain); + res = PyObject_CallObject(pmain, NULL); + + if (res == NULL) + ret = report_python_error("Python function terminated unexpectedly", 1); + } + } + PyErr_Clear(); + Py_Finalize(); + + //printf("11111 Returning: %d\r\n", ret); + return ret; +} + + diff --git a/setup/installer/linux/util.h b/setup/installer/linux/util.h new file mode 100644 index 0000000000..de4c97870d --- /dev/null +++ b/setup/installer/linux/util.h @@ -0,0 +1,18 @@ +#pragma once + +#define UNICODE + +#ifndef PATH_MAX +#define PATH_MAX 4096 +#endif + +#define OOM exit(report_error("Out of memory", EXIT_FAILURE)) +#define True 1 +#define False 0 +typedef int bool; + +void set_gui_app(bool yes); + +int execute_python_entrypoint(int argc, char **argv, const char *basename, + const char *module, const char *function, + char *outr, char *errr); From 68559112b68c9015424f21cee90c482ed7cd762a Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 14 Oct 2009 14:04:02 -0600 Subject: [PATCH 24/41] Regex Builder: Initially highlight the already set regex. --- src/calibre/gui2/convert/regex_builder.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/calibre/gui2/convert/regex_builder.py b/src/calibre/gui2/convert/regex_builder.py index 58c4efbe1d..0ef4f29202 100644 --- a/src/calibre/gui2/convert/regex_builder.py +++ b/src/calibre/gui2/convert/regex_builder.py @@ -51,6 +51,7 @@ class RegexBuilder(QDialog, Ui_RegexBuilder): self.regex.setText(regex) self.regex_valid(True) self.highlighter = RegexHighlighter(self.preview.document()) + self.highlighter.update_regex(regex) if not db or not book_id: self.button_box.addButton(QDialogButtonBox.Open) From a8c8e67b924f65493b6b1963816997a6096df9f5 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 14 Oct 2009 14:06:16 -0600 Subject: [PATCH 25/41] Support for a new input format: TCR --- src/calibre/customize/builtins.py | 2 + src/calibre/ebooks/tcr/__init__.py | 5 +++ src/calibre/ebooks/tcr/input.py | 72 ++++++++++++++++++++++++++++++ src/calibre/manual/faq.rst | 2 +- 4 files changed, 80 insertions(+), 1 deletion(-) create mode 100644 src/calibre/ebooks/tcr/__init__.py create mode 100644 src/calibre/ebooks/tcr/input.py diff --git a/src/calibre/customize/builtins.py b/src/calibre/customize/builtins.py index 11317bc312..1660e890fc 100644 --- a/src/calibre/customize/builtins.py +++ b/src/calibre/customize/builtins.py @@ -337,6 +337,7 @@ from calibre.ebooks.pml.input import PMLInput from calibre.ebooks.rb.input import RBInput from calibre.web.feeds.input import RecipeInput from calibre.ebooks.rtf.input import RTFInput +from calibre.ebooks.tcr.input import TCRInput from calibre.ebooks.txt.input import TXTInput from calibre.ebooks.lrf.input import LRFInput @@ -385,6 +386,7 @@ plugins += [ RBInput, RecipeInput, RTFInput, + TCRInput, TXTInput, LRFInput, ] diff --git a/src/calibre/ebooks/tcr/__init__.py b/src/calibre/ebooks/tcr/__init__.py new file mode 100644 index 0000000000..9e2aad729c --- /dev/null +++ b/src/calibre/ebooks/tcr/__init__.py @@ -0,0 +1,5 @@ +# -*- coding: utf-8 -*- + +__license__ = 'GPL 3' +__copyright__ = '2009, John Schember ' +__docformat__ = 'restructuredtext en' diff --git a/src/calibre/ebooks/tcr/input.py b/src/calibre/ebooks/tcr/input.py new file mode 100644 index 0000000000..066d97a421 --- /dev/null +++ b/src/calibre/ebooks/tcr/input.py @@ -0,0 +1,72 @@ +# -*- coding: utf-8 -*- + +__license__ = 'GPL 3' +__copyright__ = '2009, John Schember ' +__docformat__ = 'restructuredtext en' + +import os + +from calibre.customize.conversion import InputFormatPlugin, OptionRecommendation +from calibre.ebooks.txt.processor import convert_basic, opf_writer, \ + separate_paragraphs_single_line, separate_paragraphs_print_formatted + +class TCRInput(InputFormatPlugin): + + name = 'TCR Input' + author = 'John Schember' + description = 'Convert TCR files to HTML' + file_types = set(['tcr']) + + options = set([ + OptionRecommendation(name='single_line_paras', recommended_value=False, + help=_('Normally calibre treats blank lines as paragraph markers. ' + 'With this option it will assume that every line represents ' + 'a paragraph instead.')), + OptionRecommendation(name='print_formatted_paras', recommended_value=False, + help=_('Normally calibre treats blank lines as paragraph markers. ' + 'With this option it will assume that every line starting with ' + 'an indent (either a tab or 2+ spaces) represents a paragraph. ' + 'Paragraphs end when the next line that starts with an indent ' + 'is reached.')), + ]) + + def convert(self, stream, options, file_ext, log, accelerators): + txt = [] + + log.debug('Checking TCR header...') + if stream.read(9) != '!!8-Bit!!': + raise ValueError('File %s contaions an invalid TCR header.' % stream.name) + + log.debug('Building string dictionary...') + # Dictionary codes that the file contents are broken down into. + entries = [] + for i in xrange(256): + entry_len = ord(stream.read(1)) + entries.append(stream.read(entry_len)) + + log.info('Decompressing text...') + # Map the values in the file to locations in the string list. + entry_loc = stream.read(1) + while entry_loc != '': # EOF + txt.append(entries[ord(entry_loc)]) + entry_loc = stream.read(1) + + ienc = options.input_encoding if options.input_encoding else 'utf-8' + txt = ''.join(txt).decode(ienc, 'replace') + + log.info('Converting text to OEB...') + if options.single_line_paras: + txt = separate_paragraphs_single_line(txt) + if options.print_formatted_paras: + txt = separate_paragraphs_print_formatted(txt) + html = convert_basic(txt) + with open(os.path.join(os.getcwd(), 'index.html'), 'wb') as index: + index.write(html.encode('utf-8')) + + from calibre.ebooks.metadata.meta import get_metadata + mi = get_metadata(stream, 'tcr') + manifest = [('index.html', None)] + spine = ['index.html'] + opf_writer(os.getcwd(), 'metadata.opf', manifest, spine, mi) + + return os.path.join(os.getcwd(), 'metadata.opf') diff --git a/src/calibre/manual/faq.rst b/src/calibre/manual/faq.rst index e5ecc7e12a..5d0cd842a1 100644 --- a/src/calibre/manual/faq.rst +++ b/src/calibre/manual/faq.rst @@ -20,7 +20,7 @@ What formats does |app| support conversion to/from? |app| supports the conversion of many input formats to many output formats. It can convert every input format in the following list, to every output format. -*Input Formats:* CBZ, CBR, CBC, EPUB, FB2, HTML, LIT, LRF, MOBI, ODT, PDF, PRC**, PDB, PML, RB, RTF, TXT +*Input Formats:* CBZ, CBR, CBC, EPUB, FB2, HTML, LIT, LRF, MOBI, ODT, PDF, PRC**, PDB, PML, RB, RTF, TCR, TXT *Output Formats:* EPUB, FB2, OEB, LIT, LRF, MOBI, PDB, PML, RB, PDF, TXT ** PRC is a generic format, |app| supports PRC files with TextRead and MOBIBook headers From fb719698f729cba669fb71cf78179808d5890806 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 14 Oct 2009 14:10:09 -0600 Subject: [PATCH 26/41] Fix #3739 (Author sort function does not recognize "with") --- src/calibre/ebooks/metadata/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/calibre/ebooks/metadata/__init__.py b/src/calibre/ebooks/metadata/__init__.py index 1a33bacf1a..fb56074079 100644 --- a/src/calibre/ebooks/metadata/__init__.py +++ b/src/calibre/ebooks/metadata/__init__.py @@ -13,7 +13,7 @@ from urlparse import urlparse from calibre import relpath -_author_pat = re.compile(',?\s+and\s+', re.IGNORECASE) +_author_pat = re.compile(',?\s+(and|with)\s+', re.IGNORECASE) def string_to_authors(raw): raw = raw.replace('&&', u'\uffff') raw = _author_pat.sub('&', raw) From 15cd7f99c2ccf2b8521937cfe931c7f9bd50f4c2 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 14 Oct 2009 17:26:12 -0600 Subject: [PATCH 27/41] IGN:Use explicit path to libunrar.so in linux binary and use QT_PLUGIN_PATH env variable instead of loading Qt explicitly on each invocation --- setup/installer/linux/freeze.py | 3 +-- src/calibre/libunrar.py | 3 +++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/setup/installer/linux/freeze.py b/setup/installer/linux/freeze.py index ca78da9c83..067862e4ba 100644 --- a/setup/installer/linux/freeze.py +++ b/setup/installer/linux/freeze.py @@ -161,8 +161,6 @@ class LinuxFreeze(Command): elif exe not in executables: print >>sys.stderr, 'Invalid invocation of calibre loader. CALIBRE_CX_EXE=%%s is unknown'%%exe else: - from PyQt4.QtCore import QCoreApplication - QCoreApplication.setLibraryPaths([sys.frozen_path, os.path.join(sys.frozen_path, "qtplugins")]) sys.argv[0] = exe module, func = executables[exe] module = __import__(module, fromlist=[1]) @@ -248,6 +246,7 @@ class LinuxFreeze(Command): export MAGICK_CONFIGURE_PATH=$base/ImageMagick/config export MAGICK_CODER_MODULE_PATH=$base/ImageMagick/modules-Q16/coders export MAGICK_CODER_FILTER_PATH=$base/ImageMagick/modules-Q16/filter + export QT_PLUGIN_PATH=$base/qtplugins $loader "$@" ''')%exe) os.chmod(path, 0755) diff --git a/src/calibre/libunrar.py b/src/calibre/libunrar.py index ed09d66a46..06732b931a 100644 --- a/src/calibre/libunrar.py +++ b/src/calibre/libunrar.py @@ -27,6 +27,9 @@ else: if hasattr(sys, 'frozen') and iswindows: lp = os.path.join(os.path.dirname(sys.executable), 'DLLs', 'unrar.dll') _libunrar = cdll.LoadLibrary(lp) +elif hasattr(sys, 'frozen_path'): + lp = os.path.join(sys.frozen_path, 'libunrar.so') + _libunrar = cdll.LoadLibrary(lp) else: _libunrar = load_library(_librar_name, cdll) From 820886a09d5c717d22555590e60a04b4100f70ff Mon Sep 17 00:00:00 2001 From: Translators <> Date: Thu, 15 Oct 2009 07:51:05 +0100 Subject: [PATCH 28/41] Launchpad automatic translations update. --- src/calibre/translations/pl.po | 213 ++++++++++++++++-------------- src/calibre/translations/pt_BR.po | 2 +- 2 files changed, 115 insertions(+), 100 deletions(-) diff --git a/src/calibre/translations/pl.po b/src/calibre/translations/pl.po index aef9f0920b..48a6d87af9 100644 --- a/src/calibre/translations/pl.po +++ b/src/calibre/translations/pl.po @@ -8,13 +8,13 @@ msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2009-10-10 02:36+0000\n" -"PO-Revision-Date: 2009-10-09 23:39+0000\n" -"Last-Translator: Kovid Goyal \n" +"PO-Revision-Date: 2009-10-14 22:05+0000\n" +"Last-Translator: Bartosz Kaszubowski \n" "Language-Team: Polish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-10 06:53+0000\n" +"X-Launchpad-Export-Date: 2009-10-15 06:51+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 @@ -214,7 +214,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/conversion.py:99 msgid "Conversion Input" -msgstr "Źródło do konwersji" +msgstr "Źródłowy format do konwersji" #: /home/kovid/work/calibre/src/calibre/customize/conversion.py:122 msgid "" @@ -226,7 +226,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/conversion.py:225 msgid "Conversion Output" -msgstr "Cel konwersji" +msgstr "Docelowy format po konwersji" #: /home/kovid/work/calibre/src/calibre/customize/conversion.py:239 msgid "" @@ -236,7 +236,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:44 msgid "Input profile" -msgstr "" +msgstr "Profil wyjściowy" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:48 msgid "" @@ -248,50 +248,53 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:194 msgid "This profile is intended for the SONY PRS line. The 500/505/700 etc." msgstr "" +"Ten profil przeznaczony jest dla urządzeń z linii SONY PRS. Np. 500/505/700 " +"itd." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:69 #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:229 msgid "This profile is intended for the Microsoft Reader." -msgstr "" +msgstr "Ten profil przeznaczony jest dla programu Microsoft Reader." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:80 #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:240 msgid "This profile is intended for the Mobipocket books." -msgstr "" +msgstr "Ten profil przeznaczony jest dla urządzeń Mobipocket." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:93 #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:253 msgid "This profile is intended for the Hanlin V3 and its clones." -msgstr "" +msgstr "Ten profil przeznaczony jest dla urządzenia Hanlin V3 i jego klonów." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:105 #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:265 msgid "This profile is intended for the Cybook G3." -msgstr "" +msgstr "Ten profil przeznaczony jest dla urządzenia Cybook G3." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:118 #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:278 msgid "This profile is intended for the Cybook Opus." -msgstr "" +msgstr "Ten profil przeznaczony jest dla urządzenia Cybook Opus." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:130 #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:289 msgid "This profile is intended for the Amazon Kindle." -msgstr "" +msgstr "Ten profil przeznaczony jest dla urządzenia Amazon Kindle." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:142 #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:322 msgid "This profile is intended for the Irex Illiad." -msgstr "" +msgstr "Ten profil przeznaczony jest dla urządzenia Irex Illiad." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:154 #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:335 msgid "This profile is intended for the IRex Digital Reader 1000." msgstr "" +"Ten profil przeznaczony jest dla urządzenia IRex Digital Reader 1000." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:172 msgid "Output profile" -msgstr "" +msgstr "Profil wyjściowy" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:176 msgid "" @@ -302,17 +305,19 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:206 msgid "This profile is intended for the 5-inch JetBook." -msgstr "" +msgstr "Ten profil przeznaczony jest dla 5 calowego urządzenia JetBook." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:217 msgid "" "This profile is intended for the SONY PRS line. The 500/505/700 etc, in " "landscape mode. Mainly useful for comics." msgstr "" +"Ten profil przeznaczony jest dla urządzeń z linii SONY PRS w trybie " +"panoramicznym. Np. 500/505/700 itd. Głównie użyteczny przy komiksach." #: /home/kovid/work/calibre/src/calibre/customize/profiles.py:306 msgid "This profile is intended for the Amazon Kindle DX." -msgstr "" +msgstr "Ten profil przeznaczony jest dla urządzenia Amazon Kindle DX." #: /home/kovid/work/calibre/src/calibre/customize/ui.py:29 msgid "Installed plugins" @@ -569,7 +574,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:17 msgid "Ordered list of formats the device will accept" -msgstr "" +msgstr "Uporządkowana lista formatów akceptowanych przez urządzenie" #: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:18 msgid "Place files in sub directories if the device supports them" @@ -750,7 +755,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:158 msgid "Options to help with debugging the conversion" -msgstr "" +msgstr "Opcje pomocy przy debugowaniu konwersji" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:183 msgid "List builtin recipes" @@ -1128,11 +1133,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:77 msgid "Table of Contents:" -msgstr "" +msgstr "Spis treści:" #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/input.py:32 msgid "Do not insert a Table of Contents at the beginning of the book." -msgstr "" +msgstr "Nie wstawiaj spisu treści na początku książki." #: /home/kovid/work/calibre/src/calibre/ebooks/fb2/output.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/output.py:32 @@ -1140,7 +1145,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/rb/output.py:21 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:35 msgid "Add Table of Contents to beginning of the book." -msgstr "" +msgstr "Dodaj spis treści na początku książki." #: /home/kovid/work/calibre/src/calibre/ebooks/html/input.py:242 msgid "" @@ -1524,7 +1529,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:61 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:162 msgid "Published" -msgstr "" +msgstr "Opublikowana" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:379 msgid "Rights" @@ -1691,6 +1696,8 @@ msgid "" "Don't add Table of Contents to end of book. Useful if the book has its own " "table of contents." msgstr "" +"Nie dodawaj spisu treści na końcu książki. Użyteczne jeśli książka posiada " +"własny spis treści." #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:33 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:56 @@ -1774,7 +1781,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/factory.py:53 msgid "Options to control e-book conversion." -msgstr "" +msgstr "Opcje odpowiedzialne za konwersję e-książek" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/factory.py:60 msgid "Character encoding for input. Default is to auto detect." @@ -1804,7 +1811,7 @@ msgstr "książki formatu %s nie są wspierane" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:54 msgid "HTML TOC generation options." -msgstr "" +msgstr "Opcje generowania spisu treści w HTML." #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:108 msgid "Book Jacket" @@ -2064,6 +2071,8 @@ msgid "" "The size of the paper. This size will be overridden when an output profile " "is used. Default is letter. Choices are %s" msgstr "" +"Rozmiar kartki. Rozmiar ten będzie nadpisany, jeśli użyty jest któryś z " +"profili wyjścia. Domyślny to rozmiar listu. Wybory to %s" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:40 msgid "" @@ -2112,7 +2121,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_output_ui.py:54 msgid "Do not add a blank line between paragraphs." -msgstr "" +msgstr "Nie dodawaj pustej linii pomiędzy paragrafami." #: /home/kovid/work/calibre/src/calibre/ebooks/txt/output.py:41 msgid "" @@ -2234,7 +2243,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "Copy to Clipboard" -msgstr "" +msgstr "Kopiuj do schowka" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:386 msgid "Choose Files" @@ -2246,7 +2255,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:164 msgid "Adding..." -msgstr "" +msgstr "Dodawanie..." #: /home/kovid/work/calibre/src/calibre/gui2/add.py:177 msgid "Searching in all sub-directories..." @@ -2254,7 +2263,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:190 msgid "Path error" -msgstr "" +msgstr "Błędna ścieżka" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:191 msgid "The specified directory could not be processed." @@ -2263,11 +2272,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:195 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:486 msgid "No books" -msgstr "" +msgstr "Brak książek" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:196 msgid "No books found" -msgstr "" +msgstr "Nie znaleziono książek" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:262 msgid "Added" @@ -2275,7 +2284,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:275 msgid "Adding failed" -msgstr "" +msgstr "Dodawanie nie powiodło się" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:276 msgid "" @@ -2295,7 +2304,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:292 msgid "Adding duplicates..." -msgstr "" +msgstr "Dodawanie duplikatów..." #: /home/kovid/work/calibre/src/calibre/gui2/add.py:353 msgid "Saving..." @@ -2307,7 +2316,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/bulk.py:60 msgid "Bulk Convert" -msgstr "" +msgstr "Masowa konwersja" #: /home/kovid/work/calibre/src/calibre/gui2/convert/bulk.py:73 #: /home/kovid/work/calibre/src/calibre/gui2/convert/single.py:184 @@ -2435,7 +2444,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/debug.py:21 msgid "Debug the conversion process." -msgstr "" +msgstr "Debuguj proces konwersji." #: /home/kovid/work/calibre/src/calibre/gui2/convert/debug.py:38 #: /home/kovid/work/calibre/src/calibre/gui2/convert/debug_ui.py:51 @@ -2550,7 +2559,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:15 msgid "Look & Feel" -msgstr "" +msgstr "Wygląd i zachowanie" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel.py:17 msgid "Control the look and feel of the output" @@ -2606,11 +2615,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:100 msgid "Insert &blank line" -msgstr "" +msgstr "Wstaw &pustą linię" #: /home/kovid/work/calibre/src/calibre/gui2/convert/look_and_feel_ui.py:101 msgid "Extra &CSS" -msgstr "" +msgstr "Dodatkowa stylizacja kodem &CSS" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output.py:19 msgid "LRF Output" @@ -2797,7 +2806,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:45 msgid "&Title for Table of Contents:" -msgstr "" +msgstr "&Tytuł dla spisu treści:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:46 msgid "Rescale images for &Palm devices" @@ -2813,7 +2822,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:49 msgid "Do not add Table of Contents to book" -msgstr "" +msgstr "Nie dodawaj spisu treści do ksiązki" #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup.py:35 msgid "Page Setup" @@ -2821,19 +2830,19 @@ msgstr "Ustawienia strony" #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:111 msgid "&Output profile:" -msgstr "" +msgstr "Profil &wyjściowy:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:112 msgid "Profile description" -msgstr "" +msgstr "Opis profilu" #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:113 msgid "&Input profile:" -msgstr "" +msgstr "Profil wejściowy:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:114 msgid "Margins" -msgstr "" +msgstr "Marginesy" #: /home/kovid/work/calibre/src/calibre/gui2/convert/page_setup_ui.py:115 msgid "&Left:" @@ -3032,7 +3041,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/toc.py:18 msgid "Control the creation/conversion of the Table of Contents." -msgstr "" +msgstr "Kontroluj tworzenie/konwersję spisu treści" #: /home/kovid/work/calibre/src/calibre/gui2/convert/toc.py:29 msgid "Level &1 TOC (XPath expression):" @@ -3048,7 +3057,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:63 msgid "Do not add &detected chapters to the Table of Contents" -msgstr "Nie &dodawaj automatycznie wykrytych rozdziałów do spisu treści" +msgstr "Nie dodawaj &wykrytych rozdziałów do spisu treści" #: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:64 msgid "Number of &links to add to Table of Contents" @@ -3064,7 +3073,7 @@ msgstr "&Wymuś użycie wygenerowanego automatycznie spisu treści" #: /home/kovid/work/calibre/src/calibre/gui2/convert/toc_ui.py:67 msgid "TOC &Filter:" -msgstr "" +msgstr "Filtr spisu treści:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/txt_input.py:12 msgid "TXT Input" @@ -3272,7 +3281,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/device.py:487 msgid "selected to send" -msgstr "" +msgstr "wybrane do wysłania" #: /home/kovid/work/calibre/src/calibre/gui2/device.py:492 msgid "Choose format to send to device" @@ -3389,7 +3398,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:60 msgid "Select available formats and their order for this device" -msgstr "" +msgstr "Wybierz dostepne formaty i ich porządek dla tego urządzenia" #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:63 msgid "Use sub directories" @@ -3457,7 +3466,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:196 msgid "Conversion" -msgstr "" +msgstr "Konwersja" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:196 msgid "General" @@ -3469,7 +3478,7 @@ msgstr "Interfejs" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:197 msgid "Add/Save" -msgstr "" +msgstr "Dodaj/zapisz" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:197 msgid "" @@ -3594,7 +3603,7 @@ msgstr "Włączanie serwera zakończone niepowodzeniem" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:669 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:470 msgid "Select location for books" -msgstr "" +msgstr "Wybierz lokalizację dla książek" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:677 msgid "Invalid size" @@ -3670,7 +3679,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:104 msgid "&Adding books" -msgstr "" +msgstr "&Dodawanie książek" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/add_save_ui.py:105 msgid "" @@ -3789,11 +3798,11 @@ msgstr "&Priorytet zdań:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:481 msgid "Preferred &output format:" -msgstr "" +msgstr "Preferowany format &docelowy:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:482 msgid "Preferred &input format order:" -msgstr "" +msgstr "Preferowany porządek formatów &źródłowy:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:485 msgid "Use &Roman numerals for series number" @@ -3854,7 +3863,7 @@ msgstr "Pokazuj &tekst pod przyciskami na pasku narzędzi" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:499 msgid "Select visible &columns in library view" -msgstr "Wybierz &kolumny pokazywane w widoku biblioteki:" +msgstr "Wybierz &kolumny wyświetlane w widoku biblioteki:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:502 msgid "Use internal &viewer for:" @@ -3925,6 +3934,8 @@ msgid "" "If you leave the password blank, anyone will be able to access your book " "collection using the web interface." msgstr "" +"Jeśli pozostawisz pole hasła puste, każdy będzie mógł uzyskać dostęp do " +"twojej kolekcji książek przez interfejs internetowy." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:516 msgid "" @@ -4040,6 +4051,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:159 msgid "The metadata download seems to have stalled. Try again later." msgstr "" +"Pobieranie metadanych wydaje się przedłużać. Spróbuj ponownie później." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:168 msgid "Warning" @@ -4191,7 +4203,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:183 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:184 msgid "No format selected" -msgstr "" +msgstr "Nie wybrano formatu" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:195 msgid "Could not read metadata" @@ -4220,7 +4232,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:488 msgid "Downloading cover..." -msgstr "" +msgstr "Pobieranie okładki..." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:500 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:505 @@ -4235,7 +4247,7 @@ msgstr "Nie można pobrać okładki.
" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:502 msgid "The download timed out." -msgstr "" +msgstr "Czas pobierania minął." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:506 msgid "Could not find cover for this book. Try specifying the ISBN first." @@ -4325,7 +4337,7 @@ msgstr "Usuń zaznaczone formaty tej ksiązki z bazy danych." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:389 msgid "Set the cover for the book from the selected format" -msgstr "" +msgstr "Przypisz okładkę dla tej książki z wybranego formatu" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:391 msgid "Update metadata from the metadata in the selected format" @@ -4337,7 +4349,7 @@ msgstr "Przywróć domyślną okładkę" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single_ui.py:398 msgid "Download &cover" -msgstr "" +msgstr "Pobierz o&kładkę" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:56 msgid "Password needed" @@ -4417,7 +4429,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:396 msgid "Last downloaded" -msgstr "" +msgstr "Ostatnio pobrano" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:398 msgid "Last downloaded: never" @@ -4757,7 +4769,7 @@ msgstr "&Najstarszy artykuł może mieć:" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:262 msgid "The oldest article to download" -msgstr "" +msgstr "Najstarszy artykuł do pobrania" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:264 msgid "&Max. number of articles per feed:" @@ -4765,7 +4777,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:265 msgid "Maximum number of articles to download per feed." -msgstr "" +msgstr "Maksymalna liczba artykułów do pobrania na źródło." #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:266 msgid "Feeds in recipe" @@ -5066,7 +5078,7 @@ msgstr "&Przywróć" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:157 msgid "&Donate to support calibre" -msgstr "" +msgstr "&Wpłać i wesprzyj rozwój calibre" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:162 msgid "&Restart" @@ -5091,19 +5103,19 @@ msgstr "Edytuj metadane pojedynczo" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:229 msgid "Edit metadata in bulk" -msgstr "" +msgstr "Edytuj metadane masowo" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:231 msgid "Download metadata and covers" -msgstr "" +msgstr "Pobierz metadane i okładki" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:232 msgid "Download only metadata" -msgstr "" +msgstr "Pobierz tylko metadane" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:233 msgid "Download only covers" -msgstr "" +msgstr "Pobierz tylko okładki" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:236 msgid "Add books from a single directory" @@ -5158,11 +5170,11 @@ msgstr "Konwertuj pojedynczo" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:318 msgid "Bulk convert" -msgstr "" +msgstr "Masowa konwersja" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:333 msgid "Run welcome wizard" -msgstr "" +msgstr "Uruchom kreator wstępnych ustawień" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:367 msgid "Similar books..." @@ -5280,7 +5292,7 @@ msgstr "Usuwanie książek z urządzenia." #: /home/kovid/work/calibre/src/calibre/gui2/main.py:994 msgid "Cannot download metadata" -msgstr "" +msgstr "Nie można obrac metadanych" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:995 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:1043 @@ -5300,19 +5312,19 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:1006 msgid "Downloading %s for %d book(s)" -msgstr "" +msgstr "Pobieram %s dla %d książki(ek)" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:1027 msgid "Failed to download some metadata" -msgstr "" +msgstr "Nie udało się pobrac niektórych metadanych" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:1028 msgid "Failed to download metadata for the following:" -msgstr "" +msgstr "Nie udało się pobrać metadanych dla następujących e-ksiązek:" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:1031 msgid "Failed to download metadata:" -msgstr "" +msgstr "Nie udało się pobrać metadanych:" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:1042 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:1075 @@ -5329,11 +5341,11 @@ msgstr "Wyberz folder docelowy" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:1130 msgid "Error while saving" -msgstr "" +msgstr "Błąd podczas zapisywania" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:1131 msgid "There was an error while saving." -msgstr "" +msgstr "Wysapił błąd podczas zapisywania." #: /home/kovid/work/calibre/src/calibre/gui2/main.py:1138 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:1139 @@ -5358,7 +5370,7 @@ msgstr "Nie można przekonwertować" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:1241 msgid "Starting conversion of %d book(s)" -msgstr "" +msgstr "Rozpoczynam konwersję %d książki(ek)" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:1371 @@ -5376,7 +5388,7 @@ msgstr "Nie można otworzyć folderu" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:1387 msgid "Multiple Books Selected" -msgstr "" +msgstr "Wybrano wiele książek" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:1388 msgid "" @@ -5746,7 +5758,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/tools.py:121 msgid "Queueing books for bulk conversion" -msgstr "" +msgstr "Kolejkowanie książek do masowej konwersji" #: /home/kovid/work/calibre/src/calibre/gui2/tools.py:181 msgid "Queueing " @@ -5917,6 +5929,8 @@ msgid "" "Set the user CSS stylesheet. This can be used to customize the look of all " "books." msgstr "" +"Ustaw arkusz CSS użytkownika. Ta opcja może być użyta do spersonalizowania " +"wyglądu wszystkich książek." #: /home/kovid/work/calibre/src/calibre/gui2/viewer/documentview.py:41 msgid "Maximum width of the viewer window, in pixels." @@ -5980,7 +5994,7 @@ msgstr "Szukanie tekstu w książce" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:286 msgid "Print Preview" -msgstr "" +msgstr "Podgląd wydruku" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:381 msgid "Choose ebook" @@ -6080,7 +6094,7 @@ msgstr "Znajdź następny" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:172 msgid "Copy to clipboard" -msgstr "Skopiuj do schowka" +msgstr "Kopiuj do schowka" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:174 msgid "Reference Mode" @@ -6096,11 +6110,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:177 msgid "Print" -msgstr "" +msgstr "Drukuj" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/printing.py:113 msgid "Print eBook" -msgstr "" +msgstr "Wydrukuj e-książkę" #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:198 msgid "" @@ -6221,7 +6235,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:541 msgid "welcome wizard" -msgstr "" +msgstr "- kreator wstępnych ustawień" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/device_ui.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/device_ui.py:49 @@ -6230,7 +6244,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:42 msgid "Welcome to calibre" -msgstr "" +msgstr "Witaj w calibre" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/device_ui.py:50 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/finish_ui.py:47 @@ -6239,6 +6253,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:43 msgid "The one stop solution to all your e-book needs." msgstr "" +"Jedyne takie rozwiązanie, przeznaczone dla wszystkich twoich e-książek." #: /home/kovid/work/calibre/src/calibre/gui2/wizard/device_ui.py:51 msgid "" @@ -6505,7 +6520,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/library/cli.py:208 msgid "Sort results in ascending order" -msgstr "" +msgstr "Posortuj wyniki rosnąco" #: /home/kovid/work/calibre/src/calibre/library/cli.py:210 msgid "" @@ -6637,7 +6652,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/library/cli.py:475 msgid "Print metadata in OPF form (XML)" -msgstr "" +msgstr "Wydrukuj metadane w formacie OPF (XML)" #: /home/kovid/work/calibre/src/calibre/library/cli.py:484 msgid "You must specify an id" @@ -6769,7 +6784,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:32 msgid "The published date" -msgstr "" +msgstr "Data publikacji" #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:33 msgid "The calibre internal id" @@ -6895,7 +6910,7 @@ msgstr "Domyślny format wyjściowy dla konwersji e-książek" #: /home/kovid/work/calibre/src/calibre/utils/config.py:575 msgid "Ordered list of formats to prefer for input." -msgstr "" +msgstr "Uporządkowana lista preferowanych formatów źródłowych." #: /home/kovid/work/calibre/src/calibre/utils/config.py:577 msgid "Read metadata from files" @@ -6927,7 +6942,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:95 msgid "English (UK)" -msgstr "" +msgstr "angielski (Wielka Brytania)" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:96 msgid "Simplified Chinese" @@ -6944,15 +6959,15 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:99 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nytimes.py:17 msgid "English" -msgstr "Angielskie" +msgstr "angielski" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:100 msgid "English (AU)" -msgstr "" +msgstr "angielski (Australia)" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:101 msgid "English (CA)" -msgstr "" +msgstr "angielski (Kanada)" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:102 msgid "English (IND)" @@ -7016,11 +7031,11 @@ msgstr "Pobranie zakończone" #: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:590 msgid "Failed to download the following articles:" -msgstr "" +msgstr "Nie udało się pobrać następujących artykułów:" #: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:596 msgid "Failed to download parts of the following articles:" -msgstr "" +msgstr "Nie udało się pobrać części następujących artykułów:" #: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:598 msgid " from " @@ -7044,15 +7059,15 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:712 msgid "Trying to download cover..." -msgstr "Próba pobrania okładki..." +msgstr "Próbuję pobrać okładkę..." #: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:766 msgid "Starting download [%d thread(s)]..." -msgstr "" +msgstr "Rozpoczynam pobieranie [%d wątek(ków)]..." #: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:782 msgid "Feeds downloaded to %s" -msgstr "" +msgstr "Źródła pobrano do %s" #: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:792 msgid "Could not download cover: %s" diff --git a/src/calibre/translations/pt_BR.po b/src/calibre/translations/pt_BR.po index 4e15cbf70f..3795c9e0e6 100644 --- a/src/calibre/translations/pt_BR.po +++ b/src/calibre/translations/pt_BR.po @@ -14,7 +14,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-14 06:51+0000\n" +"X-Launchpad-Export-Date: 2009-10-15 06:51+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 From b5c2e9941eb6f218087d3f98c9c92b216ffffed6 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Thu, 15 Oct 2009 11:05:11 -0600 Subject: [PATCH 29/41] New recipe for Trouw by JvdW --- resources/recipes/trouw.recipe | 69 ++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 resources/recipes/trouw.recipe diff --git a/resources/recipes/trouw.recipe b/resources/recipes/trouw.recipe new file mode 100644 index 0000000000..2781d4021e --- /dev/null +++ b/resources/recipes/trouw.recipe @@ -0,0 +1,69 @@ +#!/usr/bin/python + +class Trouw(BasicNewsRecipe): + title = u'Trouw' + __author__ = u'JvdW' + description = u'Trouw de Verdieping' + oldest_article = 7 + max_articles_per_feed = 25 + language = u'nl' + simultaneous_downloads = 1 + delay = 1 +# timefmt = ' [%A, %d %B, %Y]' + timefmt = '' + no_stylesheets = True + cover_url = 'http://www.trouw.nl/template/ver2-0/images/trouw_logo.gif' + +# keep_only_tags = [ dict(name='div', attrs={'id':'content'}) ] + remove_tags = [ + dict(name='div', attrs={'id' :'leaderboard' }) + ,dict(name='div', attrs={'class':'banner' }) + ,dict(name='div', attrs={'id' :'header' }) + ,dict(name='div', attrs={'class':'options' }) + ,dict(name='div', attrs={'id' :'menu_main' }) + ,dict(name='div', attrs={'id' :'menu_sub' }) + ,dict(name='div', attrs={'id' :'column_right' }) + ,dict(name='div', attrs={'class':'meta_information'}) + ,dict(name='div', attrs={'id' :'comments_form' }) + ,dict(name='div', attrs={'id' :'mailfriend' }) + ,dict(name='div', attrs={'id' :'footer' }) + ,dict(name='img', attrs={'id' :'dot_clear' }) + ] + + keep_only_tags = [dict(id=['columns'])] + + feeds = [ + (u'Algemen', u'http://www.trouw.nl/?service=rss'), + (u'Nederland', u'http://www.trouw.nl/nieuws/nederland/?service=rss'), + (u'Europa', u'http://www.trouw.nl/nieuws/europa/?service=rss'), + (u'Wereld', u'http://www.trouw.nl/nieuws/wereld/?service=rss'), + (u'Economie', u'http://www.trouw.nl/nieuws/economie/?service=rss'), + (u'Wetenschap', u'http://www.trouw.nl/nieuws/Wetenschap/?service=rss'), + (u'Groen', u'http://www.trouw.nl/groen/?service=rss'), + (u'Religie en Filosofie', u'http://www.trouw.nl/religie-filosofie/?service=rss'), + (u'Politiek', u'http://www.trouw.nl/nieuws/politiek/?service=rss'), + (u'Zorg', u'http://www.trouw.nl/nieuws/zorg/?service=rss'), + (u'Onderwijs', u'http://www.trouw.nl/onderwijs/nieuws/?service=rss'), + (u'Sport', u'http://www.trouw.nl/nieuws/sport/?service=rss'), + (u'Achtergrond', u'http://www.trouw.nl/achtergrond/?service=rss'), + (u'De Verdieping', u'http://www.trouw.nl/achtergrond/deverdieping/?service=rss'), + (u'Naschrift', u'http://www.trouw.nl/achtergrond/Naschrift/?service=rss'), + (u'Opinie', u'http://www.trouw.nl/opinie/?service=rss'), + (u'Podium', u'http://www.trouw.nl/opinie/podium/?service=rss'), + (u'Commentaar', u'http://www.trouw.nl/opinie/commentaar/?service=rss'), + (u'Cultuur', u'http://www.trouw.nl/cultuur/?service=rss'), + (u'Boeken', u'http://www.trouw.nl/cultuur/boeken/?service=rss'), + (u'Film', u'http://www.trouw.nl/cultuur/film/?service=rss'), + (u'Beeldende kunst', u'http://www.trouw.nl/cultuur/beeldendekunst/?service=rss'), + (u'Theater', u'http://www.trouw.nl/cultuur/theater/?service=rss'), + (u'Muziek', u'http://www.trouw.nl/cultuur/muziek/?service=rss'), + (u'Kinderen', u'http://www.trouw.nl/cultuur/kinderen/?service=rss'), + (u'Ontspanning', u'http://www.trouw.nl/ontspanning/?service=rss'), + (u'De Gids', u'http://www.trouw.nl/ontspanning/degids/?service=rss'), + (u'Moderne manieren', u'http://www.trouw.nl/ontspanning/modernemanieren/?service=rss'), + (u'Reizen', u'http://www.trouw.nl/ontspanning/reizen/?service=rss'), + (u'Koken', u'http://www.trouw.nl/ontspanning/koken/?service=rss') + ] + + def print_version(self, url): + return url + '?all=true' From 0ffd9ecb6e529cef12d156f89353cee2d679f880 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Thu, 15 Oct 2009 11:31:42 -0600 Subject: [PATCH 30/41] IGN:ebook-metadata handle unicode encode failures when outputting metadata more gracefully --- src/calibre/ebooks/metadata/cli.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/calibre/ebooks/metadata/cli.py b/src/calibre/ebooks/metadata/cli.py index ef0c621128..f803983111 100644 --- a/src/calibre/ebooks/metadata/cli.py +++ b/src/calibre/ebooks/metadata/cli.py @@ -160,7 +160,7 @@ def main(args=sys.argv): metadata = unicode(mi) if trying_to_set: metadata = '\t'+'\n\t'.join(metadata.split('\n')) - prints(metadata) + prints(metadata, safe_encode=True) if trying_to_set: stream.seek(0) @@ -176,7 +176,7 @@ def main(args=sys.argv): prints('\n' + _('Changed metadata') + '::') metadata = unicode(mi) metadata = '\t'+'\n\t'.join(metadata.split('\n')) - prints(metadata) + prints(metadata, safe_encode=True) if lrf is not None: prints('\tBookID:', lrf.book_id) From 5af7e769d91254230b46db8a160401189757b83d Mon Sep 17 00:00:00 2001 From: Translators <> Date: Fri, 16 Oct 2009 07:56:14 +0100 Subject: [PATCH 31/41] Launchpad automatic translations update. --- src/calibre/translations/pl.po | 141 +++++++++++++++++------------- src/calibre/translations/pt_BR.po | 41 ++++++--- 2 files changed, 109 insertions(+), 73 deletions(-) diff --git a/src/calibre/translations/pl.po b/src/calibre/translations/pl.po index 48a6d87af9..b7e28d6551 100644 --- a/src/calibre/translations/pl.po +++ b/src/calibre/translations/pl.po @@ -8,13 +8,13 @@ msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2009-10-10 02:36+0000\n" -"PO-Revision-Date: 2009-10-14 22:05+0000\n" +"PO-Revision-Date: 2009-10-15 13:33+0000\n" "Last-Translator: Bartosz Kaszubowski \n" "Language-Team: Polish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-15 06:51+0000\n" +"X-Launchpad-Export-Date: 2009-10-16 06:56+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 @@ -382,15 +382,15 @@ msgstr "Wyłącz wtyczkę" #: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:13 msgid "Communicate with Android phones." -msgstr "" +msgstr "Komunikacja z telefonami z Androidem." #: /home/kovid/work/calibre/src/calibre/devices/bebook/driver.py:19 msgid "Communicate with the BeBook eBook reader." -msgstr "" +msgstr "Komunikacja z czytnikiem BeBook eBook." #: /home/kovid/work/calibre/src/calibre/devices/bebook/driver.py:95 msgid "Communicate with the BeBook Mini eBook reader." -msgstr "" +msgstr "Komunikacja z czytnikiem BeBook Mini eBook." #: /home/kovid/work/calibre/src/calibre/devices/blackberry/driver.py:12 msgid "Communicate with the Blackberry smart phone." @@ -540,7 +540,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:670 #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:672 msgid "The reader has no storage card in this slot." -msgstr "" +msgstr "Brak pamięci na karcie urządzenia w tym wejściu." #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:674 msgid "Selected slot: %s is not supported." @@ -570,7 +570,7 @@ msgstr "Konfiguruj urządzenie" #: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:16 msgid "settings for device drivers" -msgstr "" +msgstr "ustawienia dla sterowników urządzeń" #: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:17 msgid "Ordered list of formats the device will accept" @@ -578,7 +578,7 @@ msgstr "Uporządkowana lista formatów akceptowanych przez urządzenie" #: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:18 msgid "Place files in sub directories if the device supports them" -msgstr "" +msgstr "Umieszczaj pliki w podfolderach, jeśli urządzenie wpiera ich obsługę" #: /home/kovid/work/calibre/src/calibre/devices/usbms/deviceconfig.py:19 #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:64 @@ -635,6 +635,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:281 msgid "Maintain picture aspect ratio. Default is to fill the screen." msgstr "" +"Zachowuj proporcję wymiarów grafiki. Domyślnie grafika rozszerzana jest na " +"cały ekran." #: /home/kovid/work/calibre/src/calibre/ebooks/comic/input.py:283 msgid "Disable sharpening." @@ -720,23 +722,24 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:97 msgid "INPUT OPTIONS" -msgstr "" +msgstr "OPCJE WCZYTYWANIA" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:98 msgid "Options to control the processing of the input %s file" -msgstr "" +msgstr "Opcje umożliwiające kontrolę nad procesem wczytywania pliku %s" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:104 msgid "OUTPUT OPTIONS" -msgstr "" +msgstr "OPCJE WYSYŁANIA" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:105 msgid "Options to control the processing of the output %s" -msgstr "" +msgstr "Opcje umożliwiające kontrolę nad procesem wysyłania pliku %s" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:119 msgid "Options to control the look and feel of the output" msgstr "" +"Opcje umożliwiające kontrole nad wyglądem i zachowaniem wysyłanego pliku" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:135 msgid "Control auto-detection of document structure." @@ -751,7 +754,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:155 msgid "Options to set metadata in the output" -msgstr "" +msgstr "Opcje odpowiedzialne za ustawienia metadanych w plikach wyjściowych" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:158 msgid "Options to help with debugging the conversion" @@ -763,7 +766,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:251 msgid "Output saved to" -msgstr "" +msgstr "Plik wyjściowy zapisany do" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:91 msgid "Level of verbosity. Specify multiple times for greater verbosity." @@ -924,21 +927,29 @@ msgstr "" msgid "" "Set the top margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" +"Ustaw górny margines w punktach. Domyślna wartość %default. Informacja: 72 " +"punkty to 1 cal." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:286 msgid "" "Set the bottom margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" +"Ustaw dolny margines w punktach. Domyślna wartość %default. Informacja: 72 " +"punkty to 1 cal." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:291 msgid "" "Set the left margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" +"Ustaw lewy margines w punktach. Domyślna wartość %default. Informacja: 72 " +"punkty to 1 cal." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:296 msgid "" "Set the right margin in pts. Default is %default. Note: 72 pts equals 1 inch" msgstr "" +"Ustaw prawy margines w punktach. Domyślna wartość %default. Informacja: 72 " +"punkty to 1 cal." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:301 msgid "" @@ -965,6 +976,8 @@ msgid "" "Insert a blank line between paragraphs. Will not work if the source file " "does not use paragraphs (

or

tags)." msgstr "" +"Wstaw pusta linię pomiędzy paragrafami. Ustawienie nie będzie działać, jeśli " +"plik źródłowy nie używa pragrafów (znaczników

lub

)." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:328 msgid "" @@ -1019,11 +1032,13 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:401 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:37 msgid "Set the title." -msgstr "" +msgstr "Wpisz tytuł." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:405 msgid "Set the authors. Multiple authors should be separated by ampersands." msgstr "" +"Wpisz autorów. Jeśli jest więcej niż jeden, należy oddzielić ich znakami et " +"(\"&\")." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:410 msgid "The version of the title to be used for sorting. " @@ -1041,17 +1056,17 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:422 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:53 msgid "Set the ebook description." -msgstr "" +msgstr "Wpisz opis książki." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:426 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:55 msgid "Set the ebook publisher." -msgstr "" +msgstr "Wpisz wydawcę książki." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:430 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:59 msgid "Set the series this ebook belongs to." -msgstr "" +msgstr "Wpisz serię, do której należy książka." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:434 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:61 @@ -1061,12 +1076,12 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:438 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:63 msgid "Set the rating. Should be a number between 1 and 5." -msgstr "" +msgstr "Wpisz ocenę. Musi to być cyfra pomiędzy 1 a 5." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:442 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:65 msgid "Set the ISBN of the book." -msgstr "" +msgstr "Wpisz numer ISBN książki." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:446 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:67 @@ -1081,7 +1096,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:454 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:71 msgid "Set the language." -msgstr "" +msgstr "Wpisz język." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:546 msgid "Could not find an ebook inside the archive" @@ -1089,15 +1104,15 @@ msgstr "Nie znaleziono e-book'a w archiwum" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:712 msgid "Converting input to HTML..." -msgstr "" +msgstr "Przekształcam plik wejściowy do HTML..." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:735 msgid "Running transforms on ebook..." -msgstr "" +msgstr "Wykonywanie przekształceń na książce..." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:821 msgid "Creating" -msgstr "" +msgstr "Tworzenie" #: /home/kovid/work/calibre/src/calibre/ebooks/epub/output.py:57 msgid "" @@ -1225,7 +1240,7 @@ msgstr "Nie można przetworzyć obrazu %s. Błąd: %s" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1003 msgid "Unable to process interlaced PNG %s" -msgstr "" +msgstr "Nie można było przetworzyć pliku PNG z przepolotem %s" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/html/convert_from.py:1018 msgid "" @@ -1276,7 +1291,7 @@ msgstr "Wyjściowy plik LRS" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrfparser.py:139 msgid "Do not save embedded image and font files to disk" -msgstr "" +msgstr "Nie zapisuj zagnieżdżonych w pliku grafik i czcionek na dysku" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/lrfparser.py:158 msgid "Parsing LRF..." @@ -1339,7 +1354,7 @@ msgstr "Ustaw tytuł książki" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:591 msgid "Set sort key for the title" -msgstr "" +msgstr "Ustaw klucz sortowania dla tytułu" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:593 msgid "Set the author" @@ -1347,7 +1362,7 @@ msgstr "Ustaw autora" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:595 msgid "Set sort key for the author" -msgstr "" +msgstr "Ustaw klucz sortowania dla autorów" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:597 msgid "The category this book belongs to. E.g.: History" @@ -1374,11 +1389,11 @@ msgstr "Ustaw wydawcę" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:609 msgid "Set the book classification" -msgstr "" +msgstr "Wpisz klasyfikację książki" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:610 msgid "Set the book creator" -msgstr "" +msgstr "Wpisz twórcę książki" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/meta.py:611 msgid "Set the book producer" @@ -1457,7 +1472,7 @@ msgstr "Rodzina czcionek monospace do umieszczenia" #: /home/kovid/work/calibre/src/calibre/ebooks/lrf/output.py:152 msgid "Comic" -msgstr "" +msgstr "Komiks" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:358 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45 @@ -1533,11 +1548,11 @@ msgstr "Opublikowana" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/__init__.py:379 msgid "Rights" -msgstr "" +msgstr "Uprawnienia" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:19 msgid "options" -msgstr "" +msgstr "opcje" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:20 msgid "" @@ -1573,7 +1588,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:57 msgid "Set the book category." -msgstr "" +msgstr "Wpisz kategorię książki." #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:74 msgid "Get the cover from the ebook and save it at as the specified file." @@ -1598,19 +1613,19 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:144 msgid "No file specified" -msgstr "" +msgstr "Nie wybrano pliku" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:159 msgid "Original metadata" -msgstr "" +msgstr "Oryginalne metadane" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:176 msgid "Changed metadata" -msgstr "" +msgstr "Zmienione metadane" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:188 msgid "OPF created in" -msgstr "" +msgstr "Plik OPF stworzony w" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:194 msgid "Cover saved to" @@ -1618,7 +1633,7 @@ msgstr "Okładka zapisana do" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/cli.py:196 msgid "No cover found" -msgstr "" +msgstr "Nie znaleziono okładki" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/isbndb.py:94 msgid "" @@ -1681,11 +1696,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1055 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1314 msgid "Cover" -msgstr "" +msgstr "Okładka" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:22 msgid "Modify images to meet Palm device size limitations." -msgstr "" +msgstr "Przekształć grafiki tak, aby odpowiadały limitom urządzenia Palm." #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:26 msgid "When present, use author sort field as author." @@ -1710,11 +1725,11 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:102 msgid "All articles" -msgstr "" +msgstr "Wszystkie artykuły" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1315 msgid "Title Page" -msgstr "" +msgstr "Strona tytułowa" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1316 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/htmltoc.py:15 @@ -1725,19 +1740,19 @@ msgstr "Spis treści" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1317 msgid "Index" -msgstr "" +msgstr "Spis" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1318 msgid "Glossary" -msgstr "" +msgstr "Słowniczek" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1319 msgid "Acknowledgements" -msgstr "" +msgstr "Podziękowania" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1320 msgid "Bibliography" -msgstr "" +msgstr "Bibliografia" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1321 msgid "Colophon" @@ -1745,39 +1760,39 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1322 msgid "Copyright" -msgstr "" +msgstr "Prawa autorskie" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1323 msgid "Dedication" -msgstr "" +msgstr "Dedykacja" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1324 msgid "Epigraph" -msgstr "" +msgstr "Epigraf" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1325 msgid "Foreword" -msgstr "" +msgstr "Przedsłowie" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1326 msgid "List of Illustrations" -msgstr "" +msgstr "Lista ilustracji" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1327 msgid "List of Tables" -msgstr "" +msgstr "Lista tabel" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1328 msgid "Notes" -msgstr "" +msgstr "Notatki" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1329 msgid "Preface" -msgstr "" +msgstr "Wstęp" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1330 msgid "Main Text" -msgstr "" +msgstr "Tekst główny" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/factory.py:53 msgid "Options to control e-book conversion." @@ -1826,7 +1841,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/structure.py:68 msgid "Unnamed" -msgstr "" +msgstr "Nienazwany" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/writer.py:32 msgid "OPF/NCX/etc. generation options." @@ -2058,7 +2073,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/split.py:61 msgid "Split Options:" -msgstr "" +msgstr "Opcje dzielenia:" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/output.py:31 msgid "" @@ -2528,7 +2543,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:43 msgid "Split files &larger than:" -msgstr "" +msgstr "&Dziel pliki większe niż:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/epub_output_ui.py:44 msgid " KB" @@ -2627,7 +2642,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:116 msgid "Enable &autorotation of wide images" -msgstr "" +msgstr "Pozwól &automatycznie obracać szerokie grafiki" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:117 msgid "&Wordspace:" @@ -2639,7 +2654,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:121 msgid "Render &tables as images" -msgstr "" +msgstr "Renderuj &tabele jako grafiki" #: /home/kovid/work/calibre/src/calibre/gui2/convert/lrf_output_ui.py:122 msgid "Text size multiplier for text in rendered tables:" @@ -2810,7 +2825,7 @@ msgstr "&Tytuł dla spisu treści:" #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:46 msgid "Rescale images for &Palm devices" -msgstr "" +msgstr "Przeskaluj grafiki dla urządzeń &Palm" #: /home/kovid/work/calibre/src/calibre/gui2/convert/mobi_output_ui.py:47 msgid "Use author &sort for author" @@ -2892,7 +2907,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_input_ui.py:40 msgid "No &Images" -msgstr "" +msgstr "Brak &grafik" #: /home/kovid/work/calibre/src/calibre/gui2/convert/pdf_output.py:17 msgid "PDF Output" diff --git a/src/calibre/translations/pt_BR.po b/src/calibre/translations/pt_BR.po index 3795c9e0e6..1c20b505eb 100644 --- a/src/calibre/translations/pt_BR.po +++ b/src/calibre/translations/pt_BR.po @@ -8,13 +8,13 @@ msgstr "" "Project-Id-Version: calibre\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2009-10-10 02:36+0000\n" -"PO-Revision-Date: 2009-10-14 01:40+0000\n" +"PO-Revision-Date: 2009-10-16 01:29+0000\n" "Last-Translator: Fabio Malcher Miranda \n" "Language-Team: Brazilian Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-10-15 06:51+0000\n" +"X-Launchpad-Export-Date: 2009-10-16 06:56+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:41 @@ -790,11 +790,11 @@ msgstr "OPÇÕES DE SAÍDA" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:105 msgid "Options to control the processing of the output %s" -msgstr "" +msgstr "Opções para controlar o processamento do arquivo de saída %s" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:119 msgid "Options to control the look and feel of the output" -msgstr "" +msgstr "Opções para controlar a aparência do arquivo de saída" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:135 msgid "Control auto-detection of document structure." @@ -806,26 +806,29 @@ msgid "" "source file has a Table of Contents, it will be used in preference to the " "automatically generated one." msgstr "" +"Controlar a geração automática de índice. Por padrão, se o arquivo fonte tem " +"um índice, ele será usado no lugar do que seria gerado automaticamente." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:155 msgid "Options to set metadata in the output" -msgstr "" +msgstr "Opções para escolher os metadados no arquivo de saída" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:158 msgid "Options to help with debugging the conversion" -msgstr "" +msgstr "Opções para ajudar a depurar a conversão" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:183 msgid "List builtin recipes" -msgstr "" +msgstr "Listar receitas construídas" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/cli.py:251 msgid "Output saved to" -msgstr "" +msgstr "Arquivo de saída salvo em" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:91 msgid "Level of verbosity. Specify multiple times for greater verbosity." msgstr "" +"Nível de detalhes do log. Especifique várias vezes para mais detalhes." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:98 msgid "" @@ -833,6 +836,9 @@ msgid "" "specified directory. Useful if you are unsure at which stage of the " "conversion process a bug is occurring." msgstr "" +"Salvar o resultado de diferentes etapas do processo de conversão para a " +"pasta especificada. Útil se você não tem certeza em que etapa do processo de " +"conversão está ocorrendo um erro." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:107 msgid "" @@ -841,6 +847,10 @@ msgid "" "For example resolution dependent lengths (i.e. lengths in pixels). Choices " "are:" msgstr "" +"Especificar o perfil de origem. O perfil de origem dá informações ao sistema " +"de conversão sobre como interpretar várias informações no documento de " +"origem. Por exemplo, comprimento dependente da resolução (ou seja, " +"comprimento em pixels). As escolhas são:" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:118 msgid "" @@ -849,6 +859,10 @@ msgid "" "cases, an output profile is required to produce documents that will work on " "a device. For example EPUB on the SONY reader. Choices are:" msgstr "" +"Especificar o perfil de saída. O perfil de saída diz ao sistema de conversão " +"como otimizar o documento criado para o aparelho especificado. Em alguns " +"casos, um perfil de saída é necessário para criar documentos que irão " +"funcionar em um aparelho. Por exemplo, EPUB no leitor SONY. As escolhas são:" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:129 msgid "" @@ -869,7 +883,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:151 msgid "Disable all rescaling of font sizes." -msgstr "" +msgstr "Desativar redimensionamento do tamanho das letras." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:158 msgid "" @@ -884,6 +898,10 @@ msgid "" "page and other artifacts. This option will extract the content from the " "tables and present it in a linear fashion." msgstr "" +"Alguns documentos mal modelados usam tabelas para controlar a disposição do " +"texto na página. Quando convertidos estes documentos geralmente ficam com " +"texto fora da página e outros problemas. Esta opção irá extrair o conteúdo " +"das tabelas e mostra ele forma linear." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:176 msgid "" @@ -912,10 +930,13 @@ msgid "" "preference to the auto-generated one. With this option, the auto-generated " "one is always used." msgstr "" +"Normalmente, se o arquivo fonte já tem um índice, ele é usado em preferencia " +"ao que é gerado automaticamente. Com esta opção, o que é gerado " +"automaticamente sempre será usado." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:209 msgid "Don't add auto-detected chapters to the Table of Contents." -msgstr "" +msgstr "Não adicionar ao índice os capítulos detectados automaticamente." #: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:216 msgid "" From ba7e499862f20e6e77738b1e83d5ec16346b52fb Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 16 Oct 2009 17:57:56 -0600 Subject: [PATCH 32/41] Refactor the news download scheduler. Now has support for customizing the tags assigned to downloaded news. Since the entire subsystem was rewritten, you may experience bugs. --- .bzrignore | 2 +- .../recipes/24sata.recipe | 0 .../recipes/24sata_rs.recipe | 0 .../recipes/7dias.recipe | 0 .../recipes/accountancyage.recipe | 0 .../recipes/adventuregamers.recipe | 0 .../recipes/al_jazeera.recipe | 0 .../recipes/ambito.recipe | 0 .../recipes/amspec.recipe | 0 .../recipes/ap.recipe | 0 .../recipes/ars_technica.recipe | 0 .../recipes/atlantic.recipe | 0 .../recipes/axxon_news.recipe | 0 .../recipes/azstarnet.recipe | 0 .../recipes/b92.recipe | 0 .../recipes/barrons.recipe | 0 .../recipes/bbc.recipe | 0 .../recipes/bbcvietnamese.recipe | 0 .../recipes/beta.recipe | 0 .../recipes/beta_en.recipe | 0 .../recipes/blic.recipe | 0 .../recipes/borba.recipe | 0 .../recipes/buenosaireseconomico.recipe | 0 .../recipes/business_standard.recipe | 0 .../recipes/business_week.recipe | 0 .../recipes/businessworldin.recipe | 0 .../recipes/carta.recipe | 0 .../recipes/chicago_breaking_news.recipe | 0 .../recipes/chicago_tribune.recipe | 0 .../recipes/chr_mon.recipe | 0 .../recipes/cincinnati_enquirer.recipe | 0 .../recipes/clarin.recipe | 0 .../recipes/climate_progress.recipe | 0 .../recipes/cnn.recipe | 0 .../recipes/coding_horror.recipe | 0 .../recipes/common_dreams.recipe | 0 .../recipes/corriere_della_sera_en.recipe | 0 .../recipes/corriere_della_sera_it.recipe | 0 .../recipes/courrierinternational.recipe | 0 .../recipes/craigslist.recipe | 0 .../recipes/criticadigital.recipe | 0 .../recipes/cubadebate.recipe | 0 .../recipes/cyberpresse.recipe | 0 .../recipes/daily_mail.recipe | 0 .../recipes/daily_telegraph.recipe | 0 .../recipes/danas.recipe | 0 .../recipes/darknet.recipe | 0 .../recipes/de_standaard.recipe | 0 .../recipes/degentenaar.recipe | 0 .../recipes/demorgen_be.recipe | 0 .../recipes/der_standard.recipe | 0 .../recipes/diagonales.recipe | 0 .../recipes/diepresse.recipe | 0 .../recipes/discover_magazine.recipe | 0 .../recipes/dna.recipe | 0 .../recipes/dnevni_avaz.recipe | 0 .../recipes/dnevnik_cro.recipe | 0 .../recipes/e_novine.recipe | 0 .../recipes/ecogeek.recipe | 0 .../recipes/economist.recipe | 0 .../recipes/el_mercurio_chile.recipe | 0 .../recipes/el_pais.recipe | 0 .../recipes/el_universal.recipe | 0 .../recipes/elargentino.recipe | 0 .../recipes/elcronista.recipe | 0 .../recipes/elektrolese.recipe | 0 .../recipes/elmundo.recipe | 0 .../recipes/elperiodico_catalan.recipe | 0 .../recipes/elperiodico_spanish.recipe | 0 .../recipes/eltiempo_hn.recipe | 0 .../recipes/endgadget.recipe | 0 .../recipes/espn.recipe | 0 .../recipes/esquire.recipe | 0 .../recipes/estadao.recipe | 0 .../recipes/exiled.recipe | 0 .../recipes/expansion_spanish.recipe | 0 .../recipes/fastcompany.recipe | 0 .../recipes/faznet.recipe | 0 .../recipes/financial_times.recipe | 0 .../recipes/forbes.recipe | 0 .../recipes/freakonomics.recipe | 0 .../recipes/ftd.recipe | 0 .../recipes/fudzilla.recipe | 0 .../recipes/glas_srpske.recipe | 0 .../recipes/glasgow_herald.recipe | 0 .../recipes/glasjavnosti.recipe | 0 .../recipes/globe_and_mail.recipe | 0 .../recipes/granma.recipe | 0 .../recipes/greader.recipe | 0 .../recipes/guardian.recipe | 0 .../recipes/gva_be.recipe | 0 .../recipes/h1.recipe | 0 .../recipes/h2.recipe | 0 .../recipes/h3.recipe | 0 .../recipes/harpers.recipe | 0 .../recipes/harpers_full.recipe | 0 .../recipes/heise.recipe | 0 .../recipes/hindu.recipe | 0 .../recipes/hln.recipe | 0 .../recipes/hln_be.recipe | 0 .../recipes/hna.recipe | 0 .../recipes/honoluluadvertiser.recipe | 0 .../recipes/honvedelem.recipe | 0 .../recipes/hrt.recipe | 0 .../recipes/huntechnet.recipe | 0 .../recipes/iht.recipe | 0 .../recipes/index_hu.recipe | 0 .../recipes/indy_star.recipe | 0 .../recipes/infobae.recipe | 0 .../recipes/infoworld.recipe | 0 .../recipes/inquirer_net.recipe | 0 .../recipes/instapaper.recipe | 0 .../recipes/intelligencer.recipe | 0 .../recipes/irish_times.recipe | 0 .../recipes/japan_times.recipe | 0 .../recipes/javalobby.recipe | 0 .../recipes/jb_online.recipe | 0 .../recipes/joelonsoftware.recipe | 0 .../recipes/jpost.recipe | 0 .../recipes/jutarnji.recipe | 0 .../recipes/juventudrebelde.recipe | 0 .../recipes/juventudrebelde_english.recipe | 0 .../recipes/kellog_faculty.recipe | 0 .../recipes/kellog_insight.recipe | 0 .../recipes/krstarica.recipe | 0 .../recipes/krstarica_en.recipe | 0 .../recipes/la_cuarta.recipe | 0 .../recipes/la_republica.recipe | 0 .../recipes/la_segunda.recipe | 0 .../recipes/la_tercera.recipe | 0 .../recipes/lamujerdemivida.recipe | 0 .../recipes/lanacion.recipe | 0 .../recipes/lanacion_chile.recipe | 0 .../recipes/laprensa.recipe | 0 .../recipes/laprensa_hn.recipe | 0 .../recipes/laprensa_ni.recipe | 0 .../recipes/latimes.recipe | 0 .../recipes/latribuna.recipe | 0 .../recipes/lavanguardia.recipe | 0 .../recipes/le_monde.recipe | 0 .../recipes/le_temps.recipe | 0 .../recipes/lemonde_dip.recipe | 0 .../recipes/liberation.recipe | 0 .../recipes/linux_magazine.recipe | 0 .../recipes/linuxdevices.recipe | 0 .../recipes/livemint.recipe | 0 .../recipes/lrb.recipe | 0 .../recipes/marca.recipe | 0 .../recipes/mediapart.recipe | 0 .../recipes/miami_herald.recipe | 0 .../recipes/miradasalsur.recipe | 0 .../recipes/mondedurable.recipe | 0 .../recipes/moneynews.recipe | 0 .../recipes/monitor.recipe | 0 .../recipes/moscow_times.recipe | 0 .../recipes/msdnmag_en.recipe | 0 .../recipes/nacional_cro.recipe | 0 .../recipes/nasa.recipe | 0 .../recipes/new_scientist.recipe | 0 .../recipes/new_york_review_of_books.recipe | 0 .../new_york_review_of_books_no_sub.recipe | 0 .../recipes/new_yorker.recipe | 0 .../recipes/news_times.recipe | 0 .../recipes/newsweek.recipe | 0 .../recipes/newsweek_argentina.recipe | 0 .../recipes/nin.recipe | 0 .../recipes/noaa.recipe | 0 .../recipes/novosti.recipe | 0 .../recipes/nspm.recipe | 0 .../recipes/nspm_int.recipe | 0 .../recipes/nytimes.recipe | 2 +- .../recipes/nytimes_sub.recipe | 0 .../recipes/nzz_ger.recipe | 0 .../recipes/o_globo.recipe | 0 .../recipes/ourdailybread.recipe | 0 .../recipes/outlook_india.recipe | 0 .../recipes/pagina12.recipe | 0 .../recipes/pcworld_hu.recipe | 0 .../recipes/pescanik.recipe | 0 .../recipes/phd_comics.recipe | 0 .../recipes/philly.recipe | 0 .../recipes/physics_today.recipe | 0 .../recipes/physics_world.recipe | 0 .../recipes/pobjeda.recipe | 0 .../recipes/politico.recipe | 0 .../recipes/politika.recipe | 0 .../recipes/portfolio.recipe | 0 .../recipes/pressonline.recipe | 0 .../recipes/publico.recipe | 0 .../recipes/republika.recipe | 0 .../recipes/reuters.recipe | 0 .../recipes/rga.recipe | 0 .../recipes/rts.recipe | 0 .../recipes/salon.recipe | 0 .../recipes/san_fran_chronicle.recipe | 0 .../recipes/sanjosemercurynews.recipe | 0 .../recipes/science_aas.recipe | 0 .../recipes/science_news.recipe | 0 .../recipes/sciencedaily.recipe | 0 .../recipes/scientific_american.recipe | 0 .../recipes/scott_hanselman.recipe | 0 .../recipes/seattle_times.recipe | 0 .../recipes/security_watch.recipe | 0 .../recipes/serverside.recipe | 0 .../recipes/shacknews.recipe | 0 .../recipes/slashdot.recipe | 0 .../recipes/slate.recipe | 0 .../recipes/smashing.recipe | 0 .../recipes/smh.recipe | 0 .../recipes/soldiers.recipe | 0 .../recipes/spiegel_int.recipe | 0 .../recipes/spiegelde.recipe | 0 .../recipes/st_petersburg_times.recipe | 0 .../recipes/stackoverflow.recipe | 0 .../recipes/starbulletin.recipe | 0 .../recipes/straitstimes.recipe | 0 .../recipes/sueddeutsche.recipe | 0 .../recipes/tanjug.recipe | 0 .../recipes/telegraph_uk.recipe | 0 .../recipes/telepolis.recipe | 0 .../recipes/telepolis_artikel.recipe | 0 .../recipes/teleread.recipe | 0 .../recipes/the_age.recipe | 0 .../recipes/the_budget_fashionista.recipe | 0 .../recipes/the_nation.recipe | 0 .../recipes/the_new_republic.recipe | 0 .../recipes/the_oz.recipe | 0 .../recipes/the_register.recipe | 0 .../recipes/the_scotsman.recipe | 0 .../recipes/thedgesingapore.recipe | 0 .../recipes/theeconomictimes_india.recipe | 0 .../recipes/themarketticker.recipe | 0 .../recipes/theoldfoodie.recipe | 0 .../recipes/theonion.recipe | 0 .../recipes/thestar.recipe | 0 .../recipes/tijd.recipe | 0 .../recipes/time_magazine.recipe | 0 .../recipes/times_online.recipe | 0 .../recipes/tnxm.recipe | 0 .../recipes/tomshardware.recipe | 0 .../recipes/tomshardware_de.recipe | 0 .../recipes/toronto_sun.recipe | 0 .../recipes/tweakers.recipe | 0 .../recipes/twitchfilms.recipe | 0 .../recipes/uncrate.recipe | 0 .../recipes/upi.recipe | 0 .../recipes/usatoday.recipe | 0 .../recipes/usnews.recipe | 0 .../recipes/utne.recipe | 0 .../recipes/vecernji_list.recipe | 0 .../recipes/veintitres.recipe | 0 .../recipes/vijesti.recipe | 0 .../recipes/vnexpress.recipe | 0 .../recipes/volksrant.recipe | 0 .../recipes/vreme.recipe | 0 .../recipes/wash_post.recipe | 0 .../recipes/wikinews_en.recipe | 0 .../recipes/winsupersite.recipe | 0 .../recipes/wired.recipe | 0 .../recipes/woz_die.recipe | 0 .../recipes/wsj.recipe | 0 .../recipes/xkcd.recipe | 0 .../recipes/zaobao.recipe | 0 .../recipes/zdnet.recipe | 0 .../recipes/zeitde.recipe | 0 setup/check.py | 44 +- setup/resources.py | 31 +- src/calibre/gui2/__init__.py | 3 +- src/calibre/gui2/dialogs/scheduler.py | 708 ++++++------------ src/calibre/gui2/dialogs/scheduler.ui | 480 ++++++------ src/calibre/gui2/dialogs/user_profiles.py | 180 +++-- src/calibre/gui2/dialogs/user_profiles.ui | 23 +- src/calibre/gui2/library.py | 4 +- src/calibre/gui2/main.py | 25 +- src/calibre/gui2/tools.py | 17 +- src/calibre/library/database.py | 26 +- src/calibre/library/database2.py | 13 +- src/calibre/web/feeds/input.py | 7 +- src/calibre/web/feeds/recipes/__init__.py | 121 +-- src/calibre/web/feeds/recipes/collection.py | 331 ++++++++ src/calibre/web/feeds/recipes/model.py | 340 +++++++++ 281 files changed, 1393 insertions(+), 964 deletions(-) rename src/calibre/web/feeds/recipes/recipe_24sata.py => resources/recipes/24sata.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_24sata_rs.py => resources/recipes/24sata_rs.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_7dias.py => resources/recipes/7dias.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_accountancyage.py => resources/recipes/accountancyage.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_adventuregamers.py => resources/recipes/adventuregamers.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_al_jazeera.py => resources/recipes/al_jazeera.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_ambito.py => resources/recipes/ambito.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_amspec.py => resources/recipes/amspec.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_ap.py => resources/recipes/ap.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_ars_technica.py => resources/recipes/ars_technica.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_atlantic.py => resources/recipes/atlantic.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_axxon_news.py => resources/recipes/axxon_news.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_azstarnet.py => resources/recipes/azstarnet.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_b92.py => resources/recipes/b92.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_barrons.py => resources/recipes/barrons.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_bbc.py => resources/recipes/bbc.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_bbcvietnamese.py => resources/recipes/bbcvietnamese.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_beta.py => resources/recipes/beta.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_beta_en.py => resources/recipes/beta_en.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_blic.py => resources/recipes/blic.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_borba.py => resources/recipes/borba.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_buenosaireseconomico.py => resources/recipes/buenosaireseconomico.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_business_standard.py => resources/recipes/business_standard.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_business_week.py => resources/recipes/business_week.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_businessworldin.py => resources/recipes/businessworldin.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_carta.py => resources/recipes/carta.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_chicago_breaking_news.py => resources/recipes/chicago_breaking_news.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_chicago_tribune.py => resources/recipes/chicago_tribune.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_chr_mon.py => resources/recipes/chr_mon.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_cincinnati_enquirer.py => resources/recipes/cincinnati_enquirer.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_clarin.py => resources/recipes/clarin.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_climate_progress.py => resources/recipes/climate_progress.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_cnn.py => resources/recipes/cnn.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_coding_horror.py => resources/recipes/coding_horror.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_common_dreams.py => resources/recipes/common_dreams.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_corriere_della_sera_en.py => resources/recipes/corriere_della_sera_en.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_corriere_della_sera_it.py => resources/recipes/corriere_della_sera_it.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_courrierinternational.py => resources/recipes/courrierinternational.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_craigslist.py => resources/recipes/craigslist.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_criticadigital.py => resources/recipes/criticadigital.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_cubadebate.py => resources/recipes/cubadebate.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_cyberpresse.py => resources/recipes/cyberpresse.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_daily_mail.py => resources/recipes/daily_mail.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_daily_telegraph.py => resources/recipes/daily_telegraph.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_danas.py => resources/recipes/danas.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_darknet.py => resources/recipes/darknet.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_de_standaard.py => resources/recipes/de_standaard.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_degentenaar.py => resources/recipes/degentenaar.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_demorgen_be.py => resources/recipes/demorgen_be.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_der_standard.py => resources/recipes/der_standard.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_diagonales.py => resources/recipes/diagonales.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_diepresse.py => resources/recipes/diepresse.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_discover_magazine.py => resources/recipes/discover_magazine.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_dna.py => resources/recipes/dna.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_dnevni_avaz.py => resources/recipes/dnevni_avaz.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_dnevnik_cro.py => resources/recipes/dnevnik_cro.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_e_novine.py => resources/recipes/e_novine.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_ecogeek.py => resources/recipes/ecogeek.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_economist.py => resources/recipes/economist.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_el_mercurio_chile.py => resources/recipes/el_mercurio_chile.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_el_pais.py => resources/recipes/el_pais.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_el_universal.py => resources/recipes/el_universal.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_elargentino.py => resources/recipes/elargentino.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_elcronista.py => resources/recipes/elcronista.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_elektrolese.py => resources/recipes/elektrolese.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_elmundo.py => resources/recipes/elmundo.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_elperiodico_catalan.py => resources/recipes/elperiodico_catalan.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_elperiodico_spanish.py => resources/recipes/elperiodico_spanish.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_eltiempo_hn.py => resources/recipes/eltiempo_hn.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_endgadget.py => resources/recipes/endgadget.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_espn.py => resources/recipes/espn.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_esquire.py => resources/recipes/esquire.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_estadao.py => resources/recipes/estadao.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_exiled.py => resources/recipes/exiled.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_expansion_spanish.py => resources/recipes/expansion_spanish.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_fastcompany.py => resources/recipes/fastcompany.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_faznet.py => resources/recipes/faznet.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_financial_times.py => resources/recipes/financial_times.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_forbes.py => resources/recipes/forbes.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_freakonomics.py => resources/recipes/freakonomics.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_ftd.py => resources/recipes/ftd.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_fudzilla.py => resources/recipes/fudzilla.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_glas_srpske.py => resources/recipes/glas_srpske.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_glasgow_herald.py => resources/recipes/glasgow_herald.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_glasjavnosti.py => resources/recipes/glasjavnosti.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_globe_and_mail.py => resources/recipes/globe_and_mail.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_granma.py => resources/recipes/granma.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_greader.py => resources/recipes/greader.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_guardian.py => resources/recipes/guardian.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_gva_be.py => resources/recipes/gva_be.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_h1.py => resources/recipes/h1.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_h2.py => resources/recipes/h2.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_h3.py => resources/recipes/h3.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_harpers.py => resources/recipes/harpers.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_harpers_full.py => resources/recipes/harpers_full.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_heise.py => resources/recipes/heise.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_hindu.py => resources/recipes/hindu.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_hln.py => resources/recipes/hln.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_hln_be.py => resources/recipes/hln_be.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_hna.py => resources/recipes/hna.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_honoluluadvertiser.py => resources/recipes/honoluluadvertiser.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_honvedelem.py => resources/recipes/honvedelem.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_hrt.py => resources/recipes/hrt.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_huntechnet.py => resources/recipes/huntechnet.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_iht.py => resources/recipes/iht.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_index_hu.py => resources/recipes/index_hu.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_indy_star.py => resources/recipes/indy_star.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_infobae.py => resources/recipes/infobae.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_infoworld.py => resources/recipes/infoworld.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_inquirer_net.py => resources/recipes/inquirer_net.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_instapaper.py => resources/recipes/instapaper.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_intelligencer.py => resources/recipes/intelligencer.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_irish_times.py => resources/recipes/irish_times.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_japan_times.py => resources/recipes/japan_times.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_javalobby.py => resources/recipes/javalobby.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_jb_online.py => resources/recipes/jb_online.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_joelonsoftware.py => resources/recipes/joelonsoftware.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_jpost.py => resources/recipes/jpost.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_jutarnji.py => resources/recipes/jutarnji.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_juventudrebelde.py => resources/recipes/juventudrebelde.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_juventudrebelde_english.py => resources/recipes/juventudrebelde_english.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_kellog_faculty.py => resources/recipes/kellog_faculty.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_kellog_insight.py => resources/recipes/kellog_insight.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_krstarica.py => resources/recipes/krstarica.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_krstarica_en.py => resources/recipes/krstarica_en.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_la_cuarta.py => resources/recipes/la_cuarta.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_la_republica.py => resources/recipes/la_republica.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_la_segunda.py => resources/recipes/la_segunda.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_la_tercera.py => resources/recipes/la_tercera.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_lamujerdemivida.py => resources/recipes/lamujerdemivida.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_lanacion.py => resources/recipes/lanacion.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_lanacion_chile.py => resources/recipes/lanacion_chile.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_laprensa.py => resources/recipes/laprensa.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_laprensa_hn.py => resources/recipes/laprensa_hn.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_laprensa_ni.py => resources/recipes/laprensa_ni.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_latimes.py => resources/recipes/latimes.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_latribuna.py => resources/recipes/latribuna.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_lavanguardia.py => resources/recipes/lavanguardia.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_le_monde.py => resources/recipes/le_monde.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_le_temps.py => resources/recipes/le_temps.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_lemonde_dip.py => resources/recipes/lemonde_dip.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_liberation.py => resources/recipes/liberation.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_linux_magazine.py => resources/recipes/linux_magazine.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_linuxdevices.py => resources/recipes/linuxdevices.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_livemint.py => resources/recipes/livemint.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_lrb.py => resources/recipes/lrb.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_marca.py => resources/recipes/marca.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_mediapart.py => resources/recipes/mediapart.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_miami_herald.py => resources/recipes/miami_herald.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_miradasalsur.py => resources/recipes/miradasalsur.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_mondedurable.py => resources/recipes/mondedurable.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_moneynews.py => resources/recipes/moneynews.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_monitor.py => resources/recipes/monitor.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_moscow_times.py => resources/recipes/moscow_times.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_msdnmag_en.py => resources/recipes/msdnmag_en.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_nacional_cro.py => resources/recipes/nacional_cro.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_nasa.py => resources/recipes/nasa.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_new_scientist.py => resources/recipes/new_scientist.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_new_york_review_of_books.py => resources/recipes/new_york_review_of_books.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_new_york_review_of_books_no_sub.py => resources/recipes/new_york_review_of_books_no_sub.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_new_yorker.py => resources/recipes/new_yorker.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_news_times.py => resources/recipes/news_times.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_newsweek.py => resources/recipes/newsweek.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_newsweek_argentina.py => resources/recipes/newsweek_argentina.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_nin.py => resources/recipes/nin.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_noaa.py => resources/recipes/noaa.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_novosti.py => resources/recipes/novosti.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_nspm.py => resources/recipes/nspm.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_nspm_int.py => resources/recipes/nspm_int.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_nytimes.py => resources/recipes/nytimes.recipe (99%) rename src/calibre/web/feeds/recipes/recipe_nytimes_sub.py => resources/recipes/nytimes_sub.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_nzz_ger.py => resources/recipes/nzz_ger.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_o_globo.py => resources/recipes/o_globo.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_ourdailybread.py => resources/recipes/ourdailybread.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_outlook_india.py => resources/recipes/outlook_india.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_pagina12.py => resources/recipes/pagina12.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_pcworld_hu.py => resources/recipes/pcworld_hu.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_pescanik.py => resources/recipes/pescanik.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_phd_comics.py => resources/recipes/phd_comics.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_philly.py => resources/recipes/philly.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_physics_today.py => resources/recipes/physics_today.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_physics_world.py => resources/recipes/physics_world.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_pobjeda.py => resources/recipes/pobjeda.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_politico.py => resources/recipes/politico.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_politika.py => resources/recipes/politika.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_portfolio.py => resources/recipes/portfolio.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_pressonline.py => resources/recipes/pressonline.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_publico.py => resources/recipes/publico.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_republika.py => resources/recipes/republika.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_reuters.py => resources/recipes/reuters.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_rga.py => resources/recipes/rga.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_rts.py => resources/recipes/rts.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_salon.py => resources/recipes/salon.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_san_fran_chronicle.py => resources/recipes/san_fran_chronicle.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_sanjosemercurynews.py => resources/recipes/sanjosemercurynews.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_science_aas.py => resources/recipes/science_aas.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_science_news.py => resources/recipes/science_news.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_sciencedaily.py => resources/recipes/sciencedaily.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_scientific_american.py => resources/recipes/scientific_american.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_scott_hanselman.py => resources/recipes/scott_hanselman.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_seattle_times.py => resources/recipes/seattle_times.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_security_watch.py => resources/recipes/security_watch.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_serverside.py => resources/recipes/serverside.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_shacknews.py => resources/recipes/shacknews.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_slashdot.py => resources/recipes/slashdot.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_slate.py => resources/recipes/slate.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_smashing.py => resources/recipes/smashing.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_smh.py => resources/recipes/smh.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_soldiers.py => resources/recipes/soldiers.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_spiegel_int.py => resources/recipes/spiegel_int.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_spiegelde.py => resources/recipes/spiegelde.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_st_petersburg_times.py => resources/recipes/st_petersburg_times.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_stackoverflow.py => resources/recipes/stackoverflow.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_starbulletin.py => resources/recipes/starbulletin.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_straitstimes.py => resources/recipes/straitstimes.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_sueddeutsche.py => resources/recipes/sueddeutsche.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_tanjug.py => resources/recipes/tanjug.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_telegraph_uk.py => resources/recipes/telegraph_uk.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_telepolis.py => resources/recipes/telepolis.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_telepolis_artikel.py => resources/recipes/telepolis_artikel.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_teleread.py => resources/recipes/teleread.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_the_age.py => resources/recipes/the_age.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_the_budget_fashionista.py => resources/recipes/the_budget_fashionista.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_the_nation.py => resources/recipes/the_nation.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_the_new_republic.py => resources/recipes/the_new_republic.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_the_oz.py => resources/recipes/the_oz.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_the_register.py => resources/recipes/the_register.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_the_scotsman.py => resources/recipes/the_scotsman.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_thedgesingapore.py => resources/recipes/thedgesingapore.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_theeconomictimes_india.py => resources/recipes/theeconomictimes_india.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_themarketticker.py => resources/recipes/themarketticker.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_theoldfoodie.py => resources/recipes/theoldfoodie.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_theonion.py => resources/recipes/theonion.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_thestar.py => resources/recipes/thestar.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_tijd.py => resources/recipes/tijd.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_time_magazine.py => resources/recipes/time_magazine.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_times_online.py => resources/recipes/times_online.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_tnxm.py => resources/recipes/tnxm.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_tomshardware.py => resources/recipes/tomshardware.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_tomshardware_de.py => resources/recipes/tomshardware_de.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_toronto_sun.py => resources/recipes/toronto_sun.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_tweakers.py => resources/recipes/tweakers.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_twitchfilms.py => resources/recipes/twitchfilms.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_uncrate.py => resources/recipes/uncrate.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_upi.py => resources/recipes/upi.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_usatoday.py => resources/recipes/usatoday.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_usnews.py => resources/recipes/usnews.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_utne.py => resources/recipes/utne.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_vecernji_list.py => resources/recipes/vecernji_list.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_veintitres.py => resources/recipes/veintitres.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_vijesti.py => resources/recipes/vijesti.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_vnexpress.py => resources/recipes/vnexpress.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_volksrant.py => resources/recipes/volksrant.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_vreme.py => resources/recipes/vreme.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_wash_post.py => resources/recipes/wash_post.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_wikinews_en.py => resources/recipes/wikinews_en.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_winsupersite.py => resources/recipes/winsupersite.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_wired.py => resources/recipes/wired.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_woz_die.py => resources/recipes/woz_die.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_wsj.py => resources/recipes/wsj.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_xkcd.py => resources/recipes/xkcd.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_zaobao.py => resources/recipes/zaobao.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_zdnet.py => resources/recipes/zdnet.recipe (100%) rename src/calibre/web/feeds/recipes/recipe_zeitde.py => resources/recipes/zeitde.recipe (100%) create mode 100644 src/calibre/web/feeds/recipes/collection.py create mode 100644 src/calibre/web/feeds/recipes/model.py diff --git a/.bzrignore b/.bzrignore index 2a6d1df889..73e5fd80b5 100644 --- a/.bzrignore +++ b/.bzrignore @@ -9,9 +9,9 @@ dist docs resources/localization resources/images.qrc -resources/recipes.pickle resources/scripts.pickle resources/ebook-convert-complete.pickle +resources/builtin_recipes.xml setup/installer/windows/calibre/build.log src/calibre/translations/.errors src/cssutils/.svn/ diff --git a/src/calibre/web/feeds/recipes/recipe_24sata.py b/resources/recipes/24sata.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_24sata.py rename to resources/recipes/24sata.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_24sata_rs.py b/resources/recipes/24sata_rs.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_24sata_rs.py rename to resources/recipes/24sata_rs.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_7dias.py b/resources/recipes/7dias.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_7dias.py rename to resources/recipes/7dias.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_accountancyage.py b/resources/recipes/accountancyage.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_accountancyage.py rename to resources/recipes/accountancyage.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_adventuregamers.py b/resources/recipes/adventuregamers.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_adventuregamers.py rename to resources/recipes/adventuregamers.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_al_jazeera.py b/resources/recipes/al_jazeera.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_al_jazeera.py rename to resources/recipes/al_jazeera.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_ambito.py b/resources/recipes/ambito.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_ambito.py rename to resources/recipes/ambito.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_amspec.py b/resources/recipes/amspec.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_amspec.py rename to resources/recipes/amspec.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_ap.py b/resources/recipes/ap.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_ap.py rename to resources/recipes/ap.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_ars_technica.py b/resources/recipes/ars_technica.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_ars_technica.py rename to resources/recipes/ars_technica.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_atlantic.py b/resources/recipes/atlantic.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_atlantic.py rename to resources/recipes/atlantic.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_axxon_news.py b/resources/recipes/axxon_news.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_axxon_news.py rename to resources/recipes/axxon_news.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_azstarnet.py b/resources/recipes/azstarnet.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_azstarnet.py rename to resources/recipes/azstarnet.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_b92.py b/resources/recipes/b92.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_b92.py rename to resources/recipes/b92.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_barrons.py b/resources/recipes/barrons.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_barrons.py rename to resources/recipes/barrons.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_bbc.py b/resources/recipes/bbc.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_bbc.py rename to resources/recipes/bbc.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_bbcvietnamese.py b/resources/recipes/bbcvietnamese.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_bbcvietnamese.py rename to resources/recipes/bbcvietnamese.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_beta.py b/resources/recipes/beta.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_beta.py rename to resources/recipes/beta.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_beta_en.py b/resources/recipes/beta_en.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_beta_en.py rename to resources/recipes/beta_en.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_blic.py b/resources/recipes/blic.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_blic.py rename to resources/recipes/blic.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_borba.py b/resources/recipes/borba.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_borba.py rename to resources/recipes/borba.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_buenosaireseconomico.py b/resources/recipes/buenosaireseconomico.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_buenosaireseconomico.py rename to resources/recipes/buenosaireseconomico.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_business_standard.py b/resources/recipes/business_standard.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_business_standard.py rename to resources/recipes/business_standard.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_business_week.py b/resources/recipes/business_week.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_business_week.py rename to resources/recipes/business_week.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_businessworldin.py b/resources/recipes/businessworldin.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_businessworldin.py rename to resources/recipes/businessworldin.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_carta.py b/resources/recipes/carta.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_carta.py rename to resources/recipes/carta.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_chicago_breaking_news.py b/resources/recipes/chicago_breaking_news.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_chicago_breaking_news.py rename to resources/recipes/chicago_breaking_news.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_chicago_tribune.py b/resources/recipes/chicago_tribune.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_chicago_tribune.py rename to resources/recipes/chicago_tribune.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_chr_mon.py b/resources/recipes/chr_mon.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_chr_mon.py rename to resources/recipes/chr_mon.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_cincinnati_enquirer.py b/resources/recipes/cincinnati_enquirer.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_cincinnati_enquirer.py rename to resources/recipes/cincinnati_enquirer.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_clarin.py b/resources/recipes/clarin.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_clarin.py rename to resources/recipes/clarin.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_climate_progress.py b/resources/recipes/climate_progress.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_climate_progress.py rename to resources/recipes/climate_progress.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_cnn.py b/resources/recipes/cnn.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_cnn.py rename to resources/recipes/cnn.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_coding_horror.py b/resources/recipes/coding_horror.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_coding_horror.py rename to resources/recipes/coding_horror.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_common_dreams.py b/resources/recipes/common_dreams.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_common_dreams.py rename to resources/recipes/common_dreams.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_corriere_della_sera_en.py b/resources/recipes/corriere_della_sera_en.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_corriere_della_sera_en.py rename to resources/recipes/corriere_della_sera_en.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_corriere_della_sera_it.py b/resources/recipes/corriere_della_sera_it.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_corriere_della_sera_it.py rename to resources/recipes/corriere_della_sera_it.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_courrierinternational.py b/resources/recipes/courrierinternational.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_courrierinternational.py rename to resources/recipes/courrierinternational.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_craigslist.py b/resources/recipes/craigslist.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_craigslist.py rename to resources/recipes/craigslist.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_criticadigital.py b/resources/recipes/criticadigital.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_criticadigital.py rename to resources/recipes/criticadigital.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_cubadebate.py b/resources/recipes/cubadebate.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_cubadebate.py rename to resources/recipes/cubadebate.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_cyberpresse.py b/resources/recipes/cyberpresse.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_cyberpresse.py rename to resources/recipes/cyberpresse.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_daily_mail.py b/resources/recipes/daily_mail.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_daily_mail.py rename to resources/recipes/daily_mail.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_daily_telegraph.py b/resources/recipes/daily_telegraph.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_daily_telegraph.py rename to resources/recipes/daily_telegraph.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_danas.py b/resources/recipes/danas.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_danas.py rename to resources/recipes/danas.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_darknet.py b/resources/recipes/darknet.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_darknet.py rename to resources/recipes/darknet.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_de_standaard.py b/resources/recipes/de_standaard.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_de_standaard.py rename to resources/recipes/de_standaard.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_degentenaar.py b/resources/recipes/degentenaar.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_degentenaar.py rename to resources/recipes/degentenaar.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_demorgen_be.py b/resources/recipes/demorgen_be.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_demorgen_be.py rename to resources/recipes/demorgen_be.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_der_standard.py b/resources/recipes/der_standard.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_der_standard.py rename to resources/recipes/der_standard.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_diagonales.py b/resources/recipes/diagonales.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_diagonales.py rename to resources/recipes/diagonales.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_diepresse.py b/resources/recipes/diepresse.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_diepresse.py rename to resources/recipes/diepresse.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_discover_magazine.py b/resources/recipes/discover_magazine.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_discover_magazine.py rename to resources/recipes/discover_magazine.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_dna.py b/resources/recipes/dna.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_dna.py rename to resources/recipes/dna.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_dnevni_avaz.py b/resources/recipes/dnevni_avaz.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_dnevni_avaz.py rename to resources/recipes/dnevni_avaz.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_dnevnik_cro.py b/resources/recipes/dnevnik_cro.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_dnevnik_cro.py rename to resources/recipes/dnevnik_cro.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_e_novine.py b/resources/recipes/e_novine.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_e_novine.py rename to resources/recipes/e_novine.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_ecogeek.py b/resources/recipes/ecogeek.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_ecogeek.py rename to resources/recipes/ecogeek.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_economist.py b/resources/recipes/economist.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_economist.py rename to resources/recipes/economist.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_el_mercurio_chile.py b/resources/recipes/el_mercurio_chile.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_el_mercurio_chile.py rename to resources/recipes/el_mercurio_chile.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_el_pais.py b/resources/recipes/el_pais.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_el_pais.py rename to resources/recipes/el_pais.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_el_universal.py b/resources/recipes/el_universal.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_el_universal.py rename to resources/recipes/el_universal.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_elargentino.py b/resources/recipes/elargentino.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_elargentino.py rename to resources/recipes/elargentino.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_elcronista.py b/resources/recipes/elcronista.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_elcronista.py rename to resources/recipes/elcronista.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_elektrolese.py b/resources/recipes/elektrolese.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_elektrolese.py rename to resources/recipes/elektrolese.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_elmundo.py b/resources/recipes/elmundo.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_elmundo.py rename to resources/recipes/elmundo.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_elperiodico_catalan.py b/resources/recipes/elperiodico_catalan.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_elperiodico_catalan.py rename to resources/recipes/elperiodico_catalan.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_elperiodico_spanish.py b/resources/recipes/elperiodico_spanish.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_elperiodico_spanish.py rename to resources/recipes/elperiodico_spanish.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_eltiempo_hn.py b/resources/recipes/eltiempo_hn.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_eltiempo_hn.py rename to resources/recipes/eltiempo_hn.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_endgadget.py b/resources/recipes/endgadget.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_endgadget.py rename to resources/recipes/endgadget.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_espn.py b/resources/recipes/espn.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_espn.py rename to resources/recipes/espn.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_esquire.py b/resources/recipes/esquire.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_esquire.py rename to resources/recipes/esquire.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_estadao.py b/resources/recipes/estadao.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_estadao.py rename to resources/recipes/estadao.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_exiled.py b/resources/recipes/exiled.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_exiled.py rename to resources/recipes/exiled.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_expansion_spanish.py b/resources/recipes/expansion_spanish.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_expansion_spanish.py rename to resources/recipes/expansion_spanish.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_fastcompany.py b/resources/recipes/fastcompany.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_fastcompany.py rename to resources/recipes/fastcompany.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_faznet.py b/resources/recipes/faznet.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_faznet.py rename to resources/recipes/faznet.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_financial_times.py b/resources/recipes/financial_times.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_financial_times.py rename to resources/recipes/financial_times.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_forbes.py b/resources/recipes/forbes.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_forbes.py rename to resources/recipes/forbes.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_freakonomics.py b/resources/recipes/freakonomics.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_freakonomics.py rename to resources/recipes/freakonomics.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_ftd.py b/resources/recipes/ftd.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_ftd.py rename to resources/recipes/ftd.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_fudzilla.py b/resources/recipes/fudzilla.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_fudzilla.py rename to resources/recipes/fudzilla.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_glas_srpske.py b/resources/recipes/glas_srpske.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_glas_srpske.py rename to resources/recipes/glas_srpske.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_glasgow_herald.py b/resources/recipes/glasgow_herald.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_glasgow_herald.py rename to resources/recipes/glasgow_herald.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_glasjavnosti.py b/resources/recipes/glasjavnosti.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_glasjavnosti.py rename to resources/recipes/glasjavnosti.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_globe_and_mail.py b/resources/recipes/globe_and_mail.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_globe_and_mail.py rename to resources/recipes/globe_and_mail.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_granma.py b/resources/recipes/granma.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_granma.py rename to resources/recipes/granma.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_greader.py b/resources/recipes/greader.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_greader.py rename to resources/recipes/greader.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_guardian.py b/resources/recipes/guardian.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_guardian.py rename to resources/recipes/guardian.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_gva_be.py b/resources/recipes/gva_be.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_gva_be.py rename to resources/recipes/gva_be.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_h1.py b/resources/recipes/h1.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_h1.py rename to resources/recipes/h1.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_h2.py b/resources/recipes/h2.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_h2.py rename to resources/recipes/h2.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_h3.py b/resources/recipes/h3.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_h3.py rename to resources/recipes/h3.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_harpers.py b/resources/recipes/harpers.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_harpers.py rename to resources/recipes/harpers.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_harpers_full.py b/resources/recipes/harpers_full.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_harpers_full.py rename to resources/recipes/harpers_full.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_heise.py b/resources/recipes/heise.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_heise.py rename to resources/recipes/heise.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_hindu.py b/resources/recipes/hindu.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_hindu.py rename to resources/recipes/hindu.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_hln.py b/resources/recipes/hln.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_hln.py rename to resources/recipes/hln.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_hln_be.py b/resources/recipes/hln_be.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_hln_be.py rename to resources/recipes/hln_be.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_hna.py b/resources/recipes/hna.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_hna.py rename to resources/recipes/hna.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_honoluluadvertiser.py b/resources/recipes/honoluluadvertiser.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_honoluluadvertiser.py rename to resources/recipes/honoluluadvertiser.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_honvedelem.py b/resources/recipes/honvedelem.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_honvedelem.py rename to resources/recipes/honvedelem.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_hrt.py b/resources/recipes/hrt.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_hrt.py rename to resources/recipes/hrt.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_huntechnet.py b/resources/recipes/huntechnet.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_huntechnet.py rename to resources/recipes/huntechnet.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_iht.py b/resources/recipes/iht.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_iht.py rename to resources/recipes/iht.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_index_hu.py b/resources/recipes/index_hu.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_index_hu.py rename to resources/recipes/index_hu.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_indy_star.py b/resources/recipes/indy_star.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_indy_star.py rename to resources/recipes/indy_star.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_infobae.py b/resources/recipes/infobae.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_infobae.py rename to resources/recipes/infobae.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_infoworld.py b/resources/recipes/infoworld.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_infoworld.py rename to resources/recipes/infoworld.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_inquirer_net.py b/resources/recipes/inquirer_net.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_inquirer_net.py rename to resources/recipes/inquirer_net.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_instapaper.py b/resources/recipes/instapaper.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_instapaper.py rename to resources/recipes/instapaper.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_intelligencer.py b/resources/recipes/intelligencer.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_intelligencer.py rename to resources/recipes/intelligencer.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_irish_times.py b/resources/recipes/irish_times.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_irish_times.py rename to resources/recipes/irish_times.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_japan_times.py b/resources/recipes/japan_times.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_japan_times.py rename to resources/recipes/japan_times.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_javalobby.py b/resources/recipes/javalobby.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_javalobby.py rename to resources/recipes/javalobby.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_jb_online.py b/resources/recipes/jb_online.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_jb_online.py rename to resources/recipes/jb_online.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_joelonsoftware.py b/resources/recipes/joelonsoftware.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_joelonsoftware.py rename to resources/recipes/joelonsoftware.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_jpost.py b/resources/recipes/jpost.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_jpost.py rename to resources/recipes/jpost.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_jutarnji.py b/resources/recipes/jutarnji.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_jutarnji.py rename to resources/recipes/jutarnji.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_juventudrebelde.py b/resources/recipes/juventudrebelde.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_juventudrebelde.py rename to resources/recipes/juventudrebelde.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_juventudrebelde_english.py b/resources/recipes/juventudrebelde_english.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_juventudrebelde_english.py rename to resources/recipes/juventudrebelde_english.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_kellog_faculty.py b/resources/recipes/kellog_faculty.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_kellog_faculty.py rename to resources/recipes/kellog_faculty.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_kellog_insight.py b/resources/recipes/kellog_insight.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_kellog_insight.py rename to resources/recipes/kellog_insight.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_krstarica.py b/resources/recipes/krstarica.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_krstarica.py rename to resources/recipes/krstarica.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_krstarica_en.py b/resources/recipes/krstarica_en.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_krstarica_en.py rename to resources/recipes/krstarica_en.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_la_cuarta.py b/resources/recipes/la_cuarta.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_la_cuarta.py rename to resources/recipes/la_cuarta.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_la_republica.py b/resources/recipes/la_republica.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_la_republica.py rename to resources/recipes/la_republica.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_la_segunda.py b/resources/recipes/la_segunda.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_la_segunda.py rename to resources/recipes/la_segunda.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_la_tercera.py b/resources/recipes/la_tercera.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_la_tercera.py rename to resources/recipes/la_tercera.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_lamujerdemivida.py b/resources/recipes/lamujerdemivida.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_lamujerdemivida.py rename to resources/recipes/lamujerdemivida.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_lanacion.py b/resources/recipes/lanacion.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_lanacion.py rename to resources/recipes/lanacion.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_lanacion_chile.py b/resources/recipes/lanacion_chile.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_lanacion_chile.py rename to resources/recipes/lanacion_chile.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_laprensa.py b/resources/recipes/laprensa.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_laprensa.py rename to resources/recipes/laprensa.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_laprensa_hn.py b/resources/recipes/laprensa_hn.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_laprensa_hn.py rename to resources/recipes/laprensa_hn.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_laprensa_ni.py b/resources/recipes/laprensa_ni.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_laprensa_ni.py rename to resources/recipes/laprensa_ni.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_latimes.py b/resources/recipes/latimes.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_latimes.py rename to resources/recipes/latimes.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_latribuna.py b/resources/recipes/latribuna.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_latribuna.py rename to resources/recipes/latribuna.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_lavanguardia.py b/resources/recipes/lavanguardia.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_lavanguardia.py rename to resources/recipes/lavanguardia.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_le_monde.py b/resources/recipes/le_monde.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_le_monde.py rename to resources/recipes/le_monde.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_le_temps.py b/resources/recipes/le_temps.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_le_temps.py rename to resources/recipes/le_temps.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_lemonde_dip.py b/resources/recipes/lemonde_dip.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_lemonde_dip.py rename to resources/recipes/lemonde_dip.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_liberation.py b/resources/recipes/liberation.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_liberation.py rename to resources/recipes/liberation.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_linux_magazine.py b/resources/recipes/linux_magazine.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_linux_magazine.py rename to resources/recipes/linux_magazine.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_linuxdevices.py b/resources/recipes/linuxdevices.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_linuxdevices.py rename to resources/recipes/linuxdevices.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_livemint.py b/resources/recipes/livemint.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_livemint.py rename to resources/recipes/livemint.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_lrb.py b/resources/recipes/lrb.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_lrb.py rename to resources/recipes/lrb.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_marca.py b/resources/recipes/marca.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_marca.py rename to resources/recipes/marca.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_mediapart.py b/resources/recipes/mediapart.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_mediapart.py rename to resources/recipes/mediapart.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_miami_herald.py b/resources/recipes/miami_herald.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_miami_herald.py rename to resources/recipes/miami_herald.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_miradasalsur.py b/resources/recipes/miradasalsur.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_miradasalsur.py rename to resources/recipes/miradasalsur.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_mondedurable.py b/resources/recipes/mondedurable.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_mondedurable.py rename to resources/recipes/mondedurable.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_moneynews.py b/resources/recipes/moneynews.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_moneynews.py rename to resources/recipes/moneynews.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_monitor.py b/resources/recipes/monitor.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_monitor.py rename to resources/recipes/monitor.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_moscow_times.py b/resources/recipes/moscow_times.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_moscow_times.py rename to resources/recipes/moscow_times.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_msdnmag_en.py b/resources/recipes/msdnmag_en.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_msdnmag_en.py rename to resources/recipes/msdnmag_en.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_nacional_cro.py b/resources/recipes/nacional_cro.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_nacional_cro.py rename to resources/recipes/nacional_cro.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_nasa.py b/resources/recipes/nasa.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_nasa.py rename to resources/recipes/nasa.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_new_scientist.py b/resources/recipes/new_scientist.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_new_scientist.py rename to resources/recipes/new_scientist.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_new_york_review_of_books.py b/resources/recipes/new_york_review_of_books.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_new_york_review_of_books.py rename to resources/recipes/new_york_review_of_books.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_new_york_review_of_books_no_sub.py b/resources/recipes/new_york_review_of_books_no_sub.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_new_york_review_of_books_no_sub.py rename to resources/recipes/new_york_review_of_books_no_sub.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_new_yorker.py b/resources/recipes/new_yorker.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_new_yorker.py rename to resources/recipes/new_yorker.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_news_times.py b/resources/recipes/news_times.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_news_times.py rename to resources/recipes/news_times.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_newsweek.py b/resources/recipes/newsweek.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_newsweek.py rename to resources/recipes/newsweek.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_newsweek_argentina.py b/resources/recipes/newsweek_argentina.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_newsweek_argentina.py rename to resources/recipes/newsweek_argentina.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_nin.py b/resources/recipes/nin.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_nin.py rename to resources/recipes/nin.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_noaa.py b/resources/recipes/noaa.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_noaa.py rename to resources/recipes/noaa.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_novosti.py b/resources/recipes/novosti.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_novosti.py rename to resources/recipes/novosti.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_nspm.py b/resources/recipes/nspm.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_nspm.py rename to resources/recipes/nspm.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_nspm_int.py b/resources/recipes/nspm_int.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_nspm_int.py rename to resources/recipes/nspm_int.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_nytimes.py b/resources/recipes/nytimes.recipe similarity index 99% rename from src/calibre/web/feeds/recipes/recipe_nytimes.py rename to resources/recipes/nytimes.recipe index af78856010..8b95c8432b 100644 --- a/src/calibre/web/feeds/recipes/recipe_nytimes.py +++ b/resources/recipes/nytimes.recipe @@ -14,7 +14,7 @@ class NYTimes(BasicNewsRecipe): title = 'New York Times Top Stories' __author__ = 'GRiker' - language = _('English') + language = 'en' description = 'Top Stories from the New York Times' # List of sections typically included in Top Stories. Use a keyword from the diff --git a/src/calibre/web/feeds/recipes/recipe_nytimes_sub.py b/resources/recipes/nytimes_sub.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_nytimes_sub.py rename to resources/recipes/nytimes_sub.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_nzz_ger.py b/resources/recipes/nzz_ger.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_nzz_ger.py rename to resources/recipes/nzz_ger.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_o_globo.py b/resources/recipes/o_globo.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_o_globo.py rename to resources/recipes/o_globo.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_ourdailybread.py b/resources/recipes/ourdailybread.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_ourdailybread.py rename to resources/recipes/ourdailybread.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_outlook_india.py b/resources/recipes/outlook_india.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_outlook_india.py rename to resources/recipes/outlook_india.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_pagina12.py b/resources/recipes/pagina12.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_pagina12.py rename to resources/recipes/pagina12.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_pcworld_hu.py b/resources/recipes/pcworld_hu.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_pcworld_hu.py rename to resources/recipes/pcworld_hu.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_pescanik.py b/resources/recipes/pescanik.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_pescanik.py rename to resources/recipes/pescanik.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_phd_comics.py b/resources/recipes/phd_comics.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_phd_comics.py rename to resources/recipes/phd_comics.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_philly.py b/resources/recipes/philly.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_philly.py rename to resources/recipes/philly.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_physics_today.py b/resources/recipes/physics_today.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_physics_today.py rename to resources/recipes/physics_today.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_physics_world.py b/resources/recipes/physics_world.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_physics_world.py rename to resources/recipes/physics_world.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_pobjeda.py b/resources/recipes/pobjeda.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_pobjeda.py rename to resources/recipes/pobjeda.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_politico.py b/resources/recipes/politico.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_politico.py rename to resources/recipes/politico.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_politika.py b/resources/recipes/politika.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_politika.py rename to resources/recipes/politika.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_portfolio.py b/resources/recipes/portfolio.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_portfolio.py rename to resources/recipes/portfolio.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_pressonline.py b/resources/recipes/pressonline.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_pressonline.py rename to resources/recipes/pressonline.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_publico.py b/resources/recipes/publico.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_publico.py rename to resources/recipes/publico.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_republika.py b/resources/recipes/republika.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_republika.py rename to resources/recipes/republika.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_reuters.py b/resources/recipes/reuters.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_reuters.py rename to resources/recipes/reuters.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_rga.py b/resources/recipes/rga.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_rga.py rename to resources/recipes/rga.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_rts.py b/resources/recipes/rts.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_rts.py rename to resources/recipes/rts.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_salon.py b/resources/recipes/salon.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_salon.py rename to resources/recipes/salon.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_san_fran_chronicle.py b/resources/recipes/san_fran_chronicle.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_san_fran_chronicle.py rename to resources/recipes/san_fran_chronicle.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_sanjosemercurynews.py b/resources/recipes/sanjosemercurynews.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_sanjosemercurynews.py rename to resources/recipes/sanjosemercurynews.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_science_aas.py b/resources/recipes/science_aas.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_science_aas.py rename to resources/recipes/science_aas.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_science_news.py b/resources/recipes/science_news.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_science_news.py rename to resources/recipes/science_news.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_sciencedaily.py b/resources/recipes/sciencedaily.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_sciencedaily.py rename to resources/recipes/sciencedaily.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_scientific_american.py b/resources/recipes/scientific_american.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_scientific_american.py rename to resources/recipes/scientific_american.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_scott_hanselman.py b/resources/recipes/scott_hanselman.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_scott_hanselman.py rename to resources/recipes/scott_hanselman.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_seattle_times.py b/resources/recipes/seattle_times.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_seattle_times.py rename to resources/recipes/seattle_times.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_security_watch.py b/resources/recipes/security_watch.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_security_watch.py rename to resources/recipes/security_watch.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_serverside.py b/resources/recipes/serverside.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_serverside.py rename to resources/recipes/serverside.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_shacknews.py b/resources/recipes/shacknews.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_shacknews.py rename to resources/recipes/shacknews.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_slashdot.py b/resources/recipes/slashdot.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_slashdot.py rename to resources/recipes/slashdot.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_slate.py b/resources/recipes/slate.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_slate.py rename to resources/recipes/slate.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_smashing.py b/resources/recipes/smashing.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_smashing.py rename to resources/recipes/smashing.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_smh.py b/resources/recipes/smh.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_smh.py rename to resources/recipes/smh.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_soldiers.py b/resources/recipes/soldiers.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_soldiers.py rename to resources/recipes/soldiers.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_spiegel_int.py b/resources/recipes/spiegel_int.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_spiegel_int.py rename to resources/recipes/spiegel_int.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_spiegelde.py b/resources/recipes/spiegelde.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_spiegelde.py rename to resources/recipes/spiegelde.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_st_petersburg_times.py b/resources/recipes/st_petersburg_times.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_st_petersburg_times.py rename to resources/recipes/st_petersburg_times.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_stackoverflow.py b/resources/recipes/stackoverflow.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_stackoverflow.py rename to resources/recipes/stackoverflow.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_starbulletin.py b/resources/recipes/starbulletin.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_starbulletin.py rename to resources/recipes/starbulletin.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_straitstimes.py b/resources/recipes/straitstimes.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_straitstimes.py rename to resources/recipes/straitstimes.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_sueddeutsche.py b/resources/recipes/sueddeutsche.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_sueddeutsche.py rename to resources/recipes/sueddeutsche.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_tanjug.py b/resources/recipes/tanjug.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_tanjug.py rename to resources/recipes/tanjug.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_telegraph_uk.py b/resources/recipes/telegraph_uk.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_telegraph_uk.py rename to resources/recipes/telegraph_uk.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_telepolis.py b/resources/recipes/telepolis.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_telepolis.py rename to resources/recipes/telepolis.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_telepolis_artikel.py b/resources/recipes/telepolis_artikel.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_telepolis_artikel.py rename to resources/recipes/telepolis_artikel.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_teleread.py b/resources/recipes/teleread.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_teleread.py rename to resources/recipes/teleread.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_the_age.py b/resources/recipes/the_age.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_the_age.py rename to resources/recipes/the_age.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_the_budget_fashionista.py b/resources/recipes/the_budget_fashionista.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_the_budget_fashionista.py rename to resources/recipes/the_budget_fashionista.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_the_nation.py b/resources/recipes/the_nation.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_the_nation.py rename to resources/recipes/the_nation.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_the_new_republic.py b/resources/recipes/the_new_republic.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_the_new_republic.py rename to resources/recipes/the_new_republic.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_the_oz.py b/resources/recipes/the_oz.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_the_oz.py rename to resources/recipes/the_oz.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_the_register.py b/resources/recipes/the_register.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_the_register.py rename to resources/recipes/the_register.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_the_scotsman.py b/resources/recipes/the_scotsman.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_the_scotsman.py rename to resources/recipes/the_scotsman.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_thedgesingapore.py b/resources/recipes/thedgesingapore.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_thedgesingapore.py rename to resources/recipes/thedgesingapore.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_theeconomictimes_india.py b/resources/recipes/theeconomictimes_india.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_theeconomictimes_india.py rename to resources/recipes/theeconomictimes_india.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_themarketticker.py b/resources/recipes/themarketticker.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_themarketticker.py rename to resources/recipes/themarketticker.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_theoldfoodie.py b/resources/recipes/theoldfoodie.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_theoldfoodie.py rename to resources/recipes/theoldfoodie.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_theonion.py b/resources/recipes/theonion.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_theonion.py rename to resources/recipes/theonion.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_thestar.py b/resources/recipes/thestar.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_thestar.py rename to resources/recipes/thestar.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_tijd.py b/resources/recipes/tijd.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_tijd.py rename to resources/recipes/tijd.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_time_magazine.py b/resources/recipes/time_magazine.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_time_magazine.py rename to resources/recipes/time_magazine.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_times_online.py b/resources/recipes/times_online.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_times_online.py rename to resources/recipes/times_online.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_tnxm.py b/resources/recipes/tnxm.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_tnxm.py rename to resources/recipes/tnxm.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_tomshardware.py b/resources/recipes/tomshardware.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_tomshardware.py rename to resources/recipes/tomshardware.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_tomshardware_de.py b/resources/recipes/tomshardware_de.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_tomshardware_de.py rename to resources/recipes/tomshardware_de.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_toronto_sun.py b/resources/recipes/toronto_sun.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_toronto_sun.py rename to resources/recipes/toronto_sun.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_tweakers.py b/resources/recipes/tweakers.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_tweakers.py rename to resources/recipes/tweakers.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_twitchfilms.py b/resources/recipes/twitchfilms.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_twitchfilms.py rename to resources/recipes/twitchfilms.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_uncrate.py b/resources/recipes/uncrate.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_uncrate.py rename to resources/recipes/uncrate.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_upi.py b/resources/recipes/upi.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_upi.py rename to resources/recipes/upi.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_usatoday.py b/resources/recipes/usatoday.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_usatoday.py rename to resources/recipes/usatoday.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_usnews.py b/resources/recipes/usnews.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_usnews.py rename to resources/recipes/usnews.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_utne.py b/resources/recipes/utne.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_utne.py rename to resources/recipes/utne.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_vecernji_list.py b/resources/recipes/vecernji_list.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_vecernji_list.py rename to resources/recipes/vecernji_list.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_veintitres.py b/resources/recipes/veintitres.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_veintitres.py rename to resources/recipes/veintitres.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_vijesti.py b/resources/recipes/vijesti.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_vijesti.py rename to resources/recipes/vijesti.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_vnexpress.py b/resources/recipes/vnexpress.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_vnexpress.py rename to resources/recipes/vnexpress.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_volksrant.py b/resources/recipes/volksrant.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_volksrant.py rename to resources/recipes/volksrant.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_vreme.py b/resources/recipes/vreme.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_vreme.py rename to resources/recipes/vreme.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_wash_post.py b/resources/recipes/wash_post.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_wash_post.py rename to resources/recipes/wash_post.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_wikinews_en.py b/resources/recipes/wikinews_en.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_wikinews_en.py rename to resources/recipes/wikinews_en.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_winsupersite.py b/resources/recipes/winsupersite.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_winsupersite.py rename to resources/recipes/winsupersite.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_wired.py b/resources/recipes/wired.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_wired.py rename to resources/recipes/wired.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_woz_die.py b/resources/recipes/woz_die.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_woz_die.py rename to resources/recipes/woz_die.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_wsj.py b/resources/recipes/wsj.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_wsj.py rename to resources/recipes/wsj.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_xkcd.py b/resources/recipes/xkcd.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_xkcd.py rename to resources/recipes/xkcd.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_zaobao.py b/resources/recipes/zaobao.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_zaobao.py rename to resources/recipes/zaobao.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_zdnet.py b/resources/recipes/zdnet.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_zdnet.py rename to resources/recipes/zdnet.recipe diff --git a/src/calibre/web/feeds/recipes/recipe_zeitde.py b/resources/recipes/zeitde.recipe similarity index 100% rename from src/calibre/web/feeds/recipes/recipe_zeitde.py rename to resources/recipes/zeitde.recipe diff --git a/setup/check.py b/setup/check.py index 14992b1628..86df693b68 100644 --- a/setup/check.py +++ b/setup/check.py @@ -42,26 +42,38 @@ class Check(Command): BUILTINS = ['_', '__', 'dynamic_property', 'I', 'P'] CACHE = '.check-cache.pickle' + def get_files(self, cache): + for x in os.walk(self.j(self.SRC, 'calibre')): + for f in x[-1]: + y = self.j(x[0], f) + mtime = os.stat(y).st_mtime + if f.endswith('.py') and f not in ('ptempfile.py', 'feedparser.py', + 'pyparsing.py', 'markdown.py') and \ + 'genshi' not in y and cache.get(y, 0) != mtime and \ + 'prs500/driver.py' not in y: + yield y, mtime + + for x in os.walk(self.j(self.d(self.SRC), 'resources', 'recipes')): + for f in x[-1]: + f = self.j(x[0], f) + mtime = os.stat(f).st_mtime + if f.endswith('.recipe') and cache.get(f, 0) != mtime: + yield f, mtime + + def run(self, opts): cache = {} if os.path.exists(self.CACHE): cache = cPickle.load(open(self.CACHE, 'rb')) - for x in os.walk(self.j(self.SRC, 'calibre')): - for f in x[-1]: - f = self.j(x[0], f) - mtime = os.stat(f).st_mtime - if f.endswith('.py') and cache.get(f, 0) != mtime and \ - self.b(f) not in ('ptempfile.py', 'feedparser.py', - 'pyparsing.py', 'markdown.py') and 'genshi' not in f and \ - 'prs500/driver.py' not in f: - self.info('\tChecking', f) - w = check_for_python_errors(f, self.BUILTINS) - if w: - self.report_errors(w) - cPickle.dump(cache, open(self.CACHE, 'wb'), -1) - subprocess.call(['gvim', '-f', f]) - raise SystemExit(1) - cache[f] = mtime + for f, mtime in self.get_files(cache): + self.info('\tChecking', f) + w = check_for_python_errors(f, self.BUILTINS) + if w: + self.report_errors(w) + cPickle.dump(cache, open(self.CACHE, 'wb'), -1) + subprocess.call(['gvim', '-f', f]) + raise SystemExit(1) + cache[f] = mtime cPickle.dump(cache, open(self.CACHE, 'wb'), -1) diff --git a/setup/resources.py b/setup/resources.py index 253876989e..d40d31bbf5 100644 --- a/setup/resources.py +++ b/setup/resources.py @@ -26,17 +26,6 @@ class Resources(Command): description = 'Compile various needed calibre resources' - def get_recipes(self): - sdir = os.path.join('src', 'calibre', 'web', 'feeds', 'recipes') - resources= {} - files = [] - for f in os.listdir(sdir): - if f.endswith('.py') and f != '__init__.py': - files.append(os.path.join(sdir, f)) - resources[f.replace('.py', '')] = open(files[-1], 'rb').read() - return resources, files - - def run(self, opts): scripts = {} for x in ('console', 'gui'): @@ -51,13 +40,15 @@ class Resources(Command): f = open(dest, 'wb') cPickle.dump(scripts, f, -1) - recipes, files = self.get_recipes() + from calibre.web.feeds.recipes.collection import \ + serialize_builtin_recipes, iterate_over_builtin_recipe_files - dest = self.j(self.RESOURCES, 'recipes.pickle') + files = [x[1] for x in iterate_over_builtin_recipe_files()] + + dest = self.j(self.RESOURCES, 'builtin_recipes.xml') if self.newer(dest, files): - self.info('\tCreating recipes.pickle') - f = open(dest, 'wb') - cPickle.dump(recipes, f, -1) + self.info('\tCreating builtin_recipes.xml') + open(dest, 'wb').write(serialize_builtin_recipes()) dest = self.j(self.RESOURCES, 'ebook-convert-complete.pickle') files = [] @@ -70,8 +61,9 @@ class Resources(Command): complete = {} from calibre.ebooks.conversion.plumber import supported_input_formats complete['input_fmts'] = set(supported_input_formats()) - from calibre.web.feeds.recipes import recipes - complete['input_recipes'] = [t.title+'.recipe ' for t in recipes] + from calibre.web.feeds.recipes.collection import get_builtin_recipe_titles + complete['input_recipes'] = [t+'.recipe ' for t in + get_builtin_recipe_titles()] from calibre.customize.ui import available_output_formats complete['output'] = set(available_output_formats()) from calibre.ebooks.conversion.cli import create_option_parser @@ -90,9 +82,6 @@ class Resources(Command): cPickle.dump(complete, open(dest, 'wb'), -1) - - - def clean(self): for x in ('scripts', 'recipes', 'ebook-convert-complete'): x = self.j(self.RESOURCES, x+'.pickle') diff --git a/src/calibre/gui2/__init__.py b/src/calibre/gui2/__init__.py index 32f7a32efa..426f4da50b 100644 --- a/src/calibre/gui2/__init__.py +++ b/src/calibre/gui2/__init__.py @@ -396,7 +396,8 @@ class FileDialog(QObject): if filters: for filter in filters: text, extensions = filter - extensions = ['*.'+i if not i.startswith('.') else i for i in extensions] + extensions = ['*'+(i if i.startswith('.') else '.'+i) for i in + extensions] ftext += '%s (%s);;'%(text, ' '.join(extensions)) if add_all_files_filter or not ftext: ftext += 'All files (*)' diff --git a/src/calibre/gui2/dialogs/scheduler.py b/src/calibre/gui2/dialogs/scheduler.py index 878bdf3c25..79fe926909 100644 --- a/src/calibre/gui2/dialogs/scheduler.py +++ b/src/calibre/gui2/dialogs/scheduler.py @@ -7,417 +7,188 @@ __docformat__ = 'restructuredtext en' Scheduler for automated recipe downloads ''' -import sys, copy, time -from datetime import datetime, timedelta, date -from PyQt4.Qt import QDialog, QApplication, SIGNAL, \ - QColor, QAbstractItemModel, Qt, QVariant, QFont, QIcon, \ - QFile, QObject, QTimer, QMutex, QMenu, QAction, QTime, QModelIndex +from datetime import datetime, timedelta + +from PyQt4.Qt import QDialog, QApplication, SIGNAL, Qt, QTime, QObject, QMenu, \ + QAction, QIcon, QMutex, QTimer -from calibre import english_sort from calibre.gui2.dialogs.scheduler_ui import Ui_Dialog from calibre.gui2.search_box import SearchBox2 -from calibre.web.feeds.recipes import recipes, recipe_modules, compile_recipe -from calibre.utils.search_query_parser import SearchQueryParser -from calibre.utils.pyparsing import ParseException -from calibre.utils.localization import get_language -from calibre.gui2 import NONE, error_dialog, config as gconf -from calibre.utils.config import DynamicConfig +from calibre.gui2 import config as gconf +from calibre.web.feeds.recipes.model import RecipeModel from calibre.ptempfile import PersistentTemporaryFile -from calibre.gui2.dialogs.user_profiles import UserProfiles - -config = DynamicConfig('scheduler') - -class Recipe(object): - - def __init__(self, id=None, recipe_class=None, builtin=True): - self.id = id - self.title = getattr(recipe_class, 'title', None) - self.description = getattr(recipe_class, 'description', None) - self.language = getattr(recipe_class, 'language', 'und') - self.last_downloaded = datetime.fromordinal(1) - self.downloading = False - self.builtin = builtin - self.schedule = None - self.author = getattr(recipe_class, '__author__', _('Unknown')) - if self.author == _('Unknown') and not builtin: - self.author = _('You') - self.needs_subscription = getattr(recipe_class, 'needs_subscription', False) - - def pickle(self): - return self.__dict__.copy() - - def unpickle(self, dict): - self.__dict__.update(dict) - return self - - def __cmp__(self, other): - if self.id == getattr(other, 'id', None): - return 0 - if self.schedule is None and getattr(other, 'schedule', None) is not None: - return 1 - if self.schedule is not None and getattr(other, 'schedule', None) is None: - return -1 - if self.builtin and not getattr(other, 'builtin', True): - return 1 - if not self.builtin and getattr(other, 'builtin', True): - return -1 - return english_sort(self.title, getattr(other, 'title', '')) - - def __hash__(self): - return hash(self.id) - - def __eq__(self, other): - return self.id == getattr(other, 'id', None) - - def __repr__(self): - schedule = self.schedule - if schedule and schedule > 1e5: - schedule = decode_schedule(schedule) - return u'%s|%s|%s|%s'%(self.id, self.title, self.last_downloaded.ctime(), schedule) - -builtin_recipes = [Recipe(m, r, True) for r, m in zip(recipes, recipe_modules)] - -def save_recipes(recipes): - config['scheduled_recipes'] = [r.pickle() for r in recipes] - -def load_recipes(): - config.refresh() - recipes = [] - for r in config.get('scheduled_recipes', []): - r = Recipe().unpickle(r) - if r.builtin and \ - (not str(r.id).startswith('recipe_') or not str(r.id) in recipe_modules): - continue - recipes.append(r) - return recipes - -class RecipeModel(QAbstractItemModel, SearchQueryParser): - - LOCATIONS = ['all'] - - def __init__(self, db, *args): - QAbstractItemModel.__init__(self, *args) - SearchQueryParser.__init__(self) - self.default_icon = QIcon(I('news.svg')) - self.custom_icon = QIcon(I('user_profile.svg')) - self.recipes = copy.deepcopy(builtin_recipes) - for x in db.get_recipes(): - recipe = compile_recipe(x[1]) - self.recipes.append(Recipe(x[0], recipe, False)) - self.refresh() - self.bold_font = QFont() - self.bold_font.setBold(True) - self.bold_font = QVariant(self.bold_font) - - - def refresh(self): - sr = load_recipes() - for recipe in self.recipes: - if recipe in sr: - recipe.schedule = sr[sr.index(recipe)].schedule - recipe.last_downloaded = sr[sr.index(recipe)].last_downloaded - - self.recipes.sort() - self.num_of_recipes = len(self.recipes) - - self.category_map = {} - for r in self.recipes: - category = get_language(getattr(r, 'language', 'und')) - if not r.builtin: - category = _('Custom') - if r.schedule is not None: - category = _('Scheduled') - if category not in self.category_map.keys(): - self.category_map[category] = [] - self.category_map[category].append(r) - - self.categories = sorted(self.category_map.keys(), cmp=self.sort_categories) - self._map = dict(self.category_map) - - def scheduled_recipes(self): - for recipe in self.category_map.get(_('Scheduled'), []): - yield recipe - - def sort_categories(self, x, y): - - def decorate(x): - if x == _('Scheduled'): - x = '0' + x - elif x == _('Custom'): - x = '1' + x - else: - x = '2' + x - return x - - return cmp(decorate(x), decorate(y)) - - - def universal_set(self): - return set(self.recipes) - - def get_matches(self, location, query): - query = query.strip().lower() - if not query: - return set(self.recipes) - results = set([]) - for recipe in self.recipes: - if query in recipe.title.lower() or query in recipe.description.lower(): - results.add(recipe) - return results - - def search(self, query, refinement): - try: - results = self.parse(unicode(query)) - except ParseException: - self._map = dict(self.category_map) - else: - self._map = {} - for category in self.categories: - self._map[category] = [] - for recipe in self.category_map[category]: - if recipe in results: - self._map[category].append(recipe) - self.reset() - self.emit(SIGNAL('searched(PyQt_PyObject)'), True) - - def resort(self): - self.recipes.sort() - self.reset() - - def index(self, row, column, parent): - return self.createIndex(row, column, parent.row()+1 if parent.isValid() else 0) - - def parent(self, index): - if index.internalId() == 0: - return QModelIndex() - return self.createIndex(index.internalId()-1, 0, 0) - - def columnCount(self, parent): - if not parent.isValid() or not parent.parent().isValid(): - return 1 - return 0 - - def rowCount(self, parent): - if not parent.isValid(): - return len(self.categories) - if not parent.parent().isValid(): - category = self.categories[parent.row()] - return len(self._map[category]) - return 0 - - def data(self, index, role): - if index.parent().isValid(): - category = self.categories[index.parent().row()] - recipe = self._map[category][index.row()] - if role == Qt.DisplayRole: - return QVariant(recipe.title) - elif role == Qt.UserRole: - return recipe - elif role == Qt.DecorationRole: - icon = self.default_icon - icon_path = (I('news/%s.png')%recipe.id).replace('recipe_', '') - if not recipe.builtin: - icon = self.custom_icon - elif QFile().exists(icon_path): - icon = QIcon(icon_path) - return QVariant(icon) - else: - category = self.categories[index.row()] - if role == Qt.DisplayRole: - num = len(self._map[category]) - return QVariant(category + ' [%d]'%num) - elif role == Qt.FontRole: - return self.bold_font - elif role == Qt.ForegroundRole and category == _('Scheduled'): - return QVariant(QColor(0, 255, 0)) - return NONE - - def update_recipe_schedule(self, recipe): - for srecipe in self.recipes: - if srecipe == recipe: - srecipe.schedule = recipe.schedule - - -def encode_schedule(day, hour, minute): - day = 1e7 * (day+1) - hour = 1e4 * (hour+1) - return day + hour + minute + 1 - -def decode_schedule(num): - raw = '%d'%int(num) - day = int(raw[0]) - hour = int(raw[2:4]) - minute = int(raw[-2:]) - return day-1, hour-1, minute-1 class SchedulerDialog(QDialog, Ui_Dialog): - def __init__(self, db, *args): - QDialog.__init__(self, *args) + def __init__(self, recipe_model, parent=None): + QDialog.__init__(self, parent) self.setupUi(self) + self.recipe_model = recipe_model + self.recipe_model.do_refresh() + self.search = SearchBox2(self) self.search.initialize('scheduler_search_history') self.recipe_box.layout().insertWidget(0, self.search) + self.connect(self.search, SIGNAL('search(PyQt_PyObject,PyQt_PyObject)'), + self.recipe_model.search) + self.connect(self.recipe_model, SIGNAL('searched(PyQt_PyObject)'), + self.search.search_done) + self.connect(self.recipe_model, SIGNAL('searched(PyQt_PyObject)'), + self.search_done) + self.search.setFocus(Qt.OtherFocusReason) + + self.recipes.setModel(self.recipe_model) self.detail_box.setVisible(False) - self._model = RecipeModel(db) - self.current_recipe = None - self.recipes.setModel(self._model) - self.recipes.currentChanged = self.currentChanged - self.connect(self.username, SIGNAL('textEdited(QString)'), self.set_account_info) - self.connect(self.password, SIGNAL('textEdited(QString)'), self.set_account_info) - self.connect(self.schedule, SIGNAL('stateChanged(int)'), self.do_schedule) + self.download_button.setVisible(False) + self.recipes.currentChanged = self.current_changed + self.interval_button.setChecked(True) + + self.connect(self.schedule, SIGNAL('stateChanged(int)'), + self.toggle_schedule_info) self.connect(self.show_password, SIGNAL('stateChanged(int)'), lambda state: self.password.setEchoMode(self.password.Normal if state == Qt.Checked else self.password.Password)) - self.connect(self.interval, SIGNAL('valueChanged(double)'), self.do_schedule) - self.connect(self.day, SIGNAL('currentIndexChanged(int)'), self.do_schedule) - self.connect(self.time, SIGNAL('timeChanged(QTime)'), self.do_schedule) - for button in (self.daily_button, self.interval_button): - self.connect(button, SIGNAL('toggled(bool)'), self.do_schedule) - self.connect(self.search, SIGNAL('search(PyQt_PyObject,PyQt_PyObject)'), self._model.search) - self.connect(self._model, SIGNAL('searched(PyQt_PyObject)'), - self.search.search_done) - self.connect(self._model, SIGNAL('modelReset()'), lambda : self.detail_box.setVisible(False)) + self.connect(self.download_button, SIGNAL('clicked()'), + self.download_clicked) self.connect(self.download_all_button, SIGNAL('clicked()'), - self.download_all) - self.connect(self.download, SIGNAL('clicked()'), self.download_now) - self.search.setFocus(Qt.OtherFocusReason) + self.download_all_clicked) + self.old_news.setValue(gconf['oldest_news']) - self.rnumber.setText(_('%d recipes')%self._model.num_of_recipes) - for day in (_('day'), _('Monday'), _('Tuesday'), _('Wednesday'), - _('Thursday'), _('Friday'), _('Saturday'), _('Sunday')): - self.day.addItem(day) - def currentChanged(self, current, previous): - if current.parent().isValid(): - self.show_recipe(current) + def break_cycles(self): + self.recipe_model = None - def download_all(self, *args): - for recipe in self._model.scheduled_recipes(): - self.emit(SIGNAL('download_now(PyQt_PyObject)'), recipe) + def search_done(self, *args): + if self.recipe_model.showing_count < 10: + self.recipes.expandAll() - def download_now(self): - recipe = self._model.data(self.recipes.currentIndex(), Qt.UserRole) - self.emit(SIGNAL('download_now(PyQt_PyObject)'), recipe) + def toggle_schedule_info(self, *args): + enabled = self.schedule.isChecked() + for x in ('daily_button', 'day', 'time', 'interval_button', 'interval'): + getattr(self, x).setEnabled(enabled) + self.last_downloaded.setVisible(enabled) - def set_account_info(self, *args): - username, password = map(unicode, (self.username.text(), self.password.text())) - username, password = username.strip(), password.strip() - recipe = self._model.data(self.recipes.currentIndex(), Qt.UserRole) - key = 'recipe_account_info_%s'%recipe.id - config[key] = (username, password) if username else None + def current_changed(self, current, previous): + if previous.isValid(): + self.commit(urn=getattr(previous.internalPointer(), 'urn', None)) - def do_schedule(self, *args): - if not getattr(self, 'allow_scheduling', False): + urn = self.current_urn + if urn is not None: + self.initialize_detail_box(urn) + + def accept(self): + self.commit() + return QDialog.accept(self) + + def download_clicked(self): + self.commit() + if self.current_urn: + self.emit(SIGNAL('download(PyQt_PyObject)'), self.current_urn) + + def download_all_clicked(self): + self.commit() + self.emit(SIGNAL('download(PyQt_PyObject)'), None) + + @property + def current_urn(self): + current = self.recipes.currentIndex() + if current.isValid(): + return getattr(current.internalPointer(), 'urn', None) + + def commit(self, urn=None): + urn = self.current_urn if urn is None else urn + if not self.detail_box.isVisible() or urn is None: return - recipe = self.recipes.currentIndex() - if not recipe.isValid(): - return - recipe = self._model.data(recipe, Qt.UserRole) - recipes = load_recipes() - if self.schedule.checkState() == Qt.Checked: - if recipe in recipes: - recipe = recipes[recipes.index(recipe)] - else: - recipe.last_downloaded = datetime.fromordinal(1) - recipes.append(recipe) - if recipe.needs_subscription and not config['recipe_account_info_%s'%recipe.id]: - error_dialog(self, _('Must set account information'), - _('This recipe requires a username and password')).exec_() - self.schedule.setCheckState(Qt.Unchecked) - return - if self.interval_button.isChecked(): - recipe.schedule = self.interval.value() - if recipe.schedule < 0.1: - recipe.schedule = 1/24. + + if self.account.isVisible(): + un, pw = map(unicode, (self.username.text(), self.password.text())) + self.recipe_model.set_account_info(urn, un.strip(), pw.strip()) + + if self.schedule.isChecked(): + schedule_type = 'interval' if self.interval_button.isChecked() else 'day/time' + if schedule_type == 'interval': + schedule = self.interval.value() + if schedule < 0.1: + schedule = 1./24. else: day_of_week = self.day.currentIndex() - 1 - if day_of_week < 0: - day_of_week = 7 t = self.time.time() hour, minute = t.hour(), t.minute() - recipe.schedule = encode_schedule(day_of_week, hour, minute) + schedule = (day_of_week, hour, minute) + self.recipe_model.schedule_recipe(urn, schedule_type, schedule) else: - recipe.schedule = None - if recipe in recipes: - recipes.remove(recipe) - save_recipes(recipes) - self._model.update_recipe_schedule(recipe) - self.emit(SIGNAL('new_schedule(PyQt_PyObject)'), recipes) + self.recipe_model.un_schedule_recipe(urn) + + add_title_tag = self.add_title_tag.isChecked() + custom_tags = unicode(self.custom_tags.text()).strip() + custom_tags = [x.strip() for x in custom_tags.split(',')] + self.recipe_model.customize_recipe(urn, add_title_tag, custom_tags) + + def initialize_detail_box(self, urn): + self.detail_box.setVisible(True) + self.download_button.setVisible(True) + self.detail_box.setCurrentIndex(0) + recipe = self.recipe_model.recipe_from_urn(urn) + schedule_info = self.recipe_model.schedule_info_from_urn(urn) + account_info = self.recipe_model.account_info_from_urn(urn) + customize_info = self.recipe_model.get_customize_info(urn) + + self.account.setVisible(recipe.get('needs_subscription', '') == 'yes') + un = pw = '' + if account_info is not None: + un, pw = account_info[:2] + if not un: un = '' + if not pw: pw = '' + self.username.setText(un) + self.password.setText(pw) + self.show_password.setChecked(False) - def show_recipe(self, index): - recipe = self._model.data(index, Qt.UserRole) - self.current_recipe = recipe self.blurb.setText('''

%(title)s
%(cb)s %(author)s
%(description)s

- '''%dict(title=recipe.title, cb=_('Created by: '), author=recipe.author, - description=recipe.description if recipe.description else '')) - self.allow_scheduling = False - schedule = -1 if recipe.schedule is None else recipe.schedule - if schedule < 1e5 and schedule >= 0: - self.interval.setValue(schedule) - self.interval_button.setChecked(True) - self.day.setEnabled(False), self.time.setEnabled(False) - else: - if schedule > 0: - day, hour, minute = decode_schedule(schedule) - else: - day, hour, minute = 7, 12, 0 - if day == 7: - day = -1 - self.day.setCurrentIndex(day+1) - self.time.setTime(QTime(hour, minute)) - self.daily_button.setChecked(True) - self.interval_button.setChecked(False) - self.interval.setEnabled(False) - self.schedule.setChecked(recipe.schedule is not None) - self.allow_scheduling = True - self.detail_box.setVisible(True) - self.account.setVisible(recipe.needs_subscription) - self.interval.setEnabled(self.schedule.checkState() == Qt.Checked) - key = 'recipe_account_info_%s'%recipe.id - account_info = config[key] - self.show_password.setChecked(False) - if account_info: - self.username.blockSignals(True) - self.password.blockSignals(True) - self.username.setText(account_info[0]) - self.password.setText(account_info[1]) - self.username.blockSignals(False) - self.password.blockSignals(False) - d = datetime.utcnow() - recipe.last_downloaded - def hm(x): return (x-x%3600)//3600, (x%3600 - (x%3600)%60)//60 - hours, minutes = hm(d.seconds) - tm = _('%d days, %d hours and %d minutes ago')%(d.days, hours, minutes) - if d < timedelta(days=366): - self.last_downloaded.setText(_('Last downloaded')+': '+tm) - else: - self.last_downloaded.setText(_('Last downloaded: never')) + '''%dict(title=recipe.get('title'), cb=_('Created by: '), + author=recipe.get('author', _('Unknown')), + description=recipe.get('description', ''))) + + scheduled = schedule_info is not None + self.schedule.setChecked(scheduled) + self.toggle_schedule_info() + self.last_downloaded.setText(_('Last downloaded: never')) + if scheduled: + typ, sch, last_downloaded = schedule_info + if typ == 'interval': + self.interval_button.setChecked(True) + self.interval.setValue(sch) + elif typ == 'day/time': + self.daily_button.setChecked(True) + day, hour, minute = sch + self.day.setCurrentIndex(day+1) + self.time.setTime(QTime(hour, minute)) + + d = datetime.utcnow() - last_downloaded + def hm(x): return (x-x%3600)//3600, (x%3600 - (x%3600)%60)//60 + hours, minutes = hm(d.seconds) + tm = _('%d days, %d hours and %d minutes ago')%(d.days, hours, minutes) + if d < timedelta(days=366): + self.last_downloaded.setText(_('Last downloaded')+': '+tm) + + add_title_tag, custom_tags = customize_info + self.add_title_tag.setChecked(add_title_tag) + self.custom_tags.setText(u', '.join(custom_tags)) + class Scheduler(QObject): INTERVAL = 1 # minutes - def __init__(self, main): - self.main = main - self.verbose = main.verbose - QObject.__init__(self) + def __init__(self, parent, db): + QObject.__init__(self, parent) + self._parent = parent + self.recipe_model = RecipeModel(db) self.lock = QMutex(QMutex.Recursive) - self.queue = set([]) - recipes = load_recipes() - self.refresh_schedule(recipes) - self.timer = QTimer() - self.dirtied = False - self.connect(self.timer, SIGNAL('timeout()'), self.check) - self.timer.start(int(self.INTERVAL * 60000)) - self.oldest_timer = QTimer() - self.connect(self.oldest_timer, SIGNAL('timeout()'), self.oldest_check) - self.oldest = gconf['oldest_news'] - self.oldest_timer.start(int(60 * 60000)) - self.oldest_check() + self.download_queue = set([]) self.news_menu = QMenu() self.news_icon = QIcon(I('news.svg')) @@ -428,132 +199,97 @@ class Scheduler(QObject): self.connect(self.cac, SIGNAL('triggered(bool)'), self.customize_feeds) self.news_menu.addAction(self.cac) + self.timer = QTimer(self) + self.timer.start(int(self.INTERVAL * 60000)) + self.oldest_timer = QTimer() + self.connect(self.oldest_timer, SIGNAL('timeout()'), self.oldest_check) + self.connect(self.timer, SIGNAL('timeout()'), self.check) + self.oldest = gconf['oldest_news'] + self.oldest_timer.start(int(60 * 60000)) + self.oldest_check() + def oldest_check(self): if self.oldest > 0: delta = timedelta(days=self.oldest) - ids = self.main.library_view.model().db.tags_older_than(_('News'), delta) + ids = self.recipe_model.db.tags_older_than(_('News'), delta) if ids: - self.main.library_view.model().delete_books_by_id(ids) - - def customize_feeds(self, *args): - main = self.main - d = UserProfiles(main, main.library_view.model().db.get_feeds()) - d.exec_() - feeds = tuple(d.profiles()) - main.library_view.model().db.set_feeds(feeds) - - - def debug(self, *args): - if self.verbose: - sys.stdout.write(' '.join(map(unicode, args))+'\n') - sys.stdout.flush() - - def check(self): - if not self.lock.tryLock(): - return - try: - if self.dirtied: - self.refresh_schedule(load_recipes()) - self.dirtied = False - needs_downloading = set([]) - self.debug('Checking...') - nowt = datetime.utcnow() - for recipe in self.recipes: - if recipe.schedule is None: - continue - delta = nowt - recipe.last_downloaded - if recipe.schedule < 1e5: - if delta > timedelta(days=recipe.schedule): - needs_downloading.add(recipe) - else: - day, hour, minute = decode_schedule(recipe.schedule) - now = time.localtime() - day_matches = day > 6 or day == now.tm_wday - tnow = now.tm_hour*60 + now.tm_min - matches = day_matches and (hour*60+minute) < tnow - if matches and recipe.last_downloaded.toordinal() < date.today().toordinal(): - needs_downloading.add(recipe) - - self.debug('Needs downloading:', needs_downloading) - - needs_downloading = [r for r in needs_downloading if r not in self.queue] - for recipe in needs_downloading: - self.do_download(recipe) - finally: - self.lock.unlock() - - def do_download(self, recipe): - try: - id = int(recipe.id) - script = self.main.library_view.model().db.get_recipe(id) - if script is None: - self.recipes.remove(recipe) - save_recipes(self.recipes) - return - pt = PersistentTemporaryFile('_builtin.recipe') - pt.write(script) - pt.close() - script = pt.name - except ValueError: - script = recipe.title + '.recipe' - self.debug('\tQueueing:', recipe) - self.main.download_scheduled_recipe(recipe, script, self.recipe_downloaded) - self.queue.add(recipe) - - def recipe_downloaded(self, recipe): - self.lock.lock() - try: - if recipe in self.recipes: - recipe = self.recipes[self.recipes.index(recipe)] - now = datetime.utcnow() - d = now - recipe.last_downloaded - if recipe.schedule is not None and recipe.schedule < 1e4: - interval = timedelta(days=recipe.schedule) - if abs(d - interval) < timedelta(hours=1): - recipe.last_downloaded += interval - else: - recipe.last_downloaded = now - else: - recipe.last_downloaded = now - save_recipes(self.recipes) - self.queue.remove(recipe) - self.dirtied = True - finally: - self.lock.unlock() - self.debug('Downloaded:', recipe) - - def download(self, recipe): - self.lock.lock() - try: - if recipe in self.recipes: - recipe = self.recipes[self.recipes.index(recipe)] - if recipe not in self.queue: - self.do_download(recipe) - finally: - self.lock.unlock() - - def refresh_schedule(self, recipes): - self.recipes = recipes + self.emit(SIGNAL('delete_old_news(PyQt_PyObject)'), ids) def show_dialog(self, *args): self.lock.lock() try: - d = SchedulerDialog(self.main.library_view.model().db) - self.connect(d, SIGNAL('new_schedule(PyQt_PyObject)'), self.refresh_schedule) - self.connect(d, SIGNAL('download_now(PyQt_PyObject)'), self.download) + d = SchedulerDialog(self.recipe_model) + self.connect(d, SIGNAL('download(PyQt_PyObject)'), + self.download_clicked) d.exec_() - gconf['oldest_news'] = d.old_news.value() - self.recipes = load_recipes() - self.oldest = d.old_news.value() + gconf['oldest_news'] = self.oldest = d.old_news.value() + d.break_cycles() finally: self.lock.unlock() -def main(args=sys.argv): - QApplication([]) - from calibre.library.database2 import LibraryDatabase2 - d = SchedulerDialog(LibraryDatabase2('/home/kovid/documents/library')) - d.exec_() - return 0 + def customize_feeds(self, *args): + from calibre.gui2.dialogs.user_profiles import UserProfiles + d = UserProfiles(self._parent, self.recipe_model) + d.exec_() + d.break_cycles() + + def do_download(self, urn): + self.lock.lock() + try: + account_info = self.recipe_model.get_account_info(urn) + customize_info = self.recipe_model.get_customize_info(urn) + recipe = self.recipe_model.recipe_from_urn(urn) + un = pw = None + if account_info is not None: + un, pw = account_info + add_title_tag, custom_tags = customize_info + script = self.recipe_model.get_recipe(urn) + pt = PersistentTemporaryFile('_builtin.recipe') + pt.write(script) + pt.close() + arg = { + 'username': un, + 'password': pw, + 'add_title_tag':add_title_tag, + 'custom_tags':custom_tags, + 'recipe':pt.name, + 'title':recipe.get('title',''), + 'urn':urn, + } + self.download_queue.add(urn) + self.emit(SIGNAL('start_recipe_fetch(PyQt_PyObject)'), arg) + finally: + self.lock.unlock() + + def recipe_downloaded(self, arg): + self.lock.lock() + try: + self.recipe_model.update_last_downloaded(arg['urn']) + self.download_queue.remove(arg['urn']) + finally: + self.lock.unlock() + + def download_clicked(self, urn): + if urn is not None: + return self.download(urn) + for urn in self.recipe_model.scheduled_urns(): + self.download(urn) + + def download(self, urn): + self.lock.lock() + doit = urn not in self.download_queue + self.lock.unlock() + if doit: + self.do_download(urn) + + def check(self): + recipes = self.recipe_model.get_to_be_downloaded_recipes() + for urn in recipes: + self.download(urn) if __name__ == '__main__': - sys.exit(main()) + QApplication([]) + from calibre.library.database2 import LibraryDatabase2 + d = SchedulerDialog(RecipeModel(LibraryDatabase2('/home/kovid/documents/library'))) + d.exec_() + diff --git a/src/calibre/gui2/dialogs/scheduler.ui b/src/calibre/gui2/dialogs/scheduler.ui index b8769ff47f..ec2c526768 100644 --- a/src/calibre/gui2/dialogs/scheduler.ui +++ b/src/calibre/gui2/dialogs/scheduler.ui @@ -78,7 +78,7 @@ 0 0 - 381 + 375 500 @@ -87,196 +87,276 @@ 0 - - - Schedule for download + + + + 0 + 100 + - - - - - blurb - - - Qt::RichText - - - true - - - true - - - - - - - &Schedule for download: - - - - - - - false - - + + 0 + + + + &Schedule + + + + + + blurb + + + Qt::RichText + + + true + + + true + + + + + + + &Schedule for download: + + + + + - - - - - Every - - - - - - - - - - at - - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - + + + Every + + - + - - - Every - - + + day + - - - - 0 - 0 - - - - Interval at which to download this recipe. A value of zero means that the recipe will be downloaded every hour. - - - days - - - 1 - - - 0.000000000000000 - - - 365.100000000000023 - - - 1.000000000000000 - - - 1.000000000000000 - - + + Monday + - + + + Tuesday + + + + + Wednesday + + + + + Thursday + + + + + Friday + + + + + Saturday + + + + + Sunday + + + + + + + + at + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + - - - - - - - - - true - - - - - - - &Account - - - - - - - + + + + + - &Username: - - - username + Every - - - - &Password: + + + + + 0 + 0 + - - password + + Interval at which to download this recipe. A value of zero means that the recipe will be downloaded every hour. - - - - - - QLineEdit::Password + + days - - - - - - &Show password + + 1 + + + 0.000000000000000 + + + 365.100000000000023 + + + 1.000000000000000 + + + 1.000000000000000 - - - - - - For the scheduling to work, you must leave calibre running. - - - true - - - - - - - &Download now - - - - + + + + + + + + + + + + &Account + + + + + + + + + &Username: + + + username + + + + + + + &Password: + + + password + + + + + + + QLineEdit::Password + + + + + + + &Show password + + + + + + + + + + For the scheduling to work, you must leave calibre running. + + + true + + + + + + + + &Advanced + + + + + + Add &title as tag + + + + + + + &Extra tags: + + + custom_tags + + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + + &Download now + @@ -324,8 +404,8 @@ accept() - 613 - 824 + 762 + 570 157 @@ -340,8 +420,8 @@ reject() - 681 - 824 + 762 + 570 286 @@ -349,38 +429,6 @@ - - schedule - toggled(bool) - widget - setDisabled(bool) - - - 454 - 147 - - - 461 - 168 - - - - - schedule - toggled(bool) - widget - setEnabled(bool) - - - 458 - 137 - - - 461 - 169 - - - daily_button toggled(bool) @@ -388,12 +436,12 @@ setEnabled(bool) - 421 - 186 + 456 + 173 - 500 - 184 + 537 + 176 @@ -404,12 +452,12 @@ setEnabled(bool) - 442 - 193 + 456 + 173 - 603 - 183 + 647 + 176 @@ -420,8 +468,8 @@ setEnabled(bool) - 428 - 213 + 456 + 239 495 diff --git a/src/calibre/gui2/dialogs/user_profiles.py b/src/calibre/gui2/dialogs/user_profiles.py index 4584e10793..4b2552e43f 100644 --- a/src/calibre/gui2/dialogs/user_profiles.py +++ b/src/calibre/gui2/dialogs/user_profiles.py @@ -1,27 +1,89 @@ __license__ = 'GPL v3' __copyright__ = '2008, Kovid Goyal ' -import time, os, cPickle -from PyQt4.QtCore import SIGNAL, QUrl -from PyQt4.QtGui import QDesktopServices +import time, os + +from PyQt4.Qt import SIGNAL, QUrl, QDesktopServices, QAbstractListModel, Qt, \ + QVariant, QInputDialog from calibre.web.feeds.recipes import compile_recipe from calibre.web.feeds.news import AutomaticNewsRecipe from calibre.gui2.dialogs.user_profiles_ui import Ui_Dialog from calibre.gui2 import qstring_to_unicode, error_dialog, question_dialog, \ - choose_files, ResizableDialog + choose_files, ResizableDialog, NONE from calibre.gui2.widgets import PythonHighlighter from calibre.ptempfile import PersistentTemporaryFile +class CustomRecipeModel(QAbstractListModel): + + def __init__(self, recipe_model): + QAbstractListModel.__init__(self) + self.recipe_model = recipe_model + + def title(self, index): + row = index.row() + if row > -1 and row < self.rowCount(): + return self.recipe_model.custom_recipe_collection[row].get('title', '') + + def script(self, index): + row = index.row() + if row > -1 and row < self.rowCount(): + urn = self.recipe_model.custom_recipe_collection[row].get('id') + return self.recipe_model.get_recipe(urn) + + def has_title(self, title): + for x in self.recipe_model.custom_recipe_collection: + if x.get('title', False) == title: + return True + return False + + def rowCount(self, *args): + return len(self.recipe_model.custom_recipe_collection) + + def data(self, index, role): + if role == Qt.DisplayRole: + ans = self.title(index) + if ans is not None: + return QVariant(ans) + return NONE + + def replace_by_title(self, title, script): + urn = None + for x in self.recipe_model.custom_recipe_collection: + if x.get('title', False) == title: + urn = x.get('id') + if urn is not None: + self.recipe_model.update_custom_recipe(urn, title, script) + self.reset() + + def add(self, title, script): + self.recipe_model.add_custom_recipe(title, script) + self.reset() + + def remove(self, rows): + urns = [] + for r in rows: + try: + urn = self.recipe_model.custom_recipe_collection[r].get('id') + urns.append(urn) + except: + pass + self.recipe_model.remove_custom_recipes(urns) + self.reset() + class UserProfiles(ResizableDialog, Ui_Dialog): - def __init__(self, parent, feeds): + def __init__(self, parent, recipe_model): ResizableDialog.__init__(self, parent) + self._model = self.model = CustomRecipeModel(recipe_model) + self.available_profiles.setModel(self._model) + self.available_profiles.currentChanged = self.current_changed + self.connect(self.remove_feed_button, SIGNAL('clicked(bool)'), self.added_feeds.remove_selected_items) self.connect(self.remove_profile_button, SIGNAL('clicked(bool)'), - self.available_profiles.remove_selected_items) + self.remove_selected_items) self.connect(self.add_feed_button, SIGNAL('clicked(bool)'), self.add_feed) self.connect(self.load_button, SIGNAL('clicked()'), self.load) @@ -33,13 +95,16 @@ class UserProfiles(ResizableDialog, Ui_Dialog): self.add_profile) self.connect(self.feed_url, SIGNAL('returnPressed()'), self.add_feed) self.connect(self.feed_title, SIGNAL('returnPressed()'), self.add_feed) - self.connect(self.available_profiles, - SIGNAL('currentItemChanged(QListWidgetItem*, QListWidgetItem*)'), - self.edit_profile) self.connect(self.toggle_mode_button, SIGNAL('clicked(bool)'), self.toggle_mode) self.clear() - for title, src in feeds: - self.available_profiles.add_item(title, (title, src), replace=True) + + def break_cycles(self): + self.recipe_model = self._model.recipe_model = None + + def remove_selected_items(self): + indices = self.available_profiles.selectionModel().selectedRows() + self._model.remove([i.row() for i in indices]) + self.clear() def up(self): row = self.added_feeds.currentRow() @@ -56,12 +121,11 @@ class UserProfiles(ResizableDialog, Ui_Dialog): self.added_feeds.setCurrentItem(item) def share(self): - row = self.available_profiles.currentRow() - item = self.available_profiles.item(row) - if item is None: + index = self.available_profiles.currentIndex() + title, src = self._model.title(index), self._model.script(index) + if not title or not src: error_dialog(self, _('No recipe selected'), _('No recipe selected')).exec_() return - title, src = item.user_data pt = PersistentTemporaryFile(suffix='.py') pt.write(src.encode('utf-8')) pt.close() @@ -74,10 +138,11 @@ class UserProfiles(ResizableDialog, Ui_Dialog): QDesktopServices.openUrl(url) - def edit_profile(self, current, previous): - if not current: - current = previous - src = current.user_data[1] + def current_changed(self, current, previous): + if not current.isValid(): return + src = self._model.script(current) + if src is None: + return if 'class BasicUserRecipe' in src: recipe = compile_recipe(src) self.populate_options(recipe) @@ -172,72 +237,64 @@ class %(classname)s(%(base_class)s): _('

Could not create recipe. Error:
%s')%str(err)).exec_() return profile = src.replace('BasicUserRecipe', 'AdvancedUserRecipe') - try: - self.available_profiles.add_item(title, (title, profile), replace=False) - except ValueError: + if self._model.has_title(title): if question_dialog(self, _('Replace recipe?'), _('A custom recipe named %s already exists. Do you want to ' 'replace it?')%title): - self.available_profiles.add_item(title, (title, profile), replace=True) + self._model.replace_by_title(title, profile) else: return + else: + self.model.add(title, profile) self.clear() def add_builtin_recipe(self): - from calibre.web.feeds.recipes import recipes, recipe_modules, english_sort - from PyQt4.Qt import QInputDialog + from calibre.web.feeds.recipes.collection import \ + get_builtin_recipe_by_title, get_builtin_recipe_titles + items = get_builtin_recipe_titles() - rdat = cPickle.load(open(P('recipes.pickle'), 'rb')) - class Recipe(object): - def __init__(self, title, id, recipes): - self.title = unicode(title) - self.id = id - self.text = recipes[id] - def __cmp__(self, other): - return english_sort(self.title, other.title) - - recipes = sorted([Recipe(r.title, i, rdat) for r, i in zip(recipes, recipe_modules)]) - items = [r.title for r in recipes] title, ok = QInputDialog.getItem(self, _('Pick recipe'), _('Pick the recipe to customize'), items, 0, False) if ok: title = unicode(title) - for r in recipes: - if r.title == title: - try: - self.available_profiles.add_item(title, (title, r.text), replace=False) - except ValueError: - if question_dialog(self, _('Replace recipe?'), - _('A custom recipe named %s already exists. Do you ' - 'want to replace it?')%title): - self.available_profiles.add_item(title, (title, r.text), replace=True) - else: - return - self.clear() - break + profile = get_builtin_recipe_by_title(title) + if self._model.has_title(title): + if question_dialog(self, _('Replace recipe?'), + _('A custom recipe named %s already exists. Do you want to ' + 'replace it?')%title): + self._model.replace_by_title(title, profile) + else: + return + else: + self.model.add(title, profile) + + self.clear() def load(self): - files = choose_files(self, 'recipe loader dialog', _('Choose a recipe file'), filters=[(_('Recipes'), '*.py')], all_files=False, select_only_single_file=True) + files = choose_files(self, 'recipe loader dialog', + _('Choose a recipe file'), + filters=[(_('Recipes'), ['.py', '.recipe'])], + all_files=False, select_only_single_file=True) if files: file = files[0] try: - src = open(file, 'rb').read().decode('utf-8') - title = compile_recipe(src).title + profile = open(file, 'rb').read().decode('utf-8') + title = compile_recipe(profile).title except Exception, err: error_dialog(self, _('Invalid input'), _('

Could not create recipe. Error:
%s')%str(err)).exec_() return - try: - self.available_profiles.add_item(title, (title, src), replace=False) - except ValueError: + if self._model.has_title(title): if question_dialog(self, _('Replace recipe?'), _('A custom recipe named %s already exists. Do you want to ' 'replace it?')%title): - self.available_profiles.add_item(title, (title, src), replace=True) + self._model.replace_by_title(title, profile) else: return + else: + self.model.add(title, profile) self.clear() def populate_options(self, profile): @@ -256,8 +313,11 @@ class %(classname)s(%(base_class)s): self.populate_options(AutomaticNewsRecipe) self.source_code.setText('') - def profiles(self): - for i in self.available_profiles.items(): - yield i.user_data - +if __name__ == '__main__': + from PyQt4.Qt import QApplication + QApplication([]) + from calibre.library.database2 import LibraryDatabase2 + from calibre.web.feeds.recipes.model import RecipeModel + d=UserProfiles(None, RecipeModel(LibraryDatabase2('/home/kovid/documents/library'))) + d.exec_() diff --git a/src/calibre/gui2/dialogs/user_profiles.ui b/src/calibre/gui2/dialogs/user_profiles.ui index 64b6d10123..48f92a108c 100644 --- a/src/calibre/gui2/dialogs/user_profiles.ui +++ b/src/calibre/gui2/dialogs/user_profiles.ui @@ -34,8 +34,8 @@ 0 0 - 720 - 586 + 730 + 600 @@ -46,7 +46,7 @@ - 680 + 580 550 @@ -58,7 +58,7 @@ - 0 + 1 0 @@ -67,14 +67,7 @@ - - - - 0 - 0 - - - + @@ -136,6 +129,12 @@ + + + 10 + 0 + + QFrame::StyledPanel diff --git a/src/calibre/gui2/library.py b/src/calibre/gui2/library.py index cc3fcb3f7d..147c2780c5 100644 --- a/src/calibre/gui2/library.py +++ b/src/calibre/gui2/library.py @@ -222,8 +222,8 @@ class BooksModel(QAbstractTableModel): self.count_changed() return ret - def add_news(self, path, recipe): - ret = self.db.add_news(path, recipe) + def add_news(self, path, arg): + ret = self.db.add_news(path, arg) self.count_changed() return ret diff --git a/src/calibre/gui2/main.py b/src/calibre/gui2/main.py index 06e7749fad..1e06f2eb0c 100644 --- a/src/calibre/gui2/main.py +++ b/src/calibre/gui2/main.py @@ -518,10 +518,17 @@ class Main(MainWindow, Ui_MainWindow, DeviceGUI): self.test_server_timer = QTimer.singleShot(10000, self.test_server) - self.scheduler = Scheduler(self) + self.scheduler = Scheduler(self, self.library_view.model().db) self.action_news.setMenu(self.scheduler.news_menu) self.connect(self.action_news, SIGNAL('triggered(bool)'), self.scheduler.show_dialog) + self.connect(self.scheduler, SIGNAL('delete_old_news(PyQt_PyObject)'), + self.library_view.model().delete_books_by_id, + Qt.QueuedConnection) + self.connect(self.scheduler, + SIGNAL('start_recipe_fetch(PyQt_PyObject)'), + self.download_scheduled_recipe, Qt.QueuedConnection) + self.location_view.setCurrentIndex(self.location_view.model().index(0)) def resizeEvent(self, ev): @@ -1155,27 +1162,27 @@ class Main(MainWindow, Ui_MainWindow, DeviceGUI): ############################### Fetch news ################################# - def download_scheduled_recipe(self, recipe, script, callback): + def download_scheduled_recipe(self, arg): func, args, desc, fmt, temp_files = \ - fetch_scheduled_recipe(recipe, script) + fetch_scheduled_recipe(arg) job = self.job_manager.run_job( Dispatcher(self.scheduled_recipe_fetched), func, args=args, description=desc) - self.conversion_jobs[job] = (temp_files, fmt, recipe, callback) - self.status_bar.showMessage(_('Fetching news from ')+recipe.title, 2000) + self.conversion_jobs[job] = (temp_files, fmt, arg) + self.status_bar.showMessage(_('Fetching news from ')+arg['title'], 2000) def scheduled_recipe_fetched(self, job): - temp_files, fmt, recipe, callback = self.conversion_jobs.pop(job) + temp_files, fmt, arg = self.conversion_jobs.pop(job) pt = temp_files[0] if job.failed: return self.job_exception(job) - id = self.library_view.model().add_news(pt.name, recipe) + id = self.library_view.model().add_news(pt.name, arg) self.library_view.model().reset() sync = dynamic.get('news_to_be_synced', set([])) sync.add(id) dynamic.set('news_to_be_synced', sync) - callback(recipe) - self.status_bar.showMessage(recipe.title + _(' fetched.'), 3000) + self.scheduler.recipe_downloaded(arg) + self.status_bar.showMessage(arg['title'] + _(' fetched.'), 3000) self.email_news(id) self.sync_news() diff --git a/src/calibre/gui2/tools.py b/src/calibre/gui2/tools.py index 525efec25b..f6431581b5 100644 --- a/src/calibre/gui2/tools.py +++ b/src/calibre/gui2/tools.py @@ -207,8 +207,7 @@ class QueueBulk(QProgressDialog): self.jobs.reverse() self.queue(self.jobs, self.changed, self.bad, *self.args) -def fetch_scheduled_recipe(recipe, script): - from calibre.gui2.dialogs.scheduler import config +def fetch_scheduled_recipe(arg): from calibre.ebooks.conversion.config import load_defaults fmt = prefs['output_format'].lower() pt = PersistentTemporaryFile(suffix='_recipe_out.%s'%fmt.lower()) @@ -228,16 +227,14 @@ def fetch_scheduled_recipe(recipe, script): recs.append(('header', True, OptionRecommendation.HIGH)) recs.append(('header_format', '%t', OptionRecommendation.HIGH)) - args = [script, pt.name, recs] - if recipe.needs_subscription: - x = config.get('recipe_account_info_%s'%recipe.id, False) - if not x: - raise ValueError(_('You must set a username and password for %s')%recipe.title) - recs.append(('username', x[0], OptionRecommendation.HIGH)) - recs.append(('password', x[1], OptionRecommendation.HIGH)) + args = [arg['recipe'], pt.name, recs] + if arg['username'] is not None: + recs.append(('username', arg['username'], OptionRecommendation.HIGH)) + if arg['password'] is not None: + recs.append(('password', arg['password'], OptionRecommendation.HIGH)) - return 'gui_convert', args, _('Fetch news from ')+recipe.title, fmt.upper(), [pt] + return 'gui_convert', args, _('Fetch news from ')+arg['title'], fmt.upper(), [pt] def convert_existing(parent, db, book_ids, output_format): already_converted_ids = [] diff --git a/src/calibre/library/database.py b/src/calibre/library/database.py index e04df68949..cfd2213eed 100644 --- a/src/calibre/library/database.py +++ b/src/calibre/library/database.py @@ -8,7 +8,6 @@ import datetime, re, cPickle, sre_constants from zlib import compress, decompress from calibre.ebooks.metadata import MetaInformation -from calibre.web.feeds.recipes import migrate_automatic_profile_to_automatic_recipe from calibre.ebooks.metadata import string_to_authors class Concatenate(object): @@ -739,10 +738,7 @@ ALTER TABLE books ADD COLUMN isbn TEXT DEFAULT "" COLLATE NOCASE; @staticmethod def upgrade_version8(conn): - feeds = conn.execute('SELECT title, script FROM feeds').fetchall() - for title, script in feeds: - script = migrate_automatic_profile_to_automatic_recipe(script) - conn.execute('UPDATE feeds SET script=? WHERE title=?', (script, title)) + conn.execute('DELETE FROM feeds') conn.execute('pragma user_version=9') conn.commit() @@ -1363,6 +1359,26 @@ ALTER TABLE books ADD COLUMN isbn TEXT DEFAULT "" COLLATE NOCASE; for title, script in feeds: yield title, script + def get_feed(self, id): + return self.conn.get('SELECT script FROM feeds WHERE id=%d'%id, + all=False) + + def update_feed(self, id, script, title): + self.conn.execute('UPDATE feeds set title=? WHERE id=?', (title, id)) + self.conn.execute('UPDATE feeds set script=? WHERE id=?', (script, id)) + self.conn.commit() + + def remove_feeds(self, ids): + for x in ids: + self.conn.execute('DELETE FROM feeds WHERE id=?', (x,)) + self.conn.commit() + + def add_feed(self, title, script): + self.conn.execute('INSERT INTO feeds(title, script) VALUES (?, ?)', + (title, script)) + self.conn.commit() + + def set_feeds(self, feeds): self.conn.execute('DELETE FROM feeds') for title, script in feeds: diff --git a/src/calibre/library/database2.py b/src/calibre/library/database2.py index 44685aa8aa..6cdcd631bc 100644 --- a/src/calibre/library/database2.py +++ b/src/calibre/library/database2.py @@ -1323,14 +1323,18 @@ class LibraryDatabase2(LibraryDatabase): if notify: self.notify('metadata', [id]) - def add_news(self, path, recipe): + def add_news(self, path, arg): format = os.path.splitext(path)[1][1:].lower() stream = path if hasattr(path, 'read') else open(path, 'rb') stream.seek(0) mi = get_metadata(stream, format, use_libprs_metadata=False) stream.seek(0) mi.series_index = 1.0 - mi.tags = [_('News'), recipe.title] + mi.tags = [_('News')] + if arg['add_title_tag']: + mi.tags += [arg['title']] + if arg['custom_tags']: + mi.tags += arg['custom_tags'] obj = self.conn.execute('INSERT INTO books(title, author_sort) VALUES (?, ?)', (mi.title, mi.authors[0])) id = obj.lastrowid @@ -1696,6 +1700,11 @@ books_series_link feeds return duplicates + def get_custom_recipes(self): + for id, title, script in self.conn.get('SELECT id,title,script FROM feeds'): + yield id, title, script + + def check_integrity(self, callback): callback(0., _('Checking SQL integrity...')) user_version = self.user_version diff --git a/src/calibre/web/feeds/input.py b/src/calibre/web/feeds/input.py index 39f7be154f..adad69f885 100644 --- a/src/calibre/web/feeds/input.py +++ b/src/calibre/web/feeds/input.py @@ -43,14 +43,15 @@ class RecipeInput(InputFormatPlugin): def convert(self, recipe_or_file, opts, file_ext, log, accelerators): - from calibre.web.feeds.recipes import \ - get_builtin_recipe, compile_recipe + from calibre.web.feeds.recipes import compile_recipe + from calibre.web.feeds.recipes.collection import \ + get_builtin_recipe_by_title if os.access(recipe_or_file, os.R_OK): recipe = compile_recipe(open(recipe_or_file, 'rb').read()) else: title = getattr(opts, 'original_recipe_input_arg', recipe_or_file) title = os.path.basename(title).rpartition('.')[0] - recipe = get_builtin_recipe(title) + recipe = compile_recipe(get_builtin_recipe_by_title(title, log)) if recipe is None: raise ValueError('%r is not a valid recipe file or builtin recipe' % diff --git a/src/calibre/web/feeds/recipes/__init__.py b/src/calibre/web/feeds/recipes/__init__.py index fe8ae80997..fb83fa04b3 100644 --- a/src/calibre/web/feeds/recipes/__init__.py +++ b/src/calibre/web/feeds/recipes/__init__.py @@ -4,95 +4,15 @@ __copyright__ = '2008, Kovid Goyal ' ''' Builtin recipes. ''' -recipe_modules = ['recipe_' + r for r in ( - 'newsweek', 'atlantic', 'economist', 'portfolio', 'the_register', - 'usatoday', 'bbc', 'greader', 'wsj', #'outlook_india', - 'wired', 'globe_and_mail', 'smh', 'espn', 'business_week', 'miami_herald', - 'ars_technica', 'upi', 'new_yorker', 'irish_times', 'lanacion', - 'discover_magazine', 'scientific_american', 'new_york_review_of_books', - 'daily_telegraph', 'guardian', 'el_pais', 'new_scientist', 'b92', - 'politika', 'moscow_times', 'latimes', 'japan_times', 'san_fran_chronicle', - 'demorgen_be', 'de_standaard', 'ap', 'barrons', 'chr_mon', 'cnn', 'faznet', - 'jpost', 'jutarnji', 'nasa', 'reuters', 'spiegelde', 'wash_post', 'zeitde', - 'blic', 'novosti', 'danas', 'vreme', 'times_online', 'the_scotsman', - 'nytimes_sub', 'nytimes', 'security_watch', 'cyberpresse', 'st_petersburg_times', - 'clarin', 'financial_times', 'heise', 'le_monde', 'harpers', 'science_aas', - 'science_news', 'the_nation', 'lrb', 'harpers_full', 'liberation', - 'linux_magazine', 'telegraph_uk', 'utne', 'sciencedaily', 'forbes', - 'time_magazine', 'endgadget', 'fudzilla', 'nspm_int', 'nspm', 'pescanik', - 'spiegel_int', 'themarketticker', 'tomshardware', 'xkcd', 'ftd', 'zdnet', - 'joelonsoftware', 'telepolis', 'common_dreams', 'nin', 'tomshardware_de', - 'pagina12', 'infobae', 'ambito', 'elargentino', 'sueddeutsche', 'the_age', - 'laprensa', 'amspec', 'freakonomics', 'criticadigital', 'elcronista', - 'shacknews', 'teleread', 'granma', 'juventudrebelde', 'juventudrebelde_english', - 'la_tercera', 'el_mercurio_chile', 'la_cuarta', 'lanacion_chile', 'la_segunda', - 'jb_online', 'estadao', 'o_globo', 'vijesti', 'elmundo', 'the_oz', - 'honoluluadvertiser', 'starbulletin', 'exiled', 'indy_star', 'dna', - 'pobjeda', 'chicago_breaking_news', 'glasgow_herald', 'linuxdevices', - 'hindu', 'cincinnati_enquirer', 'physics_world', 'pressonline', - 'la_republica', 'physics_today', 'chicago_tribune', 'e_novine', - 'al_jazeera', 'winsupersite', 'borba', 'courrierinternational', - 'lamujerdemivida', 'soldiers', 'theonion', 'news_times', - 'el_universal', 'mediapart', 'wikinews_en', 'ecogeek', 'daily_mail', - 'new_york_review_of_books_no_sub', 'politico', 'adventuregamers', - 'mondedurable', 'instapaper', 'dnevnik_cro', 'vecernji_list', - 'nacional_cro', '24sata', 'dnevni_avaz', 'glas_srpske', '24sata_rs', - 'krstarica', 'krstarica_en', 'tanjug', 'laprensa_ni', 'azstarnet', - 'corriere_della_sera_it', 'corriere_della_sera_en', 'msdnmag_en', - 'moneynews', 'der_standard', 'diepresse', 'nzz_ger', 'hna', - 'seattle_times', 'scott_hanselman', 'coding_horror', 'twitchfilms', - 'stackoverflow', 'telepolis_artikel', 'zaobao', 'usnews', - 'straitstimes', 'index_hu', 'pcworld_hu', 'hrt', 'rts', 'axxon_news', - 'h1', 'h2', 'h3', 'phd_comics', 'woz_die', 'elektrolese', - 'climate_progress', 'carta', 'slashdot', 'publico', - 'the_budget_fashionista', 'elperiodico_catalan', - 'elperiodico_spanish', 'expansion_spanish', 'lavanguardia', - 'marca', 'kellog_faculty', 'kellog_insight', 'noaa', - '7dias', 'buenosaireseconomico', 'huntechnet', 'cubadebate', - 'diagonales', 'miradasalsur', 'newsweek_argentina', 'veintitres', - 'gva_be', 'hln', 'tijd', 'degentenaar', 'inquirer_net', 'uncrate', - 'fastcompany', 'accountancyage', 'laprensa_hn', 'latribuna', - 'eltiempo_hn', 'slate', 'tnxm', 'bbcvietnamese', 'vnexpress', - 'volksrant', 'theeconomictimes_india', 'ourdailybread', - 'monitor', 'republika', 'beta', 'beta_en', 'glasjavnosti', - 'esquire', 'livemint', 'thedgesingapore', 'darknet', 'rga', - 'intelligencer', 'theoldfoodie', 'hln_be', 'honvedelem', - 'the_new_republic', 'philly', 'salon', 'tweakers', 'smashing', - 'thestar', 'business_standard', 'lemonde_dip', 'javalobby', - 'serverside', 'infoworld', 'sanjosemercurynews', 'businessworldin', - )] - - import re, imp, inspect, time, os from calibre.web.feeds.news import BasicNewsRecipe, CustomIndexRecipe, AutomaticNewsRecipe from calibre.ebooks.BeautifulSoup import BeautifulSoup from calibre.ptempfile import PersistentTemporaryDirectory from calibre import __appname__, english_sort +BeautifulSoup, time, english_sort + basic_recipes = (BasicNewsRecipe, AutomaticNewsRecipe, CustomIndexRecipe) -basic_recipe_names = (i.__name__ for i in basic_recipes) - - -#: Compile builtin recipe/profile classes -def load_recipe(module, package='calibre.web.feeds.recipes'): - module = __import__(package+'.'+module, fromlist=['']) - for attr in dir(module): - obj = getattr(module, attr) - if type(obj) is not type: - continue - recipe = False - for b in obj.__bases__: - if b in basic_recipes: - recipe = True - break - if not recipe: - continue - if obj not in basic_recipes: - return obj - - -recipes = [load_recipe(i) for i in recipe_modules] - _tdir = None _crep = 0 def compile_recipe(src): @@ -133,40 +53,3 @@ def compile_recipe(src): return classes[0][1] -def get_builtin_recipe(title): - ''' - Return a builtin recipe/profile class whose title == C{title} or None if no such - recipe exists. - - @type title: string - @rtype: class or None - ''' - for r in recipes: - if r.title == title: - return r - return None - -_titles = [r.title for r in recipes] -_titles.sort(cmp=english_sort) -titles = _titles - -def migrate_automatic_profile_to_automatic_recipe(profile): - BeautifulSoup - oprofile = profile - profile = compile_recipe(profile) - if 'BasicUserProfile' not in profile.__name__: - return oprofile - return '''\ -class BasicUserRecipe%d(AutomaticNewsRecipe): - - title = %s - oldest_article = %d - max_articles_per_feed = %d - summary_length = %d - - feeds = %s - -'''%(int(time.time()), repr(profile.title), profile.oldest_article, - profile.max_articles_per_feed, profile.summary_length, repr(profile.feeds)) - - diff --git a/src/calibre/web/feeds/recipes/collection.py b/src/calibre/web/feeds/recipes/collection.py new file mode 100644 index 0000000000..852325f706 --- /dev/null +++ b/src/calibre/web/feeds/recipes/collection.py @@ -0,0 +1,331 @@ +#!/usr/bin/env python +# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai +from __future__ import with_statement + +__license__ = 'GPL v3' +__copyright__ = '2009, Kovid Goyal ' +__docformat__ = 'restructuredtext en' + +import os, calendar +from threading import RLock +from datetime import datetime, timedelta + +from lxml import etree +from lxml.builder import ElementMaker +from dateutil import parser + +NS = 'http://calibre-ebook.com/recipe_collection' +E = ElementMaker(namespace=NS, nsmap={None:NS}) + +def iterate_over_builtin_recipe_files(): + exclude = ['craigslist', 'iht', 'le_temps', 'outlook_india', 'toronto_sun'] + d = os.path.dirname + base = os.path.join(d(d(d(d(d(d(os.path.abspath(__file__))))))), 'resources', 'recipes') + for x in os.walk(base): + for f in x[-1]: + fbase, ext = os.path.splitext(f) + if ext != '.recipe' or fbase in exclude: + continue + f = os.path.join(x[0], f) + rid = os.path.splitext(os.path.relpath(f, base).replace(os.sep, + '/'))[0] + yield rid, os.path.join(x[0], f) + + +def serialize_recipe(urn, recipe_class): + + def attr(n, d): + ans = getattr(recipe_class, n, d) + if isinstance(ans, str): + ans = ans.decode('utf-8', 'replace') + return ans + + default_author = _('You') if urn.startswith('custom:') else _('Unknown') + return E.recipe({ + 'id' : str(urn), + 'title' : attr('title', _('Unknown')), + 'author' : attr('__author__', default_author), + 'language' : attr('language', 'und'), + 'needs_subscription' : 'yes' if attr('needs_subscription', False) else 'no', + 'description' : attr('description', '') + }) + +def serialize_collection(mapping_of_recipe_classes): + collection = E.recipe_collection() + for urn, recipe_class in mapping_of_recipe_classes.items(): + recipe = serialize_recipe(urn, recipe_class) + collection.append(recipe) + collection.set('count', str(len(collection))) + return etree.tostring(collection, encoding='utf-8', xml_declaration=True, + pretty_print=True) + +def serialize_builtin_recipes(): + from calibre.web.feeds.recipes import compile_recipe + recipe_mapping = {} + for rid, f in iterate_over_builtin_recipe_files(): + recipe_class = compile_recipe(open(f, 'rb').read()) + if recipe_class is not None: + recipe_mapping['builtin:'+rid] = recipe_class + + return serialize_collection(recipe_mapping) + +def get_builtin_recipe_collection(): + return etree.parse(P('builtin_recipes.xml')).getroot() + +def get_custom_recipe_collection(db): + from calibre.web.feeds.recipes import compile_recipe + rmap = {} + for id, title, recipe in db.get_custom_recipes(): + try: + recipe_class = compile_recipe(recipe) + if recipe_class is not None: + rmap['custom:%d'%id] = recipe_class + except: + continue + + return etree.fromstring(serialize_collection(rmap)) + +def get_builtin_recipe_titles(): + return [r.get('title') for r in get_builtin_recipe_collection()] + +def get_builtin_recipe_by_title(title, log=None): + for x in get_builtin_recipe_collection(): + if x.get('title') == title: + urn = x.get('id')[8:] + return P('recipes/%s.recipe'%urn, data=True) + +class SchedulerConfig(object): + + def __init__(self): + from calibre.utils.config import config_dir + from calibre.utils.lock import ExclusiveFile + self.conf_path = os.path.join(config_dir, 'scheduler.xml') + old_conf_path = os.path.join(config_dir, 'scheduler.pickle') + self.root = E.recipe_collection() + self.lock = RLock() + if os.access(self.conf_path, os.R_OK): + with ExclusiveFile(self.conf_path) as f: + self.root = etree.fromstring(f.read()) + elif os.path.exists(old_conf_path): + self.migrate_old_conf(old_conf_path) + + def iter_recipes(self): + for x in self.root: + if x.tag == '{%s}scheduled_recipe'%NS: + yield x + + def iter_accounts(self): + for x in self.root: + if x.tag == '{%s}account_info'%NS: + yield x + + def iter_customization(self): + for x in self.root: + if x.tag == '{%s}recipe_customization'%NS: + yield x + + def schedule_recipe(self, recipe, schedule_type, schedule, last_downloaded=None): + with self.lock: + for x in list(self.iter_recipes()): + if x.get('id', False) == recipe.get('id'): + ld = x.get('last_downloaded', None) + if ld and last_downloaded is None: + try: + last_downloaded = parser.parse(ld) + except: + pass + self.root.remove(x) + break + if last_downloaded is None: + last_downloaded = datetime.fromordinal(1) + sr = E.scheduled_recipe({ + 'id' : recipe.get('id'), + 'title': recipe.get('title'), + 'last_downloaded':last_downloaded.isoformat(), + }, self.serialize_schedule(schedule_type, schedule)) + self.root.append(sr) + self.write_scheduler_file() + + def customize_recipe(self, urn, add_title_tag, custom_tags): + with self.lock: + for x in list(self.iter_customization()): + if x.get('id') == urn: + self.root.remove(x) + cs = E.recipe_customization({ + 'id' : urn, + 'add_title_tag' : 'yes' if add_title_tag else 'no', + 'custom_tags' : ','.join(custom_tags), + }) + self.root.append(cs) + self.write_scheduler_file() + + def un_schedule_recipe(self, recipe_id): + with self.lock: + for x in list(self.iter_recipes()): + if x.get('id', False) == recipe_id: + self.root.remove(x) + break + self.write_scheduler_file() + + def update_last_downloaded(self, recipe_id): + with self.lock: + now = datetime.utcnow() + for x in self.iter_recipes(): + if x.get('id', False) == recipe_id: + typ, sch, last_downloaded = self.un_serialize_schedule(x) + if typ == 'interval': + actual_interval = now - last_downloaded + nominal_interval = timedelta(days=sch) + if abs(actual_interval - nominal_interval) < \ + timedelta(hours=1): + now = last_downloaded + nominal_interval + x.set('last_downloaded', now.isoformat()) + break + self.write_scheduler_file() + + def get_to_be_downloaded_recipes(self): + ans = [] + with self.lock: + for recipe in self.iter_recipes(): + if self.recipe_needs_to_be_downloaded(recipe): + ans.append(recipe.get('id')) + return ans + + def write_scheduler_file(self): + from calibre.utils.lock import ExclusiveFile + with ExclusiveFile(self.conf_path) as f: + f.seek(0) + f.truncate() + f.write(etree.tostring(self.root, encoding='utf-8', + xml_declaration=True, pretty_print=True)) + + def serialize_schedule(self, typ, schedule): + s = E.schedule({'type':typ}) + if typ == 'interval': + if schedule < 0.1: + schedule = 1/24. + text = '%f'%schedule + elif typ == 'day/time': + text = '%d:%d:%d'%schedule + s.text = text + return s + + def un_serialize_schedule(self, recipe): + for x in recipe.iterdescendants(): + if 'schedule' in x.tag: + sch, typ = x.text, x.get('type') + if typ == 'interval': + sch = float(sch) + elif typ == 'day/time': + sch = list(map(int, sch.split(':'))) + return typ, sch, parser.parse(recipe.get('last_downloaded')) + + def recipe_needs_to_be_downloaded(self, recipe): + try: + typ, sch, ld = self.un_serialize_schedule(recipe) + except: + return False + if typ == 'interval': + return datetime.utcnow() - ld > timedelta(sch) + elif typ == 'day/time': + day, hour, minute = sch + now = datetime.now() + is_today = day < 0 or day > 6 or \ + day == calendar.weekday(now.year, now.month, now.day) + return is_today and datetime.utcnow().date() != ld.date() and \ + now.hour >= hour and now.minute >= minute + return False + + def set_account_info(self, urn, un, pw): + with self.lock: + for x in list(self.iter_accounts()): + if x.get('id', False) == urn: + self.root.remove(x) + break + ac = E.account_info({'id':urn, 'username':un, 'password':pw}) + self.root.append(ac) + self.write_scheduler_file() + + def get_account_info(self, urn): + with self.lock: + for x in self.iter_accounts(): + if x.get('id', False) == urn: + return x.get('username', ''), x.get('password', '') + + def get_customize_info(self, urn): + add_title_tag = True + custom_tags = [] + with self.lock: + for x in self.iter_customization(): + if x.get('id', False) == urn: + add_title_tag = x.get('add_title_tag', 'yes') == 'yes' + custom_tags = [i.strip() for i in x.get('custom_tags', + '').split(',')] + break + return add_title_tag, custom_tags + + def get_schedule_info(self, urn): + with self.lock: + for x in self.iter_recipes(): + if x.get('id', False) == urn: + ans = list(self.un_serialize_schedule(x)) + return ans + + def migrate_old_conf(self, old_conf_path): + from calibre.utils.config import DynamicConfig + c = DynamicConfig('scheduler') + for r in c.get('scheduled_recipes', []): + try: + self.add_old_recipe(r) + except: + continue + for k in c.keys(): + if k.startswith('recipe_account_info'): + try: + urn = k.replace('recipe_account_info_', '') + if urn.startswith('recipe_'): + urn = 'builtin:'+urn[7:] + else: + urn = 'custom:%d'%int(urn) + try: + username, password = c[k] + except: + username = password = '' + self.set_account_info(urn, unicode(username), + unicode(password)) + except: + continue + del c + self.write_scheduler_file() + try: + os.remove(old_conf_path) + except: + pass + + def add_old_recipe(self, r): + urn = None + if r['builtin'] and r['id'].startswith('recipe_'): + urn = 'builtin:'+r['id'][7:] + elif not r['builtin']: + try: + urn = 'custom:%d'%int(r['id']) + except: + return + schedule = r['schedule'] + typ = 'interval' + if schedule > 1e5: + typ = 'day/time' + raw = '%d'%int(schedule) + day = int(raw[0]) - 1 + hour = int(raw[2:4]) - 1 + minute = int(raw[-2:]) - 1 + if day >= 7: + day = -1 + schedule = [day, hour, minute] + recipe = {'id':urn, 'title':r['title']} + self.schedule_recipe(recipe, typ, schedule, + last_downloaded=r['last_downloaded']) + + + + diff --git a/src/calibre/web/feeds/recipes/model.py b/src/calibre/web/feeds/recipes/model.py new file mode 100644 index 0000000000..9efcd9e78e --- /dev/null +++ b/src/calibre/web/feeds/recipes/model.py @@ -0,0 +1,340 @@ +#!/usr/bin/env python +# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai +from __future__ import with_statement + +__license__ = 'GPL v3' +__copyright__ = '2009, Kovid Goyal ' +__docformat__ = 'restructuredtext en' + +import os, copy + +from PyQt4.Qt import QAbstractItemModel, QVariant, Qt, QColor, QFont, QIcon, \ + QModelIndex, SIGNAL + +from calibre.utils.search_query_parser import SearchQueryParser +from calibre.gui2 import NONE +from calibre.utils.localization import get_language +from calibre.web.feeds.recipes.collection import \ + get_builtin_recipe_collection, get_custom_recipe_collection, \ + SchedulerConfig +from calibre.utils.pyparsing import ParseException + +class NewsTreeItem(object): + + def __init__(self, builtin, custom, scheduler_config, parent=None): + self.builtin, self.custom = builtin, custom + self.scheduler_config = scheduler_config + self.parent = parent + if self.parent is not None: + self.parent.append(self) + self.children = [] + + def row(self): + if self.parent is not None: + return self.parent.children.index(self) + return 0 + + def append(self, child): + child.parent = self + self.children.append(child) + + def data(self, role): + return NONE + + def flags(self): + return Qt.ItemIsEnabled|Qt.ItemIsSelectable + + def sort(self): + self.children.sort() + for child in self.children: + child.sort() + + def prune(self): + for child in list(self.children): + if len(child.children) == 0: + self.children.remove(child) + child.parent = None + +class NewsCategory(NewsTreeItem): + + def __init__(self, category, builtin, custom, scheduler_config, parent): + NewsTreeItem.__init__(self, builtin, custom, scheduler_config, parent) + self.category = category + self.cdata = get_language(self.category) + self.bold_font = QFont() + self.bold_font.setBold(True) + self.bold_font = QVariant(self.bold_font) + + def data(self, role): + if role == Qt.DisplayRole: + return QVariant(self.cdata + ' [%d]'%len(self.children)) + elif role == Qt.FontRole: + return self.bold_font + elif role == Qt.ForegroundRole and self.category == _('Scheduled'): + return QVariant(QColor(0, 255, 0)) + return NONE + + def flags(self): + return Qt.ItemIsEnabled + + def __cmp__(self, other): + def decorate(x): + if x == _('Scheduled'): + x = '0' + x + elif x == _('Custom'): + x = '1' + x + else: + x = '2' + x + return x + + return cmp(decorate(self.cdata), decorate(getattr(other, 'cdata', ''))) + + +class NewsItem(NewsTreeItem): + + def __init__(self, urn, title, default_icon, custom_icon, + builtin, custom, scheduler_config, parent): + NewsTreeItem.__init__(self, builtin, custom, scheduler_config, parent) + self.urn, self.title = urn, title + if 'custom:' in self.urn: + self.icon = custom_icon + else: + icon = I('news/%s.png'%self.urn[8:]) + if os.path.exists(icon): + self.icon = QVariant(QIcon(icon)) + else: + self.icon = default_icon + + def data(self, role): + if role == Qt.DisplayRole: + return QVariant(self.title) + if role == Qt.DecorationRole: + return self.icon + return NONE + + def __cmp__(self, other): + return cmp(self.title, getattr(other, 'title', '')) + +class RecipeModel(QAbstractItemModel, SearchQueryParser): + + LOCATIONS = ['all'] + + def __init__(self, db, *args): + QAbstractItemModel.__init__(self, *args) + SearchQueryParser.__init__(self) + self.db = db + self.default_icon = QVariant(QIcon(I('news.svg'))) + self.custom_icon = QVariant(QIcon(I('user_profile.svg'))) + self.builtin_recipe_collection = get_builtin_recipe_collection() + self.scheduler_config = SchedulerConfig() + self.do_refresh() + + def get_recipe(self, urn): + coll = self.custom_recipe_collection if urn.startswith('custom:') \ + else self.builtin_recipe_collection + for recipe in coll: + if recipe.get('id', False) == urn: + if coll is self.builtin_recipe_collection: + return P('recipes/%s.recipe'%urn[8:], data=True) + return self.db.get_feed(int(urn[len('custom:'):])) + + def update_custom_recipe(self, urn, title, script): + self.db.update_feed(int(urn[len('custom:'):]), script, title) + self.custom_recipe_collection = get_custom_recipe_collection(self.db) + + def add_custom_recipe(self, title, script): + self.db.add_feed(title, script) + self.custom_recipe_collection = get_custom_recipe_collection(self.db) + + def remove_custom_recipes(self, urns): + ids = [int(x[len('custom:'):]) for x in urns] + self.db.remove_feeds(ids) + self.custom_recipe_collection = get_custom_recipe_collection(self.db) + + def do_refresh(self, restrict_to_urns=set([])): + self.custom_recipe_collection = get_custom_recipe_collection(self.db) + + def factory(cls, parent, *args): + args = list(args) + if cls is NewsItem: + args.extend([self.default_icon, self.custom_icon]) + args += [self.builtin_recipe_collection, + self.custom_recipe_collection, self.scheduler_config, + parent] + return cls(*args) + + def ok(urn): + return not restrict_to_urns or urn in restrict_to_urns + + new_root = factory(NewsTreeItem, None) + scheduled = factory(NewsCategory, new_root, _('Scheduled')) + custom = factory(NewsCategory, new_root, _('Custom')) + lang_map = {} + self.all_urns = set([]) + self.showing_count = 0 + for x in self.scheduler_config.iter_recipes(): + urn = x.get('id') + if ok(urn): + factory(NewsItem, scheduled, urn, x.get('title')) + for x in self.custom_recipe_collection: + urn = x.get('id') + self.all_urns.add(urn) + if ok(urn): + factory(NewsItem, custom, urn, x.get('title')) + self.showing_count += 1 + for x in self.builtin_recipe_collection: + urn = x.get('id') + self.all_urns.add(urn) + if ok(urn): + lang = x.get('language', 'und') + if lang not in lang_map: + lang_map[lang] = factory(NewsCategory, new_root, lang) + factory(NewsItem, lang_map[lang], urn, x.get('title')) + self.showing_count += 1 + new_root.prune() + new_root.sort() + self.root = new_root + self.reset() + + def recipe_from_urn(self, urn): + coll = self.custom_recipe_collection if 'custom:' in urn else \ + self.builtin_recipe_collection + for x in coll: + if x.get('id', None) == urn: + return copy.deepcopy(x) + + def schedule_info_from_urn(self, urn): + return self.scheduler_config.get_schedule_info(urn) + + def account_info_from_urn(self, urn): + return self.scheduler_config.get_account_info(urn) + + def universal_set(self): + return self.all_urns + + def get_customize_info(self, urn): + return self.scheduler_config.get_customize_info(urn) + + def get_matches(self, location, query): + query = query.strip().lower() + if not query: + return self.universal_set() + results = set([]) + for urn in self.universal_set(): + recipe = self.recipe_from_urn(urn) + if query in recipe.get('title', '').lower() or \ + query in recipe.get('description', '').lower(): + results.add(urn) + return results + + def search(self, query, refinement): + try: + results = self.parse(unicode(query)) + except ParseException: + results = [] + self.do_refresh(restrict_to_urns=results) + self.emit(SIGNAL('searched(PyQt_PyObject)'), True) + + def columnCount(self, parent): + return 1 + + def data(self, index, role): + if not index.isValid(): + return NONE + item = index.internalPointer() + return item.data(role) + + def headerData(self, *args): + return NONE + + def flags(self, index): + if not index.isValid(): + return Qt.ItemIsEnabled|Qt.ItemIsSelectable + item = index.internalPointer() + return item.flags() + + def resort(self): + self.do_refresh() + + def index(self, row, column, parent): + if not self.hasIndex(row, column, parent): + return QModelIndex() + + if not parent.isValid(): + parent_item = self.root + else: + parent_item = parent.internalPointer() + + try: + child_item = parent_item.children[row] + except IndexError: + return QModelIndex() + + ans = self.createIndex(row, column, child_item) + return ans + + def parent(self, index): + if not index.isValid(): + return QModelIndex() + + child_item = index.internalPointer() + parent_item = child_item.parent + + if parent_item is self.root or parent_item is None: + return QModelIndex() + + ans = self.createIndex(parent_item.row(), 0, parent_item) + return ans + + def rowCount(self, parent): + if parent.column() > 0: + return 0 + + if not parent.isValid(): + parent_item = self.root + else: + parent_item = parent.internalPointer() + + return len(parent_item.children) + + def update_recipe_schedule(self, urn, schedule_type, schedule, + add_title_tag=True, custom_tags=[]): + recipe = self.recipe_from_urn(urn) + self.scheduler_config.schedule_recipe(recipe, schedule_type, schedule, + add_title_tag=add_title_tag, custom_tags=custom_tags) + + def update_last_downloaded(self, urn): + self.scheduler_config.update_last_downloaded(urn) + + def set_account_info(self, urn, un, pw): + self.scheduler_config.set_account_info(urn, un, pw) + + def get_account_info(self, urn): + return self.scheduler_config.get_account_info(urn) + + def get_schedule_info(self, urn): + return self.scheduler_config.get_schedule_info(urn) + + def un_schedule_recipe(self, urn): + self.scheduler_config.un_schedule_recipe(urn) + + def schedule_recipe(self, urn, sched_type, schedule): + self.scheduler_config.schedule_recipe(self.recipe_from_urn(urn), + sched_type, schedule) + + def customize_recipe(self, urn, add_title_tag, custom_tags): + self.scheduler_config.customize_recipe(urn, add_title_tag, + custom_tags) + + def get_to_be_downloaded_recipes(self): + return self.scheduler_config.get_to_be_downloaded_recipes() + + def scheduled_urns(self): + ans = [] + with self.scheduler_config.lock: + for recipe in self.scheduler_config.iter_recipes(): + ans.append(recipe.get('id')) + return ans + + + From bcb0f1e271ccbd0c4d0bad887d84154455f74d28 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 16 Oct 2009 18:05:58 -0600 Subject: [PATCH 33/41] Regex Builder: Show correct input step --- src/calibre/ebooks/oeb/iterator.py | 4 ++-- src/calibre/gui2/convert/regex_builder.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/calibre/ebooks/oeb/iterator.py b/src/calibre/ebooks/oeb/iterator.py index 33cc96f08b..05bbe7410d 100644 --- a/src/calibre/ebooks/oeb/iterator.py +++ b/src/calibre/ebooks/oeb/iterator.py @@ -122,7 +122,7 @@ class EbookIterator(object): else: print 'Loaded embedded font:', repr(family) - def __enter__(self): + def __enter__(self, raw_only=False): self.delete_on_exit = [] self._tdir = TemporaryDirectory('_ebook_iter') self.base = self._tdir.__enter__() @@ -139,7 +139,7 @@ class EbookIterator(object): plumber.opts, plumber.input_fmt, self.log, {}, self.base) - if plumber.input_fmt.lower() in ('pdf', 'rb'): + if not raw_only and plumber.input_fmt.lower() in ('pdf', 'rb'): self.pathtoopf = create_oebbook(self.log, self.pathtoopf, plumber.opts, plumber.input_plugin) if hasattr(self.pathtoopf, 'manifest'): diff --git a/src/calibre/gui2/convert/regex_builder.py b/src/calibre/gui2/convert/regex_builder.py index 0ef4f29202..20da8d7aaf 100644 --- a/src/calibre/gui2/convert/regex_builder.py +++ b/src/calibre/gui2/convert/regex_builder.py @@ -87,7 +87,7 @@ class RegexBuilder(QDialog, Ui_RegexBuilder): def open_book(self, pathtoebook): self.iterator = EbookIterator(pathtoebook) - self.iterator.__enter__() + self.iterator.__enter__(raw_only=True) text = [u''] for path in self.iterator.spine: html = open(path, 'rb').read().decode(path.encoding, 'replace') From 966379bc79eee8dcfb6622dcfc309a06dce946aa Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 16 Oct 2009 18:31:22 -0600 Subject: [PATCH 34/41] Fix #3756 (Problem with non-numeric series-index) --- src/calibre/ebooks/conversion/plumber.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/calibre/ebooks/conversion/plumber.py b/src/calibre/ebooks/conversion/plumber.py index 482e267954..008f95f796 100644 --- a/src/calibre/ebooks/conversion/plumber.py +++ b/src/calibre/ebooks/conversion/plumber.py @@ -598,7 +598,11 @@ OptionRecommendation(name='language', elif x == 'tags': val = [i.strip() for i in val.split(',')] elif x in ('rating', 'series_index'): - val = float(val) + try: + val = float(val) + except ValueError: + self.log.warn(_('Values of series index and rating must' + ' be numbers. Ignoring'), val) setattr(mi, x, val) From d2618701eccef4f2695b069d8766401dca65c358 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 16 Oct 2009 21:42:36 -0600 Subject: [PATCH 35/41] IGN:Fix Windows installer to correctly upgrade previous calibre installs --- setup/installer/linux/freeze.py | 2 -- setup/installer/windows/freeze.py | 4 +++- setup/installer/windows/wix-template.xml | 26 ++++++++++++++++++++++-- setup/installer/windows/wix.py | 7 ++----- 4 files changed, 29 insertions(+), 10 deletions(-) diff --git a/setup/installer/linux/freeze.py b/setup/installer/linux/freeze.py index 067862e4ba..ef9c9d9a8e 100644 --- a/setup/installer/linux/freeze.py +++ b/setup/installer/linux/freeze.py @@ -20,7 +20,6 @@ class LinuxFreeze(Command): from cx_Freeze import Executable, setup from calibre.linux import entry_points from calibre import walk - from calibre.web.feeds.recipes import recipe_modules is64bit = platform.architecture()[0] == '64bit' arch = 'x86_64' if is64bit else 'i686' @@ -110,7 +109,6 @@ class LinuxFreeze(Command): packages = ['calibre', 'encodings', 'cherrypy', 'cssutils', 'xdg', 'dateutil', 'dns', 'email'] - includes += ['calibre.web.feeds.recipes.'+r for r in recipe_modules] includes += ['calibre.gui2.convert.'+x.split('/')[-1].rpartition('.')[0] for x in \ glob.glob('src/calibre/gui2/convert/*.py')] diff --git a/setup/installer/windows/freeze.py b/setup/installer/windows/freeze.py index 4960337c1c..55e49d1f9b 100644 --- a/setup/installer/windows/freeze.py +++ b/setup/installer/windows/freeze.py @@ -141,7 +141,9 @@ class Win32Freeze(Command, WixMixIn): shutil.copytree(x, self.j(sp_dir, self.b(x))) for x in (r'calibre\manual', r'calibre\trac', 'pythonwin'): - shutil.rmtree(self.j(sp_dir, x)) + deld = self.j(sp_dir, x) + if os.path.exists(deld): + shutil.rmtree(deld) for x in os.walk(self.j(sp_dir, 'calibre')): for f in x[-1]: diff --git a/setup/installer/windows/wix-template.xml b/setup/installer/windows/wix-template.xml index 8ef2de1f83..0c07ccc07a 100644 --- a/setup/installer/windows/wix-template.xml +++ b/setup/installer/windows/wix-template.xml @@ -2,14 +2,29 @@ - + + + + + + + @@ -102,7 +117,14 @@ = 501)]]> - + + + NEWPRODUCTFOUND + + + + NEWPRODUCTFOUND + diff --git a/setup/installer/windows/wix.py b/setup/installer/windows/wix.py index fe560f43a3..857a667a9e 100644 --- a/setup/installer/windows/wix.py +++ b/setup/installer/windows/wix.py @@ -6,12 +6,10 @@ __license__ = 'GPL v3' __copyright__ = '2009, Kovid Goyal ' __docformat__ = 'restructuredtext en' -import os, uuid, shutil, subprocess +import os, shutil, subprocess from setup import __appname__, __version__, basenames -guid = uuid.uuid4 # Random GUID - WIXP = r'C:\Program Files\Windows Installer XML v3.5' CANDLE = WIXP+r'\bin\candle.exe' LIGHT = WIXP+r'\bin\light.exe' @@ -31,8 +29,7 @@ class WixMixIn: wxs = template.format( app = __appname__, version = __version__, - product_guid = guid(), - upgrade_code = guid(), + upgrade_code = 'BEB2A80D-E902-4DAD-ADF9-8BD2DA42CFE1', compression = self.opts.msi_compression, app_components = components, exe_map = self.smap, From 477dbf7b3c24fbf7ef430a6d0058c8dcbc9eea4e Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 16 Oct 2009 21:43:08 -0600 Subject: [PATCH 36/41] version 0.6.18 --- resources/recipes/trouw.recipe | 140 +++++++++++++++++---------------- src/calibre/constants.py | 2 +- 2 files changed, 72 insertions(+), 70 deletions(-) diff --git a/resources/recipes/trouw.recipe b/resources/recipes/trouw.recipe index 2781d4021e..c7ad3e8ad1 100644 --- a/resources/recipes/trouw.recipe +++ b/resources/recipes/trouw.recipe @@ -1,69 +1,71 @@ -#!/usr/bin/python - -class Trouw(BasicNewsRecipe): - title = u'Trouw' - __author__ = u'JvdW' - description = u'Trouw de Verdieping' - oldest_article = 7 - max_articles_per_feed = 25 - language = u'nl' - simultaneous_downloads = 1 - delay = 1 -# timefmt = ' [%A, %d %B, %Y]' - timefmt = '' - no_stylesheets = True - cover_url = 'http://www.trouw.nl/template/ver2-0/images/trouw_logo.gif' - -# keep_only_tags = [ dict(name='div', attrs={'id':'content'}) ] - remove_tags = [ - dict(name='div', attrs={'id' :'leaderboard' }) - ,dict(name='div', attrs={'class':'banner' }) - ,dict(name='div', attrs={'id' :'header' }) - ,dict(name='div', attrs={'class':'options' }) - ,dict(name='div', attrs={'id' :'menu_main' }) - ,dict(name='div', attrs={'id' :'menu_sub' }) - ,dict(name='div', attrs={'id' :'column_right' }) - ,dict(name='div', attrs={'class':'meta_information'}) - ,dict(name='div', attrs={'id' :'comments_form' }) - ,dict(name='div', attrs={'id' :'mailfriend' }) - ,dict(name='div', attrs={'id' :'footer' }) - ,dict(name='img', attrs={'id' :'dot_clear' }) - ] - - keep_only_tags = [dict(id=['columns'])] - - feeds = [ - (u'Algemen', u'http://www.trouw.nl/?service=rss'), - (u'Nederland', u'http://www.trouw.nl/nieuws/nederland/?service=rss'), - (u'Europa', u'http://www.trouw.nl/nieuws/europa/?service=rss'), - (u'Wereld', u'http://www.trouw.nl/nieuws/wereld/?service=rss'), - (u'Economie', u'http://www.trouw.nl/nieuws/economie/?service=rss'), - (u'Wetenschap', u'http://www.trouw.nl/nieuws/Wetenschap/?service=rss'), - (u'Groen', u'http://www.trouw.nl/groen/?service=rss'), - (u'Religie en Filosofie', u'http://www.trouw.nl/religie-filosofie/?service=rss'), - (u'Politiek', u'http://www.trouw.nl/nieuws/politiek/?service=rss'), - (u'Zorg', u'http://www.trouw.nl/nieuws/zorg/?service=rss'), - (u'Onderwijs', u'http://www.trouw.nl/onderwijs/nieuws/?service=rss'), - (u'Sport', u'http://www.trouw.nl/nieuws/sport/?service=rss'), - (u'Achtergrond', u'http://www.trouw.nl/achtergrond/?service=rss'), - (u'De Verdieping', u'http://www.trouw.nl/achtergrond/deverdieping/?service=rss'), - (u'Naschrift', u'http://www.trouw.nl/achtergrond/Naschrift/?service=rss'), - (u'Opinie', u'http://www.trouw.nl/opinie/?service=rss'), - (u'Podium', u'http://www.trouw.nl/opinie/podium/?service=rss'), - (u'Commentaar', u'http://www.trouw.nl/opinie/commentaar/?service=rss'), - (u'Cultuur', u'http://www.trouw.nl/cultuur/?service=rss'), - (u'Boeken', u'http://www.trouw.nl/cultuur/boeken/?service=rss'), - (u'Film', u'http://www.trouw.nl/cultuur/film/?service=rss'), - (u'Beeldende kunst', u'http://www.trouw.nl/cultuur/beeldendekunst/?service=rss'), - (u'Theater', u'http://www.trouw.nl/cultuur/theater/?service=rss'), - (u'Muziek', u'http://www.trouw.nl/cultuur/muziek/?service=rss'), - (u'Kinderen', u'http://www.trouw.nl/cultuur/kinderen/?service=rss'), - (u'Ontspanning', u'http://www.trouw.nl/ontspanning/?service=rss'), - (u'De Gids', u'http://www.trouw.nl/ontspanning/degids/?service=rss'), - (u'Moderne manieren', u'http://www.trouw.nl/ontspanning/modernemanieren/?service=rss'), - (u'Reizen', u'http://www.trouw.nl/ontspanning/reizen/?service=rss'), - (u'Koken', u'http://www.trouw.nl/ontspanning/koken/?service=rss') - ] - - def print_version(self, url): - return url + '?all=true' +#!/usr/bin/python + +from calibre.web.feeds.news import BasicNewsRecipe + +class Trouw(BasicNewsRecipe): + title = u'Trouw' + __author__ = u'JvdW' + description = u'Trouw de Verdieping' + oldest_article = 7 + max_articles_per_feed = 25 + language = u'nl' + simultaneous_downloads = 1 + delay = 1 +# timefmt = ' [%A, %d %B, %Y]' + timefmt = '' + no_stylesheets = True + cover_url = 'http://www.trouw.nl/template/ver2-0/images/trouw_logo.gif' + +# keep_only_tags = [ dict(name='div', attrs={'id':'content'}) ] + remove_tags = [ + dict(name='div', attrs={'id' :'leaderboard' }) + ,dict(name='div', attrs={'class':'banner' }) + ,dict(name='div', attrs={'id' :'header' }) + ,dict(name='div', attrs={'class':'options' }) + ,dict(name='div', attrs={'id' :'menu_main' }) + ,dict(name='div', attrs={'id' :'menu_sub' }) + ,dict(name='div', attrs={'id' :'column_right' }) + ,dict(name='div', attrs={'class':'meta_information'}) + ,dict(name='div', attrs={'id' :'comments_form' }) + ,dict(name='div', attrs={'id' :'mailfriend' }) + ,dict(name='div', attrs={'id' :'footer' }) + ,dict(name='img', attrs={'id' :'dot_clear' }) + ] + + keep_only_tags = [dict(id=['columns'])] + + feeds = [ + (u'Algemen', u'http://www.trouw.nl/?service=rss'), + (u'Nederland', u'http://www.trouw.nl/nieuws/nederland/?service=rss'), + (u'Europa', u'http://www.trouw.nl/nieuws/europa/?service=rss'), + (u'Wereld', u'http://www.trouw.nl/nieuws/wereld/?service=rss'), + (u'Economie', u'http://www.trouw.nl/nieuws/economie/?service=rss'), + (u'Wetenschap', u'http://www.trouw.nl/nieuws/Wetenschap/?service=rss'), + (u'Groen', u'http://www.trouw.nl/groen/?service=rss'), + (u'Religie en Filosofie', u'http://www.trouw.nl/religie-filosofie/?service=rss'), + (u'Politiek', u'http://www.trouw.nl/nieuws/politiek/?service=rss'), + (u'Zorg', u'http://www.trouw.nl/nieuws/zorg/?service=rss'), + (u'Onderwijs', u'http://www.trouw.nl/onderwijs/nieuws/?service=rss'), + (u'Sport', u'http://www.trouw.nl/nieuws/sport/?service=rss'), + (u'Achtergrond', u'http://www.trouw.nl/achtergrond/?service=rss'), + (u'De Verdieping', u'http://www.trouw.nl/achtergrond/deverdieping/?service=rss'), + (u'Naschrift', u'http://www.trouw.nl/achtergrond/Naschrift/?service=rss'), + (u'Opinie', u'http://www.trouw.nl/opinie/?service=rss'), + (u'Podium', u'http://www.trouw.nl/opinie/podium/?service=rss'), + (u'Commentaar', u'http://www.trouw.nl/opinie/commentaar/?service=rss'), + (u'Cultuur', u'http://www.trouw.nl/cultuur/?service=rss'), + (u'Boeken', u'http://www.trouw.nl/cultuur/boeken/?service=rss'), + (u'Film', u'http://www.trouw.nl/cultuur/film/?service=rss'), + (u'Beeldende kunst', u'http://www.trouw.nl/cultuur/beeldendekunst/?service=rss'), + (u'Theater', u'http://www.trouw.nl/cultuur/theater/?service=rss'), + (u'Muziek', u'http://www.trouw.nl/cultuur/muziek/?service=rss'), + (u'Kinderen', u'http://www.trouw.nl/cultuur/kinderen/?service=rss'), + (u'Ontspanning', u'http://www.trouw.nl/ontspanning/?service=rss'), + (u'De Gids', u'http://www.trouw.nl/ontspanning/degids/?service=rss'), + (u'Moderne manieren', u'http://www.trouw.nl/ontspanning/modernemanieren/?service=rss'), + (u'Reizen', u'http://www.trouw.nl/ontspanning/reizen/?service=rss'), + (u'Koken', u'http://www.trouw.nl/ontspanning/koken/?service=rss') + ] + + def print_version(self, url): + return url + '?all=true' diff --git a/src/calibre/constants.py b/src/calibre/constants.py index af8c3ef970..eaaed5e3dd 100644 --- a/src/calibre/constants.py +++ b/src/calibre/constants.py @@ -2,7 +2,7 @@ __license__ = 'GPL v3' __copyright__ = '2008, Kovid Goyal kovid@kovidgoyal.net' __docformat__ = 'restructuredtext en' __appname__ = 'calibre' -__version__ = '0.6.17' +__version__ = '0.6.18' __author__ = "Kovid Goyal " import re From 94901193a2581f7ba335bcc8d40f35cb4d407b91 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 16 Oct 2009 22:24:46 -0600 Subject: [PATCH 37/41] IGN:Tag release --- setup/publish.py | 2 +- src/calibre/translations/calibre.pot | 684 +++++++++++++-------------- 2 files changed, 330 insertions(+), 356 deletions(-) diff --git a/setup/publish.py b/setup/publish.py index 647b26072c..e919cd0570 100644 --- a/setup/publish.py +++ b/setup/publish.py @@ -43,7 +43,7 @@ class Stage2(Command): class Stage3(Command): description = 'Stage 3 of the publish process' - sub_commands = ['upload_rss', 'upload_user_manual', 'upload_demo', + sub_commands = ['upload_rss', 'upload_user_manual', 'upload_demo', 'sdist', 'upload_to_sourceforge', 'upload_to_google_code', 'tag_release', 'upload_to_server', 'upload_to_mobileread', ] diff --git a/src/calibre/translations/calibre.pot b/src/calibre/translations/calibre.pot index 8f86d4f0ee..7eb968a0b1 100644 --- a/src/calibre/translations/calibre.pot +++ b/src/calibre/translations/calibre.pot @@ -4,9 +4,9 @@ # msgid "" msgstr "" -"Project-Id-Version: calibre 0.6.17\n" -"POT-Creation-Date: 2009-10-09 19:58+MDT\n" -"PO-Revision-Date: 2009-10-09 19:58+MDT\n" +"Project-Id-Version: calibre 0.6.18\n" +"POT-Creation-Date: 2009-10-16 21:43+MDT\n" +"PO-Revision-Date: 2009-10-16 21:43+MDT\n" "Last-Translator: Automatically generated\n" "Language-Team: LANGUAGE\n" "MIME-Version: 1.0\n" @@ -70,8 +70,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:135 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/reader.py:137 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:105 -#: /home/kovid/work/calibre/src/calibre/ebooks/pdb/ereader/writer.py:105 -#: /home/kovid/work/calibre/src/calibre/ebooks/pdb/ereader/writer.py:106 +#: /home/kovid/work/calibre/src/calibre/ebooks/pdb/ereader/writer.py:185 +#: /home/kovid/work/calibre/src/calibre/ebooks/pdb/ereader/writer.py:186 #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/input.py:39 #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/palmdoc/writer.py:28 #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/ztxt/writer.py:27 @@ -110,28 +110,29 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:106 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/fetch_metadata.py:139 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:431 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:41 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:42 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:152 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:391 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:404 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:876 #: /home/kovid/work/calibre/src/calibre/gui2/library.py:1002 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:211 #: /home/kovid/work/calibre/src/calibre/library/cli.py:277 -#: /home/kovid/work/calibre/src/calibre/library/database.py:917 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:652 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:664 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1063 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1100 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1430 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1432 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1541 +#: /home/kovid/work/calibre/src/calibre/library/database.py:913 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:651 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:663 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1062 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1099 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1433 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1435 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1544 #: /home/kovid/work/calibre/src/calibre/library/server.py:493 #: /home/kovid/work/calibre/src/calibre/library/server.py:565 #: /home/kovid/work/calibre/src/calibre/utils/localization.py:103 #: /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 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:43 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:46 msgid "Unknown" msgstr "" @@ -367,7 +368,6 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/eb600/driver.py:24 #: /home/kovid/work/calibre/src/calibre/devices/eslick/driver.py:17 #: /home/kovid/work/calibre/src/calibre/devices/prs500/driver.py:88 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_hindu.py:13 msgid "Kovid Goyal" msgstr "" @@ -521,11 +521,11 @@ msgid "There is insufficient free space on the storage card" msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/usbms/device.py:713 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:434 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:214 #: /home/kovid/work/calibre/src/calibre/gui2/tag_view.py:122 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1007 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1011 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1334 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1006 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1010 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1333 msgid "News" msgstr "" @@ -918,15 +918,19 @@ msgstr "" msgid "Could not find an ebook inside the archive" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:712 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:604 +msgid "Values of series index and rating must be numbers. Ignoring" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:716 msgid "Converting input to HTML..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:735 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:739 msgid "Running transforms on ebook..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:821 +#: /home/kovid/work/calibre/src/calibre/ebooks/conversion/plumber.py:825 msgid "Creating" msgstr "" @@ -946,7 +950,7 @@ msgstr "" msgid "Normally, if the input file has no cover and you don't specify one, a default cover is generated with the title, authors, etc. This option disables the generation of this cover." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:124 +#: /home/kovid/work/calibre/src/calibre/ebooks/fb2/fb2ml.py:123 #: /home/kovid/work/calibre/src/calibre/ebooks/pml/pmlml.py:111 #: /home/kovid/work/calibre/src/calibre/ebooks/rb/rbml.py:98 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/txtml.py:77 @@ -1588,20 +1592,22 @@ msgstr "" msgid "Generate an Adobe \"page-map\" file if pagination information is available." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/pdb/ereader/reader132.py:120 +#: /home/kovid/work/calibre/src/calibre/ebooks/pdb/ereader/reader132.py:119 msgid "Footnotes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/pdb/ereader/reader132.py:129 +#: /home/kovid/work/calibre/src/calibre/ebooks/pdb/ereader/reader132.py:128 msgid "Sidebar" msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/input.py:22 +#: /home/kovid/work/calibre/src/calibre/ebooks/tcr/input.py:22 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:22 msgid "Normally calibre treats blank lines as paragraph markers. With this option it will assume that every line represents a paragraph instead." msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/pdb/input.py:26 +#: /home/kovid/work/calibre/src/calibre/ebooks/tcr/input.py:26 #: /home/kovid/work/calibre/src/calibre/ebooks/txt/input.py:26 msgid "Normally calibre treats blank lines as paragraph markers. With this option it will assume that every line starting with an indent (either a tab or 2+ spaces) represents a paragraph. Paragraphs end when the next line that starts with an indent is reached." msgstr "" @@ -1938,7 +1944,7 @@ msgid "Maximum number of waiting worker processes" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:123 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:397 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:398 msgid "Copied" msgstr "" @@ -2191,9 +2197,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:333 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:335 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:341 +#: /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 msgid "..." msgstr "" @@ -2598,24 +2604,24 @@ msgstr "" msgid "RB Output" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1358 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:77 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1371 msgid "Choose the format to view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:82 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:83 msgid "Cannot build regex using the GUI builder without a book." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:82 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:83 msgid "No formats available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:98 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:99 msgid "Open book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:98 +#: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder.py:99 msgid "~" msgstr "" @@ -3201,9 +3207,9 @@ msgid "new email address" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:461 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:788 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:791 #: /home/kovid/work/calibre/src/calibre/gui2/main.py:140 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1032 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1045 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:53 msgid "Error" msgstr "" @@ -3272,54 +3278,54 @@ msgstr "" msgid "Access log:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:645 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:576 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:648 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:589 msgid "Failed to start content server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:669 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:470 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:672 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:503 msgid "Select location for books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:677 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:680 msgid "Invalid size" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:678 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:681 msgid "The size %s is invalid. must be of the form widthxheight" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:729 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:734 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:732 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:737 msgid "Invalid database location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:730 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:733 msgid "Invalid database location " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:731 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:734 msgid "
Must be a directory." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:735 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:738 msgid "Invalid database location.
Cannot write to " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:769 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:772 msgid "Checking database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:789 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:792 msgid "Failed to check database integrity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:794 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:797 msgid "Some inconsistencies found" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:795 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/__init__.py:798 msgid "The following books had formats listed in the database that are not actually available. The entries for the formats have been removed. You should check them manually. This can happen if you manipulate the files in the library folder directly." msgstr "" @@ -3404,7 +3410,7 @@ msgid "&Saving books" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:468 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:368 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main_ui.py:173 msgid "Preferences" msgstr "" @@ -3567,14 +3573,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:513 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:58 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:210 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:117 msgid "&Username:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:514 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:59 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:179 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:211 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email_ui.py:119 msgid "&Password:" msgstr "" @@ -3593,7 +3599,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/config/config_ui.py:518 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/password_ui.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:212 msgid "&Show password" msgstr "" @@ -3819,7 +3825,7 @@ msgid "Choose formats for " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_single.py:134 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:872 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:885 msgid "Books" msgstr "" @@ -3984,152 +3990,136 @@ msgstr "" msgid "Aborting..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:43 -msgid "You" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:127 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:146 -msgid "Custom" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:129 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:138 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:144 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:231 -msgid "Scheduled" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:285 -msgid "%d recipes" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:286 -msgid "Monday" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:286 -msgid "Tuesday" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:286 -msgid "Wednesday" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:286 -msgid "day" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:287 -msgid "Friday" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:287 -msgid "Saturday" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:287 -msgid "Sunday" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:287 -msgid "Thursday" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:324 -msgid "Must set account information" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:325 -msgid "This recipe requires a username and password" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:151 msgid "Created by: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:394 -msgid "%d days, %d hours and %d minutes ago" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:396 -msgid "Last downloaded" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:398 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:158 msgid "Last downloaded: never" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:424 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:165 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:173 +msgid "%d days, %d hours and %d minutes ago" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:175 +msgid "Last downloaded" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:195 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:190 msgid "Schedule news download" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:427 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:198 msgid "Add a custom news source" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:222 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:191 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:278 msgid "Recipes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:192 msgid "Download all scheduled recipes at once" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:168 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:193 msgid "Download &all scheduled" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:169 -msgid "Schedule for download" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:170 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:194 msgid "blurb" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:195 msgid "&Schedule for download:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:174 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:196 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:206 msgid "Every " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:197 +msgid "day" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:198 +msgid "Monday" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:199 +msgid "Tuesday" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:200 +msgid "Wednesday" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:201 +msgid "Thursday" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:202 +msgid "Friday" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:203 +msgid "Saturday" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:204 +msgid "Sunday" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:205 msgid "at" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:175 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:207 msgid "Interval at which to download this recipe. A value of zero means that the recipe will be downloaded every hour." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:176 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:208 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:220 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:263 msgid " days" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:209 msgid "&Account" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:181 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:213 msgid "For the scheduling to work, you must leave calibre running." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:214 +msgid "&Schedule" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:215 +msgid "Add &title as tag" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:216 +msgid "&Extra tags:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:217 +msgid "&Advanced" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:218 msgid "&Download now" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:219 msgid "Delete downloaded news older than the specified number of days. Set to zero to disable." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:185 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler_ui.py:221 msgid "Delete downloaded news older than " msgstr "" @@ -4238,86 +4228,86 @@ msgstr "" msgid "&Test" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:127 msgid "No recipe selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:132 msgid "The attached file: %s is a recipe to download %s." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:133 msgid "Recipe for " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:85 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:96 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:150 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:161 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles_ui.py:255 msgid "Switch to Advanced mode" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:91 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:99 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:156 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:164 msgid "Switch to Basic mode" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:109 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:174 msgid "Feed must have a title" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:110 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:175 msgid "The feed must have a title" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:179 msgid "Feed must have a URL" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:115 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:180 msgid "The feed %s must have a URL" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:185 msgid "Already exists" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:121 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:186 msgid "This feed has already been added to the recipe" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:162 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:229 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:227 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:286 msgid "Invalid input" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:163 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:230 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:228 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:237 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:287 msgid "

Could not create recipe. Error:
%s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:178 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:211 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:235 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:241 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:290 msgid "Replace recipe?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:179 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:212 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:236 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:242 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:264 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:291 msgid "A custom recipe named %s already exists. Do you want to replace it?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:202 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:257 msgid "Pick recipe" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:202 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:257 msgid "Pick the recipe to customize" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:222 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:277 msgid "Choose a recipe file" msgstr "" @@ -4709,7 +4699,7 @@ msgid "Add Empty book. (Book entry with no formats)" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:280 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:353 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:354 msgid "Save to disk" msgstr "" @@ -4718,12 +4708,12 @@ msgid "Save to disk in a single directory" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:282 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1460 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1473 msgid "Save only %s format to disk" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:290 -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:359 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:360 msgid "View" msgstr "" @@ -4753,36 +4743,36 @@ msgid "Bad database location" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:430 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:478 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:511 msgid "Calibre Library" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:440 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1603 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1616 msgid "Choose a location for your ebook library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:619 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:632 msgid "Browse by covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:726 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:739 msgid "Device: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:728 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:741 msgid " detected." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:750 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:763 msgid "Connected " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:762 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:775 msgid "Device database corrupted" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:763 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:776 msgid "" "\n" "

The database of books on the reader is corrupted. Try the following:\n" @@ -4793,419 +4783,419 @@ msgid "" " " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:864 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:907 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:920 msgid "Uploading books to device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:873 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:886 msgid "EPUB Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:874 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:887 msgid "LRF Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:875 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:888 msgid "HTML Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:876 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:889 msgid "LIT Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:877 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:890 msgid "MOBI Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:878 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:891 msgid "Text books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:879 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:892 msgid "PDF Books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:880 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:893 msgid "Comics" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:881 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:894 msgid "Archives" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:916 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:929 msgid "Failed to read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:917 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:930 msgid "Failed to read metadata from the following" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:936 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:949 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/main.py:963 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:976 msgid "Deleting books from device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:994 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1007 msgid "Cannot download metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:995 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1043 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1076 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1101 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1213 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1008 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1056 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1089 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1114 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1226 msgid "No books selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1017 msgid "covers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1004 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1017 msgid "metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1006 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1019 msgid "Downloading %s for %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1027 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1040 msgid "Failed to download some metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1028 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1041 msgid "Failed to download metadata for the following:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1031 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1044 msgid "Failed to download metadata:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1042 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1075 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1055 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1088 msgid "Cannot edit metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1100 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1113 msgid "Cannot save to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1103 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1116 msgid "Choose destination directory" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1130 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1143 msgid "Error while saving" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1131 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1144 msgid "There was an error while saving." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1138 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1139 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1151 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1152 msgid "Could not save some books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1140 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1153 msgid "Click the show details button to see which ones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1159 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1172 msgid "Fetching news from " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1172 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1185 msgid " fetched." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1212 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1225 msgid "Cannot convert" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1241 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1254 msgid "Starting conversion of %d book(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1371 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1365 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1384 msgid "No book selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1352 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1402 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1365 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1415 msgid "Cannot view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1370 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1383 msgid "Cannot open folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1387 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1400 msgid "Multiple Books Selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1388 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1401 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/main.py:1403 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1416 msgid "%s has no available formats." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1444 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1457 msgid "Cannot configure" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1445 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1458 msgid "Cannot configure while there are running jobs." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1488 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1501 msgid "No detailed info available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1489 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1502 msgid "No detailed information is available for books on the device." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1541 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1554 msgid "Error talking to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1542 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1555 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/main.py:1565 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1583 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1578 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1596 msgid "Conversion Error" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1566 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1579 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/main.py:1584 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1597 msgid "Failed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1612 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1625 msgid "Invalid library location" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1613 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1626 msgid "Could not access %s. Using %s as the library." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1660 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1673 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/main.py:1684 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1697 msgid "There are active jobs. Are you sure you want to quit?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1687 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1700 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/main.py:1691 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1704 msgid "WARNING: Active jobs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1742 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1755 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/main.py:1761 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1774 msgid "Latest version: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1769 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1782 msgid "Update available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1770 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1783 msgid "%s has been updated to version %s. See the new features. Visit the download page?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1788 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1801 msgid "Use the library located at the specified path." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1790 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1803 msgid "Start minimized to system tray." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1792 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1805 msgid "Log debugging information to console" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1794 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1807 msgid "Do not check for updates" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1842 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1855 msgid "If you are sure it is not running" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1844 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1857 msgid "Cannot Start " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1845 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1858 msgid "%s is already running." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1848 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1861 msgid "may be running in the system tray, in the" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1850 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1863 msgid "upper right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1852 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1865 msgid "lower right region of the screen." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1855 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1868 msgid "try rebooting your computer." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1857 -#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1869 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1870 +#: /home/kovid/work/calibre/src/calibre/gui2/main.py:1882 msgid "try deleting the file" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:332 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:333 msgid "calibre" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:334 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:335 msgid "Advanced search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:336 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:337 msgid "Alt+S" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:337 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:338 msgid "&Search:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:338 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:340 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:340 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:341 msgid "Reset Quick Search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:342 +#: /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:343 +#: /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:344 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:345 msgid "Sort by &popularity" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:345 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:346 msgid "Add books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:347 msgid "A" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:347 #: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:348 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:349 msgid "Remove books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:349 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:350 msgid "Del" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:350 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:351 msgid "Edit meta information" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:352 msgid "E" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:353 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:355 msgid "S" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:355 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:356 msgid "Fetch news" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:356 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:357 msgid "F" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:357 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:358 msgid "Convert E-books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:358 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:359 msgid "C" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:360 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:361 msgid "V" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:361 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:362 msgid "Open containing folder" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:362 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:363 msgid "Show book details" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:363 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:364 msgid "Books by same author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:365 msgid "Books in this series" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:365 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:366 msgid "Books by this publisher" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:366 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:367 msgid "Books with the same tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:368 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:369 msgid "Configure calibre" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/main_ui.py:370 msgid "Ctrl+P" msgstr "" @@ -5292,19 +5282,15 @@ msgstr "" msgid "Queueing " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:235 -msgid "You must set a username and password for %s" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:240 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:237 msgid "Fetch news from " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:251 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:248 msgid "Convert existing" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:252 +#: /home/kovid/work/calibre/src/calibre/gui2/tools.py:249 msgid "The following books have already been converted to %s format. Do you wish to reconvert them?" msgstr "" @@ -5699,47 +5685,40 @@ msgstr "" msgid "Title Case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:36 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:37 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:149 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:150 -msgid "Default" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:288 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:289 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:292 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:293 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:294 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:295 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:371 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:372 msgid "Moving library..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:387 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:388 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:389 msgid "Failed to move library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:442 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:443 msgid "Invalid database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:443 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:444 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:454 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:455 msgid "Could not move library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:541 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:574 msgid "welcome wizard" msgstr "" @@ -5747,7 +5726,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/device_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/finish_ui.py:46 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/kindle_ui.py:42 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:41 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:50 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:42 msgid "Welcome to calibre" msgstr "" @@ -5755,7 +5734,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/device_ui.py:50 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/finish_ui.py:47 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/kindle_ui.py:43 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:42 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:51 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:43 msgid "The one stop solution to all your e-book needs." msgstr "" @@ -5774,7 +5753,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/wizard/finish_ui.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/kindle_ui.py:41 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:40 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:49 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/stanza_ui.py:41 msgid "WizardPage" msgstr "" @@ -5799,15 +5778,19 @@ msgstr "" msgid "&Kindle email:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:43 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:52 +msgid "Choose your &language:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:53 msgid "Choose a location for your books. When you add books to calibre, they will be copied here:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:44 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:54 msgid "&Change" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:45 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/library_ui.py:55 msgid "If you have an existing calibre library, it will be copied to the new location. If a calibre library already exists at the new location, calibre will switch to using it." msgstr "" @@ -6156,27 +6139,27 @@ msgid "" "For help on an individual command: %%prog command --help\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1567 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1570 msgid "

Migrating old database to ebook library in %s

" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1596 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1599 msgid "Copying %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1613 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1616 msgid "Compacting database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1701 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1709 msgid "Checking SQL integrity..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1738 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1746 msgid "Checking for missing files." msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1762 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1770 msgid "Checked id" msgstr "" @@ -6373,7 +6356,6 @@ msgid "Traditional Chinese" msgstr "" #: /home/kovid/work/calibre/src/calibre/utils/localization.py:99 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nytimes.py:17 msgid "English" msgstr "" @@ -6504,30 +6486,22 @@ msgid "Article download failed: %s" msgstr "" #: /home/kovid/work/calibre/src/calibre/web/feeds/news.py:1024 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_borba.py:81 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_glas_srpske.py:77 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_instapaper.py:59 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_lamujerdemivida.py:60 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_laprensa_ni.py:64 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_monitor.py:79 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_nin.py:95 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_pobjeda.py:84 -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_republika.py:67 msgid "Fetching feed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_borba.py:21 -msgid "sr-Latn-RS" +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/collection.py:43 +msgid "You" msgstr "" -#: -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:119 -msgid "Skipping duplicated article: %s" +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:73 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:82 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:170 +msgid "Scheduled" msgstr "" -#: -#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/recipe_le_monde.py:126 -msgid "Skipping filtered article: %s" +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:84 +#: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:171 +msgid "Custom" msgstr "" #: /home/kovid/work/calibre/src/calibre/web/fetch/simple.py:458 From 31f933c236d9a0b9225c64229575c8cc9ec671cc Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sat, 17 Oct 2009 10:22:13 -0600 Subject: [PATCH 38/41] IGN:... --- src/calibre/gui2/filename_pattern.ui | 4 ++-- src/calibre/translations/calibre.pot | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/calibre/gui2/filename_pattern.ui b/src/calibre/gui2/filename_pattern.ui index dd5f45e2a7..d0a4cf74b0 100644 --- a/src/calibre/gui2/filename_pattern.ui +++ b/src/calibre/gui2/filename_pattern.ui @@ -20,9 +20,9 @@ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:10pt; font-weight:400; font-style:normal;"> +</style></head><body style=" font-family:'Candara'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set a regular expression pattern to use when trying to guess ebook metadata from filenames. </p> -<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">A <a href="http://docs.python.org/lib/re-syntax.html"><span style=" text-decoration: underline; color:#0000ee;">reference</span></a> on the syntax of regular expressions is available.</p> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">A <a href="http://docs.python.org/lib/re-syntax.html"><span style=" text-decoration: underline; color:#0000ff;">reference</span></a> on the syntax of regular expressions is available.</p> <p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Use the <span style=" font-weight:600;">Test</span> functionality below to test your regular expression on a few sample filenames. The group names for the various metadata entries are documented in tooltips.</p></body></html> diff --git a/src/calibre/translations/calibre.pot b/src/calibre/translations/calibre.pot index 7eb968a0b1..1230756bf6 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.18\n" -"POT-Creation-Date: 2009-10-16 21:43+MDT\n" -"PO-Revision-Date: 2009-10-16 21:43+MDT\n" +"POT-Creation-Date: 2009-10-17 10:21+MDT\n" +"PO-Revision-Date: 2009-10-17 10:21+MDT\n" "Last-Translator: Automatically generated\n" "Language-Team: LANGUAGE\n" "MIME-Version: 1.0\n" @@ -4405,9 +4405,9 @@ msgid "" "\n" "\n" +"\n" "

Set a regular expression pattern to use when trying to guess ebook metadata from filenames.

\n" -"

A reference on the syntax of regular expressions is available.

\n" +"

A reference on the syntax of regular expressions is available.

\n" "

Use the Test functionality below to test your regular expression on a few sample filenames. The group names for the various metadata entries are documented in tooltips.

" msgstr "" From 0cab0f4fd45f07df32a4bff16189de5544a8d859 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sat, 17 Oct 2009 10:49:23 -0600 Subject: [PATCH 39/41] New recipes for Naked Capitalism and Daily Reckoning by Darko Miletic --- resources/images/news/dailyreckoning.png | Bin 0 -> 996 bytes resources/recipes/dailyreckoning.recipe | 47 +++++++++++++++++++++++ resources/recipes/nakedcapitalism.recipe | 39 +++++++++++++++++++ src/calibre/linux.py | 3 -- 4 files changed, 86 insertions(+), 3 deletions(-) create mode 100644 resources/images/news/dailyreckoning.png create mode 100644 resources/recipes/dailyreckoning.recipe create mode 100644 resources/recipes/nakedcapitalism.recipe diff --git a/resources/images/news/dailyreckoning.png b/resources/images/news/dailyreckoning.png new file mode 100644 index 0000000000000000000000000000000000000000..64cd95d1730fe77acf52f3623e4ef2ff5be5358f GIT binary patch literal 996 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b zK-vS0-A-oPfdtD69Mgd`SU*F|v9*U87?^oIT^vI!PO~1ooh=i}aNyznIj8;7%C=4R zoqhJ!7FE+_LA+dM)6DEvd^y{tu#kUWmw(g$<_G&9Jazrx+m#e5^0=8}s#eGJ2f9f; zOT6BlRNK9I@=fFE#mC-%zBjA?m78WjB=^D^uayQ-w+QxvmsUF)83_5DM6*6!N&kX5k9mWBnHOKN+X! z*aj_F)_=X_&@+zdk8>PkTzC9wuwi&8k{T5d{Gi(In#H37&KhbT51WNb|2nXNiOFEf znx*Vdo~k%sPcZ*#ptU%wX`y1It9xrc?f#vIzy8>m z$G7mmn{z?9>1p+Bo%?^=ccw3^eBssbZMkPD|3!1jRg8!74Q)I*j*3WUe|YGAf5Q%w zqbD3zOK;pe{ln#c&Rz=#6Q`WG1tpypuI&1}n!hE5&&s5Jo4Mrh`tN0eA~uz!vuaox z`Cj@Q__*)cd;6*#Rnmb`Qx-Z)SbOdDvSW&#vrw^JBKVQ{G0l=rJ*IhalS*#+zN_2k zWXf~!{DhV51)t)}+}bN1TE<8ie=@Z$J2Ex>`HfrmAKjKWyXbpTeEz$Scf%*$bYGSc z-?5=rQb^uKscl8@1@D?NH|DD3+ZBd3e~!3@?bFxLGRPCxI;#F&bw$;z==Cwr?2G3s zD?Kq?9>2e8@##m!#WAzC>*&l$D|=?+x&F!K+qd_WycXKr-|kZ}`OCHbh{&6dZatDP zkDHOGv8y8gMcLcl=`x|B$CaD66`aaWKAk+}dGbllb8RZKCGQ#@ZEWo7`ly+4#;)zf z^y6=2mfT2oextzW&}Fx&?EveRIp@Enxhb$rZJgG#Lm)n72m3w~4*gFToP^EQ3tXE6 z7fH;Js$bK&u>Zrdj|@#x>dRk59)6d=tXn%Lb8%H_Z;_CtS3rw}{3RR3?;=|p8h7{e zII*R=Wo;KwWcadq&IX%@^;7gxbnk7enhVS&swJ)wB`Jv|saDBFsX&Us$iTo-*U&)M z&^*M@z{Wf5*JG(12r&sy85}S Ib4q9e0HFc26aWAK literal 0 HcmV?d00001 diff --git a/resources/recipes/dailyreckoning.recipe b/resources/recipes/dailyreckoning.recipe new file mode 100644 index 0000000000..5522427fba --- /dev/null +++ b/resources/recipes/dailyreckoning.recipe @@ -0,0 +1,47 @@ +#!/usr/bin/env python + +__license__ = 'GPL v3' +__copyright__ = '2009, Darko Miletic ' +''' +dailyreckoning.com +''' +from calibre.web.feeds.news import BasicNewsRecipe + +class dailyreckoning_us(BasicNewsRecipe): + title = 'The Daily Reckoning - US edition' + __author__ = 'Darko Miletic' + description = 'Worldwide business and financial news and articles' + publisher = 'Agora Financial, LLC.' + category = 'news, business, finances, money, banking' + oldest_article = 7 + max_articles_per_feed = 100 + no_stylesheets = True + use_embedded_content = False + encoding = 'utf-8' + language = 'en' + extra_css = ' #BlogTitle{font-size: x-large; font-weight: bold} #BlogDate{font-size: small} ' + + conversion_options = { + 'comment' : description + , 'tags' : category + , 'publisher' : publisher + , 'language' : language + } + + feeds = [(u'Articles', u'http://feeds.feedburner.com/dailyreckoning?format=xml')] + + keep_only_tags = [dict(name='div', attrs={'id':'Outline'})] + + remove_tags = [ + dict(name=['object','link','base']) + ,dict(name='hr', attrs={'class':'Divider'}) + ] + + remove_tags_after = dict(name='hr', attrs={'class':'Divider'}) + + def get_article_url(self, article): + return article.get('feedburner_origlink', article.get('link')) + + def print_version(self, url): + return url + 'print/' + diff --git a/resources/recipes/nakedcapitalism.recipe b/resources/recipes/nakedcapitalism.recipe new file mode 100644 index 0000000000..09b7d8de1b --- /dev/null +++ b/resources/recipes/nakedcapitalism.recipe @@ -0,0 +1,39 @@ +#!/usr/bin/env python + +__license__ = 'GPL v3' +__copyright__ = '2009, Darko Miletic ' +''' +www.nakedcapitalism.com +''' +from calibre.web.feeds.news import BasicNewsRecipe + +class nakedcapitalism(BasicNewsRecipe): + title = 'Naked Capitalism' + __author__ = 'Darko Miletic' + description = 'Commentary on current economic and financial news.' + publisher = 'Aurora Advisors, Inc.' + category = 'news, business, finances, money, banking' + oldest_article = 7 + max_articles_per_feed = 100 + no_stylesheets = True + use_embedded_content = False + encoding = 'utf-8' + language = 'en' + extra_css = ' #BlogTitle{font-size: x-large; font-weight: bold} #BlogDate{font-size: small} ' + + conversion_options = { + 'comment' : description + , 'tags' : category + , 'publisher' : publisher + , 'language' : language + } + + feeds = [(u'Articles', u'http://www.nakedcapitalism.com/feed')] + + keep_only_tags = [ + dict(name='h3', attrs={'class':'post-title entry-title'}) + ,dict(name='div', attrs={'class':'entry'}) + ] + + remove_tags = [dict(name=['object','link','base'])] + diff --git a/src/calibre/linux.py b/src/calibre/linux.py index 62af807f4c..c0e76b8690 100644 --- a/src/calibre/linux.py +++ b/src/calibre/linux.py @@ -172,8 +172,6 @@ class PostInstall: from calibre.ebooks.metadata.cli import option_parser as metaop, filetypes as meta_filetypes from calibre.ebooks.lrf.lrfparser import option_parser as lrf2lrsop from calibre.gui2.lrf_renderer.main import option_parser as lrfviewerop - from calibre.web.fetch.simple import option_parser as web2disk - from calibre.web.feeds.recipes import titles as feed_titles from calibre.ebooks.metadata.fetch import option_parser as fem_op from calibre.gui2.main import option_parser as guiop from calibre.utils.smtp import option_parser as smtp_op @@ -195,7 +193,6 @@ class PostInstall: f.write(opts_and_exts('lrf2lrs', lrf2lrsop, ['lrf'])) f.write(opts_and_exts('ebook-meta', metaop, list(meta_filetypes()))) f.write(opts_and_exts('lrfviewer', lrfviewerop, ['lrf'])) - f.write(opts_and_words('web2disk', web2disk, feed_titles)) f.write(opts_and_words('fetch-ebook-metadata', fem_op, [])) f.write(opts_and_words('calibre-smtp', smtp_op, [])) f.write(textwrap.dedent(''' From 9eacbc9d8c595403c4d82a95c9b373cf705a013b Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sat, 17 Oct 2009 12:29:11 -0600 Subject: [PATCH 40/41] Opus driver: Generate t2b files and delete helper files when removing a book from the device. --- src/calibre/devices/cybookg3/driver.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/calibre/devices/cybookg3/driver.py b/src/calibre/devices/cybookg3/driver.py index 7d08cf01a9..dd3ac24db6 100644 --- a/src/calibre/devices/cybookg3/driver.py +++ b/src/calibre/devices/cybookg3/driver.py @@ -78,7 +78,7 @@ class CYBOOKG3(USBMS): return zip(paths, cycle([on_card])) -class CYBOOK_OPUS(USBMS): +class CYBOOK_OPUS(CYBOOKG3): name = 'Cybook Opus Device Interface' gui_name = 'Cybook Opus' From c1c3a6555f5a04fe62fa8c9dd1c0d9b63c487b35 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sat, 17 Oct 2009 12:53:28 -0600 Subject: [PATCH 41/41] Fix #3732 (Built-in "Politico" recipe is broken) --- resources/recipes/politico.recipe | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/resources/recipes/politico.recipe b/resources/recipes/politico.recipe index 1f7fc2558e..4f3c306fc0 100644 --- a/resources/recipes/politico.recipe +++ b/resources/recipes/politico.recipe @@ -6,9 +6,12 @@ __copyright__ = '2009, Darko Miletic ' politico.com ''' +import re, traceback + from calibre.web.feeds.news import BasicNewsRecipe class Politico(BasicNewsRecipe): + title = 'Politico' __author__ = 'Darko Miletic' description = 'Political news from USA' @@ -55,13 +58,13 @@ class Politico(BasicNewsRecipe): del item['style'] return soup - def print_url(self, soup, default): - printtags = soup.findAll('a',href=True) - for printtag in printtags: - if printtag.string == "Print": - return printtag['href'] - return default + url_pat = re.compile(r'